今週、フェニックスが実際にどのように匿名性(unlinkability)を達成するのかについて会話しました。特に、同じノートを、相手が誰かを明かさずに、その相手へ宛てて扱える理由です。ホワイトペーパーの仕組みは、単一の数式が、読む人によって2つの別のことを行うものです。

その数式は次のとおりです。ノート公開鍵: npk = H(rA)G + B。送信者は受信者の公開鍵(A B)と、各トランザクションごとに送信者が新たに選ぶランダム値 r を使ってこれを計算します。R = rG はノートに含まれており公開です。ただし r 自体は秘密で、使用後に破棄されます。

送信者にとって npk がすること: r が毎回ランダムで新規に生成されるため、ノートの公開鍵はトランザクションごとに変化します。同じ受信者に10通のノートを送ったとしても、それぞれのノートで npk は異なります。チェーンを見ている観測者だけでは、公開データだけから複数のノートを互いに、または送信者の身元に結び付けることはできません。

受信者にとって NPK がすること: どのノートが自分のものかを特定できるのは受信者だけです。受信者は自分のビュ—鍵(a B)を使い、遭遇する各ノートについて npk が H(aR)G + B に等しいかどうかを確認します。この確認が成立するのは、A = aG のときに数学的に rA と aR が同じ値になるからです。そのため、受信者のビュ—鍵だけで、入ってくるノートをスキャンできます。

同じ目標。両者ごとに根本的に異なる仕組みです。送信者のランダム性が「誰が何を送ったか」を隠します。受信者の鍵素材が「自分のものを特定できるのは受信者だけ」という性質を作ります。支出には完全な秘密鍵(a b)が必要で、ノート秘密鍵 nsk = H(aR) + b を計算します。そのため、ビュ—鍵は可視性を与える一方で、支出能力は与えません。
#dusk
私は、同じ数式を2つの用途に使うというこの相互作用が、個々の要素よりもずっと洗練されているように感じます。送信者と受信者の双方が、同じ暗号技術の同じ部品によって別々の形で守られています。

私がまだ解決できていないのは、r の選択が匿名性以外に何か影響するかどうかです。弱い、あるいは予測可能な r だと、取引のリンク可能性を可能にする以外にセキュリティ上の含意があるのか、それとも弱い r による攻撃はリンク以外にはないのか。@Dusk

$DUSK