密码学是数学和计算机科学的一个交叉。主要有两个方面的应用:一个就是加密通信;另一个方向是数字签名。
数字签名跟纸笔签名类似,可以用来认证签署人身份。密码学早期主要用于军事领域,随着互联网发展,民用方面涉及电子商务、银行支付、数字版权等领域也普遍得到应用。
最近几年,区块链和加密货币兴起,密码学的发展又进入了一个新的阶段,区块链的底层是密码学技术,但是也涉及到经济学。
互联网上的密码学
密码学包括:加密、解密、密文和密钥。比如A有份秘密文件传给B,首先通过加密算法把文件转换成密文,密文就是一些看起来不知所云的内容。B收到密文后,通过对应的解密算法,就可以把密文再转换成数据。
那么密钥是什么呢?其实在加密和解密运算过程中有两个要素,一个是算法,另外一个是密钥,英文叫 key 。key 就是参与加密解密运算过程的一小段数据。
目前流行的加密解密算法一般都是公开的,因为不公开一般也没人敢用,怕有后门。所以信息的安全完全在于加密人和解密人手里握的key 。
例如凯撒密码,凯撒要给他的将军发一封密信,凯撒使用的算法是把字母按照字母表顺序往后移动一定的位数,比如信息本来是 A ,现在往后移动3个位数,就变成了 D ,这样生成的密文就谁也看不懂了。
现场 | 密码学专家杨光:实现高TPS需要解决两个问题 可验证计算是有效途径:金色财经现场报道,全球区块链开发者大会 GBDC 2018于香港正式召开。密码学专家杨光表示,今年“双十一”淘宝运算的峰值256000笔, 区块链如果要达到10000万TPS,实现比淘宝4倍的TPS是需要具备诸多条件的。理想条件下带宽无限、传输没有延迟,可以非常快的达成共识。而这种即使如此如果实现百万TPS,还有解决两个问题:一是单个节点的处理能力、二是区块链数据增长较快。密码学专家杨光介绍了可验证计算的方式以解决实现TPS的问题,着重介绍非交互是的可验证计算。[2018/12/16]
这个过程中算法是“字母偏移”,而 key 就是3。将军收到密文后,根据同样的算法和 key 反推就可以解密。
金色财经现场报道 Ripple首席密码学家:Ripple一直非常关注现实世界的支付用例:金色财经现场报道,今日Coindesk 2018共识会议正式在纽约开幕。在有关互操作性竞赛的圆桌讨论时,Ripple首席密码学家David Schwartz表示:“我们一直非常关注现实世界的支付用例,这就是为什么Ripple构建了Interledger,这是一个并不关心人们使用什么网络的简单协议。”[2018/5/15]
随着电气革命兴起,发明了专门用于加密的硬件器材。但是真正密码学的大发展是在计算机兴起之后,尤其是互联网的到来。
红烧肉在上海交大的密码学及计算机安全实验室发布了抗量子攻击纲要:红烧肉(HSR)在上海交大的密码学及计算机安全实验室发布了抗量子攻击纲要 。[2017/12/19]
互联网时代,所有信息都是在公共区域进行传输,任何人都可以截取我们的数据,于是在数据传输之前进行加密就显得尤其重要,当代的密码学也是在这个情景下来发展的,因此当代密码学被称为“互联网上的密码学”。
没有不可破解的密码!理论上,任何密码都可以通过暴力搜索的方式来破解。互联网上的加密算法都是公开的,所以 key 的一些特征也是明确的,例如总共多少位。
利用计算机暴力搜索的方式去破解是一种很容易想到的攻击方式。
这就给加密算法的设计者提出了一个基本要求,那就是算法一定是要保证足够的计算难度,使得破解密码所花时间是不可接受的,例如一万年。没有不可以破解的密码,只有很难破解的密码,随着计算机运算速度不断的提升,加密算法也需要不断迭代。
公钥加密的核心地位
当代密码学分为两套系统:对称加密和非对称加密。其中非对称加密也被叫做公钥加密,是密码学的核心技术。
在加密和解密过程中都有 key 参与,如果加密和解密使用同一个 key ,这就是对称加密技术,反之是非对称加密技术。
具体做法是首先生成一对 key ,其中一个是公钥,Public Key ,公钥是可以公开给任何人的,另外一个是私钥,Private Key ,要严格保密。发送方首先拿到接收方的公钥,用公钥把信息加密,接收方收到密文后,用私钥解密获得信息。
之所以公钥和私钥能够这样配合工作,是因为它们两个天生就是一对儿,有着天然的数学联系,具体的联系方式就跟使用的具体的加密算法有关了。
非对称加密中最著名的算法有两种,一个是 RSA,是非对称加密技术的开山鼻祖;另外一个是 ECC,也就是椭圆曲线算法(Wisdom Chain采用的就是椭圆曲线算法)。ECC是一种更高效的加密算法。
对称加密在发送方和接收方使用相同的 key ,所以建立安全通信的前提是双方先要有共享的 key 。在没有加密通道的情况下,key 应该如何安全的传递给对方呢?
这个在互联网上是非常有挑战性的。相对比之下,公钥加密技术要分享的是公钥,不用担心泄露问题,相对要安全一些,另外公钥加密技术也衍生出了数字签名技术。
当然,公钥加密技术也需要考虑如何确认公钥所有人等技术问题,所以就有了发证机构CA。
总的来说:第一,密码学是对安全通信技术的研究,要能抵御各种恶意攻击。第二,密码学的底层是数学,密码学的安全取决于一个难度足够高的数学问题,保证计算机在可接受的时间跨度内根本不可能运算出密钥。第三,当代密码学是互联网环境下的密码学,关键性技术是公钥加密技术。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。