Java で一般的に使用されているいくつかの暗号化アルゴリズムは、最も強力なハッカーでも解読できません。

Java で一般的に使用されているいくつかの暗号化アルゴリズムは、最も強力なハッカーでも解読できません。

シンプルな Java 暗号化アルゴリズムは次のとおりです。

  • 厳密に言えば、BASE は暗号化アルゴリズムではなく、エンコード形式です。
  • MD (メッセージダイジェストアルゴリズム)
  • SHA (セキュアハッシュアルゴリズム)
  • HMAC (ハッシュメッセージ認証コード)

[[264359]]

1. ベース

Baseは、インターネット上でBitバイトコードを伝送するための最も一般的なエンコード方式の1つです。MIMEの詳細な仕様は、RFC~RFCで確認できます。ベースエンコーディングは、HTTP 環境でより長い識別情報を送信する場合に使用できます。たとえば、Java Persistence システム Hibernate では、Base を使用して、より長い識別子 (通常は 16 ビット UUID) を文字列としてエンコードし、HTTP フォームや HTTP GET URL のパラメータとして使用します。他のアプリケーションでは、バイナリ データを URL に配置するのに適した形式 (非表示のフォーム フィールドを含む) にエンコードする必要があることがよくあります。現時点では、Base エンコーディングは読み取り不可能であり、つまり、エンコードされたデータを肉眼で直接見ることはできません。 (出典:百度百科事典)

Java実装コード:

2. 医学博士

MD は Message-Digest Algorithm の略で、情報伝送の整合性と一貫性を確保するために使用されます。コンピュータで広く使われているハッシュアルゴリズム(要約アルゴリズム、ハッシュアルゴリズムとも訳される)の一つで、主流のプログラミング言語ではMDが一般的に実装されています。ハッシュ アルゴリズムの基本原理は、データ (漢字など) を別の固定長の値に変換することです。MD の前身には、MD、MD、MD などがあります。暗号化および復号化技術で広く使用されており、ファイルの検証によく使用されます。検証? ファイルのサイズに関係なく、MD 後に MD 値を生成できます。たとえば、現在の ISO キャリブレーションはすべて MD キャリブレーションです。どのように使用するのでしょうか? もちろん、ISO が MD を通過した後に MD 値を生成することです。通常、Linux-ISO をダウンロードした友人は、ダウンロード リンクの横に MD 文字列が表示されています。ファイルの整合性を確認するために使用されます。

Java実装:

MD アルゴリズムには次の特性があります。

  • 圧縮: 任意の長さのデータの場合、計算された MD 値の長さは固定されます。
  • 計算が簡単: 元のデータから MD 値を簡単に計算できます。
  • 改変防止: 元のデータに変更を加えると、たとえ数バイトしか変更されなかったとしても、結果として得られる MD 値に大きな違いが生じます。
  • 弱い衝突防止: 元のデータとその MD 値が与えられている場合、同じ MD 値を持つデータ (つまり、偽造されたデータ) を見つけることは非常に困難です。
  • 強力な衝突防止: 同じ MD 値を持つ 2 つの異なるデータを見つけることは非常に困難です。

MD の機能は、デジタル署名ソフトウェアを使用して秘密鍵に署名する前に、大量の情報を機密形式に「圧縮」することです (つまり、任意の長さのバイト文字列を特定の長さの 16 進数字文字列に変換します)。 MD の他に、sha-、RIPEMD、Haval などが有名です。

3番目のタイプ.SHA

セキュア ハッシュ アルゴリズムは、主にデジタル署名標準 (デジタル署名標準 DSS) で定義されているデジタル署名アルゴリズム (デジタル署名アルゴリズム DSA) に適用されます。長さが 1 ビット未満のメッセージの場合、SHA は 1 ビットのメッセージ ダイジェストを生成します。このアルゴリズムは、暗号化の専門家による長年の開発と改良を経て、ますます完成度が高まり、広く使用されるようになりました。このアルゴリズムの考え方は、平文を受け取り、それを不可逆な方法で(通常はより小さい)暗号文に変換することです。これは、入力コードの文字列(事前マッピングまたは情報と呼ばれる)を取得し、それをより短い固定ビット数の出力シーケンス、つまりハッシュ値(メッセージダイジェストまたは情報認証コードとも呼ばれる)に変換するプロセスとして簡単に理解することもできます。ハッシュ関数の値は平文の「指紋」や「要約」とも言えるため、ハッシュ値のデジタル署名は平文のデジタル署名とみなすことができます。

