暗号通貨ジーキャッシュ(Zcash)について⑥くりぷと知っ得情報12月17日号

クリプトスタディ(クリスタ)の水野です。
シリーズでプライバシー重視の暗号通貨、「ジーキャッシュ(Zcash)」について書いてます。
🔶ジーキャッシュ(Zcash)の概要くりぷと知っ得情報11月12日号🔶ビットコイン(BTC)とジーキャッシュ(Zcash)の共通点くりぷと知っ得情報11月19日号🔶秘密の中身を見せなくても正しいと証明できる魔法の技術「zk-SNARKs」
くりぷと知っ得情報11月26日号🔶ビットコイン(BTC)が「ゼロ知識証明」の概念を採用しない理由くりぷと知っ得情報12月3日号🔶「zk-SNARKs」が信用・信頼を勝ち取っている背景①くりぷと知っ得情報12月10日号
前号では、ジーキャッシュ(Zcash)がどうやって、
「zk-SNARKs」を安全に、また、その信用・信頼を勝ち取っているのか?
について書きました。
数学的に破れないレベルの暗号で成り立っている⁉︎
ジーキャッシュ(Zcash)の匿名性は、数学的に破れないレベルの暗号で成り立っていることを、前号でなんとなく書きました。
今回からは、そのすごい技術、数学で匿名性を確保しているジーキャッシュ(Zcash)の具体的な
超強力な数式そのもの=テクノロジー
について、書いていこうと思います。
①見えない送金の正しさ‥‥楕円曲線暗号(ECC)
また、なんか難しい言葉が出てきました💦
ジーキャッシュ(Zcash)のその超強力な数式のうちの一つ、ECCは、Elliptic Curve Cryptographyの略で、楕円曲線暗号と訳されます。
1985年に提案され、2004年頃から使用されるようになりました。

ECCは、ビットコイン(BTC)やジーキャッシュ(Zcash)などの暗号通貨で使われている、とても強力な暗号技術になります。
名称からすると、なんか難しく思えますね。
楕円曲線暗号(ECC)って何?
一言で言うと、「小さな鍵でも、とても強い安全性を出せる暗号」で、ビットコイン(BTC)やジーキャッシュ(Zcash)などで使われています。
鍵?
ここでいう「鍵」とは、「秘密鍵」と「公開鍵」を指します。(参考)
秘密鍵とは?
秘密鍵とは、自分だけが知っている“超重要な数字”のことです。
例えば、金融機関や取引所のパスワード本体みたいに、絶対に他人に見せてはいけないものです。
公開鍵とは?
公開鍵とは、秘密鍵から計算で作られる、見せてもいい情報です。
ECCの強さ
ECCでは、
秘密鍵から公開鍵を作ることは、簡単にできますが、
公開鍵から秘密鍵を紐解くことは、不可能です。
(⭕️秘密鍵→公開鍵)(❌公開鍵→秘密鍵)
これは、一方向にしか進めない超難関な数学(楕円曲線の計算)を使っているからで、暗号通貨の安全性は、この
「秘密鍵を絶対に逆算できない数学」
で守られています。
私たちが普段使うスマートフォンやパソコンのHTTPS通信(🔒マーク)や、指紋や顔認証などのセキュリティ、SNSの暗号化メッセージなどでも広く使われている技術になります。
zk-SNARKsはECCをどう使っている?
ビットコイン(BTC)の送金の署名や、イーサリアム(ETH)のスマートコントラクトなどで広く使われているECC(Elliptic Curve Cryptography)ですが、ジーキャッシュ(Zcash)の「zk-SNARKs」も、そのECC(楕円曲線暗号)を土台に作られています。
ECCの「破れない数学」がzk-SNARKsの土台
例え話で言うと‥‥
🔹ECCは、「絶対に開かない超強力な南京錠」
🔹zk-SNARKsは、「その南京錠を使って“中身を見せずに正しいことだけ証明する魔法の仕組み”」
といった感じです。
②ペアリング暗号
また、なんか難しい言葉が出てきました💦
まずは、一言で。
ペアリング暗号とは、2000年頃に(多分日本で初めて)ひっそりと産声を上げた暗号技術で、
「2つのカギを組み合わせると、特別な答えが一瞬で出る暗号の仕組み」
さらに
楕円曲線暗号(ECC)を土台にした“応用版”
です。
🔹ECCは、「逆算できない強い数学」
🔹ペアリング暗号は、「そのECCを“合体技”できるようにしたもの」
例え話で言うと‥‥
こちらも、わかりやすい例え話で言うと、
🔹鍵Aがある
🔹鍵Bがある
普通のECC(楕円曲線暗号)だと、それぞれは強いけど、直接“答え”は出せない。
けど‥‥このふたつの鍵を特別な装置(=ペアリング)に入れると…
「はい、正解です!」という1つの結果が一瞬で出る
しかも、鍵Aだけでも、鍵Bだけでもダメで、
両方揃った時だけ答えが出る
と言うものです。
こんなイメージ
秘密のスタンプを持っているAさんとBさん
🔹Aさんの秘密スタンプ
🔹Bさんの秘密スタンプ
この、2つを同時に押すと1つの特別な印ができるとしましょう。
でもその特別な印を見ても
🔹Aさんの秘密スタンプは何か?
🔹Bさんの秘密スタンプは何か?
👉 まったく分からない‥‥これがペアリングです。
ペアリング暗号があると、
🔹「秘密を見せずに正しいと証明」
🔹「2者の情報が一致していることを一瞬で確認」
🔹「計算は簡単、逆算はほぼ不可能」
なもので、これが「zk-SNARKs」の心臓部になります。
zk-SNARKとの関係
「zk-SNARKs」では、
🔹「秘密の計算をした」
🔹「条件を満たしている」
と言うことを、ペアリング暗号で一瞬で検証しているイメージですね。
ECCはめちゃ強い鍵
その鍵を2つ組み合わせると、答えが出る魔法=ペアリング暗号
その魔法で“中身を見せずに正しいと証明”する仕組み=zkSNARKs
おわりに
今回は、「zk-SNARKs」を支える技術である、ECC(楕円曲線暗号)とペアリング暗号について書きました。
続きは次回です。
お読みいただきありがとうございました。