Interested Article - Факторизация с помощью эллиптических кривых

???????????? ? ??????? ????????????? ?????? ( ????. elliptic curve factorization method , ????. ECM ) ??? ????? ??????? ???????????? ? ??????? ????????????? ?????? ( ????. Lenstra elliptic curve factorization ) — ???????? ???????????? ???????????? ????? ? ?????????????? ????????????? ?????? . ?????? ???????? ????? ??????????????????? ????????? . ECM ???????? ??????? ?? ???????? ?????? ????? ?????? ?????? ?????? ????????? ???? ? ?????? ????????????? ?????? .

?? ???????? ????? ????? ???????? ??? ?????????? ????????? ??????? ????????? ?????, ? ??????? ????????? ?????????????????????? ??????????.

???????? ?????? ?????????? ??? ?????? ??????? ????????? ????? 20-25 ?????? (???????? 64…83 ???), ?????? ??? ??? ????????? ? ???????? ??????? ?? ??????????? ???????? ???????? p, ? ?? ?? ???????????????? ?????.

????? ???????????? ??? ????????? (????????????) ????????? ??????? ????????? ?????. ???? ?????????? ????? ?????? ????????? ????? ??? ??? ???????? ?????????, ?? ????????? ??????????? — ??????? ?????, ? ??? ??????????? ?????????? ????? ????? ???????????? ????? ????? ????????? ????????????.

????? ??????? ????????, ????????? ?????????????? ????? ?????????, ????? ????? 83 ????? ? ??? ?????? ??????? ????????? ( ????. Ryan Propper ) 7 ???????? 2013 ? .

????????

???????? ???????????? (?????????? ?????????????? ????????) ???????????? ????? :

  1. ?????????? ????????? ????????????? ?????? ??? , ? ?????????? ???? : , ?? ???? ?????? ?????????? ????????????? ????? . ??? ????? ???? ??????? ????????? ???????:
    1. ????????? ??????? ?????????? ????? .
    2. ??????????? .
  2. ?????????? ????? ????? , ?????????? ????????????? ???????? ?????????? ????? ?????. ????????, ? ???????? ????? ???????:
    • ????????? ?????????? ?????????? ????? .
    • ???????????? ?????????? ????? ??????? ????? ? ????? ????????. ?? ???? ?????????? ??????? ????? (?? ????????????? ????????? ????? ), ? ??????? , ?????, ??? ????????? ?????????? ? ??????????????? ??????? ?? ??????????? ?????????? ????? :
    ??? — ?????????? ?? ????????? ???????????, ??? ??????? .
  3. ??????????? ???????????? ?? ????????????? ?????? :
    , ??? — ???????? ????????, ???????????? ?? ?????????? ?????? .
    ???????? ???????? ??????? ?????????? ???????? ???????????? ???????, ???????????? ??????????? ?????, ?, ?????????????, ??????? ?????????? ???????? ??????? ?? ?????? n . ???????? ??????? ?? ?????? ?????????????? ? ??????? ???????????? ????????? ??????? . ? ?????????, ??????? ?? ????????? ????? v (mod n ) ???????? ? ???? ?????????? ??? ( v , n ) . ? ?????? ???( v , n ) 1, ???( v , n ) n , -???????? ?? ???? ?????-?? ????? ??????????? ?? ????????????? ??????, ?? ???? ???????, ??? ???( v , n ) — ????????????? ???????? n . ?????? ?? ?????, ? ???????? ?????????? ???????? ????????? ??????:
    • ???? ? ???????? ?????????? ?? ??????????? ??????????? ???????? (mod n ) , ?? ?????????? ??????? ?????? ????????????? ?????? ? ????? ? ????????? ???????? ???????.
    • ???? ?? ?????-?? ????? , ??? ( ), ?? ?????????? ??????? ?????? ????????????? ?????? ? ????? ? ????????? ???????? ???????, ?????? ??? ????? ????????? ?????????? ????? ?????????? ???????? ????????.
    • ???? ?? ?????-?? ????? ?????????? ???( v , n ) 1 ? ???( v , n ) n , ?? ???( v , n ) — ??????? ????????????? ???????? n .

???????????

????????? , ?????? ?? ?????? ????? n ?????? ????????????? ?????? . ???? ????? p ? q — ??? ??????? ???????? ????? n , ?? ?????????????? ????????? ????? ????? ? ??? ?????? ?? ?????? p ??? ?? ?????? q . ?? ???? : ? : ??????, ??????????????, ??? ????????????? ?????? (???????, ??? ). ?????? ? ? ???????? ????????? ???????? — ?? ?????? ????????????? ??????: ??? ????? ???????? ???????? . ????? ??? ???????? N p ? N q ?????????, ??????????????, ????? ????:

  1. — ????? ????? ???????? ??????
  2. — ????????????? ?????, ????? ???: ??
  3. — ??????????? ??

