Score:0

การนำส่วนประกอบ sbox ไปใช้โดยใช้ตารางการค้นหา

ธง jp

เป็นไปได้ไหมที่จะใช้ส่วนประกอบของตาราง SBOX โดยใช้ lookup_tables ตัวอย่างเช่น สำหรับ SBOX 4 บิต คุณสามารถรับส่วนประกอบ 3 โดยใช้ SAGE ด้วยวิธีต่อไปนี้

ปราชญ์: จาก sage.crypto.sbox นำเข้า SBox
ปัญญาชน: S = SBox([7,6,0,4,2,5,1,3])
ปัญญาชน: f3 = S.component_function(3)
ปัญญาชน: f3.algebraic_normal_form()
x0*x1 + x0*x2 + x0 + x2

แต่ฉันต้องใช้ส่วนประกอบนั้นหลายครั้ง (lime $2^{20}$) และฟังก์ชันบูลีนใน SAGE ที่มีการแทนที่ช้ามาก ฉันคิดว่าการใช้ตารางค้นหาจะดีกว่า

poncho avatar
my flag
ดูเหมือนว่าจะเป็นคำถามเกี่ยวกับ Sage มากกว่าการเข้ารหัส
Score:1
ธง ru

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

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

Score:0
ธง in

f3 ในโค้ดของคุณคือฟังก์ชันบูลีนซึ่งโดยพื้นฐานแล้วจะเป็นรายการของค่า True/False

รายการ (f3)                                                                                                                                                                                                                                
[เท็จ จริง เท็จ เท็จ จริง จริง จริง เท็จ]

โพสต์คำตอบ

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