Java実装:

SHAとMDの比較:

どちらも MD から派生しているため、SHA と MD は非常によく似ています。したがって、それらの強度やその他の特性は似ていますが、いくつかの違いがあります。

  • 大きな違いは、SHA ダイジェストが MD ダイジェストよりも長いことです。ブルート フォース手法を使用すると、特定のメッセージのダイジェストと等しいダイジェストを持つメッセージを生成することの難しさは、MD の場合は ^ のオーダーの操作、SHA- の場合は ^ のオーダーの操作です。これにより、SHA-1 の強度が高まります。
  • 暗号解読に対するセキュリティ: MD は設計上、暗号解読攻撃に対して脆弱ですが、SHA- はそのような脅威に対して脆弱ではないようです。
  • 速度: SHA-4 は同じハードウェア上で MD よりも遅く実行されます。

4番目のタイプ。HMAC

HMAC(ハッシュメッセージ認証コード)は、鍵付きハッシュアルゴリズムに基づく認証プロトコルです。メッセージ認証コードの原理は、公開関数と鍵を使用して固定長の値を認証識別子として生成し、この識別子を使用してメッセージの整合性を識別することです。鍵は固定サイズの小さなデータブロック、つまりMACを生成するために使用され、メッセージに追加されて送信されます。受信者は、送信者と共有した鍵を使用して認証などを行います。

Java実装コード:

<<:  謎を解く:AI の神話と現実

>>:  アジャイル開発が機械学習に役立つ5つの方法

ブログ    

推薦する

新しい報告書が確認:慎重に扱わなければ、人工知能は現実版「ブラックミラー」になる

新しい報告によると、私たちは人工知能革命の瀬戸際に立っている。この革命において、私たちが作り出すテク...

顔認識の乱用は顔だけでなく他の部分にも害を及ぼす

[[432791]]中国消費者協会(以下、「中国消費者協会」)は10月28日、事業者に対し、個人情報...

AI時代には、ナレッジグラフとナレッジマネジメントの二重の価値を活用する必要がある

[[402551]]ナレッジマネジメントは企業と個人の両方にとって非常に重要です。従来の知識管理は、...

4つの高性能なデータ型、Pythonコレクションはコードの最適化とタスクの簡素化に役立ちます

この記事では、機械学習エンジニアの George Seif が、Python のコレクション モジュ...

Google のロボット工学プログラムは度重なる失敗からどのような教訓を得たのでしょうか?

Google は再びロボットの製造を開始する予定です。 。 。このニュースを伝えたとき、私は Go...

データセンター管理者は AI と ML の爆発的な増加にどのように備えればよいのでしょうか?

生成 AI と機械学習 (ML) は急速に一般の人々の意識に入り込み、これらの有望なテクノロジーの能...

AI教育改革の障害

近年、人工知能技術は最先端技術の代名詞として、徐々に生活の各分野に浸透しており、教育業界も例外ではあ...

マイクロソフトが新たなAIアクセス原則を発表、同社史上最大の投資計画

IT Homeは2月27日、2024年のモバイル・ワールド・コングレスでマイクロソフトのブラッド・ス...

ロボット市場はかつてないほど活況を呈しており、これらの5つのトレンドが今後の方向性となる可能性がある。

CCTVの報道によると、中国は世界最大のロボット市場となっている。今年1月から10月まで、中国の産...

...

マイクロソフト、クラウド移行のための企業向けビジネス管理ツールを提供するAIMプログラムを開始

Microsoft は最近、顧客がローカル ERP および CRM アプリケーションをクラウドに移行...

企業が機械学習アプリケーションから学ぶべき教訓

ビジネスの世界において機械学習 (ML) アプリケーションが継続的に宣伝され、大々的に宣伝されている...

何が足りないのでしょうか?現在の機械学習教育の欠点

[[347910]]ビッグデータダイジェスト制作出典: thegradient編集者: フィッシャー...

53ページのPDFがOpenAIの「AGIタイムライン」を公開、内部告発者:マスクの訴訟が状況を混乱させた

OpenAI の謎の Q* プロジェクトに関する新たな情報があります。今朝早く、54ページに及ぶGo...

...