web-dev-qa-db-ja.com

否認防止を達成する方法?

他の人に送信する必要があるメッセージがある場合、どうすれば否認防止を実現できますか?

メッセージのデジタル署名で十分ですか?

43
user1157

いいえ。デジタル署名は否認防止には十分ではなく、ロングショットでは不十分です。

否認防止はlegalの概念です。つまり、紛争が発生した場合、訴訟で一方の当事者をその責任に拘束することが可能になるということです。

たとえば、否認防止を提供すると主張する数学的スキームは、「陪審攻撃」に耐えなければなりません。一部の専門家証人は、通常の陪審員(および裁判官)が理解できる非技術的な用語で、なぜ数学が何でも証明する理由を説明できなければなりません。一方、反対側の専門家証人は反対を主張する予定です。スキームが派手な数学を使用している場合、それは陪審員と裁判官にとって理解不能である可能性が高く、したがって訴訟ではあまり役立たない可能性があります。これは一種の攻撃であり、文献のほとんどの数学的スキームはこれに耐えることができそうにありません。

暗号研究コミュニティの多くがこれを台無しにしていると思います。研究者は、「否認防止の問題」に対処し、数学で解決しようとする多くの技術論文を書いていますが、彼らが受け入れなかったのは、暗号数学と実用学との間に途方もないギャップがあるということです。法的問題。そして、残念なことに、問題を解決するのが最も難しいのは数学ではなく、実際的な問題と法的な問題です。残念ながら、これは暗号研究コミュニティーでは長年の盲点のようです。

裁判所または弁護士が満足する真の否認防止を達成するためのいくつかの課題を次に示します。

  • マルウェア。おじいちゃんのコンピューターがマルウェアに感染し、彼の秘密鍵を盗んだ場合はどうなりますか?私たちは彼がそのマルウェアによって署名されたものに対して責任を負うつもりですか?それはばかげているでしょう。特に、簡単に否認する方法は、「私の秘密鍵が漏洩/盗まれたに違いない」と主張することです。

    ソーシャルエンジニアリングについても同様のことが言えます。ソーシャルエンジニアリング攻撃が秘密鍵の盗用に成功する可能性が高い場合、およびスキームが一般の人々が安全に使用できないように設計されており、設計者がこれを知っている(または知っているべきである)場合、設計が不十分なセキュリティシステムにだまされたというだけの理由で、陪審員がおじいちゃんに責任を負う意思があるかどうかは疑問です。

  • 人間対コンピュータ法的には、否認防止とは、人間の行動に関するものです。裁判所は、人間(例えば、おじいちゃん)が契約/取引の条件に同意したという証拠を探しています。暗号化スキームはそれを達成できません。それらは、一部のコンピューターが何らかのアクションを実行したことを示すことができるだけです。暗号学者は、コンピュータが人間のエージェントとして機能し、コンピュータのアクションが人間のアクションの代わりになることができると仮定するのが好きですが、これは合理的な仮定ではありません。たとえば、ユーザーのコンピューター上のマルウェアは、人間の同意なしに秘密キーを適用できます。

    基本的に、否認防止スキームに関する暗号研究のほとんどは、間違った脅威モデルを持っています。これは、発見されて以来欠陥があったという仮定に基づいています。

さらに詳しく知りたい場合は、暗号文学における「否認防止」と呼ばれるものと、弁護士が適切と認めるものとの間のギャップについて、多くのことが発表されています。次に、詳細を確認できる出版物の例を示します。

73
D.W.

否認防止とは、発表された作者が実際にメッセージを書いたという証拠を持つことであり、そのような証拠は、その作者の同意なしでも検証できます。作者はできません repudiate彼のメッセージ。

これには、非対称暗号化(作成者の同意なしに検証を実行できるため、作成者が所有する可能性のある秘密鍵を使用できないため)、つまり、そのためのツールであるデジタル署名が必要です。

