其他分享
首页 > 其他分享> > (课内)信安数基RSA-level1&&2

(课内)信安数基RSA-level1&&2

作者:互联网

注:(不求甚解的)攻击原理 以及(浅层的)算法解释已在图片中给出;文字部分主要讲一些python语法的东西。

  代码需要库 gmpy2和libnum;加密算法还需要Crypto.Util.number .

 

gcdext(a,b)扩欧 ;;pow(a,b,c)将a的b次方对c取模

 注意使用gmpy2大整数类“mpz”来规避"ValueError: pow() 2nd argument cannot be negative when 3rd argument specified"报错

 

 

 

 

 

 

 invert(a,n) 求解a在模n下的逆元

 isqrt大整数平方根;(iroot以后遇到再介绍)

 list,map 见了都能看懂;如果遇到相关的方法查一下就行了

 [::-1] [0:i]都是slice notation写法,对list使用;前者表示倒序遍历全部,后者表示正序遍历0到i。

  对此,更多可见 https://www.cnblogs.com/mapone/p/12128825.html

标签:遍历,gmpy2,pow,list,argument,整数,RSA,level1,课内
来源: https://www.cnblogs.com/hiddener/p/15415553.html