理論的または実用的なハッシュアルゴリズムのクラスはありますか。そのクラスのアルゴリズムは、以下に示す定義に従って「再帰的」と見なされます。
- hash1 = algo1( "入力テキスト1")
- hash1 = algo1( "入力テキスト1" + hash1)
+演算子は、アルゴリズム(algo1)がまったく同じ結果を生成するように、出力(hash1)を結合して入力(「input text 1」)に戻す連結またはその他の指定された操作です。すなわち、入力と入力+出力の衝突。+演算子は両方の入力全体を結合する必要があり、アルゴは入力の一部を破棄しない場合があります。
アルゴリズムは、出力で高いエントロピーを生成する必要があります。出力を1つまたは両方の可能な入力に戻すのは暗号的に難しいかもしれませんが、そうする必要はありません。
私は数学者ではありませんが、良い答えには、このようなクラスのアルゴリズムが存在できない理由の証明が含まれる場合があります。ただし、これは抽象的な質問ではありません。システムにこのようなアルゴリズムが存在する場合、そのアルゴリズムを使用することに本当に興味があります。
これは、https://stackoverflow.com/questions/4823680/reflexive-hashに最初に投稿された質問の複製です