Score:1

เป็นไปได้ไหมที่จะค้นหาคีย์ AES จากส่วนหนึ่งของคีย์, ไซเฟอร์เท็กซ์, เวกเตอร์การเริ่มต้น และโหมดการเข้ารหัส

ธง es

รายละเอียดดังต่อไปนี้จะได้รับ:

  • คีย์บางส่วน: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011
  • เวกเตอร์เริ่มต้น: E898EF8E91F8C9B201E6E29DF87EE152
  • Ciphertext บล็อก 1: 14B8D1412766A8520BACE4598F8AFAEE
  • Ciphertext บล็อก 2: 7E687A49015FA6F1B914635325A6361B
  • Ciphertext บล็อก 3: 8AD191394EF79CEC4B5A256313632CD4
  • Ciphertext บล็อก 4: 8BB4D49F3FA7A917CDF02ECCAA8C4765
  • โหมด CBC ไม่มีการเติม
  • ชุดตัวอักษร: ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890â´â~@#$%^&*(){}[]+=-_<>,.?/!:\;â|"
  • ข้อมูลชุดอักขระ: ช่วง [32,127), เข้ารหัส ASCII, อักขระแต่ละตัวคือ 8 บิต

ความคิดของฉันคือคุณจะต้องถอดรหัสบล็อกข้อความไซเฟอร์แต่ละบล็อกด้วยคีย์ 32 บิตที่รู้จักแต่ละอันและทำงานให้เสร็จ ปัญหาคือบล็อกไซเฟอร์เท็กซ์แรกมีคีย์ที่ไม่ตรงกัน (XXX ...)
ดังนั้น คุณจะได้รับข้อความธรรมดาของอักขระที่รู้จักทั้งหมด ยกเว้น 32 บิตแรก

kelalaka avatar
in flag
@ mti2935 ใช่ คำถามนั้นง่าย ( ฉันพลาดไปบางส่วน): คำแนะนำ: สร้างคีย์ ถอดรหัส และตรวจสอบว่าข้อความธรรมดาไม่มีไบต์ใด ๆ ที่ไม่ได้อยู่ในชุดอักขระ
kelalaka avatar
in flag
ไม่ คุณต้องใช้โหมด CBC เพื่อถอดรหัสและไม่มีช่องว่างภายใน หมายความว่าข้อความธรรมดาเป็นขนาดเต็มบล็อก ถอดรหัสบล็อกทั้งหมดและทดสอบ ทำไมคุณถึงคิดว่าเป็นข้อความธรรมดา 32 บิต การถอดรหัสบล็อกออกจากผลลัพธ์ 128 บิต คุณรู้หรือไม่ว่า block cipher ทำงานอย่างไร และโหมด CBC คืออะไร?
kelalaka avatar
in flag
1) คุณสามารถถอดรหัสบล็อกเต็มได้เท่านั้น ( 128 บิตสำหรับ AES) 2) ขณะค้นหา 2) คีย์ที่ได้รับเป็นบิตสตริง หมายความว่าคุณต้องค้นหาบิตที่ขาดหายไปของคีย์ 128 บิตหนึ่งคีย์ 3) หากต้องการ คุณสามารถถอดรหัสบล็อกข้อความเข้ารหัสบล็อกแรกและทดสอบว่าผ่านการทดสอบหรือไม่ จากนั้นจึงถอดรหัสทั้งหมดและทดสอบอีกครั้ง ถอดรหัสไซเฟอร์เท็กซ์ทั้งหมดในครั้งเดียวและทดสอบได้ดีกว่า หากคุณรู้รหัสบางอย่าง คุณสามารถเขียนรหัสนี้ได้ภายในไม่กี่ชั่วโมง
hft avatar
ng flag
hft
@user274857 สิ่งนี้ควรแท็กเป็นการบ้านและแบบฝึกหัดหากเป็นการบ้าน คุณต้องแสดงให้เราเห็นว่าคุณได้ลองทำอะไรไปแล้วบ้าง สุดท้ายนี้ ในอนาคต คำถามเช่นนี้อาจถูกโพสต์ในการแลกเปลี่ยนสแต็กการเข้ารหัสแทนที่จะเป็นการแลกเปลี่ยนสแต็กของ infosec
Score:3
ธง in

สามารถค้นหาคีย์สเปซแบบ 32 บิตได้หรือไม่

OpenSSL พร้อม AES-NI สามารถดำเนินการวนซ้ำ 61510120 สำหรับบล็อก 64 ไบต์ AES-128 ในโหมด CBC ต่อ 3 วินาทีในเครื่องของฉัน

วิ่ง ความเร็ว openssl -evp AES128 เพื่อดูในเครื่องของคุณ

สิ่งนี้ทำให้ $2^{26}$ เว้นวรรคเป็นเวลาสามวินาที หนึ่งความต้องการ $2^{6} =64*3$ วินาทีเพื่อค้นหาผู้สมัครคนสำคัญด้วยการเข้ารหัสที่ดี


สำหรับสาเหตุของคุณ สร้าง 3 ฟังก์ชั่น;

  • $P = \operatorname{AES-Dec-CBC}(k, IV, C)$ ที่ไหน $C$ เป็นบล็อกไซเฟอร์เท็กซ์และ $พี$ เป็นข้อความธรรมดาที่ถอดรหัสภายใต้คีย์ปัจจุบัน $k$ ของ $C$.
  • $k =\operatorname{GetNextCandidateKey(ปัจจุบัน)}$ วิธีง่ายๆ นี้จะเพิ่มกระแสและสร้างคีย์ $k = ปัจจุบัน\mathbin\|1100\cdots011$ ในรูปแบบไบนารี คุณต้องแปลงสิ่งนี้เป็นไบนารีเพื่อให้พอดีกับไลบรารีการเข้ารหัสมาตรฐาน
  • $b = \operatorname{CheckTheMessage}(P)$. ฟังก์ชันนี้รับข้อความธรรมดาและตรวจสอบว่าไบต์อยู่ในช่วง ถ้าไม่คืน 0 อย่างอื่นกลับมา 1

ขณะนี้มี 3 ฟังก์ชั่นนี้;


ปัจจุบัน = -1

ในขณะที่ปัจจุบัน < 2^32 ทำ:
    k = GetNextCandidateKey (ปัจจุบัน)
    P = AES-ธ.ค.-CBC(k, IV, C)
    b = CheckTheMessage(P)

    ถ้า b == 1
        พิมพ์ (ปัจจุบัน)
    ปัจจุบัน ++
Score:1
ธง ng
hft

เป็นไปได้ไหมที่จะค้นหาคีย์ AES จากส่วนหนึ่งของคีย์, ไซเฟอร์เท็กซ์, เวกเตอร์การเริ่มต้น และโหมดการเข้ารหัส

บางครั้งก็เป็นไปได้ บางครั้งก็เป็นไปไม่ได้ ขึ้นอยู่กับจำนวนคีย์ที่คุณรู้อยู่แล้ว

ในกรณีของคุณดูเหมือนว่าคุณจะรู้คีย์ทั้งหมดยกเว้น 33 บิต ดังนั้น คุณควรจะบังคับให้มันค้นหากุญแจที่เหลือได้

hft avatar
ng flag
hft
ดูผลลัพธ์ของการถอดรหัส ตัวอย่างเช่น หากไบต์ใดไม่อยู่ในช่วงที่คุณ (หรือครูของคุณ) ระบุ [32,127) คุณสามารถโยนคีย์นั้นทิ้งไปและลองใหม่ได้\

โพสต์คำตอบ

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