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つの方法

ブログ    
ブログ    
ブログ    

推薦する

AIが消費者の選択に及ぼす影響

人工知能 (AI) は、マーケティングと広告のダイナミックな環境において変革をもたらす力として登場し...

私の国は、5G、人工知能、自動運転で目覚ましい成果を上げ、革新的な国の仲間入りを果たしました。

世界の潮流は力強く前進しています。科学研究​​と探究のペースを止めれば、井戸の中で空を眺め、満足して...

自動運転技術アーキテクチャ:安全でインテリジェントな交通システムの構築

人工知能分野における重要なイノベーションとして、自動運転技術は将来の交通の様相を徐々に変えつつありま...

...

AIチップと人工知能産業は密接に連携している

[[355495]]人類社会は情報化から知能化へと移行しています。人工知能は知能化を実現するための重...

人工知能による影の検出と除去、反射に基づく影の検出と除去方法を実現

AI による影の検出と除去、反射ベースの影の検出と除去方法に向けて、概要: 影は画像によく見られる要...

IEEE テクノロジー分野賞発表: ML パイオニアがリストに、中国本土から受賞した唯一の学者は清華大学の学生

[[409353]] IEEE が再び栄誉を授与する時が来ました。 7月2日、米国電気電子学会(IE...

生成AIは昨年人気が高まったが、米国のIT関連の仕事の数はわずか700件しか増加しなかった

1月8日のニュースによると、2023年には、生成型人工知能が企業や投資家の間で大きなブームを引き起こ...

企業は顧客サービスロボットをどのように選択すべきでしょうか?

現在、カスタマーサービス業界は質的な変化を遂げており、AIインテリジェントテクノロジーがカスタマーサ...

転移学習に使用される 4 つのコンピュータ ビジョン フィールド モデル

導入SOTA 事前トレーニング済みモデルを使用して、転移学習を通じて現実世界のコンピューター ビジョ...

...

人工知能教育の時代が到来。AIは何ができるのか?

[[265994]]最近、国際人工知能教育会議、第3回世界知能会議が相次いで開催され、さまざまなA...

ブースティングとバギング: 堅牢な機械学習アルゴリズムを開発する方法

導入機械学習とデータ サイエンスでは、単にデータを Python ライブラリに投入してその結果を活用...

2021年に理解すべき5つのAIコンセプト

人間の知能は、生物学を模倣することで模倣されるべきでしょうか? それとも、鳥類の生物学が航空宇宙工学...

機械学習: 決定木について

ロジスティック回帰の基本原理と勾配降下法の導出プロセスについて説明しました。このコードは、分類アルゴ...