# coding=utf-8
import pyperclip
LETTERS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
def main():
myMessage = """I have a dream,the dream is rooted in Chinese dream,I am proud of my country,
one of the great nation in the world.I believe that we can live a happy life which our ancestors presued
for a long time"""
mykey = "ASIMOV"
mode = raw_input("please choose the mode 1(encrypt) or 0(decrypt):")
if mode == 1:
mymode = "encrypt"
else:
mymode ="decrypt"
if mymode == "encrypt":
translated = encryptMessage(mykey,myMessage)
elif mymode =="decrypt":
translated = decryptMessage(mykey,myMessage)
print('%sed message:'%(mymode.title()))
print(translated)
pyperclip.copy(translated)
print()
print('the message has been coiped to the clipboard')
def encryptMessage(key,message):
return translateMessage(key,message,'encrypt')
def decryptMessage(key,message):
return translateMessage(key,message,'decrypt')
def translateMessage(key,message,mode):
translated = []
keyIndex = 0
key = key.upper()
for symbol in message:
num = LETTERS.find(symbol.upper())
if num != -1:
if mode == "encrypt":
num += LETTERS.find(key[keyIndex])
elif mode == "decrypt":
num -= LETTERS.find(key[keyIndex])
num %= len(LETTERS)
if symbol.isupper():
translated.append(LETTERS[num])
elif symbol.islower():
translated.append(LETTERS[num].islower())
keyIndex +=1
if keyIndex == len(key):
keyIndex = 0
else:
translated.append(symbol)
return ''.join(translated)
if __name__ == '__main__':
main()
维吉尼亚加密解密
原文作者:维吉尼亚加密问题
原文地址: https://blog.csdn.net/boke14122621/article/details/70232953
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
原文地址: https://blog.csdn.net/boke14122621/article/details/70232953
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。