作为一个小白,对称加密,非对称加密,数字签名,数字证书,CA,diff-helman,DES,AED,RSA……这些都不会。所以,百度启动,先初步了解。
我是个小白……0基础的,所以,搞点实际应用吧,这个比数学公式好理解。
Enigma密码机是如何工作的?_哔哩哔哩_bilibili
这是一个3D建模的动画。
从这里,可以发现,它是对称的,如果Y->E,那么也有E->Y。因为,同一条电线,电流从这头流入那就一定会从那头流出,从那头流入那就一定会从这头流出。
【自制中字】二战德军 Enigma 密码机原理演示与破解
加密的演示:
【【自制中字】二战德军 Enigma 密码机原理演示与破解】 【精准空降到 01:07】
解密的演示:
【【自制中字】二战德军 Enigma 密码机原理演示与破解】 【精准空降到 05:30】
差不多,就是倒过来。
不是视频,是个长文
《模仿游戏》中艾伦图灵是如何破译英格玛的? - 十一点半的回答 - 知乎
机器创造出来的密码怪兽,只有机器才能战胜。
【直播回放】《图解密码技术》译者分享:有趣&有用的密码学_哔哩哔哩_bilibili
顺着这个视频,来初步百度一下这些概念吧,先忽略细节,这里只知道个大概就可以了。
上面见过的……
存在的问题与解决方法
至少,你知道了,密钥,是一串数字
对称加密原理 - 一种古老的加密方式_哔哩哔哩_bilibili
具体的和异或有关
用了自反
异或的自反,这里用棋子翻转,解释的很形象
密钥也是个数字
这个流程图挺好的
幂指,是这样的,这个流程图,也很形象
这个视频底下的评论挺形象的……大概有点点感觉了。
四分钟搞明白非对称加密_哔哩哔哩_bilibili
这个是一个更具体的流程图
在互联网上, 如何保密的传输信息. 小学生都懂的RSA加密算法原理._哔哩哔哩_bilibili
因为模运算不大可逆,所以逆着来不行;那么,能不能把密钥猜出来,正着搞?
数学不好也能听懂的算法 - RSA加密和解密原理和过程_哔哩哔哩_bilibili
- D和E,T有关
- E在公钥里,是已知的,所以只要求出T
- T和p,q有关,而且N=pq,N在公钥里是已知的,所以只要从N推导出pq就可以了,怎么搞——把N给因式分解掉就可以了。但是这个计算量不小,不大做的来,所以正着搞也不行。
总结,反着搞,正着搞,都不行。
还有啊,那个pq,好像是随机生成的
实际例子:
一些特点
单向:把它看成一个有损压缩,长变短了嘛!所以没办法还原
抽屉原理,7个抽屉8个球,必然重复。好的哈希没有这个问题。
应用:不用明文存密码了
加随机数【盐】,是为了防止字典攻击,也就是提前计算在那里等着。比如提前计算好123456这个常用密码,守株待兔。
防止消息被中间人第三方篡改,和上面的那个加盐再过哈希差不多
但是还有问题:中间人录下来重放多次……
相当于签名
把公钥加密,私钥解密给反过来了
还有个对比的过程?消息和数字签名都发过来了啊
还有个问题:消息太长,数字签名【密文】也很长,不好传输。
所以,就有了先对消息哈希值算摘要,对摘要进行签名这么回事,签名后的摘要解密以后就得到了摘要,然后把消息再过一遍哈希,匹配的话就可以了。
这个更具体一点
数字签名 及 数字证书 原理_哔哩哔哩_bilibili
和手写签名,成对的看,会好理解一点。签名,防止不认账的么?
但是也有问题。和公钥私钥有关的,都会有中间人攻击的问题。数字签名是反过来的公钥私钥,所以也存在的。
中间人,隐身人;经常遇到的,因为上网会经过很多代理服务器
怎么办?我怎么知道这个公钥是bob而不是中间人的?找个机构认证一下——数字证书
trent会不会被中间人截了?搞个trent的trent,套娃……
最后套出来了个根认证中心,没几个,不多。
可行根证书,RCA,不多,所以所有的都预先埋在操作系统里了。有了这个公钥,就可以层层往下验证,看是否可靠。
所以,不要装啥魔改的,盗版的操作系统。
一个更具体的流程图:
数字签名 及 数字证书 原理_哔哩哔哩_bilibili
五大工具
好像是个混合加密的过程,具体的说是让看书。
这个是书:
大概有了个初步了解了。