2

root アクセス権のないリモート サーバーからセッション ID とキーを取得しています。私自身の理由でこのデータを暗号化したいのですが、w/e のためにキーを API サーバーに送り返す必要がある場合は、復号化する必要があります。私が理解しているように、SHA ハッシュを復号化することはできません。セッション情報を特定のパスフレーズまたは「復号化キー」を使用して暗号化された変数に渡し、後で復号化できるようにする方法はありますか?

私は検索し、件名をググりました。判明したのは、SHA1 に保存されているパスワードを解読しようとしている人だけです。これは、ブルート フォース/ハッシュの衝突の方法を学習する初心者向けの試みではありません。これには正当な目的があります。

4

3 に答える 3

6

SHA-1ハッシュを「復号化」することはできません。これは「ダイジェスト」(または「署名」)アルゴリズムであり、暗号化アルゴリズムではありません。

あなたが持っている他のテキストが同じ署名を持っているかどうかを確認することしかできません。その点で、SHA-1は非常に強力なアルゴリズムですが、特にパスワードなどの低エントロピーのソースデータで使用する場合は弱点があります。

于 2012-10-25T22:21:02.227 に答える
1

私に関する限り、SHA-1は一方向のハッシュ方式にすぎないため、SHA-1ハッシュを復号化する方法はありません。人々がそれらを解読できたとしたら、SHA-1は非常に安全なハッシュアルゴリズムの方法ではありません。

于 2012-10-25T22:21:42.660 に答える
0

ハッシュと暗号化には大きな違いがあります。

ハッシュは一方向であることを意味します。つまり、何かをハッシュすると、それはハッシュとしてのみ存在し、出力から入力を判別できないはずです。SHA-1はその1つです。

ただし、暗号化については、まさにそれを実行する必要があります。これを達成するためのさまざまな方法もあります。対称暗号化または非対称暗号化を使用できます。違いは、対称暗号化の場合、データの暗号化と復号化に同じキーが必要になることです。この例は、DESおよびAESです。非対称暗号化には、データの暗号化と復号化に異なるキーがあります。これらをデータの署名に使用することもできます。この例は、RSAまたはElGamalです。

于 2012-10-25T22:26:43.673 に答える