?? ?? ??????? ???????? ?????, ???

  1. — ????????

??????????? ??????????? ??????????? ? ??? ?????? ?? ?????? q .

??????? ?????? ?????, ??????? ?? ????????????? ?????? ??? Z p , ???????? ??????? ????? ?????????: p + 1 ? 2 ? p p + 1 + 2 ? p

??? ???????? ????????? ????????????? ?????? ??????? N p ? N q ???????? ?????????? ???????, ????????????? ?? ??????? ????? (??. ????). ????????????, ??? ??????????? ??????? ????????? N p ? N q ?????????, ? ????????, ??? ??? ?????????? eP ?????????? ????????? ?? ?????? ? , ?? ?? ?? ?????? q , ??? ????????. ???? ??? ???, ?? kP ?? ?????????? ?? ???????? ??????, ? ? ??????????? ???? ??????? ????? v , ??? ???? ??? ( v , p ) = p , ???? ??? ( v , q ) = q , ?? ?? ????????????. ????? ??? ( v , n ) ???????? ????????????? ????????? ????? n .

ECM ???????? ?????????? ????? ??????? P-1 ?????? ???????? . ???????? p ? 1 ??????? ????? ??????? ???????? p , ??? ( p ? 1) B-??????? ??? ?????????? ?????????? B . ??? ?????? e , ???????? ( p ? 1) , ? ??? ?????? a , ??????? ???????? ? p ?? ????? ??????? ????? ?????, ??? a e ? 1 (mod p ) . ????? ??? ( a e ? 1, n ) ? ??????? ???????????? ????? ????????? n . ??????, ???????? p ? 1 ?? ????????? , ????? ? p ???? ??????? ??????? ????????. ECM ? ???? ?????? ????????? ?????????, ?????? ??? ?????? ???????????? ????????????????? ?????? ??? Z p , ??????? ??????? ?????? ????? p ? 1 , ??????????????? ?????? ????????? ????????????? ?????? ??? ???????? ????? Z p .

??????? ?????? ?????, ??????? ?? ????????????? ?????? ??? Z p , ???????? ??????? ????? ?????????: p + 1 ? 2 ? p p + 1 + 2 ? p . ?????????????? ?????? ??????????? ??????????? ????, ??? ? ???? ????????? ????? ?????? ????????? ??????? ????? (? ???? ?????? ?????????? ??????, ??????? ??????? — ??????? ?????). ?? ?????????? ????????????? ????, ??? ? ????????? ????? ???? ?????? ????????? ??????? ?????, ?????? ?????????????? ????????????? ????????????? ???????, ??????? ????????-??????-?????????( ????. Canfield–Erd?s–Pomerance theorem ) ? L-??????? ?????????? ??????, ??? ?????????? ????? L [ ? 2 /2, ? 2 ] ?????? ?? ????????? ???????? ??????? ??????. ??? ????????????? ?????? ?????? ????????? ?? ????????.

??????

???????????? ????? n = 455839.

?????????? ????????????? ?????? ? ?????, ??????? ?? ???? ??????

??????????????? ??????????? 10! P :

1. ??????????? ?????????? ????? .

  • ??????? ???? ??????? ??????????? ? ????? P ?????:
  • ?????????? ????? :
.
  • ????? ????????, ??? ????? 2P ????????????? ????? ?? ??????:

2. ??????????? .

  • ??????? ???? ??????? ??????????? ? ????? 2 P ??????????
.
??? ?????????? 593 / 106 ?? ?????? n ????? ??????????????? ??????????? ?????????? ??????? : 455839 = 4300·106 + 39, ????? 106 = 2·39 + 28, ????? 39 = 28 + 11, ????? 28 = 2·11 + 6, ????? 11 = 6 + 5, ????? 6 = 5 + 1. ?????????????, ???(455839, 106) = 1, ? ? ???????? ???????: 1 = 6 — 5 = 2·6 — 11 = 2·28 — 5·11 = 7·28 — 5·39 = 7·106 — 19·39 = 81707·106 — 19·455839. ?????? 1/106 = 81707 (mod 455839), ????? ???????, ?593 / 106 = 322522 (mod 455839).
  • ? ?????? ???????????? s , ??????????? ?????????? ????? 2(2 P ), ??? ??, ??? ??? ???? ??????? ????: 4 P = (259851, 116255). ????? ????????, ??? ????? ????????????? ????? ?? ????? ????????????? ??????.
  • ????????????? 4 P ? 2 P ????????? .

3. ??????????? ??????? ????? ????????? , , ? ??? ?????. ? ?????? ?????????? 640 P ????? ????????, ??? ????????? ?????????? ????????? ???????? ? 599 (mod 455839). ??? ??? 455839 ??????? ?? 599, ??????? ?????????? ???????: 455839 = 599·761.

