HASHアルゴリズムとCSDNパスワード漏洩事件についての簡単な説明

HASHアルゴリズムとCSDNパスワード漏洩事件についての簡単な説明

CSDNパスワード漏洩事件では、ネットユーザーらはパスワードのプレーンテキスト保存とMD5保存の問題について言及した。現在、多くのサイトではパスワードの保存にMD5アルゴリズムを使用していますが、HASHアルゴリズムについては依然として誤解が多く、再理解が必要です。

1. HASHアルゴリズムは暗号化アルゴリズムではない

HASH アルゴリズムはメッセージ ダイジェスト アルゴリズムであり、暗号化アルゴリズムではありません。ただし、一方向操作であるため、ある程度の不可逆性があり、暗号化アルゴリズムのコンポーネントになります。完全な暗号化メカニズムは、HASH アルゴリズムのみに依存することはできません。

2. HASHアルゴリズムの衝突現象

HASH アルゴリズムは、任意の情報を固定長の文字列に精製するものと理解できます。世の中の情報量は無限であるため、固定長の文字列ではすべての要約を表現できず、いわゆる「衝突」、つまり 2 つの同一の情報源の要約が同じになるという状況が発生します。 2004 年、山東大学の王暁雲氏は「衝突ペア」を素早く見つけるアルゴリズムを提案し、セキュリティ コミュニティから HASH アルゴリズムへの大きな注目を集めました。NIST は 2010 年までに MD5 と SHA-1 の使用を中止することを提案しました。 現在も使用可能な HASH アルゴリズムには、SHA-256、SHA-512、SHA-224、SHA-384 などがあります。2011 年 2 月の FIPS180-4 ドラフトでは、SHA-512/224 と SHA-512/256 も追加されました。これらのアルゴリズムはすべて SHA-2 ファミリからのものであり、SHA3-256 も間もなく登場します。 衝突についてもう 1 つ言わなければならないことは、衝突ペアが見つかる可能性はあるものの、HASH アルゴリズム全体が否定されるわけではないということです。たとえば、契約テキスト全体が HASH 化されてデジタル署名されている場合、衝突ペアが見つかった場合、通常のテキストに復元することは困難です。文字化けした文字の集まりであれば、誰もこのファイルを認識できず、HASH を改ざんせずに契約を意味のある形で変更することはできません。

3. ハッシュクラッキングとソーシャルエンジニアリング

HASH アルゴリズム自体は一方向であり、直接解読することは困難です。既存の解読方法はすべて、一般的な文字の HASH 値を計算し、それを逆順に比較します。たとえば、パスワードが 123456 で、MD5 値が 1ab9744e58acee3ed8f03508cbf82bf5 の場合、データベースで MD5 値を検索するとパスワードがわかります。ソーシャルエンジニアリングを応用することで、一般的に使用されている多数のパスワードを直接解読することができます。

4. HASHアルゴリズムの適切な使用

1. 古いアルゴリズムを廃止し、少なくとも SHA-256 を使用します。SHA-512 は 64 ビット オペレーティング システムでの計算速度が優れているため、推奨されます。

2. 適度に「SALT」、つまり干渉弦を追加します。例えば: SALT1=C`3/$xUM,5ltL4pze;avf9#kgmET^ SALT2=1qYIs,vOSfn%UHhm5+3TX:#iety0d HASH SHA-512 (SALT1+ユーザー名+SALT2+パスワード) を計算すると、ソーシャルエンジニアリングや現在のブルートフォース攻撃では解決できなくなります。

3. HASH アルゴリズムを組み合わせて使用​​しても安全であると想定しないでください。たとえば、MD5+SHA1 または SHA1(MD5) のネストは無効であることが証明されています。

【編集者のおすすめ】

  1. データ漏洩防止は、常に変化する状況に対しても一定でなければならない
  2. データ漏洩防止技術の誤解を解く
  3. データ漏洩防止ソリューションの信頼性を判断する方法
  4. 企業のモバイルデバイスからのデータ漏洩を防ぐ方法
  5. 人的要因による企業データ漏洩を防ぐ方法の説明

<<:  データベースセキュリティとテーブル検索攻撃における MD5 暗号化アルゴリズムの応用

>>:  Java スパニングツリー構造 ポイント間の最短経路アルゴリズム

ブログ    

推薦する

1 つの記事でニューラル ネットワークを理解する

[51CTO.com からのオリジナル記事]人工知能は近年非常に人気の高い技術です。99 歳から歩け...

TensorFlow を使用して Android デバイスでディープラーニング推論を実装する方法

[[211369]]個人や企業にとって、ローカルデバイスでディープラーニング推論を実行することが望ま...

新しい機械学習の考え方を使用して、自然な異常と人間の誤解を区別する

ディープニューラルネットワークは、数学モデルを使用して画像やその他のデータを処理する多層システムであ...

ジェネレーティブ AI がデータ センターの要件をどのように変えるか

データ センターとは何ですか。どのように使用しますか。具体的には、データ センターにはどのような種類...

機械学習プロジェクトを管理および組織化する方法

この記事では主に、機械学習プロジェクトの編成と管理に関する実践的な経験をいくつか紹介します。パイソン...

Splunk は 2018 年の人工知能と機械学習の 3 つのトレンドを予測しています

調査会社ガートナーは、「人工知能(AI)と高度な機械学習技術は、広く注目されている新興技術であり、企...

...

Apple M3全シリーズのランニングスコアを公開! 16コアのMaxが24コアのM2 Ultraを上回り、IntelとAMDの主力CPUと並ぶ

Appleの記者会見を受けて、M3シリーズチップは新しいMac製品とともについに実用化されることにな...

コンピュータービジョンにおける次の大きな進歩はどこから生まれるのでしょうか?

翻訳者 | ブガッティレビュー | Chonglou 1950 年代のコンピューター ビジョンの最初...

...

...

Node.jsを使用してテキストコンテンツをセグメント化し、キーワードを抽出する

Zhongcheng が翻訳した記事にはタグが付けられています。ユーザーはタグに基づいて興味のある記...

CES 2024 AIスマートホームのハイライト

ChatGPT が AI を話題にしてから 1 年以上経ちましたが、今年の Consumer Ele...

...