1.某種字符加密方法描述如下:
①將明文字符串s中的每個(gè)字母字符根據(jù)它所在該字符串的位置,往后移動(dòng)相應(yīng)的位置,并轉(zhuǎn)化為對(duì)應(yīng)的小寫(xiě)或大寫(xiě)字母(例如:大寫(xiě)字母A往后移動(dòng)5位變成F,轉(zhuǎn)化成小寫(xiě)字母得到f;小寫(xiě)字母y往后移動(dòng)8位得到g,轉(zhuǎn)化成大寫(xiě)字母得到G),非字母字符不處理,得到新串ss。
②將①得到的新串ss平均切割成兩部分,若ss的長(zhǎng)度n為奇數(shù),則第一部分長(zhǎng)度為n//2+1,第二部分長(zhǎng)度為n//2。再將后面一段字母依次逐個(gè)插入前一段字符后邊,組成一段密文。
例如“Good.Luck!”生成密文過(guò)程如下:
下標(biāo)位置 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
原始字符 |
G |
o |
o |
d |
. |
L |
u |
c |
k |
! |
向后移動(dòng)i位 |
H |
q |
r |
h |
. |
R |
b |
k |
t |
! |
大小寫(xiě)轉(zhuǎn)換 |
h |
Q |
R |
H |
. |
r |
B |
K |
T |
! |
①說(shuō)明文字符串s移位和大小寫(xiě)轉(zhuǎn)換過(guò)程;
②將①得到的密文ss平均切割成兩部分。
例如將上述①得到的字符串中6~10位置的字符依次逐個(gè)連接在1~5字符后面,生成密文如圖所示:
(1)若有一個(gè)待加密字符為“Python!”,根據(jù)上述加密規(guī)則,加密后的密文是
。
(2)已知采用上述加密方法得到的密文是“iTCDS!”,反推出明文是
(寫(xiě)出過(guò)程,按步驟給分)。
下標(biāo)位置 |
1 |
2 |
3 |
4 |
5 |
6 |
密文字符 |
i |
T |
C |
D |
S |
! |
位置交換 |
|
|
|
|
|
|
大小寫(xiě)轉(zhuǎn)換 |
|
|
|
|
|
|
向前移動(dòng)i位 |
|
|
|
|
|
|