序文プログラムでは、MD5 sha1 など、多くの暗号化アルゴリズムをよく見かけます。今日は、これらの暗号化アルゴリズムについて学びます。理解する前に、hashlib というモジュールについて知っておく必要があります。これは、現在 Python で文字の暗号化を提供しているモジュールです。暗号化する文字タイプはバイナリ エンコーディングであるため、文字列を直接暗号化するとエラーが発生します。
hashlib 内のすべてのハッシュ アルゴリズムのセットを取得するには、次の 2 つの方法のいずれかを使用できます。
以下では、一般的に使用される集中アルゴリズムを選択して説明します。 1. MD5MD5 は Message-Digest Algorithm 5 の略で、情報伝送の整合性と一貫性を確保するために使用されます。コンピュータで広く使われているハッシュアルゴリズム(要約アルゴリズム、ハッシュアルゴリズムとも訳される)の一つで、主流のプログラミング言語ではMD5が一般的に実装されています。ハッシュ アルゴリズムの基本原理は、データ (漢字など) を別の固定長の値に変換することです。MD5 の前身には、MD2、MD3、MD4 があります。 MD5 アルゴリズムには次の特性があります。 1. 圧縮: 任意の長さのデータに対して、計算された MD5 値の長さは固定されます。 2. 計算が簡単: 元のデータから MD5 値を計算するのは簡単です。 3. 改ざん防止: 元のデータに変更を加えると、たとえ 1 バイトだけ変更されたとしても、取得される MD5 値に大きな違いが生じます。 4. 強力な衝突防止: 元のデータとその MD5 値がわかっている場合、同じ MD5 値を持つデータ (つまり、偽造されたデータ) を見つけることは非常に困難です。 MD5 の機能は、デジタル署名ソフトウェアを使用して秘密鍵に署名する前に、大量の情報を機密形式に「圧縮」することです (つまり、任意の長さのバイト文字列を特定の長さの 16 進数字文字列に変換します)。 MD5 は最も一般的なダイジェスト アルゴリズムです。非常に高速で、通常は 32 ビットの 16 進文字列で表される固定の 128 ビット バイトの結果を生成します。
2. シャ1セキュア ハッシュ アルゴリズム SHA1 の結果は 160 ビットで、通常は 40 ビットの 16 進文字列で表されます。
3. sha224セキュアハッシュアルゴリズム
4. sha256セキュアハッシュアルゴリズム
5. sha384セキュアハッシュアルゴリズム
6. sha512セキュアハッシュアルゴリズム
7. 高度な暗号化上記の暗号化アルゴリズムは依然として非常に強力ですが、データベースの衝突によって元に戻される可能性があるという欠陥がまだあります。したがって、暗号化する前に暗号化アルゴリズムにカスタム キーを追加する必要があります。
要約するさて、今日はここまでです。主にmd5、sha1、sha224、sha256、sha384、sha512、高度な暗号化などの集中アルゴリズムを紹介しました。各アルゴリズムの特徴と使い方を簡単に紹介しました。次回の盛り上がりをお楽しみに! |
<<: Java プログラミング スキル - データ構造とアルゴリズム「ソート アルゴリズムの分類と紹介」
>>: 検討する価値がある: 197 億ドル、2021 年のマイクロソフトの AI 変革の道筋
人工知能の分野で大きな影響力を持つ企業は、金融市場においても並外れた成長と強さを見せています。 AI...
独自のコードを書くことができるマシンを構築することは、コンピューターサイエンスと人工知能の先駆者たち...
近年、ビッグデータとディープラーニングに基づく人工知能は、驚くべきコンピューティング能力と学習能力を...
ベルギーの通信会社は、10代の若者向けに「.comdom」というセキュリティアプリをリリースした。こ...
現在、人工知能や予測分析などのテクノロジーは、多くのストレージ製品に組み込まれています。これらのテク...
このパラメータ調整ツールは、実験結果の表形式表示、カスタムメモ、フロントエンド操作の記録の削除/非表...
DataOps プラットフォームの真の価値は、ビジネス ユーザーとアプリケーションがさまざまなデータ...
最近、ファーウェイの新生コミュニティ公式アカウントは、任正非のGTS人工知能応用セミナーでの講演を公...
ディアナ・リッチー翻訳者: ブガッティレビュアー: Qianshan 2022年以降、人工知能(AI...
TensorFlow と PyTorch フレームワーク間の戦いは長い間続いています。最近のニュー...
【51CTO.comオリジナル記事】 [51CTO オリジナル記事、パートナーサイトに転載する場合は...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...