栅欄密碼:百度百科
把m*n長度個字元串分成n個一組,共m組。每次(共n次)取每組的第i個字元,連起來組成密文。
假設原文 abcdefghijklmno (15個)
加密:
a b c d e
f g h i j
k l m n o
密文:
afk bgl chm din ejo
說白了就是數組。
注意,有的時候空格問題很值得關注。
ctf執行個體:聰明的小羊
#栅欄密碼
s= 'tn c0afsiwal kes,hwit1r g,npt ttessfu}ua u hmqik e {m, n huiouosarwCniibecesnren.'
print len(s) #85 17*5 5*17
num = 17
length = 5
for i in range(num):
for j in range(length):
print s[17*j+i], #不換行輸出