web-dev-qa-db-ja.com

デジタル文書の完全性の証明

次のシナリオがあるとしましょう。

ユーザーAとユーザーB、およびBによって生成された初期デジタルドキュメントDがあります。AとBのどちらも初期ドキュメントDを変更していないことを保証/証明するには、どのようなアルゴリズムとインフラストラクチャが必要ですか。これは、第三者機関を関与させることなく実行できますか?

ありがとう

1
J1mak0s

はい、解決策があります。これは blockchain を介して実行できます。これは、お互いを信頼しない当事者が同意する方法です。

これは非常に基本的なワークフローです。

まず、両方のユーザーがドキュメントをハッシュします。それらが ハッシュアルゴリズムに同意する であり、両方がハッシュアルゴリズムを信頼していると仮定すると、ファイルのフィンガープリントが作成されます。この前提条件から生じる信頼の問題は、ブロックチェーンを介して解決することもできます。

ドキュメントのハッシュに同意したと仮定して、このハッシュを保存する必要があります。小さいハッシュについて話しているので、ブロックチェーンに直接書き込むことができます。

ここで問題が発生します。このハッシュをどのブロックチェーンに書き込む必要がありますか?

2つしかない であるため、単純に独自のネットワークを設定することはできません。ブロックチェーンは2つのパーティでは機能しません。ネットワーク上に、少なくとも3つのパーティが必要です。

しかし、それは問題ではありません。存在する最大のブロックチェーンであるビットコインブロックチェーンに書き込むことができます。

チャレンジが必要な場合は、 bitcore を見て、特定のメッセージをブロックチェーンに書き込むCLIを記述します。それ以外の場合、アリスとボブは ビットコインブロックチェーンにデータを書き込むサービス を使用できます。

このようにして、すべてのビットコインノードに分散されたドキュメントフィンガープリントの永続的な記録が残ります。ドキュメントを再度ハッシュし、既存のレコードと照合することで、信頼を確立できます。

3
mayk93