Score:2

การแยกตัวประกอบโมดูลัส RSA ที่กำหนดส่วนของแฟกเตอร์

ธง vn

ได้รับ e,N,c และประมาณ 2/3 ของ p และฉันต้องได้รับ p ทั้งหมดเพื่อถอดรหัส c

N: 8319209622572147564013826542514259498682642243858419574823720424163091461701501360015982209990033336520746744572035014978885083880306655150878826112698449183627604378591045476163815683140601440141181336500755042065319357073688047689369842069576880590382907166998622533395350509313527264108988375924505750514907811200521771091619671861896277515872762861803861776874814818759550176763409337645914659855794895018341028254707583446748584671147839997360735893784761893682319714306096295255392779139228496862261602629668021770766403895493829479280751919607803462139336221636202936115853250410851992088076115853781819064537
จ: 65537
c: 4953284236047971172578832583499377493178200304479143209550787249372461101728658773670930238470955483017914105971816965742510454042292225833646213980243990906909055183035487729211063154361995845063984656265718117973811054592839102686638618059351593068564821438986641302188691512194069434490636627580791763494578169497869477621620646090488263145323524094255076603309311346040499379850098705597815946140397825326676093352260642665202907180660054018022276329942694463490417145273018047785653000749283804947161814490990395826461165462311565059508939959327500584807568342952319675042226613334756078721555811790191840438113
p: 4657466126792836973364876345509106305470210556754730583762574018947035473615496183374863999868029162???????????????????????????????????????? ???????????????????????????????????????????????? ???509718954507298459183080086410468930318128642354235212531127396991917151481316220676314043160415859389810007

"?" เป็นตัวเลขที่หายไป ฉันได้ลองใช้เว็บไซต์นี้แล้ว: https://latticehacks.cr.yp.to/rsa.html แต่ฉันได้รับข้อผิดพลาด (ใช้ SageMath สำหรับสิ่งนั้น) กับตัวเลขเหล่านั้น แต่ตัวอย่างใช้งานได้

ฉันทำอะไรผิด และใครก็ได้ช่วยฉันหาปัจจัยทั้งหมดเพื่อรับกุญแจที

et flag
สิ่งนี้ตอบคำถามของคุณหรือไม่ [การแยกตัวประกอบโมดูลัส RSA ให้บิตสูงของปัจจัย](https://crypto.stackexchange.com/questions/35829/factoring-an-rsa-modulus-given-high-bits-of-a-factor)
xXLeoXxOne avatar
vn flag
นั่นไม่สามารถแก้ไขได้เนื่องจากวิธีการ / อัลกอริทึมนั้นจะใช้ได้ก็ต่อเมื่อคุณมีปัจจัยมากกว่าครึ่งหนึ่งที่ฉันคิด (ครึ่งแรก) ในกรณีของฉัน ฉันไม่มีตัวประกอบตรงกลาง ดังนั้นฉันจึงมีหนึ่งในสามของตัวเลขเริ่มต้นและหนึ่งในสามของตัวเลขสุดท้าย
Myria avatar
in flag
ตัวเลข $c$ คืออะไร?
xXLeoXxOne avatar
vn flag
c คือข้อความที่เข้ารหัส
cn flag
คุณสามารถดูบทช่วยสอนที่ดีมาก [ตัวอย่างการกู้คืนคีย์การเข้ารหัสลับจากข้อมูลบางส่วน](https://ia.cr/2020/1506) โดย Gabrielle De Micheli และ Nadia Heninger
xXLeoXxOne avatar
vn flag
ขอบคุณ! ช่วยได้นิดหน่อยแต่ก็ยังอ่านยากอยู่ดี... กรณีของฉันควรใช้วิธีช่างทองแดงหลายตัวแปรใช่ไหม
cn flag
ฉันคาดหวังว่าคุณสามารถใช้วิธีการของ Coppersmith ได้โดยตรงเนื่องจากมีบิตที่ไม่รู้จักเพียงชิ้นเดียว หลายตัวแปรที่คุณต้องการสำหรับหลาย ๆ ชิ้นเท่านั้น ฉันไม่ได้ลงรายละเอียด แต่จะต้องแปลกใจหากไม่สามารถปรับเปลี่ยนแนวคิดในส่วน 4.2.2 และ 4.2.3 ให้เข้ากับกรณีของคุณได้
Score:6
ธง pe

ปัญหาคือคุณมีตัวหาร $p$ ของ $n$ ของแบบฟอร์ม $$ p_h \cdot 10^{208} + p_m\cdot 10^{108} + p_l\,, $$ ที่คุณรู้ $p_h$ และ $p_l$, แต่ไม่ $p_m < 10^{100} \lessประมาณ n^{0.16}$.

เห็นได้ชัดว่าพหุนาม $f(x) = x\cdot 10^{108} + p_h \cdot 10^{208} + p_l$ จะ $0$ โมดูโล $p$ สำหรับด้านขวา $x = p_m$ซึ่งเป็นที่ทราบกันดีว่ามีขนาดเล็ก ดังนั้นเราจึงสามารถสมัครได้ที่นี่ ลักษณะทั่วไปของ GCD ของทฤษฎีบทคอปเปอร์สมิธด้วย $\beta \ประมาณ 0.5$:

ปราชญ์: p_h = 4657466126792836973364876345509106305470210556754730583762574018947035473615496183374863999868029162
ปัญญาชน: p_l = 509718954507298459183080086410468930318128642354235212531127396991917151481316220676314043160415859389810007
sage: n = 8319209622572147564013826542514259498682642243858419574823720424163091461701501360015982209990033336520746744572035014978885083880306655150878826112698449183627604378591045476163815683140601440141181336500755042065319357073688047689369842069576880590382907166998622533395350509313527264108988375924505750514907811200521771091619671861896277515872762861803861776874814818759550176763409337645914659855794895018341028254707583446748584671147839997360735893784761893682319714306096295255392779139228496862261602629668021770766403895493829479280751919607803462139336221636202936115853250410851992088076115853781819064537
ปราชญ์: P.<x> = Zmod(n)[]
ปัญญาชน: f = x*10^108 + p_h*10^208 + p_l
ปราชญ์: f = (x*10^108 + p_h*10^208 + p_l)/10^108 # สร้างพหุนามโมนิก
ปราชญ์: f.small_roots (เบต้า = 0.49)
[4555790634870609108348440239954454001363406634260834115187291781797769149826662476501530037286859856]

โพสต์คำตอบ

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