{"title":"Solving modular cubic equations with Coppersmith's method","authors":"Virgile Dossou-Yovo , Abderrahmane Nitaj , Alain Togbé","doi":"10.1016/j.ic.2024.105169","DOIUrl":null,"url":null,"abstract":"<div><p>Several cryptosystems based on Elliptic Curve Cryptography such as KMOV and Demytko process the message as a point <span><math><mi>M</mi><mo>=</mo><mo>(</mo><msub><mrow><mi>x</mi></mrow><mrow><mn>0</mn></mrow></msub><mo>,</mo><msub><mrow><mi>y</mi></mrow><mrow><mn>0</mn></mrow></msub><mo>)</mo></math></span> of an elliptic curve with an equation of the form <span><math><msup><mrow><mi>y</mi></mrow><mrow><mn>2</mn></mrow></msup><mo>≡</mo><msup><mrow><mi>x</mi></mrow><mrow><mn>3</mn></mrow></msup><mo>+</mo><mi>a</mi><mi>x</mi><mo>+</mo><mi>b</mi><mspace></mspace><mo>(</mo><mrow><mi>mod</mi></mrow><mspace></mspace><mi>n</mi><mo>)</mo></math></span> over a finite field when <em>n</em> is a prime number, or over a finite ring when <span><math><mi>n</mi><mo>=</mo><mi>p</mi><mi>q</mi></math></span> is an RSA modulus. Other systems use singular cubic curves such as <span><math><msup><mrow><mi>y</mi></mrow><mrow><mn>2</mn></mrow></msup><mo>≡</mo><msup><mrow><mi>x</mi></mrow><mrow><mn>3</mn></mrow></msup><mo>+</mo><mi>a</mi><msup><mrow><mi>x</mi></mrow><mrow><mn>2</mn></mrow></msup><mspace></mspace><mo>(</mo><mrow><mi>mod</mi></mrow><mspace></mspace><mi>n</mi><mo>)</mo></math></span> and <span><math><msup><mrow><mi>y</mi></mrow><mrow><mn>2</mn></mrow></msup><mo>+</mo><mi>a</mi><mi>x</mi><mi>y</mi><mo>≡</mo><msup><mrow><mi>x</mi></mrow><mrow><mn>3</mn></mrow></msup><mspace></mspace><mo>(</mo><mrow><mi>mod</mi></mrow><mspace></mspace><mi>n</mi><mo>)</mo></math></span>. In this paper, we present a method to find the small solutions of the former modular cubic equations. Our method is based on Coppersmith's technique and enables one to find the solutions <span><math><mo>(</mo><msub><mrow><mi>x</mi></mrow><mrow><mn>0</mn></mrow></msub><mo>,</mo><msub><mrow><mi>y</mi></mrow><mrow><mn>0</mn></mrow></msub><mo>)</mo></math></span> when <span><math><mo>|</mo><msub><mrow><mi>x</mi></mrow><mrow><mn>0</mn></mrow></msub><msup><mrow><mo>|</mo></mrow><mrow><mn>3</mn></mrow></msup><mo>|</mo><msub><mrow><mi>y</mi></mrow><mrow><mn>0</mn></mrow></msub><msup><mrow><mo>|</mo></mrow><mrow><mn>2</mn></mrow></msup></math></span> is smaller than the modulus.</p></div>","PeriodicalId":54985,"journal":{"name":"Information and Computation","volume":"298 ","pages":"Article 105169"},"PeriodicalIF":0.8000,"publicationDate":"2024-04-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Information and Computation","FirstCategoryId":"94","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S0890540124000348","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, THEORY & METHODS","Score":null,"Total":0}
引用次数: 0
Abstract
Several cryptosystems based on Elliptic Curve Cryptography such as KMOV and Demytko process the message as a point of an elliptic curve with an equation of the form over a finite field when n is a prime number, or over a finite ring when is an RSA modulus. Other systems use singular cubic curves such as and . In this paper, we present a method to find the small solutions of the former modular cubic equations. Our method is based on Coppersmith's technique and enables one to find the solutions when is smaller than the modulus.
期刊介绍:
Information and Computation welcomes original papers in all areas of theoretical computer science and computational applications of information theory. Survey articles of exceptional quality will also be considered. Particularly welcome are papers contributing new results in active theoretical areas such as
-Biological computation and computational biology-
Computational complexity-
Computer theorem-proving-
Concurrency and distributed process theory-
Cryptographic theory-
Data base theory-
Decision problems in logic-
Design and analysis of algorithms-
Discrete optimization and mathematical programming-
Inductive inference and learning theory-
Logic & constraint programming-
Program verification & model checking-
Probabilistic & Quantum computation-
Semantics of programming languages-
Symbolic computation, lambda calculus, and rewriting systems-
Types and typechecking