本文實(shí)例講述了Python實(shí)現(xiàn)的維尼吉亞密碼算法。分享給大家供大家參考,具體如下:
站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到東臺(tái)網(wǎng)站設(shè)計(jì)與東臺(tái)網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊(cè)、網(wǎng)頁(yè)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋東臺(tái)地區(qū)。一 代碼
# -*- coding:utf-8 -*- #key='relations' #plaintext='tomorrowiwillhaveagood' print("創(chuàng)新互聯(lián)測(cè)試結(jié)果:") key='helloworld' plaintext=raw_input('請(qǐng)輸入明文:') ascii='abcdefghijklmnopqrstuvwxyz' keylen=len(key) ptlen=len(plaintext) ciphertext ='' i =0 while i < ptlen: j = i % keylen k = ascii.index(key[j]) m = ascii.index(plaintext[i]) ciphertext += ascii[(m+k)%26] i +=1 print(ciphertext) #維吉尼亞加密算法 解密 key='helloworld' ciphertext=raw_input('請(qǐng)輸入密文:') ascii='abcdefghijklmnopqrstuvwxyz' keylen=len(key) ctlen=len(ciphertext) plaintext ='' i =0 while i < ctlen: j = i % keylen k = ascii.index(key[j]) m = ascii.index(ciphertext[i]) if m < k: m +=26 plaintext += ascii[m-k] i +=1 print(plaintext)