Score:5

อัตราบวกเท็จเฉลี่ยสำหรับรอบของ MillerâRabin

ธง vn

ฉันทราบว่าการทดสอบความเป็นอันดับหนึ่งของ MillerâRabin จะอ้างสิทธิ์ความเป็นอันดับหนึ่งสำหรับจำนวนประกอบที่มี ที่มากที่สุด$\frac{1}{4}$ ความน่าจะเป็นสำหรับคอมโพสิตแปลก ๆ โดยพลการ $n$ และสุ่มพยาน $a$ เลือกอย่างสม่ำเสมอในช่วง $[2,n-1)$. อะไรคือ แท้จริง โอกาสเฉลี่ยที่การทดสอบอ้างว่าจำนวนนั้นเป็นจำนวนเฉพาะ? โอกาสเปลี่ยนไปตามขนาดของ $n$ ขึ้นไป? โอกาสจะเปลี่ยนไปอย่างไรหาก $n$ ไม่สามารถหารด้วยจำนวนเฉพาะที่มีขนาดเล็กได้ถึง 2,000?

ถามเพราะว่า กระดาษแผ่นนี้ อธิบายความน่าจะเป็นที่คอมโพสิตจะรอดจากการทดสอบหลายๆ รอบ ความน่าจะเป็นคือ $p_{k,t}$ กับ $k$ เป็นขนาดของตัวเลขที่จะทดสอบเป็นบิตและ $t$ เป็นจำนวนรอบที่จะดำเนินการ กระดาษพิสูจน์ว่า $\forall k \ge 2:p_{k,1} \le k^2 4^{2-\sqrt{k}}$แต่ความไม่เท่าเทียมกันนี้เป็นเพียงขอบเขตบนและมีหลักฐานแยกต่างหากเพื่อแสดงขอบเขตที่แข็งแกร่งกว่ามาก $p_{600,1} \le 2^{-75}$. ฉันต้องการค้นหาฟังก์ชันที่มีขอบเขตบนที่แข็งแกร่งสำหรับ $p_{k,t,n}$ กับ $n$ เป็นการหารทดลองกับจำนวนเฉพาะทั้งหมดที่เล็กกว่า $n$แต่ฉันไม่เข้าใจคณิตศาสตร์เบื้องหลังบทความนี้ดีพอที่จะคิดได้

ตารางที่ 2 ในกระดาษแสดงตัวอย่างขอบเขตล่างสำหรับ $-\lg{p_{k,t}}$:

\begin{อาร์เรย์}{c|cccccccc} k/t&1&2&3&4&5&6&7&8&9&10\ \hline 100&5&14&20&25&29&33&36&39&41&44\ 150&8&20&28&34&39&43&47&51&54&57\ 200&11&25&34&41&47&52&57&61&65&69\ 250&14&29&39&47&54&60&65&70&75&79\ 300&19&33&44&53&60&67&73&78&83&88\ 350&28&38&48&58&66&73&80&86&91&97\ 400&37&46&55&63&72&80&87&93&99&105\ 450&46&54&62&70&78&85&93&100&106&112\ 500&56&63&70&78&85&92&99&106&113&119\ 550&65&72&79&86&93&100&107&113&119&126\ 600&75&82&88&95&102&108&115&121&127&133 \end{อาร์เรย์}


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

จาก crypto/bn/bn_prime.c:87:

/*
 * ใช้ Miller-Rabin อย่างน้อย 64 รอบซึ่งควรเป็นเท็จ
 * อัตราบวก 2^-128 ถ้าขนาดของจำนวนเฉพาะมากกว่า 2048
 * ผู้ใช้อาจต้องการระดับความปลอดภัยที่สูงกว่า 128 ดังนั้นให้เปลี่ยน
 * ถึง 128 รอบ ให้อัตราบวกปลอมเป็น 2^-256
 * ส่งกลับจำนวนรอบ
 */
