มีคลาสของอัลกอริธึมการแฮชไม่ว่าจะเป็นทางทฤษฎีหรือปฏิบัติเช่นนั้นอัลกอริทึมในชั้นเรียนอาจถูกพิจารณาว่าเป็น 'แบบสะท้อน' ตามคำนิยามที่ให้ไว้ด้านล่าง:
- hash1 = algo1 ("ป้อนข้อความ 1")
- hash1 = algo1 ("ข้อความที่ป้อน 1" + hash1)
ตัวดำเนินการ + อาจเป็นการต่อข้อมูลหรือการดำเนินการที่ระบุอื่น ๆ เพื่อรวมเอาท์พุท (hash1) กลับไปที่อินพุต ("อินพุตข้อความ 1") เพื่อให้อัลกอริทึม (algo1) จะให้ผลลัพธ์ที่เหมือนกันทุกประการ เช่นการชนกับอินพุตและอินพุต + เอาต์พุต ผู้ประกอบการ + จะต้องรวมทั้งอินพุตทั้งหมดและอัลโกอาจไม่ทิ้งส่วนหนึ่งของอินพุต
อัลกอริทึมจะต้องผลิตเอนโทรปีสูงในผลลัพธ์ มันอาจ แต่ไม่จำเป็นต้องเป็นเรื่องยากที่จะเข้ารหัส cryptographically เพื่อย้อนกลับผลลัพธ์กลับไปยังหนึ่งหรือทั้งสองอินพุตที่เป็นไปได้
ฉันไม่ใช่นักคณิตศาสตร์ แต่คำตอบที่ดีอาจรวมถึงหลักฐานว่าทำไมคลาสอัลกอริธึมจึงไม่มีอยู่จริง อย่างไรก็ตามนี่ไม่ใช่คำถามที่เป็นนามธรรม ฉันสนใจที่จะใช้อัลกอริทึมแบบนี้ในระบบของฉันอย่างแท้จริงหากมีอยู่จริง
นี่เป็นคำถามซ้ำที่โพสต์ครั้งแรกที่/programming/4823680/reflexive-hash