A计算机(服务器)<-------->网络传输服务(各种协议和软硬件配合)<---------->B计算机(服务器)
信息传递:A计算机想往外传输 就要把数据变成可传输类型,首先会把传递的信息通过ASCII码表转换为010101...然后通过硬件把0和1 变为相应的电信号。此电压通过线缆传输到 B计算机(服务器)B计算机的相关硬件 把电信号 转变为 010101...通过ASCII码表编译成可 看的字符信息。
Byte和bit
Byte:字节,一个Byte由8 bits组成,是数据存储的基础单位,1Byte又称为一个字节,用一个字节(Byte)储存,可区别256个数字。数据存储的基本单位,比如移动硬盘1T , 单位是byte
bit: bit(比特)是表示信息的最小单位, 又叫位. 一个位要么是0要么是1. 数据传输的单位 , 比如家里的宽带100MB,下载速度并没有达到100MB,一般都是12-13MB,那么是因为需要使用 100 / 8关系: 1Byte = 8bit
对称加密:主要有DES算法,3DES算法,AES算法 ,TDEA算法,Blowfish算法,RC5算法,IDEA算法。
采用一个密钥对系统加密的方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。
堆成加密常见加密算法
DES : Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法,1977年被美国联邦政府的国家标准局确定为联邦资料处理标准(FIPS),并授权在非密级政府通信中使用,随后该算法在国际上广泛流传开来。
AES : Advanced Encryption Standard, 高级加密标准 .在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。
特点
加密速度快, 可以加密大文件
密文可逆, 一旦密钥文件泄漏, 就会导致数据暴露
加密后编码表找不到对应字符, 出现乱码
一般结合Base64使用
Base64 算法简介
Base64是一种基于64个字符的编码算法,根据RFC2045的定义:“Base64内容传送编码是一种以任意8位字节序列组合的描述形式,这种形式不易被人直接识别”。经过Base64编码后的数据会比原始数据略长,为原来的4/3倍。经Base64编码后的字符串的字符数是以4为单位的整数倍。
Base64是网络上最常见的用于传输8Bit字节码的可读性编码算法之一
可读性编码算法不是为了保护数据的安全性,而是为了可读性
可读性编码不改变信息内容,只改变信息内容的表现形式
所谓Base64,即是说在编码过程中使用了64种字符:大写A到Z、小写a到z、数字0到9、“+”和“/”
Base58是Bitcoin(比特币)中使用的一种编码方式,主要用于产生Bitcoin的钱包地址
相比Base64,Base58不使用数字"0",字母大写"O",字母大写"I",和字母小写"i",以及"+"和"/"符号
base64 是 3个字节为一组,一个字节 8位,一共 就是24位 ,然后,把3个字节转成4组,每组6位,
3 * 8 = 4 * 6 = 24 ,每组6位,缺少的2位,会在高位进行补0 ,这样做的好处在于 ,base取的是后面6位,去掉高2位 ,那么base64的取值就可以控制在0-63位了,所以就叫base64,111 111 = 32 + 16 + 8 + 4 + 2 + 1 =
① 小写 a - z = 26个字母
② 大写 A - Z = 26个字母
③ 数字 0 - 9 = 10 个数字
④ + / = 2个符号
大家可能发现一个问题,咱们的base64有个 = 号,但是在映射表里面没有发现 = 号 , 这个地方需要注意,等号非常特殊,因为base64是三个字节一组 ,当我们的位数不够的时候,会使用等号来补齐。
当大家看到一个字符串,像这样 V9WG1IPP3xfbV4L7F4TUj6bKPbXDpcUWySM9vZNjxdtoNifriJ+sh1ZiSg7o49p+OdMpKgD0nxMZD0hlUyD+W7ov4z4D65Ys0a4PLbPYVaBrbHNw2pSIoVfpa5a4c4nVnxVw/tHLEHv0ajjw42raoQBQiCwuvvxpWA5zWLyL3dc= 像这样的字符串,大概率就是一个加密字符串,读者们试着解密它吧。
感谢阅读!