ฉันจะสร้าง มีเอกลักษณ์ ค่าสุ่มตามช่วงของค่าอินพุตที่ไม่ซ้ำกัน
กล่าวอีกนัยหนึ่ง ฉันมีช่วงของค่าอินพุตซึ่งตัวเลขเหล่านี้เป็นส่วนหนึ่งของชุดข้อมูล (เช่น ช่วงของหมายเลขซีเรียลที่เพิ่มขึ้นทีละค่า) และไม่มีค่าที่ซ้ำกัน ฉันต้องการสร้างค่าสุ่มตามแต่ละค่าอินพุตซึ่งไม่ควรมีค่าซ้ำกันในค่าเอาต์พุต
สิ่งแรกที่ฉันนึกถึงคือการใช้รหัสบล็อกมาตรฐานเช่น AES เนื่องจากเป็นเช่นนั้น ฉีด และถ้าอินพุตของฟังก์ชันนี้ไม่มีค่าที่ซ้ำกัน ก็รับประกันได้ว่าเอาต์พุตจะไม่ซ้ำเช่นกัน
ดังนั้นความกังวลของฉันคือวิธีการสร้างค่าสุ่ม (หลอก) นี้ปลอดภัยเพียงพอหรือไม่
เช่น. ถ้ามีคนป้อนค่าอินพุตต่อเนื่องกัน (ข้อความธรรมดา) 1,000 ค่าและค่าเอาต์พุต 1,000 ค่า (ข้อความไซเฟอร์เท็กซ์) ต่อค่าอินพุตเหล่านี้ เขา/เธอสามารถทำนายค่าสุ่มเอาต์พุตสำหรับ 1,001 ได้หรือไม่ไทย ค่าเข้า?
กล่าวอีกนัยหนึ่ง เป็นไปได้หรือไม่ที่ผู้โจมตีจะสร้างแบบจำลองเครื่องกำเนิดสุ่มหลอกนี้ในทางคณิตศาสตร์เพื่อสร้างค่าสุ่มใหม่โดยไม่ต้องใช้รหัสในรหัสบล็อก AES
ฉันรู้ว่ามีมาตรฐานบางอย่างสำหรับ "KDF" เช่นที่กำหนดไว้ใน NIST SP-800 ซีรีส์ อย่างไรก็ตามความเป็นเอกลักษณ์ของค่าสุ่มไม่ได้เป็นปัญหา (ถ้าฉันจำไม่ผิด) แต่นี่เป็นข้อกังวลในแอปพลิเคชันเป้าหมายของฉัน