Incorrectly Generated RSA Keys: How I Learned To Stop Worrying And Recover Lost Plaintexts

被引:0
作者
Shumow, Daniel [1 ]
机构
[1] Microsoft Res, Redmond, WA 98052 USA
关键词
public key cryptography; cryptographic software; software bugs;
D O I
10.1093/comjnl/bxac199
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
When generating primes p and q for an RSA key, the algorithm specifies that if p 1 and q 1 must be relatively prime to the public exponent e. If this is not done, then the decryption exponent is not well defined. However, what if a software bug allows the generation of public parameters N and e of an RSA key with this property and then it is subsequently used for encryption? Though this may seem like a purely academic question, a software bug in a preview release of the Windows 10 operating system makes this question of more than purely theoretical. Without a well defined decryption exponent, plaintexts encrypted to such keys will be undecryptable thus potentially losing user data, a serious software defect. Though the decryption exponent is no longer well defined, it is in fact possible to recover the a small number of potential plaintexts, if the prime factors p and q of the public modulus N are known. This paper presents an analysis of what steps fail in the RSA algorithm and derives a plaintext recovery algorithm. The runtime of this algorithm is O(e) making it practical to use, and it has been implemented in python.
引用
收藏
页码:1342 / 1349
页数:8
相关论文
共 12 条
  • [1] [Anonymous], 2018, MICR SYMCRYPT CRYPT
  • [2] Bellare M., 1994, LECT NOTES COMPUTER, VVolume 950, P92, DOI DOI 10.1007/BFB0053428
  • [3] Bleichenbacher D, 1998, LECT NOTES COMPUT SC, V1462, P1, DOI 10.1007/BFb0055716
  • [4] Burton D.M., 1998, INT SERIES PURE APPL
  • [5] Crandall Richard., 2000, Prime Numbers. A Computational Perspective
  • [6] Fujisaki E., 2001, Advances in Cryptology - CRTPTO 2001. 21st Annual International Cryptology Conference, Proceedings (Lecture Notes in Computer Science Vol.2139), P260
  • [7] THE KNOWLEDGE COMPLEXITY OF INTERACTIVE PROOF SYSTEMS
    GOLDWASSER, S
    MICALI, S
    RACKOFF, C
    [J]. SIAM JOURNAL ON COMPUTING, 1989, 18 (01) : 186 - 208
  • [8] Graff E., 2019, BUG CNG RSA KEY GENE
  • [9] Kaliski B., 1998, RFC 2313, DOI [10.17487/RFC2313, DOI 10.17487/RFC2313]
  • [10] Kaliski B., 1998, 2437 RFC, DOI [10.17487/RFC2437, DOI 10.17487/RFC2437]