赞
踩
用一个字节(7个或8个二进制位) 定义了128个字符 (96 个可打印字符, 32 个控制字符)
英语中用128个符号编码便可以表示所有
几个常见字母的ASCII码: “0-9”为 48-57; “A-Z”为65-90;“a-z”为97-122;
想要用固定字节, 将世界上所有的符号都纳入其中
根据不同的符号自动选择编码的长短, 英文用一个字节,汉字用两个
浏览器URL只能使用英文字母、阿拉伯数字和某些标点符号,
网址要使用汉字只能编码后使用
url编码其实就是一个字符ascii码的十六进制, 前面加上“%”
“\”的url编码就是%5c
基于32/64/58个可打印字符来表示二进制数据的方法
就是把 二进制 --转换为–> 字符
base32的编码表是由(A-Z、2-7)32个可见字符构成,“=”符号用作后缀填充。
base64的编码表是由(A-Z、a-z、0-9、+、/)64个可见字符构成,“=”符号用作后缀填充。
base58的编码表相比base64少了数字0,大写字母I,O,小写字母 l (这个是L),以及符号‘+’和‘/’
1234567
--base32编码–> GEZDGNBVGY3Q====
特征:大写字母和数字,不满5的倍数,用‘=’补齐。
1234567
--base64编码–> MTIzNDU2Nw==
特征:大小写字母和数字,不满3的倍数,用‘=’补齐。
1234567
--base58编码–> 2s8YYFs4Vc
算法 | 位数 | 加密后字符 | 特点/用途 |
---|---|---|---|
base16 | 原先的2倍 | 数字0-9,大写字母A-F | 就是16进制转ASCII |
base32 | 原先的8/5倍 | 大写字母(A-Z)数字234567 | 字符不足用“=”补齐 |
base64 | 转换后比原有的字符串长1/3 | 大写字母(A-Z),小写字母(a-z),数字(0-9)以及+/ | 字符不足用“=”补齐 |
ROT5 | 数字(0-9) | 只对数字进行编码,用当前数字往前数的第5个数字替换当前数字:0>5, 1>6 |
使用同一套密钥进行加密和解密
P:明文
C:密文
国密 硬件实现
国密 软件实现
密钥名称128、192、256位
每个密码以私钥(secret key)和公钥(public key)成对出现,
公钥加密,私钥解密,反之亦然
相对于对称加密,速度很慢,一般不用于加密,而是秘钥交换
国密
只能加密不能解密
输出长度为 128bits 的一个串 (通常用 16 进制 表示为 32 个字符)
由数字“0-9”和字母“a-f”所组成的字符串
国密
带秘密密钥的Hash函数
兼容了MD和SHA算法的特性,并在此基础上加上了密钥
40个字符
核心思想是“哈希计算需要更大的内存空间和时长”
追求更大的内存消耗和计算时间,以有效阻止ASIC专用矿机。
生成的密文是60位
主要是能实现每次加密的值都是不一样
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。