定義
Anytrust とは、指定された複数の関係者の集合のうち、少なくとも 1 者が誠実であるという前提のもとで、データの可用性または正しさについての保証を与える、暗号技術およびプロトコルレベルのメカニズムです。この集合に属するすべての参加者を完全に信頼する必要はなく、1 者でも他者と共謀せず悪意ある行動を取らなければ、システム全体が安全に保たれるよう設計されています。これにより、信頼モデルは「全員を信頼する(trust all)」から「誰か 1 人を信頼する(trust any one)」へとシフトし、この考え方から Anytrust という名称が生まれました。これは、単一の完全に信頼されたオペレーターへの依存を減らしつつ、完全にトラストレスな設計に伴う大きな負荷を避けるため、blockchain(ブロックチェーン)関連のアーキテクチャでよく用いられます。
Anytrust の前提が置かれた環境では、プロトコルは通常、指定されたグループ内の誠実な参加者が、隠されたデータや誤ったデータを検出したり再構成したりできるような形で、データやコミットメントを符号化します。そのため、セキュリティの前提は、完全にトラストレスなメカニズムよりは弱いものの、単一の中央集権的で無条件に信頼された主体に依存するモデルよりは強いものになります。メカニズムとしての Anytrust は、特定の実装やネットワーク上の役割によってではなく、「最小限の誠実なサブセット」に関する明示的な信頼前提によって特徴づけられます。
文脈と使われ方
blockchain(ブロックチェーン)システムにおいて、Anytrust メカニズムはしばしば、データ可用性レイヤー、委員会、あるいはオンチェーン検証を支援する特化型サービスプロバイダーに適用されます。基本的な考え方は、ベースチェーンや検証環境が、指定された参加者のうち少なくとも 1 者が誠実であり続ける限り、オフロードされたデータやサービスに安全に依拠できるようにすることです。これにより、完全にオンチェーンで複製するアプローチよりもスケーラブルかつコスト効率の高い設計を実現しつつ、完全な共謀に対しては暗号技術やプロトコルレベルでの対抗手段を維持できます。
Anytrust は信頼の前提をなくすものではなく、必要とされる誠実な参加者数という観点から、その前提を明示的かつ最小限にするものです。メカニズムとしての Anytrust は、こうした前提に結びついた形式的な保証によって特徴づけられ、多くの場合、セキュリティ証明やプロトコル仕様の形で表現されます。そのため、この用語は、特定の製品やネットワーク上の単一の役割を指すのではなく、システムのアーキテクチャに組み込まれた特定の信頼・セキュリティモデルを表すために用いられます。