[SuNiNaTaS/Forensic] 19번 풀이
2019. 8. 2. 22:34ㆍ문제풀이/suninatas.com
또 암호다.
누가봐도 이진법인데... 또 변환하라고 하는것같으니까 아스키코드로 변환할 것이다.
변환은 이 사이트에서 진행했다.
바뀐 문자열은 띄어쓰기가 잘 되어있다는 점에서 치환암호일 확률이 높다.
그래서 기초적인 카이사르 암호 복호화부터 진행해보았다.
shift를 조정하다 보면 제대로 된 문장이 보이고, 암호를 알 수 있다.
이것도 앞으로 ctf 등에서 쓸 수 있을것같아서 파이썬으로 코딩해봤다.
msg = "NVCTFDV KF JLEZERKRJ REU KFURP ZJ R XFFU URP REU RLKYBVP ZJ GCRZUTKWZJMVIPYRIU"
key = "key"
result = []
for shift in range(1,26):
for i in range(0,len(msg)):
if msg[i].isupper():
result.append(chr( (ord(msg[i]) - ord('A') + shift) % 26 + ord('A') ))
elif msg[i].islower():
result.append(chr((ord(msg[i]) - ord('a') + shift) % 26 + ord('a') ))
else:
result.append(msg[i])
result = ''.join(result)
if( (result.find(key) != -1) | (result.find(key.upper()) != -1) ):
print(result)
break
else:
#print(f'shift: {shift} | result: {result}')
result=[]
continue
Authkey: PLAIDCTFISVERYHARD
'문제풀이 > suninatas.com' 카테고리의 다른 글
[SuNiNaTaS/Forensic] 14번 풀이 (0) | 2019.08.08 |
---|---|
[SuNiNaTaS/Forensic] 32번 풀이 (0) | 2019.08.02 |
[SuNiNaTaS/Forensic] 18번 풀이 (0) | 2019.08.02 |
[SuNiNaTaS/MISC] 17번 풀이 (0) | 2019.08.01 |
[SuNiNaTaS/MISC] 13번 풀이 (0) | 2019.08.01 |