記録の形式
開発中TARC:誰でも確かめられる記録。
TARC(Trusted Agentic Record Container)は、Arkhonの記録を書き込むオープンなファイル形式です。記録を書いたシステムを信用する理由がない読み手のために作られており、その人自身が、オフラインで、公開されたツールを使って確かめられます。
このページは、TARCの記録が何を示し、保証がどこで終わるかの概要です。
なぜ、ログではなく形式なのか
ログは通常、持ち主が読むために書かれます。争いが起きたとき、それを読むのは別の人です。監査人、規制当局の技術専門家、相手方のエンジニアなどです。持ち主の言葉をそのまま信じる理由は、その人たちにはありません。TARCは、そうした読み手のために設計されています。
- 01
改ざんを検知できる。改ざんできないわけではない
ファイルの書き換え自体は、誰にも止められません。TARCは、変更・削除・並べ替えを検知できるようにします。不可能にするものではないことも、はっきり示します。
- 02
Arkhonなしで確かめられる
記録の確認に必要なのは、ファイル、オープンな検証ツール、そして確認する人が信頼すると決めた公開鍵です。Arkhonに接続できる必要も、協力してもらう必要もありません。
- 03
限界についても正直に
記録が示すのは、確定された時点からデータが変わっていないことです。データが真実であることまでは示しません。形式は、保証の限界を明記しています。
記録がまとまりを保つしくみ
TARCの記録は、それぞれの部分が、その前の部分に依存するように作られています。どこかを変更、削除、並べ替えると、食い違いが表に出ます。
それぞれのまとまりは、直前のまとまりに結びついています
どのまとまりも、直前のまとまりと結びついています。どれかを変更、削除、並べ替えると、その後ろはすべて合わなくなります。後ろにあるまとまりへの署名は、それより前のすべてを対象にします。
- まとまり 0サンプル
- つながる先
- 記録の先頭
- 自分のハッシュ
- 4bbbcb52…
- まとまり 1サンプル
- つながる先
- 4bbbcb52…
- 自分のハッシュ
- 459dd958…
- まとまり 2サンプル
- つながる先
- 459dd958…
- 自分のハッシュ
- d3c711b6…
- まとまり 3サンプル
- つながる先
- d3c711b6…
- 自分のハッシュ
- 6a91ae23…
考え方を示すイメージ図です。実際の記録には、これ以上のものが含まれます。
壊れにくいつくり
- 編集されない書き込まれた記録は、あとから変更されません。変換するツールは、新しいファイルを書き出します。
- 途中で止まっても安全ファイルは、最後に無傷だった部分まで読み取れます。壊れた末尾は報告され、黙って捨てられることはありません。
確認で示せること
信頼は層になっています。一部の確認は鍵を必要としないため、関係者の誰も信用しない人でも実行できます。それ以外には、公開鍵、または時刻認証機関の公開証明書が必要です。
01変更されていない
必要なもの: なし
記録された内容が、書き込まれたとおりであること。
02削除・並べ替えがない
必要なもの: なし
どの部分も、削除、移動、切り取りをされていないこと。
03誰が確定したか
必要なもの: 公開鍵
証明書に名前が記載された署名者であること。
04いつ存在したか
必要なもの: 時刻認証機関の公開証明書
この記録が、この正確な形で、ある時刻に存在していたこと。
05抜けがない
必要なもの: 公開鍵
記録の中の一部が、丸ごと省かれていないこと。
署名のない記録は、「ある程度は誰のものか分かる」のではなく、誰のものか分からない記録です。どの確認が適用されるかは記録そのものに書かれているため、黙って外すことは検知できます。
記録の確かめ方
ファイルがあれば、誰でもオフラインで記録を確かめられます。必要なのは、ファイル、オープンな検証ツール、そして信頼すると決めた公開鍵です。Arkhonも、署名者も、ネットワーク接続も必要ありません。
検証ツールは、ファイルの中身と、与えられた鍵だけをもとに、計算できるものを計算し直して照合し、違いをすべて報告します。
検証ツールが報告する内容
記録ごとに、次の四つのいずれかを、良い順に報告します。
- 1無傷・署名者を確認済み署名者が確認できています。
- 2無傷・署名なし署名はありません。
- 3無傷・署名者を確認できず署名者を確認できませんでした。
- 4損なわれている変更、削除、または破損があります。
無傷でも署名者を確認できない記録は、単に「有効」とは報告されません。最後の署名より後ろの新しい部分は、正確な範囲とともに「署名のない末尾」として報告されます。失敗は所見として報告され、修復も隠蔽もされません。つながりが切れた場合は、その抜けた箇所が示されます。これが、正直な空白と、隠された改変との違いです。
誰が署名し、誰がそれを保証するのか
署名が示すのは、ある秘密鍵の持ち主が、この正確な内容を確定したことです。その鍵を、名前のある署名者に結びつけるのが証明書です。
証拠は記録とともに届く
誰が署名したかを確かめるために必要なものは、記録とともに届きます。確認する人は、誰にも問い合わせる必要がありません。
鍵は失効させられる
紛失したり漏えいしたりした鍵は、定めた時刻から失効させられます。それ以前の記録は引き続き確認でき、独立した時刻証明によって、どの署名がそれより前のものかが分かります。
TARCが証明しないこと
仕様書には、証明しないことが明記されています。主なものは次のとおりです。
- データが真実であること。署名が認証するのは記録した側であり、現実ではありません。
- 署名が行われる地点より前にあるソフトウェアが、誠実で正しかったこと。この地点を「記録の境界」と呼びます。ここまでは前提として信頼されるものであり、証拠を示す運用では、その位置を明記する必要があります。
- センサーが欺かれていなかったこと、入力が偽装されていなかったこと。
- 記録がいつ作られたか。独立した時刻証明がない限り、証明できません。署名が確定するのは内容であり、時刻ではありません。
- 記録されるべきものがすべて記録されたこと。
- 記録全体が、最初から差し替えられていないこと。これは、独立した時刻証明など、別の場所にあるものと照らし合わせられる場合にだけ検知できます。
- 記録が変更できないこと。記録は、変更を検知できるものです。
信頼が残る場所
一つの当事者が証明書を発行し、記録を保管する場合、その当事者は、誰が署名したかと、記録が揃っていることについて、信頼される立場にあります。日常的な完全性の確認なら、それで十分です。争いの場面では、疑う人は、その当事者と署名者が結託することを何が防ぐのかと問うでしょう。独立した時刻証明は、そうした当事者が書き換えられる範囲を狭めますが、その当事者の説明を独立したものにはしません。私たちは、そのことをはっきりお伝えします。
記録に入れられるもの
TARCは、保管するデータの中身を判断しません。渡されたものを封印します。
エージェントの動作
AIエージェントのトレース、メトリクス、ログ、メッセージです。
ロボット・センサー
画像、音声、センサーのデータ、ロボットのメッセージです。
圧縮と、任意の暗号化
記録は圧縮でき、保存時に暗号化することもできます。
ひと目でわかる概要
- オープン
- 形式と検証ツールはオープンです。そのため、Arkhonなしで記録を確かめられます。
- ブロックチェーンは使いません
- 台帳も合意形成もトークンもありません。一つの記録主体が一つの順序つきの列を書くため、合意すべきことがないからです。
- 転送とは別
- TARCは形式です。エージェントからレコーダーへ記録を運ぶプロトコルは別のもので、非公開の独自仕様です。
各仕様と検証ツールへのリンクは、公開され次第ここに掲載します。