Score:0

สวมหน้ากาก RSA/BigInt เลขคณิต?

ธง ng

การกำบัง เป็นกระบวนการแทนที่การดำเนินการ (ภายในกับอัลกอริธึมการเข้ารหัสบางอย่าง) บนค่ากลางด้วยการดำเนินการบน แบ่งปันความลับ ค่า จากนั้น แม้ว่าค่าความลับที่ใช้ร่วมกันจำนวนหนึ่งจะรั่วไหล (เช่น เกิดจากการโจมตีช่องทางด้านข้างต่างๆ) คนๆ หนึ่งก็สามารถรักษาความปลอดภัยได้ (เนื่องจากความปลอดภัยทางทฤษฎีข้อมูลของแผนการแบ่งปันความลับ)

ฉันสนใจในความเป็นไปได้ของเลขคณิต bigint ที่สวมหน้ากาก กล่าวคือหนึ่งเป็นตัวแทน $x\in \mathbb{Z}_{2^{2048}}$ (เช่น) เช่น

$$x = \sum_{i = 0}^{63} x_i 2^{32i}$$

แต่ละที่ $x_i \in\mathbb{Z}_{2^{32}}$และเรายังคงกำบังแต่ละคน $x_i$ เป็นรายบุคคล การบวกและการคูณมาตรฐานของหุ้นที่สวมหน้ากากนั้นค่อนข้างตรงไปตรงมา --- ฉันอยากรู้เป็นพิเศษว่าตกลงอย่างไร แบก.

ดูเหมือนว่าเป็นสิ่งที่ใครบางคนควรศึกษาในวรรณกรรมโดยเฉพาะเพื่อปกปิดการใช้งาน RSA แต่ฉันไม่พบอะไรเลย (ฉันเคยเห็นการอภิปรายเกี่ยวกับการใช้งาน RNS ที่สวมหน้ากากของ RSA ซึ่งเป็นแนวคิดที่ตรงไปตรงมามากกว่า) ทราบวิธีการปกปิด BigInt เลขคณิตหรือไม่?

kelalaka avatar
in flag
OpenSSL ไม่มีการใช้งานสำหรับการมาสก์หรือไม่ AFAIK ไม่มีอะไรพิเศษเนื่องจากมี GNU/GMP ที่พอร์ตบางส่วน
Mark avatar
ng flag
@kelalaka มีใครเขียนถึงสิ่งที่พวกเขาทำบ้างไหม? ขอบคุณตัวชี้ของคุณ ฉันพบ [สิ่งนี้](https://github.com/openssl/openssl/blob/1c0eede9827b0962f1d752fa4ab5d436fa039da4/crypto/bn/bn_blind.c) แต่ฉันจะดูที่รหัสเทียมจะดีกว่า
kelalaka avatar
in flag
ต้องใช้เวลาอ่านโค้ด ตอนนี้ฉันกำลังดูอะไรอยู่ [ที่นี่](https://github.com/openssl/openssl/blob/1c0eede9827b0962f1d752fa4ab5d436fa039da4/crypto/bn/bn_blind.c#L134) และดูบรรทัดที่ 155 ที่นั่น.
kelalaka avatar
in flag
_และเรา**t**จะปิดบังแต่ละ $x_i$ แยกกัน_ มันเป็นไปไม่ได้เพราะมีหน้ากากที่ยุ่งเหยิงใช่ไหม?
Mark avatar
ng flag
@kelalaka ดูเหมือนจะไม่ตรงไปตรงมา แต่ก็ไม่มีการคูณแบบสวมหน้ากาก (ซึ่ง iirc ในกรณีทั่วไปของการปิดบังคำสั่ง $n$th จะลดเป็นโปรโตคอลการคูณของโปรโตคอล GMW MPC) ที่นี่ ฉันส่วนใหญ่สงสัยว่ามีวิธีอื่นที่ไม่ชัดเจนในการคำนวณขั้นตอน "แบก" ที่สวมหน้ากากหรือไม่ ถ้าไม่ สำหรับแอปพลิเคชันเฉพาะของฉัน ฉันสามารถอุทธรณ์ประเภทเลขคณิต RNS ได้ แต่มันค่อนข้างอึดอัดมากกว่า
cn flag
คุณกังวลเกี่ยวกับการโจมตีประเภทใด จับเวลา DPA หรือกล่องขาว? OpenSSL จะสนใจเฉพาะเรื่องเวลาเท่านั้น ดังนั้นพวกเขาจึงไม่จำเป็นต้องใช้มาตรการตอบโต้ราคาแพงที่จำเป็นสำหรับการโจมตีที่รุนแรงกว่า สำหรับการรักษาความปลอดภัย RSA จากการโจมตีกล่องสีเทา เราจะต้องป้องกันเลขยกกำลังเป็นส่วนใหญ่ ซึ่งสามารถทำได้โดยโมดูโลฟี (โมดูลัส) การแชร์เพิ่มเติม นอกจากนี้ เราสามารถปกปิดฐานคูณโมดูลัสโมดูลัส หากต้องการมาตรการรับมือที่เข้มงวดยิ่งขึ้นสำหรับการใช้ white-box คุณสามารถดู[การแข่งขัน white-box ครั้งล่าสุด](https://whibox.io/contests/2021/rules) ซึ่งมีเส้นโค้งวงรี
kelalaka avatar
in flag
@Mark คุณจะเชื่อมโยงไปยังกระดาษ GMW MPC หรือไม่
kelalaka avatar
in flag
GNU/GMP มี [การคูณแบบโมดูลาร์ที่ปลอดภัย](https://gmplib.org/manual/Integer-Exponentiation) กับช่องด้านข้าง นี่อาจเป็นสิ่งที่คุณต้องการ?

โพสต์คำตอบ

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