提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
了解二进制安全可以做什么,掌握基本的进制转换。
一、二进制安全是什么?
二进制安全本质上是指在传输数据时,保证二进制数据不被篡改、破译等,保障应用程序运行不被修改,覆盖到信息安全的各方各面。二进制运算也是计算机最底层的运算,如果攻击能在二进制层面及时检测出来,将极大提升效率。
在网络安全中,二进制安全占据着至关重要的基石地位,0day漏洞挖掘、漏洞库研发、恶意代码检测、杀软、沙箱、反调试、二进制木马查杀的安全工作都基于这个方向的研究。移动基带、物联网、硬件等新兴领域的安全研究也都离不开二进制安全。
二、进制
1.为什么会有数字?我们生活中常用的数字是多少进制的?为什么要学习进制?
数字起源于阿拉伯,为了方便记住物体的数量,阿拉伯人创造了数字.由于阿拉伯数字是世界上最容易而又是最简单的所以被世界所采用.在我们的日常生活中更多的用到的是十进制.学习进制是一个初期很枯燥的事情,而我们要学习进制是因为计算机只认识二进制,也就是0和1,为了更好学习计算机,我们首先深入理解什么是进制。
2.进制的定义
八进制的定义:由八个符号组成,分别是0、1、2、3、4、5、6、7、缝八进一。
那十进制的定义:由十个符号组成,分别是0、1、2、3、4、5、6、7、8、9、缝十进一。
同理我们可以推倒出N进制定义:由N个符号组成,缝N进一。
3.进制的本质
其实有一个特别简单的问题,我们在很小的时候就遇到过。1+1=3 对吗?
在小时候我们肯定会说这不对1+1肯定=2啊 这么简单的问题还用得着想吗?
但是当我真正了解了进制的本质以后 也许我会说 1+1=3也是对的.
十进制的定义:由十个符号组成,分别是0、1、2、3、4、5、6、7、8、9 缝十进一。
也可以定义:由十个符号组成,分别是A、B、C、8、9、0、J、K、L、M逢十进一。
那1+1=3就是正确的,如:0、1、1、3、5、2、6、8、9、7 把它们看成符号进行计算。
4.进制的书写
一进制1-20,如:古人的结绳记事,打到一个猎物记录一个绳,再到一个猎物在记录一个绳,如果用一进制记数的话,或查数那就很痛苦了。如下:
1
11
111
1111
。。。。
。。。。。
。。。。。。
1111111111111111111
注意:一进制的问题已经体现出来了,因为它用的符号少,一进制能不能用a来表示这个符号呢?结论是可以的当我们打倒一个猎物时候写一个a,打倒第二个猎物在写个a,以此类推。
三进制0-20,由三个符号组成缝三进一,我们用三进制查数从0-20, 0、1、2后面开始进位,将最后1位进位后变成0,第2位进位成1。在往后是11、12它们是不要进位的,后面以此类推。书写如下:
0、1、2
10、11、12
20、21、22
100、101、102
110、111、112
120、121、122
210、211、212
220、221、222
7进制书写形式:
0、1、2、3、4、5、6
10、11、12、13、14、15、16
20、21、22、23、24、25、26
30、31、32、33、34、35、36
40、41、42、43、44、45、46
50、51、52、53、54、55、56
60、61、62、63、64、65、66
100、101、102、103、104、105、106
110、111、112、113、114、115、116
120、121、122、123、124、125、126
记住下面二进制与十六进制的映射
0 1 2 3 4 5 6 7 8 9 A B C D E F
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
5.进制的运算
因为我比较喜欢7这个数字(毕竟Clearlove7)哈哈哈所以就拿七进制来运算
先来编表:
加法表
1+1=2
2+1=3 2+2=4
3+1=4 3+2=5 3+3=6
4+1=5 4+2=6 4+3=10 4+4=11
5+1=6 5+2=10 5+3=11 5+4=12 5+5=13
6+1=10 6+2=11 6+3=12 6+4=13 6+5=14 6+6=15
乘法表
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=12
4*1=4 4*2=11 4*3=15 4*4=22
5*1=5 5*2=13 5*3=21 5*4=26 5*5=34
6*1=6 6*2=15 6*3=24 6*4=33 6*5=42 6*6=51
现在来计算5+5通过查表可以发现=13
3*5相当于3个5查表发现=21
计算165+235=?
5+5查表等于13,所以留3进1
6+3+1查表等于13,留3进1
1+2+1查表等于4.
所以165+235=433
计算153*54=?
3*4=15,留5进1
4*5=26,留6进2
在这里很容易出错,因为留的是6上一个进的是1 我们很容易根据习惯就写成1+6=7,但这里我们是7进制1+6=10所以要留0进1
下面的计算只要认真算 就不会出错
153*54=12615
课后小结
在学习二进制的初期要认真的跟上海哥视频上去学 动手动笔记录
忘掉十进制…