加密技术和支付密码

1.BASE64(编码)

Base64编码可用于在HTTP环境下传递较长的标识信息。

针对字母的ASCII码处理,3个字符共24bit,按照6bit分割得到4个分块,对分块再编码。6bit表示数字的范围为0~63,即将文本加密为64进制。

数值字符   数值字符   数值字符   数值字符
0 A 16 Q 32 g 48 w
1 B 17 R 33 h 49 x
2 C 18 S 34 i 50 y
3 D 19 T 35 j 51 z
4 E 20 U 36 k 52 0
5 F 21 V 37 l 53 1
6 G 22 W 38 m 54 2
7 H 23 X 39 n 55 3
8 I 24 Y 40 o 56 4
9 J 25 Z 41 p 57 5
10 K 26 a 42 q 58 6
11 L 27 b 43 r 59 7
12 M 28 c 44 s 60 8
13 N 29 d 45 t 61 9
14 O 30 e 46 u 62 +
15 P 31 f 47 v 63 /

文本长度除3后,如果余数为1,补充4bit的0构成两个字符,再添加两个=号;如果余数为2,补充2bit的0构成三个字符,再添加一个=号。

2.URL Encoding(编码)

针对url中有中文的问题,提出的解决方案。

3.单向加密算法:最广泛应用的是Hash算法,Hash函数就是被设计为基于通过特定压缩函数的不断重复“压缩”输入的分组和前一次压缩处理的结果的过程,直到整个消息都被压缩完毕,最后的输出作为整个消息的散列值

MD5 和 SHA1 可以说是目前应用最广泛的Hash算法,而它们都是以 MD4 为基础设计的。主要用于数字签名,信息完整性保护。http://www.cnblogs.com/houkai/p/3486667.html

双向对称、非对称算法:对称算法保密性高,解码速度快,加密密钥与解密密钥相同,著名密码算法DES;非对称算法速度慢,但是使用成对的密钥,加密解密使用不同的密钥,有利于保密和身份认定,一般用于加密DES类算法的密钥。http://www.cnblogs.com/houkai/p/3486684.html

4.支付密码

创建,首先生成盐,对随机字符串base64编码;然后Hash=哈希算法:迭代次数:盐:pbkdf2=加密fun(哈希算法,迭代次数,盐,密码,长度)。

验证,输入password和用户的Hash,首先由Hash得到哈希算法、迭代次数、盐,加上password计算pbkdf2,然后和Hash中真实的pbkdf2比较即可。

5.HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL。HTTPS和HTTP的区别

https协议需要到ca申请证书,一般免费证书很少,需要交费。http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。
http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

 https的通信流程

2C1202ED 2A3D 45A2 8FE7 9062817B58AF

SSL协议位于TCP/IP协议与各种应用层协议之间,是一种国际标准的加密及身份认证通信协议,为TCP提供一个可靠的端到端的安全服务,为两个通讯个体之间提供保密性和完整性(身份鉴别)。

posted @ 2015-07-31 10:41  侯凯  阅读(2467)  评论(0编辑  收藏  举报