BUSINESS LIFE TECHNOLOGY ETHEREUM

仮想通貨で利用されるゼロ知識証明とは【zk-SNARK,zk-STARK】【仮想通貨Zcash】

悩んでいる人

仮想通貨で利用されるゼロ知識証明を教えて!

こういった悩みにお答えします.

本記事の信頼性

  • リアルタイムシステムの研究歴12年.
  • 東大教員の時に,英語でOSの授業.
  • 2012年9月~2013年8月にアメリカのノースカロライナ大学チャペルヒル校コンピュータサイエンス学部2021年の世界大学学術ランキングで20位)で客員研究員として勤務.C言語でリアルタイムLinuxの研究開発
  • プログラミング歴15年以上,習得している言語: C/C++Solidity/Vyper,Java,Python,Ruby,HTML/CSS/JS/PHP,MATLAB,Assembler (x64,ARM).
  • 東大教員の時に,C++言語で開発した「LLVMコンパイラの拡張」,C言語で開発した独自のリアルタイムOS「Mcube Kernel」GitHubにオープンソースとして公開

こういった私から学べます.

ゼロ知識証明

ゼロ知識証明(ZKP:Zero Knowledge Proof)とは,1985年にShafiらが提案した「ある人が自分の持っているある命題が真であることを,他の人に真であること以外の知識を何も教えずに証明する手法」です.

ゼロ知識証明は,以下の3つを満たす必要があります.

  • 完全性(completeness):条件が真であれば,正直な検証者(つまり,プロトコルに正しく従っている者)は,正直な証明者によってこの事実を確信できること.
  • 健全性(soundness): ステートメントが偽である場合,不正な証明者は,小さな確率を除いて,それが真であると正直な検証者を納得させることはできないこと.
  • ゼロ知識性(zero-knowledge): 条件が真であれば,検証者はその文が真であるという事実以外には何も学ばない.言い換えれば,証明者が秘密を知っていることを示すシナリオを想像するには,(秘密ではなく)文を知っていれば十分であること.すべての検証者が,証明されるべき声明だけが与えられれば(そして,証明者にアクセスできなければ),正直な証明者と問題の検証者との間で正常なコミュニケーションができたような記録を作成できること.

ゼロ知識証明は,大きく分けて以下の2つになります.

  • 対話式ゼロ知識証明:証明したい人と,確認したい人の間で何度かデータのやりとりをすることで納得する証明方法
  • 非対話ゼロ知識証明:データを一度提示するだけで相手に納得する証明方法

ゼロ知識証明の解説は,こちらの動画がわかりやすいです.

代表的な非対話ゼロ知識証明として以下が挙げられます.

  • zk-SNARK:zero-knowledge Succinct Non-Interactive ARguments of Knowledge
  • zk-STARK:zero-knowledge Scalable Transparent ARgument of Knowledge

zk-SNARKとzk-STARKの解説動画はこちらです.

2021年12月に「イーサリアムのスケーリングソリューションとして注目を集めるポリゴン(Polygon)が,ゼロ知識証明の開発を行うスタートアップ「Mir」を買収することに合意した」とのことです.

ポリゴンを知りたいあなたはこちらからどうぞ.

ポリゴン
【イーサリアムのレイヤ2技術】仮想通貨ポリゴン(Polygon)とは

こういった悩みにお答えします. 目次1 ポリゴン(Polygon)2 ポリゴンの買い方3 ポリゴンの特徴4 ポリゴンを含むイーサリアムのレイヤ2技術の統計情報5 2021年9月:イーサリアムのレイヤ2 ...

続きを見る

ゼロ知識証明を利用する仮想通貨Zcash

ゼロ知識証明を利用する仮想通貨Zcash(ジーキャッシュ)を紹介します.

Zcashは,「ブロックチェーンのHTTPS(セキュアなHTTP)」であり,仮想通貨として好きなように貯めたり使ったりできます.

Zcashは,zk-SNARKを実装した最初のプロジェクトであり,ユーザにあらゆるデジタル通貨で利用可能な最強のプライバシーを提供します.

Zcashの解説動画はこちらです.

Zcashは,仮想通貨として仮想通貨取引所で取引可能です(取引できる仮想通貨取引所はこちら).

Zcashは多くの仮想通貨取引所で取引できますので,おすすめの仮想通貨取引所で今すぐ開設しましょう!

仮想通貨取引所
おすすめの仮想通貨取引所【主に海外】

こういった悩みにお答えします. おすすめの仮想通貨取引所を紹介します. 仮想通貨取引所の開設は無料ですので,忘れないうちに今すぐ開設することをおすすめします! ※忘れそうであれば,このページをブックマ ...

続きを見る

ゼロ知識証明の代表的なライブラリ

ゼロ知識証明の代表的なライブラリを紹介します.

C++言語:libsnark

libsnarkは,計算の完全性をゼロ知識で証明・検証する暗号手法であるzk-SNARKを実装するC++言語のライブラリです.

libsnarkは,SCIPR Labという簡潔な完全性とプライバシーを提供する暗号証明システムの実用化を目指す研究者による複数機関にわたる学術共同体により開発されました.

Go言語:gnark

gnarkは,ゼロ知識証明zk-SNARKの高レベルのAPIを提供するGo言語のライブラリです.

gnarkは,ドキュメントやベンチマークの結果等が充実しています.

まとめ

仮想通貨で利用されるゼロ知識証明を紹介しました.

また,ゼロ知識証明を利用している仮想通貨Zcashを解説しました.

仮想通貨を取引したいあなたは,まずは国内取引所のCoincheckを開設しましょう!

Coincheck

Coincheckが扱っていない仮想通貨を取引したい場合や低い手数料で取引したい場合は,海外取引所を開設する必要があります.

しかし,海外取引所は日本円が使えないので,国内取引所から仮想通貨を送る必要があります.

そこで,以下のおすすめの仮想通貨取引所(主に海外)で開設して,Coincheckからビットコインやイーサリアムを送りましょう!

-BUSINESS, LIFE, TECHNOLOGY, ETHEREUM
-, , ,