?????????????? ?????????

????? ?????????? ???????? ????? n ????? p . ????? ?????????? ??????????? ?????????????? ???????? ????? ??????? ????????? : (??? ? L-??????? ). ???? ???????? p ?? , ?? ??????? ??????????????????? ?????? ?????????: .

???? ?????????? ????? ????????????? ?????? ? ??????? ???????? ????????????, ?? ???? ????? ????????? ? ?????? ??????????????????? ??????? ????????????, ?, ??????, ???????? ??????? ?????? ????????????????? ??????. ???? ?????????? ??? ? ??????? ????????????? ?????? (QS) ? ??????? ?????? ????????? ???? (NFS) , ?? ??? ??????? ?? ??????? ??????????? ???????? ????? n . ???? ????? n ??????? ??? ? RSA ? ???? ???????????? ???? ??????? ????? ???????? ?????????? ?????, ?? ????? ????????????? ?????? ????? ?? ?? ??????, ??? ? ????? ????????????? ??????, ?? ???????? ?????? ?????? ????????? ???? .

???????? ? ???????????? ????????????

?????? ??? ??????????? ??????????? ????????? ??? , ????? ??????????? ??????? ??????????? ????????? ??? ?: ?????? ????? ??????????????? ??????, ?????????? ????? 0. ?????? ????? ???? ?????? ? ??????? ????????? ????? ????????? ???????: ??? ????? ????? ???? ?????? ? ? c ? 0, ????? ??? x' = c x , y' = c y ? z' = c z . ? ???????????? ? ???? ?????????? ??????????????? , ???????????? ?????????? ??????????? ?????????? . ????? ????????? , ????????????? ?????? ??????????? ???????????? , ?????????? ????? 0. ???????, ??? ????? ?? ?????????? ? ???? ????????????, ??? ??? ?? ?????? ??????, ?????????? ????? 0. ???????? ??????? ?? ???????????? ????????????? ????????????? ???? ?, ???????? ???? ????? ???????????? ????????? ?????? ??? ????????????? ??????. ?????? ?? ?? ??????, ?? ? ?????????? ??? , ?? ???????? ??????, ???? ?? ???????? ??????? ??????. ????? ???????????? ? ??????? ????????????? ?????? ?????????? ??????????? ?????? ?????? ???????? ? ???????, ????? — ?? ???????.

???????? ???????????? ? ??????????? ??????????? :. ??????????? ??????? ? ???? ?????? ???????? ?????? ?? ????????????? . ????? n — ????? ? ????????????? ?????, ????????????? ?????? .

  1. ?????????? ( a ? 0).
  2. ??????????? . ????????????? ?????? E ???????? ??? (????? ????????????). ? ?????????????? ??????????? ????????? ????????????? ?????? ????? ???????? ? ???? ??????????? ????????? . ????? ?? ???? ??????.
  3. ?????????? ??????? ??????? . ??????????: ??????? ????? ???? ?????? ? ??????, ????? ??????? ?????? E ??? B-??????? ?????. ??? ????????, ??? ??? ??????? ???????, E ??? ?????? ???? ?????? ??? ????? B .
  4. ??????????? ??? .
  5. ??????????? ? ?????? . ????? ????????, ??? ???? | | - B-??????? , ? n — ??????? (? ???? ?????? — ????), ?? . ?????? ? ??????, ???? | | - B-??????? ??? ?????????? ????? p , ??????????? ????????? n , ????????? ????? ???? ?? ????? (0:1:0), ?????? ??? ???????? ???????? ? ????????? ????? ?? ??? ?????? ????????, ???? n ?? ???????? ??????? ??????. ????? ??????? ???????? ????? ????????????? ???????? n .
  6. ???? ???????? ?? ??? ??????, ?? ???????? ??????????? ? ???? 2.

? ?????? 5 ?????????? ????? ???? ??????????, ??? ??? ???????? ???? ????? ??? ????????????? ?????? ??????? ?????????? , ??? ?? ?????? ????????, ???? n ?? ???????? ??????? ??????. ???????? ?????????? ????? ???? ????? ????????? ????????, ?? ????????? ???????? n (?? ????????? ????, ????? ???????? ?????):

  • ,
  • ,
  • ,
  • , ?????????? ? ?????????? ??????????? ?????????? (????????????? ???????? n ??????, ???? ??? ????????? ????????? ??????).

????????????? ?????? ????????

????????????? ????????? ??????? ?????????? ????????? ???????? ? ????????? ????? ?????????? ????????? ?? ????????? ? ?????????????? ??????? ? ????? ???????????? ( ) ? ? ( ).

