二进制幂数加密法:
云影密码(01248密码):
与二进制幂加密不同,这个加密法采用的是0作间隔,其他非0数隔开后组合起来相加表示序号1-26之一的字母(a/A,b/B,c/C…z/Z)。
凯撒密码:
明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。其实就是按照特定的顺序将字母替换。比如后移2位,那么a就变成c,d就变成f
Rot13加密:
这种加密与凯撒十分类似,就是凯撒密码中移动13位的结果。
栅栏密码:
比较常见的是2栏的栅栏密码。
比如明文:THERE IS A CIPHER
去掉空格后变为:THEREISACIPHER
两个一组,得到:TH ER EI SA CI PH ER
先取出第一个字母:TEESCPE
再取出第二个字母:HRIAIHR
连在一起就是:TEESCPEHRIAIHR 还原为所需密码。
而解密的时候,我们先把密文从中间分开,变为两行:
T E E S C P E
H R I A I H R
再按上下上下的顺序组合起来:
THEREISACIPHER
分出空格,就可以得到原文了:
THERE IS A CIPHER
但也存在不是两栏的情况,就需要对密文的总字数分解因数,尝试分栏的种类。
比如密文 TAHCEIRPEHIESR 14个字母,可以考虑2栏或7栏。
Base64编码:
转码过程例子:3*8=4*6
内存1个字节占8位
转前: s 1 3
先转成ascii:对应 115 49 51
2进制: 01110011 00110001 00110011
6个一组(4组) 011100110011000100110011
然后才有后面的 011100 110011 000100 110011
然后计算机是8位8位的存数 6不够,自动就补两个高位0了
所有有了 高位补0
科学计算器输入 00011100 00110011 00000100 00110011
得到 28 51 4 51
查对下照表 c z E z
核心思想在于将8位的二进制转换为6位的二进制。
而6位二进制共64种组合,可以表示10个数字,26个字母的大小写,外加符号+和/。一共64个。
有一点要特别指出,当明文个数不是三的倍数时,就会出现 明文数*8%6不为零的情况,
这是如果余数为2,就在末尾补两个等号,如果余数为4,就补一个等号。对于余下的2个或4个二进制
采用高位补零的方法。
比如密文:cmFubA== 的明文为ranl
因此我们可以得出base64编码后的特征:只含有数字,字母,和符号+ / =。
url编码:
url编码是字符ASCII码的十六进制加上%的格式。 在url中不是对所有的字符都要进行url编码,一般的字母和数字是不会被编码的。会以原本形式传递。
ASCII编码:(特征是0-127)
Unicode编码:
这是对ASCII码表的扩展,可以表示更多的字符,采用2个字节16位的储存形式。
解码后可以看到16进制的表示形式。
其特征为以\u开头。
unicode在html/css实体语言中转换
utf8编码(&#开头):
这是为了利用内存采用的一种编码格式,这里只是看看其特征 &#开头ascii表之外的字符,
对于能用ascii表示的字符仍用ascii表示还是一个长度,就节省了内存。
1. 但是不管怎样,所有这些编码方式中,0~127表示的符号是一样的,不一样的只是128~255的这一段。
2. 至于亚洲国家的文字,使用的符号就更多了,汉字就多达10万左右。一个字节只能表示256种符号肯定是不够的,就必须使用多个字节表达一个符号。 比如简体中文常见的编码方式是GB2312,使用两个字节表示一个汉字,所以理论上最多可以表示256×256=65536个符号。
hash算法:
hash函数是一系列单向函数,就是这种运算是不可逆的,只可以通过hash运算得到一个hash值,而不能通过hash值得到原始数据。并且经过hash运算后得到的hash值为固定长度
加盐hash:
网站后台一般只储存用户密码的hash值,但也存在一定风险,因为如果黑客拿到了密码的hash后,可以的通过对比已经存在的明文与哈希的对应数据,进行对比,获得明文密码。因此,有了加盐hash,就是随机的在用户密码后加上一段字符后再进行hash运算,由于黑客不知道加的盐是什么,依然无法得到密码。
摩斯密码:
不同于现代只使用0和1两种状态的二进制代码,它的代码包括五种:
1.点(.) . 是 0
2.划(-)- 是 1
3.每个字符间短的停顿(在点和划之间的停顿)
4.每个词之间中等的停顿
5.以及句子之间长的停顿
Brainfuck/Ook!编码:
brainfuck语言用> < + – . , [ ]八种符号来替换C语言的各种语法和命令: 例如: +++++++++++++++++.>+++++++++++++++++++++++++++++++++++++++++
ook密码中有大量ook,加上一些符号;
Ook! has only three distinct syntax elements:
Ook.
Ook?
Ook!
这种就是ook密码
当铺密码:
当铺密码就是一种将中文和数字进行转化的密码,当前汉字有多少笔画出头,就是转化成数字几。
培根密码:
这是利用a和b(A和B也行)来表示二进制中的0和1,并以此来表示26个字母(0-25),培根密码5位一组。
A aaaaa B aaaab C aaaba D aaabb E aabaa F aabab G aabba H aabbb I abaaa J abaab
K ababa L ababb M abbaa N abbab O abbba P abbbb Q baaaa R baaab S baaba T baabb
U babaa V babab W babba X babbb Y bbaaa Z bbaab
QWE加密:
从电脑键盘上的字母从Q开始数,顺序是Q W E R T Y U I…对应的字母顺序依次是A B C D E F G H …也就是说Q=A,W=B,E=C。
MD5信息摘要算法:
MD5信息摘要算法,一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值。
MD5算法的原理可简要的叙述为:MD5码以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。