进制转换

进制转换

 

 打开文档得到很多2,8,10,16进制的数字,猜测要转换成16进制,然后转成字符串得到flag,先来普及一下知识,

16进制数字:以0x开头,在本题中以x开头  hex

8进制数字:以o开头             oct

2进制数字:以b开头             bin

10进制数字:以d开头           dec

在这里可以自己上网手动转换,也可直接写脚本进行转换,脚本如下

#! /usr/bin/env python
# coding=utf-8
s = ["d87", "x65", "x6c", "x63", "o157", "d109", "o145", "b100000", "d116", "b1101111", "o40", "x6b", "b1100101",
     "b1101100", "o141", "d105", "x62", "d101", "b1101001", "d46", "o40", "d71", "x69", "d118", "x65", "x20",
     "b1111001", "o157", "b1110101", "d32", "o141", "d32", "d102", "o154", "x61", "x67", "b100000", "o141", "d115",
     "b100000", "b1100001", "d32", "x67", "o151", "x66", "d116", "b101110", "b100000", "d32", "d102", "d108", "d97",
     "o147", "d123", "x31", "b1100101", "b110100", "d98", "d102", "b111000", "d49", "b1100001", "d54", "b110011", "x39",
     "o64", "o144", "o145", "d53", "x61", "b1100010", "b1100011", "o60", "d48", "o65", "b1100001", "x63", "b110110",
     "d101", "o63", "b111001", "d97", "d51", "o70", "d55", "b1100010", "d125", "x20", "b101110", "x20", "b1001000",
     "d97", "d118", "o145", "x20", "d97", "o40", "d103", "d111", "d111", "x64", "d32", "o164", "b1101001", "x6d",
     "o145", "x7e"]
s1 = ""
t = ""
t1 = ""
for i in s:
    s1 = i
    for j in range(1):
        if s1[0:1] == 'd':
            t = str(hex(int(s1[1:])))
            t = t[2:] + " "
            t1 = t1 + t
        if s1[0:1] == 'x':
            t = s1[1:] + " "
            t1 = t1 + t
        if s1[0:1] == 'o':
            t = str(hex(int(s1[1:], 8)))
            t = t[2:] + " "
            t1 = t1 + t
        if s1[0:1] == 'b':
            t = str(hex(int(s1[1:], 2)))
            t = t[2:] + " "
            t1 = t1 + t
print(t1)

得到16进制的明文为

57 65 6c 63 6f 6d 65 20 74 6f 20 6b 65 6c 61 69 62 65 69 2e 20 47 69 76 65 20 79 6f 75 20 61 20 66 6c 61 67 20 61 73 20 61 20 67 69 66 74 2e 20 20 66 6c 61 67 7b 31 65 34 62 66 38 31 61 36 33 39 34 64 65 35 61 62 63 30 30 35 61 63 36 65 33 39 61 33 38 37 62 7d 20 2e 20 48 61 76 65 20 61 20 67 6f 6f 64 20 74 69 6d 65 7e

在线转换https://www.bejson.com/convert/ox2str/

得到flag   Welcome to kelaibei. Give you a flag as a gift.  flag{1e4bf81a6394de5abc005ac6e39a387b} . Have a good time~

Bingo!

posted @ 2020-11-19 18:28  浩琦很好奇  阅读(407)  评论(0编辑  收藏  举报