ただし、デジタル署名を使用すると、作業の半分しか完了しておらず、それは簡単な半分です。デジタル署名では、「著者はボブです」とはわかりません。 「作者は、この公開鍵に関連付けられた秘密鍵を管理する人です」と伝えています。それでも、ボブの公開鍵をボブのIDと確実に(証明として受け入れられる方法で)リンクする方法が必要です。これが certificates の出番です。証明書は、アイデンティティ(「ボブ」)と公開鍵を含むデータの一部であり、「認証局」によって署名されています。CAが証明書に署名すると、「これはが所有する公開鍵ですその男」。 CAはそれ自体がデジタル署名を使用するため、否認防止の範囲にも該当します。証明書は、CAが正直で信頼できる手順を使用している限り、公開鍵がボブの唯一のものであることを「証明」します(例:ボブと直接会う) IDカードの確認に直面します)、キーとボブの間にリンクを確立します。 CAが失敗した場合、間違った証明書を使用してCAを訴えることができます。実際的な観点から見ると、CAの主な関心は、証明書を自動的に検証できることであり、単一のCA公開鍵を知っていれば、CAが作成した何百万もの証明書を検証するのに十分です。 Webブラウザーは、HTTPSサイトに接続するときにそれを行います。ブラウザーのコード(またはオペレーティングシステム)にハードコードされている「ルートCA」に対してサーバーの証明書を検証します。インターネット全体を確認するには、数十のルートCA公開鍵で十分です。

つまり、デジタル署名は適切な暗号化ツールですが、ほとんどのソリューションは非暗号化です。それは主に手続きの問題であり、弁護士と互換性のある膨大な数の論文です。

37
Thomas Pornin

また、メッセージへの署名に使用される秘密鍵にアクセスできるのはあなただけであるという保証がある場合にも役立ちます。たとえば、秘密キーのコピーが何らかの種類のキーエスクローサービスによっても保持されている場合、否認防止を主張するのは困難です。エスクローデータベースへのアクセス」。

X.509証明書には、keyusage属性に「否認防止」ビットがあり、キーの使用目的を識別します。 rfc528 これについて話します。

12
David Gelhar

None Repudiationは、リクエスタからオーソライザへ、またオーソライザからリクエスタへ行われたトランザクションの証明を持っていることを意味します。これは、取引を行った人の情報を含む電子的な証明です。

eg:クライアントは銀行に行き、銀行口座のパスワードの変更を要求します。窓口係または承認者はクライアントを支援しますが、生体認証を使用してシステムにログインする必要があります。これは、クライアントの銀行口座に問題が発生した場合にクライアントを支援していた人物を確実に特定するためです。これは調査チームがクライアントの銀行口座を担当していた人物を追跡できます。これは生体認証アプリケーションであるため、承認者は拒否できません。クライアントの銀行口座に何らかの形の詐欺がある場合に彼/彼女に向けられている非難。

クライアントは、バイオメトリクスアプリケーションを使用して、本当に銀行に来てその変更要求を行ったことを確認します。時には、銀行口座の所有者が誰かを銀行に送って機密情報に変更を加えます。 none否認防止は、銀行に来た人を特定し、クライアントの銀行口座の詳細に何らかの不正があった場合に変更要求を行ったことを確認するための証拠として使用されます。

機密データの変更に関するボールト(レポート)があり、変更前および変更要求が行われた後にすべての情報が表示されます。このレポートには、変更要求を行ったクライアントの詳細と、クライアントによる変更を承認した承認者の詳細も表示されます。このレポートは、変更後にクライアントの銀行口座で詐欺が報告されたときに調査チームが使用できます。

2
Tshekedi

指紋や顔認識などの生体認証の一部の形式は、不正に複製するための最も簡単な認証方法であることに注意することが重要です。すべての場合において、生体認証データはファイルに保存され、記録されたデータと一致することに注意してください。データファイルの盗難の可能性は、それが "ボブ"であるか、それともアクションを実行していないかについての同じ議論にすぐに戻ります。

1
Bob