자 문제를보자. 암호..이게뭘까란다..
일단 위에 이상한 숫자들은 ASCII 코드이다. 즉, 알파벳들은 숫자(Decimal)로 표현한것이라고 보면된다.
아래사진은 linux의 man ascii 를 통해 ascii코드의 도움말페이지다. 드래그된 순서는 차례대로
8진수(Octet), 10진수(Decimal), 16진수(hexdecimal), 문자(Char)이다. 즉, 오른쪽 4개 (177, 127, 7F, DEL)가 문자를 표현할 수 있는 각 진수의 최대치를 의미한다.
문제에 주어진 숫자들을 대충 보면 숫자들이 커봐야 100 언저리라는 것을 볼 수 있다. 알파벳이 없으니까 16진수는 아니고, 확률상 저많은 숫자중에 177에 근접한 수도 없는것을보면 8진수도 아니다. 따라서 10진수라고 볼 수 있다.
아래의 명령어는 tr을 사용하여 숫자들사이의 공백을 \n (개행) 으로 바꾸고 각 라인을 one-line bashscript로 받아와 각 0번쨰 컬럼을 awk로 받아와 %c 문자로 바꾸어준 것이다. 이렇게하면 이상한 문자가 나온다.
요약하면 (Decimal -> Char) 한것이다.
$echo 86 71 57 107 89 88 107 103 97 88 77 103 89 83 66 110 98 50 57 107 73 71 82 104 101 83 52 103 86 71 104 108 73 69 70 49 100 71 104 76 90 88 107 103 97 88 77 103 86 109 86 121 101 86 90 108 99 110 108 85 98 50 53 110 86 71 57 117 90 48 100 49 99 109 107 104 | tr ' ' '\n' | while read decimal; do echo $decimal | awk '{printf("%c", $0)}'; done
이 문자는 base64 인코딩되어있으므로 디코딩해주면 Auth가 출력된다.