keyword : 연산회로
연산 회로 사진 한장이 주어진다.
각각 or, xor, not, and gate에 해당한다. 힌트로는 32bit라고 있으며 이에 맞게 소스코드를 작성하면 다음과 같다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | import hashlib a = 334453 b = eval("0b1010001111100001000") c = 0x200 xor_1 = a ^ b i = 0 while True: or_1 = i|c xor_2 = or_1 ^ 318 if (xor_1 & xor_2) == 1337: print "3DS{"+hashlib.sha256(str(i)).hexdigest()+"}" break i += 1 | cs |
Answer : 3DS{d9a5223b761c375d1263e6e57ebec42d3e0fe3f6f283488d2eb204fb6ff17ee5}
'CTF | wargame' 카테고리의 다른 글
3DS CTF - Santa Walks into a bar (qr코드 파싱) (0) | 2017.03.07 |
---|---|
3DS CTF - Warmup (간단한 reversing) (0) | 2017.03.07 |
3DS CTF - AlienAudio? (오디오 스펙트럼 분석) (0) | 2017.03.07 |
3DS CTF -What The Hex (jpg파일 복구, 사진에서 문자열 추출 - teeseract) (0) | 2017.03.07 |
hackcenter / Broken Encryption 1 (CTR블록 암호, Crime Attack - 암호문 압축 길이에 따른 공격 기법) (0) | 2017.03.07 |