
密码学
文章平均质量分 92
陽光微涼
这个作者很懒,什么都没留下…
展开
-
数字签名
数字签名解决的问题秘钥无法有效分发 ===> 不需要发送私钥无法防止否认(Ablice 和Bob都有秘钥,所以都可以否认自己发过某个消息) ==》私钥只有自己持有,无法否认无法进行第三方证明(如果需要别人帮忙认证,那么这个人就需要持有秘钥) ==》使用公钥就可以帮忙认证,公钥是对外公开的。基本流程go语言实现签名与验证签名签名流程读取私钥对传入的数据...原创 2019-06-25 10:06:05 · 219 阅读 · 0 评论 -
证书与https
证书与https为什么要使用证书非对称加密存在公钥分发困难的问题直接传递公钥,容易被截取放到固定的位置,容易被替换解决办法引入第三方认证机构,CA(Certificate Authority)CA机构是一系列具有社会公信力的机构的总称,它们负责为厂商提供数字证书(有公钥),从而解决公钥分发困难的问题证书使用流程httpshttp:应用层协议,标准协议https:不是标准...原创 2019-06-25 11:27:34 · 867 阅读 · 0 评论 -
RSA加解密算法简析
RSA加解密算法简析对于下面的公式,已知m、e、N 求出c容易,但是已知c、N、e反推n就很难了memodN=cm^e mod N =cmemodN=c这时钥匙就是一个陷门,是某种让加密逆过程很容易的信息,比如我们如果知道了一个d,使得cdmodN=mc^d mod N =mcdmodN=m那么,有me∗dmodN=mm^{e*d} mod N =mme∗dmodN=m...原创 2019-06-25 17:51:38 · 860 阅读 · 0 评论 -
密码学简介
密码学简介现代网络存在的问题数据窃取数据篡改身份伪装对称加解密三要素加密明文算法秘钥解密密文算法秘钥对称加密与非对称加密的区别对称加密加密解密使用同样的秘钥加密解密算法不一定相同非对称加密加密解密使用的是两把钥匙对称加密算法凯撒密码凯撒密码是一种简单的对称加密算法通过平移得到密文明文:hello worl...原创 2019-06-23 16:01:26 · 891 阅读 · 0 评论 -
go语言实现对称加密
go语言实现对称加密AES算法+CTR分组模式加密思路第一步:创建aes密码接口创建一个cipher.Block接口func NewCipher(key []byte) (cipher.Block, error)参数:秘钥返回值:一个分组接口第二步:创建分组模式ctrcrypto/cipher包func NewCTR(block Block, iv []byte) St...原创 2019-06-23 20:22:53 · 2071 阅读 · 0 评论 -
非对称加密
非对称加密对称加密存在的问题当通信对象很多时会面临众多秘钥的有效管理问题。(秘钥管理困难)对于一个新的数据通信对象,密钥怎样进行传输的问题。(秘钥分发困难)非对称加密加密解密使用不相同同的钥匙加密流程对称加密与非对称加密对比对称加密秘钥数量:1效率:高,适合大文件加解密非对称加密秘钥数量:2公钥:public key,任何人都可以持有。公共的私钥:...原创 2019-06-23 22:01:50 · 305 阅读 · 0 评论 -
base64编解码
base64编解码基本知识base64编码不是加解密,一种编辑数据的格式,方便传输。Base64: 64个字符的标准表0~9a - zA -Z+ /一共64个字符,任何输入的数据,都可以转换为这64个字符,进行传输base64处理之后,size变大,原因是base64算法按照6bit进行切割base64编码表3个字节的情况不足3的倍数时,会用=进行填充...原创 2019-06-23 23:23:06 · 1085 阅读 · 0 评论 -
哈希hash与消息认证码
哈希hash与消息认证码哈希hash特点不可逆(原像不可逆)单向的,无法通过哈希值反推会原内容抗碰撞基数极大,无法给定义一个哈希,找到另外的内容,两者哈希值相同。唯一性(算法固定时)内容不变,哈希值不变内容改变,哈希一定改变使用场景随机口令防止篡改:消息认证码,数字签名密码存储:数据库存储密码的哈希值,而不是原文,保护用户信息go语言使用哈希算...原创 2019-06-24 23:49:24 · 3486 阅读 · 0 评论