最近私は@NewtonProtocol がAttestation、Verification、Replayについてかなりの分量を割いて説明しているのを見つけました。最初はあまり理解できませんでした。というのも、私の認識では、最終結果が正しければよく、中間でどうやって実行されたかは、それほど重要ではないように思えたからです。実行者が誰なのか、実行の途中で何が起きたのか—それらは、プロトコルが本当に関心を持つものというより、実装上の細部のように感じられていました。

しかし後になって、実行の全手順を最初から通しで追い直しました。Transaction IntentからGatewayへ入り、Policy Evaluation、Operatorの実行、そしてその後のAttestationへ至るまで。そして、ずっと抱いていた疑問がどこにあるのかようやく分かったのです。

$NEWT 本当に気にしているのは、そもそも結果が正しいかどうかというより、その結果がなぜ信頼できるのか、という点のようです。Transaction Intentは、システムに入ったからといってそのまま実行されるわけではなく、まずPolicy Evaluationを経ます。Operatorがタスクを完了したからといって、実行が終わった時点でそれがそのまま最終結果になるわけでもなく、その後にAttestationが必要で、必要に応じてReplayさえ可能です。

さらに読み進めると、私はますます、それらがすべてこの実行が、ネットワーク全体で合意されたルールに従って行われたのかどうかを答えるためにあるのだと感じました。

そしてここで、私が#Newt だと気づいたのは、記録されているのは「1回の実行結果」ではなく、「1回の実行プロセス」だということでした。後で改めて丁寧に振り返ってみて、以前は真剣に考えたことのなかった疑問をふと思い出しました。

なぜ多くのシステムは証明結果のほうにより注目するのに、Newtonはこれほどまでに証明プロセスに多くの労力を割いたのでしょうか?

私はだんだん、この2つの設計の背後には、実はまったく異なる2種類の信頼のあり方があるのではないかと思うようになりました。結果だけを証明しても、結局最後には「その結果をあなたに伝えた人」を信じる必要が残ってしまいます。しかし、実行プロセス全体が検証できるのなら、信じるべき対象はもはや特定のOperatorではなく、誰でも繰り返し検証できるその実行パスになります。

だから私は、Newtonが本当に再構築したいのは実行フローそのものではなく、長年存在してきた「結果が正しければそれで十分」というデフォルトの前提を、実際に問い直したいのだと思います。

少なくともNewtonにとっては、それだけでは足りないようです。
おそらく、これこそがAttestation、Verification、Replayが本来持つ意味なのです。それらが守っているのは、決して結果そのものだけではなく、その結果が成立するまでのプロセス全体です。