This is simple transposition cipher
key is "python"
Ciphertext is hreCp1_ev_s117nr_ys17eer132n_5
문제 파일을 열면 위와 같이 key 값은 python이고 간단한 전치암호를 사용하여 암호문을 생성했다고 합니다. 전치암호는 예를 들어 키 값이 13524 라고 하면 abcde 가 acebd 로 변환되는 암호화를 의미합니다. 따라서 python이 key 값이므로 의미있는 숫자로 어떻게 표현할 수 있을까 생각해보면 알파벳 순서가 가장 유력합니다. python의 순서는 465132입니다. 복호화 코드는 아래와 같습니다.
def main():
data="hreCp1_ev_s117nr_ys17eer132n_5"
_data=list(data)
rst=[]
for i in range(5):
rst.extend(_data[4+i*6-1])
rst.extend(_data[6+i*6-1])
rst.extend(_data[5+i*6-1])
rst.extend(_data[1+i*6-1])
rst.extend(_data[3+i*6-1])
rst.extend(_data[2+i*6-1])
rst=''.join(rst)
print(rst)
if __name__ == "__main__":
main()
'Cryptography' 카테고리의 다른 글
[HackCTF] RSA (0) | 2021.09.19 |
---|---|
[암호학 개념] (0) | 2021.09.19 |
[HackCTF] Classic Cipher -1 (0) | 2021.09.11 |
[HackCTF] Smooth CipherText (0) | 2021.09.11 |
[HackCTF] Great Binary (0) | 2021.09.10 |
댓글