目次

    全ての目次を見る
  1. 量子コンピュータにも有効なLamport(ランポート)署名
  2. 【概要】Lamport(ランポート)署名
  3. 【仕組み】Lamport(ランポート)署名
  4. 【導入が検討される仮想通貨】Lamport(ランポート)署名
  5. 【まとめ】Lamport(ランポート)署名
Large hands typing on laptop computer 508178484 1258x838

量子コンピュータは、現在の一般的なコンピュータの1億倍もの計算力を持つといわれるコンピュータです。

量子コンピュータの開発がすすむにつれ、AIへの応用や医薬品の開発に役立てられると期待されています。

その反面、量子コンピュータを悪用することで、データの改ざんが極めて困難であった、暗号が解読されてしまうことが想定されているのです。

仮想通貨(暗号通貨)の領域においても、電子署名に使用される暗号化技術がセキュアでなくなり、データ改ざんの可能性が高まることが懸念されています。

例えば、51%問題と呼ばれる、取引データの改ざんや不正取引といった危険性が非常に高くなってしまうでしょう。

本記事では、

量子コンピュータにも有効と考えられている、Lamport(ランポート)署名

量子耐性をそなえた仮想通貨・プロジェクト

についてご紹介いたします。

Lamport(ランポート)署名とは、1979年に数学者であるレスリー・ランポートによって考案された手法です。

従来のブロックチェーン・仮想通貨と同様に「公開鍵暗号化」や「ハッシュ関数」といったものを実装する電子署名の方法の1つです。

では、従来の署名技術と比べて、なぜ安全性が高くなるのでしょうか。

ランポート署名の仕組みを詳しくみていきましょう。

次に、Lamport(ランポート)署名について、図解を用いて詳しくご説明いたします。

  • 秘密鍵と公開鍵の作成
  • 署名と検証
  • 量子耐性

【秘密鍵と公開鍵の作成】Lamport(ランポート)署名

まず、秘密鍵と公開鍵を作成します。

秘密鍵として、256対、512個の乱数を作成し、その乱数すべてをハッシュ化(暗号化)した値を公開鍵とします。

ランポート署名①

【署名と検証】Lamport(ランポート)署名

送金を行う際は、秘密鍵を使用して署名をする必要があります。

Lamport署名の場合、下記のような流れで署名を行います。

  • まず、メッセージをハッシュ化する
  • 次に、そのハッシュ値を2進数に変換
  • 「0=a」,「1=b」として置換をする(256ビット分)
  • 左からn番目の文字がaであれば、乱数対nでは乱数aを、左からn番目文字がbであれば乱数対nで乱数bを公開する
  • 公開された256個の乱数(秘密鍵)によって検証した署名とハッシュ値(公開鍵)が等しいか確認する
ランポート署名②

検証作業として、上記規則に従って、ハッシュ(公開鍵)と公開された256個の乱数(秘密鍵)による署名の値を照合し、署名が正しいか(データが本物かどうか)を確認することになります。

【量子耐性】Lamport(ランポート)署名

このように、256対の乱数で秘密鍵を作成しているため、秘密鍵をみつけるためには256個の乱数をハッシュから求める必要があるのです。

また、量子コンピュータは、ハッシュ値から元の値を求めるのに、約1分必要とされています。

つまり、256個の乱数をハッシュ値から求めるには、単純計算で256分を要します。

そのため、量子コンピュータが開発された環境下でも、Lamport(ランポート)署名は安全性が高いと考えられているのです。

ランポート署名③

最後に、量子耐性を備える(または備える予定の)仮想通貨を、いくつかピックアップしてご紹介いたします。

  1. Neo(NEO)
  2. Cardano(ADA)
  3. IOTA(IOT)
  4. SHIELD(XSH)
Neo(ネオ/NEO)

Neo(NEO)は、中国に拠点をおく、分散型アプリケーション構築のためのプラットフォームです。

プロジェクトの目的は異なるものの、実現されている技術はイーサリアムを類似して作られており、「中国版イーサリアム」とも呼ばれます。

Neo(NEO)では、反量子暗号メカニズム「NeoQS」の導入が予定されています。

NeoQS(Quantum Safe)は、格子ベースの暗号化メカニズムです。現在、量子コンピュータは、最短ベクトル問題(SVP)および最密ベクトル問題(CVP)を迅速に解決する能力を有しておらず、これは量子コンピュータに抵抗する最も信頼できるアルゴリズムであると考えられている。

NEOホワイトペーパー
Cardano(エイダ/ADA)

Cardano(ADA)は、オンラインのカジノプラットフォームです。

スマートコントラクトの技術を活用して、不正の起きない、フェアなカジノを構築することを目指しています。

また、ADA(エイダ)コインは、Cardanoのプラットフォームで利用される、仮想通貨を指します。

イーサリアムやビットシェアーズなどの開発にも関わった、チャールズ・ホスキンソン氏が携わっていることでも、注目を集めました。

Cardano(ADA)は、BLISS署名を署名方式として、採用する予定としており、2018年3月時点の実装の進捗は50%であると、公式サイトに表示しています。

耐量子コンピューター電子署名方式であるBLISSを採用した新たなトランザクション方式を追加します。これにより、現在一般使用されている楕円曲線暗号を破ることのできる量子コンピュータが開発されたとしても、資金が盗まれるのを防ぐことができます。

カルダノロードマップ - Cardano Roadmap
IOTA(アイオータ/IOT)

IOTA(IOT)は、非中央管理型のIoTデバイス向けの仮想通貨として開発されたことから、IoTの文字をとって、IOTAと名付けられています。

IOTAは送金手数料が無料の仮想通貨として注目されていますが、IoT関連のビジネスが拡大が期待されているアルトコイン(ビットコイン以外の仮想通貨)です。

IOTAでは、コア技術として、次世代型ブロックチェーン技術ともよばれる、Tangleという分散台帳が用いられています。

Tangleの仕組みでは、量子コンピュータを用いて秘密鍵を解読する時間と、通常のプロセスでナンスを発見する時間が大きく変わらないため、量子耐性があるとされているのです。

さらに重要なことには,iota の実装で使用されているアルゴリズムは,ナンスを見つける時間が,トランザクションを発行するのに必要なその他のタスクたちに必要な時間と比べてさほど大きくないようになっている.後者の部分は量子計算に対してはるかに耐性があり,ゆえに,(Bitcoin)ブロックチェーンと比較した場合,量子コンピュータを有する敵対者に対してより多くの保護を Tangle に与えるものである.

IOTAホワイトペーパー
SHIELD(シールド/XSH)

SHIELD(XSH/シールド)は、「匿名性」「耐量子性」「省電力性」の3つを同時に実現することを目的に作られた仮想通貨です。

仮想通貨Verge(バージ)のソースコード(仕組み)を一部利用して誕生しました。

SHIELD(シールド)では、「Lamport(ランポート)署名」、「Winternitz(ウィンターニッツ)署名」または「BLISS(ブリス)署名」と呼ばれる署名方法を、採用するアルゴリズムの候補としてあげています。

仮想通貨にも導入が検討されている署名方法である、「Lamport(ランポート)署名」についてご説明いたしました。

量子コンピュータが登場しても、データ改ざんの可能性をきわめて低く保てるとして、期待がされている技術です。

耐量子性を備えた仮想通貨も登場しており、すでに誕生している仮想通貨にも導入が検討されています。

まだ、仮定の段階ではあるため、ランポート署名を含め、ご紹介した技術が、「本当に仮想通貨に量子耐性をもたらすのか」注目が集まります。