密码学
文章平均质量分 76
依然静谧
这个作者很懒,什么都没留下…
展开
-
仿射加密
#####################仿射加密####################letter_list="ABCDEFGHIJKLMNOPQRSTUVWXYZ" #字母表#gcd函数,求最大公约数def gcd(a,b): if(a<b): t=a a=b b=t while(0!=b): t=a a=b b=原创 2014-03-17 13:09:54 · 1071 阅读 · 0 评论 -
Caesar密码
letter_list="ABCDEFGHIJKLMNOPQRSTUVWXYZ" #字母表#加密函数def Encrypt(plaintext,key): ciphertext="" for ch in plaintext: #遍历明文 if ch.isalpha(): #明文是否为字母,如果是,则判断大小写,分别进行加密 if ch.isupper():原创 2014-03-17 13:09:01 · 1313 阅读 · 0 评论 -
Vigenere密码 Python实现
#########################Vigenere密码#########################letter_list='ABCDEFGHIJKLMNOPQRSTUVWXYZ' #字母表#根据输入的key生成key列表def Get_KeyList(key): key_list=[] for ch in key: key_list.append(原创 2014-03-23 21:46:05 · 5876 阅读 · 1 评论 -
Playfair密码 Python实现
#########################Playfair密码##########################约定1:若明文字母数量为奇数,在明文末尾添加一个'Z'#约定2:'I'作为'J'来处理#字母表letter_list='ABCDEFGHJKLMNOPQRSTUVWXYZ'#密码表T_letter=['','','','','']#根据密钥建立密码表de原创 2014-03-23 20:50:03 · 8572 阅读 · 2 评论 -
中国剩余定理 Python实现
#gcd,求最大公约数函数,递归算法,有了扩展欧几里得算法之后,此函数可以不用def _g_c_d(a,b): if 0==b: return a return gcd(b,a%b)#扩展欧几里得算法,返回值列表中,x是a的逆元(mod b),q是gcd(a,b),若x是0,则表示没有逆元#y是计算过程中的迭代的参数,可以不用管#此算法实质上是广义欧几里得除法的逆运算,用原创 2014-03-27 18:11:26 · 9487 阅读 · 2 评论