誰にも偽造できないタイムスタンプが、ファイルに刻まれる仕組み。
CardanoWallは、あらゆるファイルを、それがある瞬間に存在したという恒久的で公開された証明に変えます。手元のデバイスがファイルの指紋を取り、その指紋がCardano上にタイムスタンプとして刻まれ、誰でもいつまでも日付を検証できます。任意で、選んだ受信者だけが開けるようにファイルを封印することもできます。
実際に何が起きているのか、ひと段落で。
記録を公開すると、デバイスがファイルの指紋を計算します。その指紋こそが証明で、日付を添えてCardanoネットワークに記録されます。以降、日付は誰でも検証できます。ファイル本体はデフォルトでは手元に残ります。自分用に、あるいは選んだ受信者向けに、暗号化したコピーを私たちに預けることを選んだ場合は、デバイスが鍵をかけ、鍵を持つ人だけが開けるようにし、鍵のかかったバイト列はArweaveに置かれます。中身は非公開のまま、公開されるのは日付だけです。
3つのフェーズ。
真ん中にサーバーは存在しません。各ステップは、手元のデバイス、公開されたCardanoネットワーク、あるいはいずれかの検証ツール(私たちのもの、自分のもの、受信者のもの)で行われます。誰かに向けて記録を封印するのは任意で、封印した中身を開けるのは、選んだ相手だけです。
- 01
準備 — 手元のデバイスで
ブラウザでファイルの暗号学的な指紋(ハッシュ)を計算します。その指紋こそが証明であり、デフォルトで公開されるのはそれだけです。加えて、ファイル本体の暗号化したコピーを保管することも選べます。自分用に(あとでローカルを編集しても証明が壊れないように)、あるいは選んだ受信者向けにです。その際は、Signal、WireGuard、AppleのiMessageを守っているのと同じ系統の、現代的で十分に監査されたプリミティブ、すなわちEd25519、X25519、ChaCha20-Poly1305を使います。平文のファイルがどこかへ送信されることはありません。デバイスを離れるものは、すべて暗号化された状態で出ていきます。
- 02
公開 — Cardano上で
短いアンカー、つまりファイルの指紋と、暗号化したコピーをアップロードした場合はそのArweaveのポインタが、Cardanoメインネットに刻まれます。費用は数セントです。ブロックに入った瞬間から、私たちを含む誰も、それを変更・削除・改ざんできません。暗号化したファイルがある場合は、永続的な分散ストレージネットワークであるArweaveに置かれます。平文のファイルがデバイスを離れることはありません。
- 03
検証 — 誰でも、いつまでも
トランザクション参照を持つ人なら誰でも、公開されたCardanoチェーンから直接、いつまでも日付を確認できます。アカウントは不要で、私たちを信頼する必要もありません。私たちのオープンソースのコマンドラインツールを使えば、どのエクスプローラーに対しても自分で確認できます。記録が受信者向けに封印されていた場合は、その相手だけが中身を開けます。それ以外の人にも証明は見えますが、証明が守っているものは見えません。
Cardanoに実際にあるもの(と、ないもの)。
チェーン上
- ファイルの暗号学的な指紋です。ファイル本体ではなくハッシュです。1件の記録には、1つまたは2つのハッシュ種別を載せられます。
- ファイルを暗号化して保管することを選んだ場合のみ、その暗号文がある場所を指すコンテンツアドレス指向のポインタ(ArweaveのトランザクションID)。それ以外の場合、チェーン上にあるのは指紋だけです。
- 署名する場合に限り、その公開鍵。記録は匿名で公開することもでき、その場合は署名者の鍵がチェーン上に一切残りません。
チェーン外
- ファイル本体。デフォルトでは手元に残り、公開されるのはその指紋だけです。希望すれば(自分用に、あるいは選んだ受信者向けに)暗号化し、その暗号文を永続的な分散ストレージネットワークであるArweaveに私たちが保管することもできます。そうすれば、ローカルのコピーがあとで変更されたり失われたりしても、元のバイト列は残り続けます。
- 受信者の身元。チェーンに見えるのは、その人だけが開けられる暗号化された封筒だけで、誰なのかは見えません。
- あらゆる個人データ。氏名も住所も身分証明書も、私たちが尋ねることはありません。漏れるものが、そもそも存在しません。
Label 309 — 私たちが書いて、手放した標準仕様。
私たちが起草したLabel 309は、存在証明の記録がチェーン上でどんな形を取るかを正確に定義するCardano改善提案です。同じ記録を読み書きできるよう、公式のCIPプロセスを通しているところです。直接の競合も含め、誰でも同じ「言語」を話すウォレット、ビューア、監査ツールを作れます。CardanoWallはその実装のひとつにすぎません。仕様はコミュニティのものです。
Label 309を読む