00:02
这节课呢,我们先对前面讲的支付安全的基础知识做一个梳理和总结,再来补充一下微信支付中和这一章相关的一些内容。那首先呢,这一章的第一部分我们学了信息安全的基础机密性,那么在这里面呢,我们认识了几个名词,明文、密文,密钥,加密,解密以及加密算法。需要大家注意的呢是密钥,它的度量单位呢是比特。那么根据我们密钥的使用方式呢,我们的加密呢,可以分为两大类,第一个呢是对称加密,然后呢就是非对称加密了,所以接下来呢,我们来比较一下对称加密和非对称加密,那么对称加密呢只有一个密钥,非对称加密呢是有两个密钥的。对称加密呢常见的算法是AES,那非对称加密常见的算法呢是r sa,对称加密呢,密钥呢是必须要保密的,非对称加密呢,公钥可以任意分发,而私钥呢是必须要保密的,从优点上来看,对称加密它的运算速度快,非对称加密呢,黑客因为没有办法获取到我们的私钥啊,那它拿着公钥呢是没有办法破解密文的,所以呢,它可以解决我们密钥交换的问题,也就是说前面我们提到对称加密这个密钥在交换的过程当中呢,可能会被破解,但是呢,如果结合着非对称加密,我们呢,可以使用非对称加密的手段,先去交换这个密钥,然后密钥交换了之后呢,就可以利用对称加密运算速度快的这样的一个优点,在后面传输数据的过程当中呢,就可以使用对称加密了,所以呢,在我们实际。
01:50
的场景当中,一般情况下呢,都是对称加密和非对称加密混合使用的。那么接下来呢,我们又讲了身份认证,公钥和私钥,他们两个配合起来呢,有两种方式,如果使用一种进行加密,那么必须使用另外一种进行解密,那如果我们使用公钥进行加密,私钥进行解密呢?它的作用其实就是对数据进行加密传输,但是如果反过来我们使用私钥进行加密,公钥进行解密的话,那么它的作用呢,就是身份认证了。
02:26
接下来呢,就是摘要算法,摘要算法这块呢,我们也叫它散列函数,或者是哈希函数,实际上呢,它可以把我们的一个任意长度的数据呢,生成成为一个固定长度的字符串,而这个字符串呢,我们希望这个摘要算法呢能够做到独一无二,那么如果这个摘要算法能够做到生成的字符串呢是抗碰撞性的,那么我们就认为呢,这是一个非常优秀的摘要算法,所以我们选用摘要算法的时候呢,要确保它原文不同,计算后的摘要呢也要不同,除了这个抗碰撞性之外呢,摘要算法还有其他的三个特性,一个呢是不可密,也就是说它只能加密,不能解密,因为你会发现摘要算法当中呢并没有密钥存在,第二个呢,就是我们如果想要破解它的话,只能采用暴力枚举的方式,然后呢,就是它的发散性,发散性呢,就是只要我们对原文进行一点点的改动,哪怕你。
03:26
在一个非常大的文本当中,只改变了一个标点符号,那么最后生成的摘要呢,就会发生剧烈的变化,所以这个就是它的发散性。那么我们常见的摘要算法呢?有MD5 sha1和二。最后呢,我们来说一下摘要算法的作用,那它的作用呢,是确保数据的完整性,一般情况下呢,我们在数据传输的时候,都会将数据的摘要和数据呢一并发送,然后呢,数据的接收方会重新计算数据的摘要,然后和发送过来的摘要呢进行对比,看一看二者是否一致,如果一致的话呢,我们就会认为这个数据呢是完整的,没有被篡改的,但是呢,这种方式呢,如果黑客直接把数据的原文和摘要都改了的话,我们的数据的接收方呢,是没有办法发现的,所以我们如何解决这个问题呢?解决这个问题的方式呢,就是数字签名,数字签名呢,主要就是对生成的摘要进行加密,那么我们使用的方法呢,是使用私钥进行加密,然后呢,发送到数据的接收方之后,使用公钥进行解密,解密了之后呢,再对原来的摘要进行验证,如果呢,摘要也验证。
04:45
成功了的话,那么我们就会认为这个数据呢,是没有经过篡改的啊,我们用这个数字签名和摘要结合起来呢,来做这个身份认证。最后呢,就是数字证书,我们说数字证书可以解决公钥的信任问题,那我们要求呢,公钥不能在互联网上直接分发,因为直接分发公钥呢,黑客是黑客呢,是容易伪造公钥的。
05:12
所以呢,我们必须把我们的公钥呢,封装到我们的数字证书当中,而数字证书呢,必须由权威的CA来颁发,那我们学习了一个典型的使用数字证书的场景,就是HTTPS协议当中数字证书的一个具体的使用的流程。
我来说两句