密码学是数学和计算机科学的一个交叉。主要有两个方面的应用:一个就是加密通信;另一个方向是数字签名。
数字签名跟纸笔签名类似,可以用来认证签署人身份。密码学早期主要用于军事领域,随着互联网发展,民用方面涉及电子商务、银行支付、数字版权等领域也普遍得到应用。
最近几年,区块链和加密货币兴起,密码学的发展又进入了一个新的阶段,区块链的底层是密码学技术,但是也涉及到经济学。
互联网上的密码学
密码学包括:加密、解密、密文和密钥。比如A有份秘密文件传给B,首先通过加密算法把文件转换成密文,密文就是一些看起来不知所云的内容。B收到密文后,通过对应的解密算法,就可以把密文再转换成数据。
林煌博士:轻模式的隐私应用是密码学技术在隐私保护实践中很重要的一步:在今日的《金色深核》线上直播中,针对“假设我们要解决多公司之间数据需要保密且共同使用的问题,三个技术路线如何去做?去年Maskbook火了一下,各位如何看待这种“轻模式”的隐私应用?”Suterusu林煌博士表示关于多个公司之间进行保密数据的安全计算,这个需要结合零知识证明和安全多方计算才能解决。如果我们考虑一种简单的情况,只有两方进行安全计算,一方可以将自己的数据用门限同态加密方案的公钥加密后传输给另一方,另一方依据加密自己的数据生成密文,然后在两个密文上做预定的同态运算,最后双方合作把完成同态操作的密文解密。零知识证明可用于保证这个过程的计算可靠性(computational integrity),比如如何保证生成的加密密文确实是按照正确加密步骤生成的密文且加秘方知道原始明文呢?我们可以使用零知识证明算法针对加密电路生成能够验证明文和密文之间符合加密电路逻辑的证明。轻模式的隐私应用毫无疑问是密码学技术在隐私保护实践中很重要的一步,但这个领域还有很多可以做的事情。[2020/3/11]
声音 | “现代密码学之父”Whitfield Diffie:区块链的前景取决于能否为用户创造价值:据深圳侨报消息,近日,在第二届智荟深圳·海外专才深圳行上,“现代密码学之父”Whitfield Diffie表示,没有网络安全就没有稳定的经济、社会的正常运转,就不能保障大众的利益。而如今极为火热的区块链,其背后的核心支撑也正是公钥加密技术。他还指出,区块链在未来将会有更加庞大的用户群,而区块链的前景取决于能否为用户创造价值。同时,区块链的发展从一定程度上推动了加密技术的“复兴”,使区块链重新聚焦于产品的加密层面。[2019/4/18]
那么密钥是什么呢?其实在加密和解密运算过程中有两个要素,一个是算法,另外一个是密钥,英文叫 key 。key 就是参与加密解密运算过程的一小段数据。
声音 | 现代密码学之父:区块链在量子计算中并不十分脆弱:据新浪财经报道,“现代密码学之父”惠特菲尔德·迪菲(Whitfield Diffie)表示,20世纪70年代建立起来的公钥加密体系很容易受到量子计算的攻击。但密码学中有很多技术,例如大多数区块链都使用了公钥密码,同时也使用了很多其他的东西,包括哈希编码,区块链在量子计算中并不十分脆弱。[2019/4/4]
目前流行的加密解密算法一般都是公开的,因为不公开一般也没人敢用,怕有后门。所以信息的安全完全在于加密人和解密人手里握的key 。
例如凯撒密码,凯撒要给他的将军发一封密信,凯撒使用的算法是把字母按照字母表顺序往后移动一定的位数,比如信息本来是 A ,现在往后移动3个位数,就变成了 D ,这样生成的密文就谁也看不懂了。
声音 | 上海交通大学来学嘉:区块链为密码学创造了价值:据巴比特消息,上海交通大学教授来学嘉在接受采访时提到了区块链对密码学的两大贡献。第一大贡献是为抗抵赖、抗捏造提供了完整的解决方案。区块链能做到抗抵赖,是因为区块链本身就是第三方,参与者自觉服从,数字签名为抗抵赖提供证据。另外,他还指出了区块链对密码学的另一个贡献——区块链为密码学创造了价值,过去的密码学是“赔钱”的,因为要用于保护信息系统的安全,增加了开销;有了区块链后,现在的密码学是“值钱”的,因为密码算法的计算结果(coin)具有价值,另外算法本身也具有价值,比如勒索软件,你要付钱才能解开。[2019/2/25]
这个过程中算法是“字母偏移”,而 key 就是3。将军收到密文后,根据同样的算法和 key 反推就可以解密。
随着电气革命兴起,发明了专门用于加密的硬件器材。但是真正密码学的大发展是在计算机兴起之后,尤其是互联网的到来。
互联网时代,所有信息都是在公共区域进行传输,任何人都可以截取我们的数据,于是在数据传输之前进行加密就显得尤其重要,当代的密码学也是在这个情景下来发展的,因此当代密码学被称为“互联网上的密码学”。
没有不可破解的密码!理论上,任何密码都可以通过暴力搜索的方式来破解。互联网上的加密算法都是公开的,所以 key 的一些特征也是明确的,例如总共多少位。
利用计算机暴力搜索的方式去破解是一种很容易想到的攻击方式。
这就给加密算法的设计者提出了一个基本要求,那就是算法一定是要保证足够的计算难度,使得破解密码所花时间是不可接受的,例如一万年。没有不可以破解的密码,只有很难破解的密码,随着计算机运算速度不断的提升,加密算法也需要不断迭代。
公钥加密的核心地位
当代密码学分为两套系统:对称加密和非对称加密。其中非对称加密也被叫做公钥加密,是密码学的核心技术。
在加密和解密过程中都有 key 参与,如果加密和解密使用同一个 key ,这就是对称加密技术,反之是非对称加密技术。
具体做法是首先生成一对 key ,其中一个是公钥,Public Key ,公钥是可以公开给任何人的,另外一个是私钥,Private Key ,要严格保密。发送方首先拿到接收方的公钥,用公钥把信息加密,接收方收到密文后,用私钥解密获得信息。
之所以公钥和私钥能够这样配合工作,是因为它们两个天生就是一对儿,有着天然的数学联系,具体的联系方式就跟使用的具体的加密算法有关了。
非对称加密中最著名的算法有两种,一个是 RSA,是非对称加密技术的开山鼻祖;另外一个是 ECC,也就是椭圆曲线算法(Wisdom Chain采用的就是椭圆曲线算法)。ECC是一种更高效的加密算法。
对称加密在发送方和接收方使用相同的 key ,所以建立安全通信的前提是双方先要有共享的 key 。在没有加密通道的情况下,key 应该如何安全的传递给对方呢?
这个在互联网上是非常有挑战性的。相对比之下,公钥加密技术要分享的是公钥,不用担心泄露问题,相对要安全一些,另外公钥加密技术也衍生出了数字签名技术。
当然,公钥加密技术也需要考虑如何确认公钥所有人等技术问题,所以就有了发证机构CA。
总的来说:第一,密码学是对安全通信技术的研究,要能抵御各种恶意攻击。第二,密码学的底层是数学,密码学的安全取决于一个难度足够高的数学问题,保证计算机在可接受的时间跨度内根本不可能运算出密钥。第三,当代密码学是互联网环境下的密码学,关键性技术是公钥加密技术。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。