ゼロ知識証明の説明~概要と証明の方法を解説

Zcash(ZEC)を調べて、zerocash protocol(ゼロキャッシュ プロトコル)を調べて、こちらに訪問して頂いている人が多いと想定しております。
※管理人が少しだけ注目したZcoinで利用されているzerocoin protocol(ゼロコインプロトコル) もゼロ知識証明です。
その基本となるゼロ知識証明について、学んでみましょう!

ゼロ知識証明の説明

この記事は、参考(wiki:ゼロ知識証明)を基にして、分かり易く紹介しております。

ゼロ知識証明の概要とは?

具体例を紹介して行きましょう。
例えば、魔法の扉を解錠するパスワードを投資君が知っていると、主張しております。
※この段階では、証明されていないので、投資君が勝手に言っているだけです。

投資君
僕が魔法の扉のパスワードを知ってます!
投資君が、魔法の扉を解錠するパスワードを知っている本人であることを証明したいけれど、パスワードの秘密を教えたくない
そんな秘匿性が高い知識の証明となります。

さて、凄く話が複雑ですよね。

投資君が魔法の扉を解錠できるパスワードを持っていることは、投資君と一緒に秘密の扉の前まで行って解錠しているのを見届けるしか証明する方法がないと思っていませんか?

ただ、そのパスワードを誰にも教えたくないんです。
どうやって証明するのか、見てみましょう。

ゼロ知識証明の証明方法を説明

この証明方法には、パスワードを持っていると証明する人(投資君)検証を見守る人(先生)の2人が必要となります。

仮想通貨先生
私が検証を見守って、不正行為がないかを確認します!
では、2匹の力を借りて、ジャン=ジャック・キスケータという方たちの論文で、「洞窟の問題」という説明方法が紹介されておりますので、そちらを実施してもらいます。

ゼロ知識証明を実施してもらいましょう!

<画像①の流れ>
洞窟の外で、先生が待っている。
投資君が、AかBの道をランダムで進みます。
先生は、投資君がAの道に進んだのか、Bの道に進んだのかを知りません。
※これは、追跡を防ぐことにより、秘匿性と隠蔽したい事をより安全に証明することを目的にしております。
genesis-mining

<画像②の流れ>
投資君が、Aの道から入ってきました。
魔法の扉さんに向かって、合言葉「兄貴!ムキムキ!」を伝えます。
genesis-mining

<画像③の流れ>
魔法の扉さんは、投資君の合言葉が正解なので、通行可能の許可を出します。
genesis-mining

<画像④の流れ>
先生が洞窟に入って、どちらの道から出てきて欲しいと大声で投資君に伝えます。
合言葉を知っている投資君は、どちらの道からでも洞窟を出ることが可能です。
genesis-mining

<この段階での問題点>
この1回目だけを証明方法とした場合の問題点は、もし投資君が合言葉を知らない状態で、Bの道から入ってきてBの道から出ることです。
当然、魔法の扉さんは、開いていません。

<解決策>
繰り返し実施する!
20回繰り返すことで、約0.0001%程度になるそうです。

投資君!先生!
今の方法を 20 回頑張れ!メッチャ頑張れ!
君たちは、やれば出来る生物だ!

投資君
えっ!そんなに繰り返し頑張るんですか!?
黒い企業もビックリな肉体労働なんですけれど!
仮想通貨先生
管理人、投資君の顔を20回も見なければならないなんて、精神的に厳しいですよ?

スポンサーリンク

ゼロ知識証明のパソコン動作を推測

このような流れが、ゼロ知識証明の概要説明となります。
あくまで概要部分となりますし、パソコン等で処理を実施させる場合は、動作的に異なる手法を用いていると想定しておりますが、概要部分として理解頂ければ幸いです。

投資君や先生は、いちおう生物としてカテゴライズさせたいので、繰り返しの動作が肉体労働となってしまう為、非常に苦手です。
しかし、パソコンは、繰り返し処理の動作を得意とする機械なので、このような処理に向いていると想定しております。

zerocoin protocol(ゼロコインプロトコル) や zerocash protocol(ゼロキャッシュプロトコル)で処理の方法が管理人的に非常に興味ありますが、そこまで深追いしたら読者も非常に限定的な内容となり、管理人がZcashのコードをガチで解析しないとならなくなる為、概要の説明とさせて頂きます。
また、Zcashの説明は、以下となります。
Zcashの取引所や秘匿性、マイニングの情報を解説

投資君
この記事が参考になった、面白かった、そのように感じて頂けたら、拡散頂けると幸いです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です