SONICプロトコルは、プライバシーを保護する暗号通貨送金のために最適化されたゼロ知識証明システムを実装しています。軽量な暗号コミットメントと効率的な証明生成を使用することで、SONICは最小限の計算オーバーヘッドで暗号化されたトランザクション実行を可能にし、基本的なプライバシー保証を維持します。すべてのトランザクションはゼロ知識証明システムを使用してエンドツーエンドで暗号化されます。トランザクションの詳細は実行中も非表示のままです:
// 暗号化転送のためのZK証明生成
function generateTransferProof(amount, sender, receiver):
// 暗号コミットメントを作成
commitment = hash(amount, sender, receiver, nonce)
// ゼロ知識証明を生成
proof = {
publicInputs: [commitment],
privateInputs: [amount, sender, receiver, nonce]
}
// 詳細を明かさずに有効性を証明
zkProof = proveStatement(
"コミットメントにハッシュ化される値を知っている",
proof.publicInputs,
proof.privateInputs
)
return {commitment, zkProof}
バリデーターは、送信者、受信者、または金額を知ることなくトランザクションの有効性を検証できます。