???????????: ????? — ??? ????, ??????????????? ???????? ?? ???????? ????? , ? ????? . ????? ?????? ???????? ???????????? ??? ?????????? ???? ???????? ????????? ????????? ????? ?? ?????? ???????: ????????? ???????? ?????, ????????? ??????????? ?????, ????????? ??????????????? ????? ( ????. inverted points ), ????????? ??????????? ????? ( ????. extended points ) ? ????????? ??????????? ????? ( ????. completed points ). ????????, ????????? ???????? ????? ???????? ???: .

???????? ????????: ????? ???????? ???????? ???????? .

????? (0,1) — ??? ??????????? ???????, ? ???????? ? ????? ??? .

?????? ????? ?????????? ?????????? ????, ??? ??????????? ?????? ???????????? ?????????? ?? ???????? ??????.

?????? ????????: ????? ?????????????????? ????? ???????? ?? ??????? ????????????? ?????? ? ????? ???????? ? d =2: , ? ????? ?? ???. ???????????? ?????????, ??? ????? P 1 ? ??????????? ????????? (0,1) ????? P 1 . ?????????????:

? ?????? ????????????? ?????? ? ????? ??????? ?????????? ????? ??????? 4. ??????? ????????????? ?????? ?????? ???????? ??? ????????? ??? .

??? ???????????? ? ??????? ????????? ??????? ???????? ????????? ?????? ? .

?????? ??????, ??????? ???????? ????????????? ?????? , ?????????? :

? ?????? , ??????? ?? ????????? ????? ? ??????? ? ????? (0,-1).

  • ?
  • ?

??. ?????

??????????

  1. ? , ?. 331.
  2. .
  3. .
  4. .
  5. . ???? ?????????: 27 ?????? 2016. 20 ??????? 2009 ????.
  6. , ?. 16—20.
  7. ? .
  8. , ?. 16.
  9. .
  10. .
  11. , ?. 109.
  12. , ?. 331.
  13. , ?. 12.
  14. , ?. 112.
  15. , ?. 2—3.
  16. , ?. 19.

??????????

  • Koblitz N. A. Course in number theory and cryptography (?????.) . — Springer-Verlag , 1987.
  • Lenstra A. K., Lenstra H. W., Lovász L. Factoring polynomials with rational coefficients (?????.) // Math. Ann. . — 1982. — ?. 261 .
  • Lenstra Jr., H. W. Factoring integers with elliptic curves (????.) // Annals of Mathematics : journal. — 1987. — Vol. 126 , no. 2 . — P. 649—673 .
  • Trappe, W., Washington, L. C. Introduction to Cryptography with Coding Theory (????.) . — Second. — Pearson Prentice Hall , 2006. — ISBN 0-13-186239-1 .
  • Daniel J. Bernstein, Peter Birkner, Tanja Lange, Christiane Peters. ECM using Edwards curves (????.) // (????.) : journal. — 2013. — Vol. 82 . — P. 1139—1179 . — doi : .
  • ??????????? ?. ?. . — ??????: ?????. ??.. — 2011. — 190 ?.
  • David Bressoud and Stan Wagon. A Course in Computational Number Theory. — Key College Publishing/Springer, 2000. — ?. 168—169. — 366 ?. — ISBN 978-1-930190-10-8 .
  • Steven Galbraith. Mathematics of Public Key Cryptography. — Cambridge University Press, 2012. — ?. 330—332. — 630 ?. — ISBN 9781139012843 .
  • ?. ?. ?????????. ?????????-???????? ????????? ? ????????????. — ?.: ?????, 2006. — 335 ?. — ISBN 5-94057-103-4 .
  • W. Trappe and L. C. Washington. Introduction to Cryptography with Coding Theory. — Second. — Pearson Prentice Hall, 2006. — ISBN 0-13-186239-1 .
  • Parker D. (????.) // University of Chicago: REU 2014. — 2014.
  • E. R. Canfield , Paul Erd?s , Carl Pomerance. (????.) // Journal of number theory. — 1983. — ???. 17 .
  • Richard P. Brent. (????.) // Australian Computer Science Communications 8, 149-163. — 1998.
  • H. W. Lenstra, JR. (????.) // Proceedings of the International Congress of Mathematicians. — 1986. 29 ????? 2017 ????.
  • Thorsten Kleinjung, Kazumaro Aoki, Jens Franke, Arjen Lenstra, Emmanuel Thomé, Joppe Bos, Pierrick Gaudry, Alexander Kruppa, Peter Montgomery, Dag Arne Osvik, Herman te Riele, Andrey Timofeev, Paul Zimmermann. (????.) // Cryptology ePrint Archive, Report 2010/006. — 2010.

??????


???????? —

Same as Факторизация с помощью эллиптических кривых