密码学

2018-11-08  本文已影响0人  Zero_0_0

base64


字符选用了"A-Z、a-z、0-9、+、/" 64个可打印字符。数值代表字符的索引,这个是标准Base64协议规定的,不能更改。64个字符用6个bit位就可以全部表示,一个字节有8个bit 位,剩下两个bit就浪费掉了,这样就不得不牺牲一部分空间了。这里需要弄明白的就是一个Base64字符是8个bit,但是有效部分只有右边的6个 bit,左边两个永远是0。

base16


Base16编码使用16个ASCII可打印字符(数字0-9和字母A-F)

古典密码


古典密码中最基础的加密法:列置换,加密:将明文按固定长m分组,即每行m个字母,在密钥控制下按某一顺序交换列,最后按列优先的顺序依次读出,即产生了密文。

希尔密码(不理解)


(小写英文 有矩阵)

是运用基本矩阵论原理的替换密码,每个字母当作26进制数字:A=0, B=1, C=2... 一串字母当成n维向量,跟一个n×n的矩阵相乘,再将得出的结果mod26。用作加密的矩阵(即密匙)必须是可逆的,否则就不可能译码。只有矩阵的行列式和26互质,才是可逆的。

rsa算法


RSA的算法涉及三个参数,n、e1、e2。其中,n是两个大质数p、q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度。e1和e2是一对相关的值,e1可以任意取,

要求e1与(p-1)*(q-1)互质;

再选择e2,要求(e2e1)mod((p-1)(q-1))=1。

(n,e1),(n,e2)就是密钥对。其中(n,e1)为公钥,(n,e2)为私钥。

数字密码


形式由0*纯数字的密码是 16进制转

  UNICODE编码

\u7f8a\u7531\u5927\u4e95\u592b\u5927\u4eba\u738b\u4e2d\u5de5

当铺密码


羊由大井夫大人王中工 数出头的个数

凯撒密码


通过把字母移动一定的位数来实现加密和解密。明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文(可以根据题目给的已知条件 推算出偏移的位数)

上一篇 下一篇

猜你喜欢

热点阅读