您的位置:首页 > 编程语言 > Python开发

信息安全-1:python之playfair密码算法详解[原创]

2016-11-27 10:28 225 查看
转发注明出处: http://www.cnblogs.com/0zcl/p/6105825.html

一、基本概念

古典密码是基于字符替换的密码。加密技术有:Caesar(恺撒)密码、Vigenere(维吉尼尔)密码、Playfair密码、Hill密码……

明文:未经过加密的信息;密文:加密后的信息

加密解密的过程:如下图

Please input E for encryption or D for decryption:E
请输入明文:we are discovered save yourself
['w', 'e', 'a', 'r', 'e', 'd', 'i', 's', 'c', 'o', 'v', 'e', 'r', 'e', 'd', 's', 'a', 'v', 'e', 'y', 'o', 'u', 'r', 's', 'e', 'l', 'f']
['w', 'e', 'a', 'r', 'e', 'd', 'i', 's', 'c', 'o', 'v', 'e', 'r', 'e', 'd', 's', 'a', 'v', 'e', 'y', 'o', 'u', 'r', 's', 'e', 'l', 'f']
['w', 'e', 'a', 'r', 'e', 'd', 'i', 's', 'c', 'o', 'v', 'e', 'r', 'e', 'd', 's', 'a', 'v', 'e', 'y', 'o', 'u', 'r', 's', 'e', 'l', 'f', 'Z']
加密成功!密文:UGRMKCSXHMUFMKBTOXGCMVATLUKV
Please input E for encryption or D for decryption:D
请输入密文(大写字母/偶数):UGRMKCSXHMUFMKBTOXGCMVATLUKV
解密成功!明文:WEAREDJSCOVEREDSAVEYOURSELF
Please input E for encryption or D for decryption:E
请输入明文:aabbbcccc
['a', 'a', 'b', 'b', 'b', 'c', 'c', 'c', 'c']
['a', 'Z', 'a', 'b', 'b', 'Z', 'b', 'c', 'c', 'Z', 'c', 'Z', 'c']
['a', 'Z', 'a', 'b', 'b', 'Z', 'b', 'c', 'c', 'Z', 'c', 'Z', 'c', 'Z']
加密成功!密文:RXBJDXDHDUDUDU
Please input E for encryption or D for decryption:D
请输入密文(大写字母/偶数):RXBJDXDHDUDUDU
11
9
5
1
解密成功!明文:AABBBCCCC
Please input E for encryption or D for decryption:


View Code
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: