ベストアンサー
全員が異なるパスワードを持っているように、同様にデジタルブロックも同じ概念を採用しており、SHA256ハッシュと呼ばれています。
これはNSAによって開発され、ブロックごとに一意の識別子を作成します。高いセキュリティを含む多くの利点があり、多くのパスワード保護アプリケーションは同じパスワードを同じように使用します。
の興味深い部分SHA256は、アルゴリズムが完全にオープンであり、以下のリンクをクリックして、本の第1章で詳細を読むこともできます。
https://www.staff.science.uu.nl/~tel00101/liter/books/CryptCont.pdf
SHA256は、メモリに必要なビット数です。ハッシュ値の長さは64文字で、アルファベットと数字は[0-9]から[A-F]の範囲です。すべての文字が4ビットを占めるため=> 64 * 4 = 256ビットのハッシュ値の情報。
このハッシュは、あらゆるタイプのドキュメント/ビデオ/ gif /画像またはその他の考えられるあらゆるものに使用できます。約。提供されたものすべてに固有のハッシュ値を作成します。
データのハッシュ値を作成してみて、それを少しだけ楽しみたい場合は、ここに移動してください。 Webサイトにデータを追加しようとすると、データの長さが1文字または1,000万文字の場合、SHA256は64文字の長さのハッシュ値を提供し、そのテキストを一意に識別し、データに文字を変更しても、ハッシュ値の変更。
要件について言えば、SHA256アルゴリズムには5つの要件があります。
1。これは1つの方法です。つまり、ハッシュ値からデータを復元することはできません。
2。これは決定論的です。つまり、同じデータにアルゴリズムを再度適用すると、同じハッシュ値が得られます。
3。高速計算
4。アバランシェ効果–つまり、同じデータを取得して少しのように小さな変更を加えると、ハッシュ値は完全に異なります。
5。衝突に耐える必要があります。つまり、値が64文字に制限されているため、2つの異なるデータでハッシュ値が同じになる場合。
これはすべてSHA256アルゴリズムに関するものであり、詳細を知りたい場合は、上記のリンクを確認してください。
回答
これを聞いたことがない人に公開鍵と秘密鍵の概念を説明するのは、簡単な作業ではありません。私はこれを常に開発者と行っており、少なくとも2、3回は行う必要があります。あなたが参照している記事/本の著者は、デジタル署名の意味を伝えるために最善を尽くしており、通常、ハッシュが暗号化されていると言った瞬間に誰もが迷子になります。記事/本の抜粋は完全に真実です。私自身の言葉で説明しようと思います。公開鍵暗号化(別名非対称暗号化)誰にも読まれたくないテキスト/電子メールを送信したい場合は、a)公開鍵を取得しますb)データを暗号化しますc)送信します。あなたが受け取る、あなたは秘密鍵を持っている唯一の人ですa)あなたはあなたの秘密鍵でデータを解読します解読できるのであなたは今テキストを読むことができます今私があなたに送っているものが非常に重要であると仮定しましょう(契約を言いましょう何かを雇ったり購入したり、何かを支払うことに同意したりするために)復号化されたテキストは、実際に送信されたものを証明しますか?Fromメールに私からのメッセージが記載されていても、気が変わって送信したことがないと主張できますか? 「メッセージの整合性を確認するにはどうすればよいですか?」メッセージが「適切な人物」から送信されたことをどのように確認できますか?メッセージダイジェスト:通常、MD5(これ以上ではない)SHA1またはSHA2など。オープンソースソフトウェアをダウンロードすると、常にメッセージダイジェスト値が表示されます。本当にソースコードを知りたい場合はダウンロードは誰によっても変更されていないため、ファイルのハッシュを再計算する必要があります。この種のことは、2つのファイルが同じであることを証明します。 (オープンソースサイトにアップロードされたものとダウンロードしたもの)テキストのハッシュを計算して個別に送信した場合、メッセージは私からのものだと思いますか? (以前の例..雇用契約など)? 「なりすまし」というメッセージを送信できる人は誰でも、ハッシュを送信できます。だから今私のデジタル署名または整合性。それが私から来たことを証明する唯一の方法は、それを使って何かをするために秘密鍵を「所有」しなければならないということです。 a)メッセージが誰にも変更されていない(1時間あたり100ドルで雇用されていると言っても、50ドルまたは200ドルでメッセージが表示される場合)b)実際に私から送信されたものであり、取り戻すことはできません。私の言葉c)あなたは検証できるはずです-メッセージはきれいで改ざんされておらず、適切な人から来ました解決策はデジタル署名です。ユースケースをもう一度:重要なデータ(雇用または購入の契約など)が含まれている可能性のあるメッセージを送信しています。データが私からのものであり、誰もデータを変更していないことを確認したいと思います。 a)メッセージを取得して一方向ハッシュ(メッセージダイジェスト)-SHA1(例)を生成しますb)一方向ハッシュを取得して秘密鍵を使用して署名を作成します-これは私が秘密鍵を持っていることを証明します。注:ここではENCRYPTという単語を使用していません…何も不足しているため、Signatureは(ハッシュ値、秘密鍵)を使用して「Signature」を生成するアルゴリズムまたはメソッドだと思います。 c)「Signature」-Receiverを使用してメッセージを送信します。メッセージを受信したら、誰も変更されていないことを確認し(したがって、同じダイジェストアルゴリズムSHA1を使用してHASH値を再生成します)、同じ署名アルゴリズムを使用しますが、今回は公開鍵(それはあなたが持っているものです)署名(ハッシュ(元のメッセージ)、公開鍵)これは、メッセージが署名で送信されたときに生成されたものと同じ値を与えるはずです。これで、メッセージの整合性が損なわれていないことを証明できます(データが変更されるとダイジェスト値が変更されるため、署名値が変更されます)VPNの場合、署名値でタグ付けされたパケット。次に、このミックスに暗号化を追加しましょう。誰かにメッセージを読んでほしくない場合(..Sigantureを使用すると、契約を100ドルで雇うように変更することはできませんが、100ドルを提供していることを知ることができます)私のデータを取得し、「暗号化」して「あなたの “公開鍵” YORU “秘密鍵でメッセージと暗号化を受け取ります。これがお役に立てば幸いです。