[TOC]
1-电子签名
缘起
很早就想写技术文章了,一直拖延至今,刚好又看了一些知识管理的文章,讲到写作的巨大意义:
梳理重构:加深自己对知识点的认识,鞭策每日精进
开放共享:帮到更多有需要的人,让知识产生更大的价值
交个朋友:能认识更多志同道合的小伙伴
这么多好处,那就我们就动手吧。从哪里开始呢,最近刚好经手电子签名续费事宜,发现大家对电子签名有很多困惑,而电子签名法及其背后所用的技术事实上构成了电子商务的基础,讲金融科技、讲创新赋能都没办法绕开电子签名。那我们就在这个生机勃勃的5月,从电子签名开始我们的技术之旅吧。
电子签名有法律效力吗?
答案是有,那谁给它的法律效力?人大常委会通过《中华人民共和国电子签名法》给的。
2004年8月28日人大常委会审议通过,2005年4月1日执行。
2015年4月24日人大常委会第一次修正
2019年4月23日人大常委会第二次修正
它在第十四条规定:
可靠的电子签名与手写签名或者盖章具有同等的法律效力。
那么什么又是可靠的电子签名呢?它在第十三条规定:电子签名同时符合下列条件的,视为可靠的电子签名:
(一)电子签名制作数据用于电子签名时,属于电子签名人专有;
(二)签署时电子签名制作数据仅由电子签名人控制;
(三)签署后对电子签名的任何改动能够被发现;
(四)签署后对数据电文内容和形式的任何改动能够被发现。
可靠电子签名的所须条件
上面4个条件简单对应实际纸质合同签署来理解就是:
- 专有签名:个人专有标识,类似我们的身份证信息
- 真实意愿:电子签名我们是自愿签署
- 签名未改:我们的签字和指印没有被改动
- 内容未改:我们签署的合同内容没有被改动
可靠电子签名技术支撑
通过数字摘要+数字签名+数字证书的系统组合使用,有效保证可靠电子签名,简单对应:
- 专有签名:数字证书(Certificate)
- 真实意愿:数字签名(signature)
- 签名未改:数字证书(Certificate)
- 内容未改:数字摘要(digest)
数字摘要
数字摘要又称数字指纹,原始内容通过Hash运算得到数字摘要,它有几个特征:1、相同的内容每次运算都得到相同的数字摘要;2、不同的内容算出的数字摘要不会相同;3、通过数字摘要无法或极难反推原始内容;4、无论多长的内容运算后的都是很短的定长数字摘要。数字摘要用于校验内容是否有改变,举个例子:
- 小明向老许发机密邮件,为了确保邮件内容传输内容不被串改,小明用MD5算法把邮件正文算出数字摘要;
- 再把邮件正文+数字摘要一起发给老许;
- 老许收到邮件后也用MD5算法把收到的邮件正文算出数字摘要,如果老许算出的数字摘要和邮件收到的摘要一致,就说明邮件没有被篡改。
常用的hash算法有MD5和SHA,我们一般文件传输就用MD5做完整性校验。
数字签名
前面的例子解决了内容不被篡改的问题,但假如有人冒充小明写信怎么办,这时候数字签名就登场了。数字签名实现依靠非对称加密实现。什么是非对称加密呢,加密和解密用同一个钥匙(字符串)的是对称加密,加密和解密用分别用两套不用钥匙(字符串)的交非对称加密。这两套钥匙自己留着的叫私钥,共享给大家的叫公钥,私钥加密的数据只能公钥解密,公钥加密的数据只能私钥解密。换个角度说就是公钥能解密的数据一定是私钥加密的,因为私钥只有小明自己拿着,从而确定是小明发的邮件。总结来讲,用公钥加密+私钥解密可以用来确保传输内容保密;用私钥加密+公钥解密除了确保内容保密外,还能确认发送者身份。接着刚才的例子:
- 小明发邮件之前先用自己的私钥加密邮件内容+数字摘要;
- 老许用公钥解密,如果能成功解开,就能确认发邮件的一定是小明;
- 接着用数字摘要校验内容是否被修改;
数字证书
好像没有问题了,但搞技术的要做到万无一失,让我们再想想,假如小王进入老许的电脑偷偷地把小明的公钥换成了自己的公钥,那小王冒充小明给老许写信,老许就会认为是小明给他写信,根本无法判别。这时候数字证书就登场了。数字证书由权威机构颁发,负责颁发数字证书的系统称为 CA (Certificate Authority)系统,负责管理并运营 CA 系统的机构称为 CA 中心。我们通常所说的CA,是指CA机构,又称为证书授证中心,上海CA、北京CA、CFCA等都是CA机构,国内有大概42家CA机构。
数字证书技术实现上,实际是证书授权机构是对个人数字签名的再数字签名,接着刚才的例子:
- 证书授证中心用自己的私钥把小明的公钥加密形成数字证书;
- 小明把邮件正文+数字摘要+数字签名+数字证书一起发给老许;
- 老许用证书授证中心的公钥解密数字证书,得到小明的公钥;
- 老许再用小明的公钥解密数字签名,确认邮件来自小明;
- 老许再把正文算出数字摘要,如果和邮件发来的摘要一致,确认内容没被篡改。
至此,可靠电子签名要求的“专有签名”、“真实意愿”、“签名未改”、“签名未改”全部实现。
证书授权中心的公钥怎么保证不被替换呢,这是国家特许的公权机构,通过法律来保证的。不然这个问题就没有终止了。
总结
- 数字摘要是将内容通过哈希计算得到一个定长字符串,用于校验内容是否被篡改;
- 数字签名用用非对称加密的私钥加密,公钥解密,确认发送者来源;
- 数字证书是合同一方数字签名的机构再签名,是证书授权中心对发送者身份的权威确认;
- 电子签名更像一个法律名词,对应纸质文件的手写签名。
本文由博客群发一文多发等运营工具平台 OpenWrite 发布