Score:1

เป็นไปได้ไหมที่จะคำนวณความยาวข้อความธรรมดาของข้อความไซเฟอร์เท็กซ์ที่เข้ารหัส RC5-32

ธง sz

การคำนวณขนาดที่เข้ารหัส RC5 ของข้อมูลใด ๆ ทำได้ง่ายเพียงแค่ปัดเศษความยาวข้อความธรรมดาให้เป็นจำนวนทวีคูณที่ใกล้ที่สุดของ 8 สิ่งที่ฉันสงสัยคือสามารถทำได้ในทิศทางอื่นหรือไม่ เพื่อให้ได้ความยาวของข้อมูลข้อความธรรมดาดั้งเดิมที่กำหนด ไซเฟอร์เท็กซ์เห็นได้ชัดว่าข้อมูลนี้ไม่ถูกเปิดเผยจนกว่าการถอดรหัสจะเกิดขึ้นจริง แต่จะสามารถติดตาม/คำนวณได้หรือไม่ ในระหว่าง กระบวนการถอดรหัส?

ฉันกำลังทำงานกับ นี้ การนำการถอดรหัส RC-5 ไปใช้ (ถอดรหัสไบนารีของ C++, นำไปใช้ใหม่ใน C#) ซึ่งจะถอดรหัสข้อมูลเป็นกลุ่มขนาด 4 ไบต์ และคัดลอกผลลัพธ์ไปยังบัฟเฟอร์เอาต์พุต ปัญหาคือ มีขยะจำนวนมากในบัฟเฟอร์เอาต์พุตหลังจากสิ้นสุดข้อมูลที่ถอดรหัส ดังนั้นจึงเป็นการยากที่จะระบุว่าข้อมูลจริงสิ้นสุดที่ใด มันง่ายถ้าข้อความธรรมดาเป็นสตริงที่สิ้นสุดด้วยค่า null แต่ฉันกำลังมองหาวิธีแก้ปัญหาทั่วไปที่สามารถทำงานกับข้อมูลไบนารีตามอำเภอใจ

Score:2
ธง my

สิ่งที่ฉันสงสัยคือสามารถทำได้ในทิศทางอื่นหรือไม่เพื่อให้ได้ความยาวของข้อมูลข้อความธรรมดาดั้งเดิมที่กำหนดให้เป็นไซเฟอร์เท็กซ์

RC5 เป็นรหัสบล็อก สิ่งที่คุณถามเกี่ยวกับโหมดการเข้ารหัสบล็อก (และการเติมข้อมูลที่ใช้งานนั้นใช้); มีข้อมูลไม่เพียงพอที่จะตอบคำถามเฉพาะของคุณ แต่ฉันเดาได้

"การเข้ารหัสแบบบล็อก" เป็นการแปลงกลับจากบิตสตริง n บิต (ในกรณีนี้ $n=64$) เป็นบิตสตริง n บิต สิ่งที่ "โหมดการเข้ารหัสบล็อก" ทำก็คือ "การเข้ารหัสบล็อก" และใช้ในลักษณะที่จะทำให้เกิดการดำเนินการที่เป็นประโยชน์โดยทั่วไปมากขึ้น เช่น การเข้ารหัสข้อความธรรมดาที่มีความยาวตามอำเภอใจ

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

ช่องว่างภายในนี้ออกแบบมาเพื่อให้ลบช่องว่างในเวลาถอดรหัสได้ง่าย อย่างไรก็ตาม มีความเป็นไปได้หลายประการ และรหัสถอดรหัสที่คุณให้ไม่ได้บอกเราว่ากำลังใช้รหัสใดอยู่ ในโหมดที่ใช้บ่อยที่สุด ไบต์สุดท้ายใช้เพื่อระบุจำนวนของไบต์การเติมที่เพิ่มเข้ามา คุณอาจต้องการดูว่าเป็นเช่นนั้นหรือไม่ในตัวอย่างของคุณ

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา