有木有人知道RSA部分密码泄露怎么做?(不能使用python中的math模块)
(1)RSA密码的公开密钥为,用户秘密保管的私钥为,其中是两个512比特素数的乘积,私钥满足;
(2)密文数据, 这里是明文消息字符串经编码后的整数值并且满足;,即的取值范围为[1,];
(3)为降低赛题求解难度,用户的私钥特定比特位置的密钥信息发生泄漏,即本赛题每组数据均额外已知部分密钥信息;
(4)记MSBs 为最高数位比特 (Most Significant Bits), LSBs 为最低数位比特 (Least Significant Bits). 以整数=0b10000000000000001为例,其比特长度为17, 其中最高10位比特MSBs的二进制形式为0b1000000000=512,最低7位比特LSBs为"0000001",其二进制形式为0b1=1,满足关系: .
题目1:25分
N1=0xa4d80845630d3b332f74f667ec8a0e49aba15b6f0c4f4006161d62c91b78cf6811421cc76609d2d9dba2c43be9d8ecdc6a0dff64a8041dcde52c7f92820b0a38fc91419e8ec9a5c69d47edc6e347934b4d87f97c5759886dac6c1143ff55b8eb11acfaa6cc70956a8ec7796e1a063b123bc2e467e30937c5a69c7ab5f8ed17e1;
e1=0x3458c2e97adef45f741c7db11ece6c0814aa5b6fad9144242cdaa16a6b4f3622477935f98a41765b92892b4de22a391cf08767447df113f5151c86edd109b97f9b045fd8ad5d7a51084684d4e2353db6c0e474d5d79f399a2bf4fd867ec85b7960845ab5497f705914912f797804c06dcff57139e040596d22b141e54835e0d3;
c1=0x91b097a5b1f6b12accdbda15cd2247384e1b3ed8311085a0f3e0dbb5fffce650a355600a02674189d1b7f4075df079c70354a08646e85ecf31dd150220cd1d4ce22d55a946500f4bd8def74fb0acea3e8d2e7bb1d27ebf2ca2e80fc28c3f0d88a041d4a556a18147f66b88c65f19c99b4b94c3f78d468b8accb4da7e7ce31b29;
已知信息: 私钥d1的取值范围为[2的249次方,2的250次方]