使用Python實現移位加密和解密

2021-08-29 21:01:58 字數 1649 閱讀 7090

**很簡單,就不多做解釋啦。主要思路是將字串轉為ascii碼,將大小寫字母分別移位金鑰表示的位數,然後轉回字串。需要注意的是,當秘鑰大於26的時候,我使用迴圈將其不斷減去26,直到金鑰等效小於26為止。

def

encrypt()

: temp =

raw_input

("please input your sentence: "

) key =

int(

raw_input

("please input your key: "))

lista =

map(

ord,temp)

lens =

len(lista)

for i in

range

(lens)

: a = lista[i]

if65

<= a <=90:

a += key

while a >90:

a -=

26elif

97<= a <=

122:

a += key

while a >

122:

a -=

26 lista[i]

= a lista =

map(

chr,lista)

lista =

''.join(lista)

print lista

defunencrypt()

: temp =

raw_input

("please input your sentence: "

) key =

int(

raw_input

("please input your key: "))

lista =

map(

ord, temp)

lens =

len(lista)

for i in

range

(lens)

: a = lista[i]

if65

<= a <=90:

a -= key

while a <65:

a +=

26elif

97<= a <=

122:

a -= key

while a <97:

a +=

26 lista[i]

= a lista =

map(

chr, lista)

lista =

''.join(lista)

print lista

a =int

(raw_input

("input 0 to encrypt and 1 to unencrypt"))

if a ==0:

encrypt(

)elif a ==1:

unencrypt(

)

效果

C 實現 移位加密

filename encrypt string.cs author zhanghua date 2005 08 11 fuction input a strig and encrypt a string 加密後的字串的第乙個字元是原先字串的最後乙個字元,其餘的每乙個字元是對應的原字串中的前乙個字元的...

C 實現 移位加密

filename encrypt string.cs author zhanghua date 2005 08 11 fuction input a strig and encrypt a string 加密後的字串的第乙個字元是原先字串的最後乙個字元,其餘的每乙個字元是對應的原字串中的前乙個字元的...

編寫python程式實現移位密碼 移位密碼

密碼學簡介 這是我以前所不知道的。密碼學的基本目的是使兩個在不安全通道中通訊的人,通常稱為alice和bob,以一種使他們的敵手oscar不能明白和理解通訊內容的方式進行通訊。定義 乙個密碼體系是滿足一下條件的五元組 p,c,k,e,d p代表所有可能的明文組成的有限集 c代表所有可能的密文組成的有...