สมมติว่าคุณมีข้อความและคุณต้องการให้ส่งไปให้เพื่อนของคุณ แต่คุณไม่ต้องการให้คนอื่นอ่าน นั่นอาจหมายความว่าคุณต้องการเข้ารหัสเพื่อให้มีเพียงคุณและเพื่อนของคุณเท่านั้นที่สามารถอ่านได้ แต่มีปัญหาคือคุณและเพื่อนของคุณลืมที่จะยอมรับวิธีการเข้ารหัสดังนั้นหากคุณส่งข้อความถึงพวกเขาพวกเขาจะไม่สามารถถอดรหัสได้!
หลังจากคิดถึงเรื่องนี้ไประยะหนึ่งแล้วคุณตัดสินใจที่จะส่งรหัสให้เพื่อนของคุณเพื่อเข้ารหัสข้อความของคุณพร้อมกับข้อความนั้น เพื่อนของคุณฉลาดมากดังนั้นพวกเขาจึงสามารถหาวิธีถอดรหัสข้อความได้โดยศึกษาวิธีการเข้ารหัส
แน่นอนเนื่องจากคนอื่นอาจอ่านข้อความคุณต้องการเลือกรูปแบบการเข้ารหัสที่ทำให้ยากที่สุดในการถอดรหัส (รูปแบบการถอดรหัส)
ภารกิจของตำรวจ
ในความท้าทายนี้ตำรวจจะเล่นบทบาทของนักเขียน: คุณจะออกแบบรูปแบบการเข้ารหัสที่แปลงสตริงเป็นสตริง อย่างไรก็ตามรูปแบบการเข้ารหัสนี้จะต้องbijectiveซึ่งหมายความว่าไม่มีสองสายที่ต้องแมปไปยังอีกสายหนึ่งและทุกสายสามารถแมปด้วยการป้อนข้อมูล จะต้องใช้เพียงหนึ่งอินพุต - สตริงที่จะเข้ารหัส
จากนั้นคุณจะโพสต์รหัสบางอย่างที่ทำการเข้ารหัสและข้อความเดียวที่เข้ารหัสด้วยรูปแบบที่รายละเอียดรหัสของคุณ
เนื่องจากคุณจะจ่ายเงินโดยไบต์กับข้อความที่ส่งคะแนนของคุณจะมีความยาวของรหัสของคุณบวกความยาวของ ciphertext หากคำตอบของคุณแตกคุณจะมีคะแนนอนันต์
หลังจากหนึ่งสัปดาห์คุณอาจเปิดเผยข้อความและทำเครื่องหมายคำตอบของคุณเป็นที่ปลอดภัย คำตอบที่ปลอดภัยคือคำตอบที่ไม่สามารถถอดรหัสได้
ภารกิจของโจร
โจรจะเล่นเป็นเพื่อนของนักเขียนหรือคนกลางที่เป็นอันตราย (ไม่มีความแตกต่างอย่างมีนัยสำคัญ แต่คุณสามารถสวมบทบาทเป็นถ้ามันทำให้สนุกมากขึ้นที่จะทำ) พวกเขาจะใช้รูปแบบการเข้ารหัสและข้อความและพยายามหาข้อความที่เข้ารหัส เมื่อพวกเขารู้ข้อความที่เข้ารหัสแล้วพวกเขาจะโพสต์ในความคิดเห็น (จะไม่มีเธรดโจรแยกต่างหากสำหรับคำถามนี้)
ผู้ชนะจะเป็นโจรที่มีรอยแตกมากที่สุด
นี่คือตัวอย่างของวิธีการแก้ไขปัญหารอยแตก