HTB ke
2020. 7. 3. 22:28ㆍ0x0D Crypto
728x90
Description
Can you decrypt the message?
제공 된 파일 (keys.txt)
hBU9lesroX_veFoHz-xUcaz4_ymH-D8p28IP_4rtjq0=
gAAAAABaDDCRPXCPdGDcBKFqEFz9zvnaiLUbWHqxXqScTTYWfZJcz-WhH7rf_fYHo67zGzJAdkrwATuMptY-nJmU-eYG3HKLO9WDLmO27sex1-R85CZEFCU=
평범한 base64 인코딩 to 디코딩 문제가 아니다..
이 문제는 Fernet 알고리즘을 사용한다.
첫 번째 생성키는 유사성이 없지만, 두 번째 생성키에 유사성이 있음을 확인할 수 있다.
이것으로 Fernet 기반이라는 것을 짐작할 수 있다.
Fernet은 symmetric encryption (대칭키) 종류 중 하나이다.
대칭키는 암호화, 복호화 동일한 키를 사용한다.
현재 까지 알아본 정보
key : hBU9lesroX_veFoHz-xUcaz4_ymH-D8p28IP_4rtjq0=
모듈을 통해 keys.txt의 다른 값은 Token임을 알 수 있다.
https://cryptography.io/en/latest/
Token은 바이트가 되어야한다.
#!-*-coding:utf-8-*-
from cryptography.fernet import Fernet
key = 'hBU9lesroX_veFoHz-xUcaz4_ymH-D8p28IP_4rtjq0='
token=b'gAAAAABaDDCRPXCPdGDcBKFqEFz9zvnaiLUbWHqxXqScTTYWfZJcz-WhH7rf_fYHo67zGzJAdkrwATuMptY-nJmU-eYG3HKLO9WDLmO27sex1-R85CZEFCU='
f = Fernet(key)
#token = f.encrypt(b”")
#The Fernet algorithm is symmetric encryption
# decrypt == encrypt
print(f.decrypt(token))
'0x0D Crypto' 카테고리의 다른 글
HackCTF Classic Cipher -3 (0) | 2022.03.13 |
---|---|
HTB - Bank heist (0) | 2020.07.02 |
Math Study Journey (0) | 2020.06.14 |
Math (0) | 2020.06.10 |
Rootme Prob. SHA 2- (0) | 2020.02.02 |