お知らせ

Ed25519の3ラウンドN-of-N集約署名アルゴリズムの解説

はじめに 本稿は主に ドキュメントの紹介です。 単純な Ed25519署名 鍵生成 RFC8032に従った単純なEd25519署名アルゴリズムは以下の通り。 公開パラメータ (\mathbb{G}, q, B)とする。ここで \mathbb...
お知らせ

知識証明プロトコルSTARKの証明・検証ライブラリを試してみる

概要 プログラミング言語Cairoで証明したいプログラムを書いて、実行履歴(trace)を作成した後は、その実行履歴を使ってプログラムの証明・検証を行う必要があります。 証明・検証のためのライブラリ・ツールにはいくつかあり、依存や参照関係が...
お知らせ

論文紹介:Ethereum Name Service: the Good, the Bad, and the Ugly

この論文では、Ethereum上に構築された名前解決サービス、Ethereum Name Service(ENS)におけるセキュリティ問題や不正行為を体系的にまとめています。伝統的な DNS のセキュリティ...
お知らせ

論文紹介: PoWブロック報酬に対する公理的アプローチ

マイナーが独立かつランダムに暗号パズルの可能な解を推測・確認すると仮定すると、マイナーが得る報酬の期待値は、貢献した総計算能力のシェアに比例します。比例報酬分配方式はシンプルで自然であり、非常にわかりやすいモデルです。しかし、それが「最適」かどうかを判断する必要があります。
お知らせ

ブロックチェーンシステムのためのプログラミング言語Cairoについて

Cairoは、StarkWare社によって開発された、証明可能なプログラムを作成するために設計された高度なプログラミング言語です。数学的な確実性と実行の保証を保証することで、ブロックチェーンなどの知識証明プロトコルベースのシステムの開発の信頼性を高めることを主な目的としています。
お知らせ

Halo2ライブラリを使ってみる

はじめに 本稿ではzk-SNARKライブラリhalo2の実装の仕組みの一部を簡単に解説します。 実装の概要 Halo2ではPLONKish回路と呼ばれる回路を用いて証明を行います。PLONKish回路の出力と証明者の主張する値が一致すること...
お知らせ

Halo 2の中で使われている多項式コミットメントスキーム

はじめに この記事では、zk-SNARKのライブラリであるhalo2で使用される多項式コミットメントスキーム(Polynomial Commitment Scheme; PCS)について解説します(のAppendix 2)。 PCSは、名前...
お知らせ

内積アーギュメント Bulletproofsについて

はじめに この記事ではベクトルの値そのものは知らせずに、内積の値が特定の値となるような2つのベクトルを知っていることの証明を送ることができる、内積アーギュメントの一つ、Bulletproofsについて解説します。 検証を入力の長さの対数回の...
お知らせ

Proof of Necessary Work: 再帰的SNARKを使ったビットコインの全ブロック検証

概要 ビットコインのブロックデータは時間経過に従って概ね線形に増加する。これは全てのトランザクション履歴を管理する暗号通貨においては避けられないことのように思える。 しかし、過去のブロックデータとは結局の所特定の形式に従ったデータであれば、...
タイトルとURLをコピーしました