int bn_mr_min_checks แบบคงที่ (int บิต)
{
    ถ้า (บิต > 2048)
        กลับ 128;
    กลับ 64;
}
Mark avatar
ng flag
คุณอาจสนใจ[สิ่งนี้](https://crypto.stackexchange.com/questions/17707/trial-divisions-before-miller-rabin-checks)
forest avatar
vn flag
@ทำเครื่องหมายว่าน่าสนใจ (และเป็นแรงบันดาลใจบางส่วนสำหรับคำถามนี้) แต่ไม่ได้คำตอบว่ามีขอบเขตบนที่แข็งแกร่งกว่า $\forall k \ge 2:p_{k,1} \le k^2 4^ {2-\sqrt{k}}$, _also_ คำนึงถึงส่วนทดลอง
Mark avatar
ng flag
[คำตอบของ Thomas Pornin](https://crypto.stackexchange.com/a/17711) ไม่ได้ให้สูตรปิดหรืออะไรทั้งนั้น แต่มันทำให้ดูเหมือนว่าสูตรเฉพาะที่คุณได้รับนั้นไม่สำคัญมากนัก เพราะส่วนใหญ่ของ รอบ MR ที่คุณจะเรียกใช้จะเป็นคอมโพสิตที่จะถูกปฏิเสธหลังจากรอบแรก
Meir Maor avatar
in flag
ฉันเชื่อว่าขอบเขตที่คุณระบุไม่จำเป็นต้องมีการเลือกจำนวนผสมโดยการสุ่ม ฝ่ายตรงข้ามสามารถเลือกคอมโพสิตได้ตราบใดที่พยาน ia สุ่ม (และตรวจสอบว่าเราไม่ได้ถึง 1 ก่อนเวลาอันควรเมื่อคำนวณเลขยกกำลัง)
forest avatar
vn flag
@MeirMaor หากพยานสุ่ม แต่หมายเลขที่ป้อนถูกเลือกโดยฝ่ายตรงข้าม ขอบเขตคือ $\frac{1}{4}$ หากทั้งพยาน _และ_ ข้อมูลถูกเลือกโดยฝ่ายตรงข้าม ความน่าจะเป็นที่จะเกิดผลบวกปลอมคือ $1$ แน่นอน ขอบเขตจากกระดาษขึ้นอยู่กับการป้อนข้อมูลที่ได้รับเลือกอย่างสม่ำเสมอโดยการสุ่ม
Sam Jaques avatar
us flag
เพื่อป้องกัน OpenSSL หากคุณตรวจสอบการกระทำที่สร้างฟังก์ชันนั้น: https://github.com/openssl/openssl/commit/42619397eb5db1a77d077250b0841b9c9f2b8984 โดยกล่าวถึง Jake Massimo และ Kenneth Paterson ซึ่งเป็นครึ่งหนึ่งของผู้เขียนบทความนี้: https //eprint.iacr.org/2018/749. แม้ว่าจะมีบริบทที่คุณรู้ว่าจำนวนเฉพาะถูกสร้างขึ้นอย่างสม่ำเสมอและสามารถใช้ค่าเสียงปกติได้ ซึ่งบางครั้งก็ใช้ในกรณีที่ต้องการค่าเสียงของฝ่ายตรงข้าม ดังนั้นฉันจึงคิดว่าพวกเขาตัดสินใจที่จะหลีกเลี่ยง "ปืนลูกโม่" และมีช่วงเสียงเดียวที่ปลอดภัย เครื่องกำเนิดไฟฟ้าสำหรับการใช้งานทั้งหมด
forest avatar
vn flag
@SamJaques แม้ว่ารูทีนจะใช้ทั้งแหล่งที่มาที่เชื่อถือได้และไม่น่าเชื่อถือของจำนวนเฉพาะของตัวเลือก วิธีที่ฟังก์ชันทำงานนั้นแปลก จะเหมาะสมกว่าที่จะฮาร์ดโค้ดจำนวนการวนซ้ำที่ 128 (สำหรับทั้งแหล่งที่เชื่อถือได้และไม่น่าเชื่อถือ) แทนที่จะเลือกระหว่าง 128 และ 64

โพสต์คำตอบ

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