费纳姆密码采用二进制表示,加密时要将明文和密钥都转化成7位数的二进制数。
例:
明文:HELLO=1001000 1000101 1001100 1001100 1001111
密钥:CRUDE=1000011 1010010 1010101 1000100 1000101
异或得到密文:0001011 0010111 0011001 0001000 0001010
解密时将密文7位为一组,然后与密钥异或,在将结果转化为ASCLL即可。
例题:(www.jarvisoj.com/challenges)
python代码实现如下: