ทั้งคู่ไม่ชัดเจนนัก โดยเฉพาะอย่างยิ่งถ้าคุณไม่เข้าใจคณิตศาสตร์ที่เกี่ยวข้อง แม้ว่าทั้งสองจะมีคำอธิบายที่คล้ายคลึงกันมากก็ตาม ฉันจะบอกว่าหนังสือเล่มแรกมีคำอธิบายที่ดีกว่าสำหรับความสับสน แต่เล่มที่สองดีกว่าสำหรับการแพร่กระจาย แม้ว่ามันจะเป็นกุญแจสำคัญที่ถูกกระจายไปในข้อความธรรมดาเพื่อสร้างข้อความรหัสในรูปแบบ "สับสน" ดังนั้นคุณจึงไม่สามารถ "กระจาย " ไม่ว่าจะเป็นจากไซเฟอร์เท็กซ์
ในความเป็นจริง ด้วยเลเยอร์ "ความสับสน" ที่ใหญ่พอ คุณไม่จำเป็นต้องมีเลเยอร์ "การแพร่กระจาย" ความสับสนหมายถึงการดำเนินการที่ไม่ใช่เชิงเส้น และการแพร่กระจายของการดำเนินการเชิงเส้น การดำเนินการที่ไม่ใช่เชิงเส้นขนาดใหญ่มีราคาแพงมากในการคำนวณ ซึ่งเป็นสาเหตุที่การดำเนินการที่ไม่ใช่เชิงเส้นขนาดเล็กถูกรวมเข้ากับการดำเนินการเชิงเส้นเพื่อให้งานสำเร็จลุล่วง
การรวมกันของการผสมเชิงเส้นและแบบไม่ซับทำให้ความสัมพันธ์ระหว่างไซเฟอร์เท็กซ์กับคีย์ และระหว่างไซเฟอร์เท็กซ์กับเพลนเท็กซ์ เป็นปัญหาทางคณิตศาสตร์ที่ซับซ้อนอย่างยิ่งที่ต้องแก้ถ้ามีคนรู้ข้อความธรรมดาและข้อความเข้ารหัส คุณไม่ต้องการให้พวกเขาพบคีย์ และถ้าเขารู้เฉพาะข้อความเข้ารหัส คุณไม่ต้องการให้พวกเขาพบคีย์หรือข้อความธรรมดา
ช่วยให้เห็นว่าสิ่งเหล่านี้นำไปใช้กับรหัสทั่วไปเช่น AES ได้อย่างไร AES ใช้บล็อก 128 บิตพร้อม sbox ที่ไม่ใช่เชิงเส้น 8 บิต และการคูณเมทริกซ์เชิงเส้นในฟิลด์จำกัดที่ทำงานบนบล็อก 32 บิตใน 4 เส้นทางคู่ขนาน
ใน AES ความสับสนมาจาก s-box (เลเยอร์ย่อยไบต์) ซึ่งใช้ในฟังก์ชันรอบเช่นเดียวกับกำหนดการสำคัญ การแพร่กระจายมาจากการทำงานของเมทริกซ์ (เลเยอร์คอลัมน์ผสม) ร่วมกับการเลื่อนแถวเพื่อให้บิตอินพุตทั้งหมดผสมกันอย่างสมบูรณ์ตลอด 2 รอบ ร่วมกับวิธีสร้างคีย์ย่อยแบบกลมในกำหนดการคีย์
เมื่อมีจำนวนรอบเพียงพอ การแก้ปัญหาทางคณิตศาสตร์จะยากกว่าการบังคับคีย์อย่างโหดเหี้ยม และ AES ก็มีสิ่งที่ถูกต้องในระดับเดียวกัน แน่นอนว่ามันซับซ้อนกว่านั้น แต่นั่นคือบันทึกของหน้าผา
เอื้อเฟื้อภาพโดยวิกิพีเดีย