抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

1. 前言

主要是在 靶场 刷题的时候遇到的,题目要求 将一串ASCII码转为字符串,再将字符串解码为一串私钥。感觉很有趣,于是乎,便记录下来。

2. 题目

一串已知的ASCII码

1
4d 48 68 6a 4e 6a 63 34 5a 57 59 78 59 57 45 30 4e 54 5a 6b 59 54 59 31 59 7a 5a 6d 59 7a 55 34 4e 6a 46 6b 4e 44 51 34 4f 54 4a 6a 5a 47 5a 68 59 7a 42 6a 4e 6d 4d 34 59 7a 49 31 4e 6a 42 69 5a 6a 42 6a 4f 57 5a 69 59 32 52 68 5a 54 4a 6d 4e 44 63 7a 4e 57 45 35

3. 解法(JavaScript)

思路:

将其看作字符串,将字符串以空格为界限分割为数组,遍历数组,将数组中的每一个元素拼接一个 0x为了将其转为整型的时候代表着 16进制。最后将数组挨个遍历转化拼接。

实现代码

1
2
3
4
5
6
7
8
9
10
let code = "4d 48 68 6a 4e 6a 63 34 5a 57 59 78 59 57 45 30 4e 54 5a 6b 59 54 59 31 59 7a 5a 6d 59 7a 55 34 4e 6a 46 6b 4e 44 51 34 4f 54 4a 6a 5a 47 5a 68 59 7a 42 6a 4e 6d 4d 34 59 7a 49 31 4e 6a 42 69 5a 6a 42 6a 4f 57 5a 69 59 32 52 68 5a 54 4a 6d 4e 44 63 7a 4e 57 45 35";
let chars = code.split(" ")
let result = "";
for (let i = 0; i < chars.length; i++) {
chars[i] = "0x" + chars[i];
chars[i] = String.fromCharCode(parseInt(chars[i]));
result += chars[i];
}
result = atob(result);
console.log(result);

评论



政策 · 统计 | 本站使用 Volantis 主题设计