我认为主要有两个原因:
一个是数字签名还不够安全,另一个是用户习惯以及替换成本太高。
先说数字签名的安全性问题。
我说数字签名安全性不够高,肯定有人觉得这个是个笑话。的确,数字签名自身的安全性很高,数字签名不安全的地方在于如何控制发布签名。
与传统的印章不同,数字签名的私钥本身就是一个二进制串,如何控制私钥不被复制,如何保证签名不滥发是最大的问题。
传统印章,尤其是带防伪纹的印章,复制难度是很大的(传统印章的安全性可以参考这个问题:
为什么印章的安全性极低,但仍然是许多单位的唯一凭证? - 法律)。而如果是未加密的私钥证书,复制起来难度就小很多了,私钥的加密手段也无非是用户自定义密码,或者U-key之类的。也就是说,目前的数字签名私钥的保护,多数情况下仍然采取用电子密码的手段去保护另外一套密码。传统印章可以锁在抽屉里,房间再加一把锁,甚至必要的时候院子里加上几个保安,加几个摄像头,都能用更“物理”的手段去保护传统印章。相比电子密码来说,保护的方法非常多,也更容易在使用者这一层面上加以控制。
所以在安全流程设计的不够好的地方,用数字签名反而更容易被复制、滥用。
银行等行业有条件把安全流程控制的很好,但其它行业未必能保证这样,毕竟偷U-key和问密码,比偷公章要容易的多。
同样的,用户的验证端也有安全性的问题,验证流程本身是没问题的,但验证设备能保证一定是安全的吗?用户的终端设备是否被木马入侵?怎么保证验证是可靠的?虽然传统印章的验证也很困难,但不能说现有的数字签名的验证流程就比传统的印章强多少,一旦数字签名大规模推广,必然会带来相关黑产的发展。
另一个问题就是用户习惯和替换成本的问题,毕竟传统印章用了很多年了,数字签名这种看不见摸不到的东西想要让民众接受是需要一个过程的。同时因为数字签名的安全使用流程和传统印章是有差别的,替换成本(发布端、验证端)都是不低的,如果民用设备无法保证安全性,还需要专门的验证设备,这种设备多少钱?如果算法升级了怎么办?
同时数字签名还面临着计算能力提升的问题,计算机的计算能力在逐步攀升,数字签名的秘钥长度一直在增长,未来如果现有的数字签名不安全了怎么办?升级的成本是很高的,而传统印章升级验证的一个本办法就是在印章上划一刀就行了。
事实上,一个东西安全与否,验证方法本身只是一方面,验证流程,使用流程方面才是更重要的。对于印章来说,就是印章虽然很重要,但更重要的是控制好使用印章的人。
数字签名只解决了验证方法的安全性问题,验证流程和使用流程才是更重要的环节,也是成本最高的环节。
所以一旦大规模推广数字签名,成本未必就很低,也未必就真的那么方便。