其他
背景:数字签名是最具代表性和使用最为广泛的密码应用技术,有密码地方就有数字签名。这都源于数字签名技术可以被灵活的用于解决保密、认证、不可否认、责任鉴定等问题,而这些问题往往是应用安全的核心问题。应用安全的核心技术密码技术,密码技术的核心应用是数字签名,这样说一点都不过分。由于数字签名技术应用的广泛性,行业中有很多的观点和看法,各有各的目的,各有各的道理。数字签名是一项密码技术,如何保障这项技术能被正确的应用,以及如何能和实际应用场景有效衔接,远远不是签名产品就能解决的。数字签名作为技术支撑还是作为体系支撑,涉及方方面面的问题,需因应用场景而定的,但能做出正确的选择并不容易。当下在行业中有太多关于数字签名的各种认识、各种误区(作者以往有多篇文章都提及过)、各种分歧,所以大家有必要就数字签名的相关观点做个碰撞,本文是作者数字签名的50个观点,希望抛砖引玉,能引起广泛的思考,也为从业者做数字签名应用提供思路支撑。(注:如下观点有些交叉在一起,重复之处望见谅)1、数字签名是一项密码技术应用数字签名本身不是什么独特技术,仅是各种密码技术的组合应用而已。既然是密码技术应用,数字签名就应该满足国家对密码的相关管理规定,相关管理规定在大原则上没有什么分歧,但是在一些细小层面还是存在众多分歧的,化解这些细小分歧,有必要从业务反推,选择是否有适合的方式,如果没有可以在应用和数字签名之间构建一层管理服务,将分歧管理化、中间化,从而化解密码的严谨性和应用的灵活性。2、数字签名不一定必须使用数字证书按照数字签名的技术规范,其实数字签名的实现方式有多种《三种数字签名体系框架设计,择优参考》,不是必须依赖数字证书。认识这一点很重要,因为当前大部分的数字签名都是基于数字证书体系构建,成本高不说,管理的复杂度和相互的制约性也是很头疼的事情。使用数字证书还是不采用,要结合自身的实际情况,各有各的优缺点。3、签名和验证签名应该分开签名是个个性化的操作,而验证签名则是个共性化的操作,在逻辑上是需要分开的,混在一起,在相关应用场景下容易出问题的。当下常见的签名验签服务器两者功能都提供,这是基于服务器提供的是技术计算支撑,在实际应用中需慎重。4、签名密钥可以有多个在技术上,只要具备签名者唯一拥有和使用特点的私钥,都可以被签名者拿来做签名应用。从这个角度论,签名密钥完全可以多个,不要再受以往那些为了封闭而鼓吹签名私钥唯一论的说法。想想,私钥仅是个技术支撑,为何非要赋予那么多的额外负担,技术实在是担当不起,太脆弱了。《电子证照:想说爱你并不容易》一文中也有同样的观点。5、签名验签服务器仅提供了计算环境,视情况还需要建立完善体系很多单位为了实现数字签名,认为建设了签名验签服务器就万事大吉了,其实这仅仅是开始,还有众多的工作需要完成,就像买了台电脑,怎么用如何用还有很多工作需要搞。再比如,企业有了公章,还需要进行公章管理体系建设工作。而这些工作厂商能做的也就是仅提供点技术支持而已。所以,数字签名的建设者者需要有对数字签名的全局认识。6、数字签名既是技术支撑,又必是体系支撑数字签名作为应用安全的技术支撑无容置疑。当下按照依法治网之国家要求,电子数据要成为电子证据必须满足真实性、关联性和合法性,而数字签名恰恰是保障这三点最直接的方法。所以,在以数据为核心、以责任为驱动的信息化时代,数字签名必须以体系定位进行设计和建设。7、一切妨碍数字签名走向平民化的,都将被边缘甚至淘汰数字签名已经开启了走向平民化的道路,作者以往的文章中也有提及,请参见《电子签名行业平民化思路》、《字节跳动推出“电子签”,开启电子签名行业走向平民化之路》等。在这样的发展趋势下,那些老的技术形态,比如:以key为代表的硬实现,以数字证书为核心的公众应用,其应用场景越来越受限制,反之那些更适合在广泛终端上应用的新技术将更有发展前景,所以,数字签名建设者在设计和建设上需要选择更易平民化的技术和体系。8、可靠数字签名的前提是:体系完整和可靠为了安全选择了数字签名,但是数字签名本身的安全又是如何保障的呢?在几年前作者曾经看到过一份关于可靠数字签名的技术标准,当时还是很赞成的,但是随着时间的推移,借助完整的体系,在局部采用可靠的技术才是解决问题最有效的方法。所以,可靠的电子签名必须建立在完整和可靠体系之上,有资质的产品、有评测报告的方案、有强有力的算法等仅仅是局部可靠。要建立完整和可靠的体系,这才是数字签名建设者最应该考虑的重点工作。9、数字签名重点环节是知情权和操作权大家是否还记得,好早以前在做银行转账交易时,操作者通过一种带屏幕的key(所谓的二代key)进行确认,其实这就是一种体现操作权的问题。因为数字签名是专属行为,在信息化中若责任人没有知情权和操作权,那么数字签名就完全没有意义了。想想当下有多少数字签名行为被代理了,这就是数字签名较大的误区。希望后续的数字签名设计和建设中一定要保障责任人的知情权和操作权。信息化在追求高效的同时,切勿丢弃了责权利这个最重要社会组成尺度,数字签名也不例外。10、数字签名云化部署应该重点考虑权力问题集中部署、云化部署等相关场景的普及应用,数字签名的云化部署也成为趋势,但是鉴于数字签名的特殊性,最应该考虑的是权力归属和管理问题。这个观点请参见《集中模式下(云)的安全设计思想》11、数字签名互联互通的核心是验证体系的统一当下说到数字签名,就必然要提到互联互通的问题,因为数字签名的业务达成是需要几方交互的。互联互通问题也是开放式数字签名体系重点要解决的问题,前面也提及过签名和签名验证应该分开,在这个前提下,只要将验证体系进行统一,数字签名的互联互通问题就不是问题。所以作者建议,在数字签名体系设计上把验证体系做开放式设计是十分必要的,这样可以很好的通过一对多来解决互联互通问题。12、数字签名和时间戳数字签名是一种密码技术应用,用来保障某个行为是由谁执行的,私有性是其最大的特点。而时间戳也是采用数字签名技术来确保某个数据在某个时间点前就已经存在,公用性特点突出。当下有很多单位往往忽视了这个两种应用的特点,自己建设数字签名没有问题,自己建设时间戳就需要慎重考虑了,时间戳需要他证而不是自证,最好考虑由三方机构给予服务提供。对于可信时间戳请参考《什么是可信时间戳?》13、服务器密码机和签名验签服务器服务器密码机在功能上也提供签名和验证签名的功能,市场上通用的签名验签服务器大都是在密码机基础上开发设计的,所以在功能上两者都可以满足数字签名的需求,但是两者在实际使用上还是存在差别的,一方面是管理差别,另一方面就是资质差别,因为在我国的商密产品管理中,服务器密码机和数字签名验签服务器明确为两种不同的产品进行管理,也就是在数字签名上需要采用签名验签服务器而不是服务器密码机。说白了,就是各有各的用途,不允许混用。14、数字签名和电子印章当下,电子印章也是一种应用范围较为广泛的场景,并且因为其直观性备受关注。其实电子印章本身就是一种数字签名的应用场景,底层采用的就是数字签名技术,电子印章的重点不是在数字签名技术本身,而在于印章的管理层面,在层次上要更接近应用。国家也多次颁布文件,明确电子印章的合法地位,商密管理单位也出台了电子印章相关标准和规范,基于电子印章扩展出来的电子合同、电子票据、电子证照等业务场景在当前也是大行其道,若按照层次划分应该是密码基础产品--数字签名产品--电子印章产品--电子合同/电子票据产品/电子证照,随着层次的提升,业务场景也更有针对性,管理职能也就更为强化,其业务痕迹越明显产品化情况也就越弱,但千万不要因为过于关注场景化而忽略了底层密码技术和密码产品的合规要求,在这一点上对于场景化的从业者是需要好好研究和分析,基于密码的场景底层要做到牢靠。15、数字签名证书来源方式问题基于数字证书的数字签名,需要获取数字证书,按照标准要求获取数字证书的方式一种是直接导入带私钥的证书,一种是设备产生申请书,后获取证书后在导入。上述两种方式均为离线完成,从pki体系结构分析数字签名本身除了在crl验证时可以和CA体系进行在线交互,其他并不需要进行交互,所以有些数字签名系统和CA需要进行在线证书申请的要求在标准规范上无法站住脚的,都是处于特殊目的的,大家都知道密码产品重点考量的是其严谨性,任何灵活性的设计都是对严谨性的一种挑战,作者认为并不可取,若为了追求其灵活性可以在密码产品之上做相关工作,而不要在密码产品本身做工作。16、数字签名硬件实现问题数字签名既然是一种较为底层的密码技术应用,国家对密码应用和密码产品有明确的制度和标准要求,特别是对于国密产品原则上必须使用硬件实现。但是当前据作者了解很多国密产品存在软件的情况,这一点也许是历史遗留问题,作者不便于给予评价,毕竟主管单位更有权威性。但是对于数字签名相关产品选择和应用时,我还是建议优选硬件实现,省的麻烦,实在没有办法也需要向主管单位进行咨询和报批,这样更踏实一点。17、数字签名另一个核心是强绑定问题鉴于数字签名的私有性,以及国家依法治网的政策要求,实名对应、实名绑定就成了数字签名一个很重要的环节,必须确保人、设备、行为、私钥、环境、印章等之间的强关联、强绑定,这是数字签名体系设计核心之一,没有解决好强绑定所有的数字签名都将仅是形式,没有什么实际意义。18、数字签名作为一个第三方服务的问题当下,很多云服务商提供了数字签名云服务功能,这一方面凸显了数字签名应用的普及,另一方面也体现了数字签名本身的基础性。但是鉴于数字签名的特殊性,提供第三服务需要一方面要解决权属问题和知情权问题,另一方面在技术上要解决多场景适配问题,这些请参考《集中模式下(云)的安全设计思想》、《三种数字签名体系框架设计,择优参考》,在此不做赘述。19、数字签名是否可以测试其正确性当下,随着国家要求,相关密码应用需要进行正确性、合规性、有效性检测,那么作为应用范围最广的数字签名是否能进行有效的测试就成为建设者重点关注的问题。经过和多家测评机构沟通,对数字签名全方位的检测手段目前尚不具备,很多工作还仅停留在表面,并且各种检测都是基于技术、产品本身的,和业务层面差距较远。鉴于检测其正确性对于建设单位的重要意义,作者建议按照实际情况可以考虑自成体系,至于相关技术方法并不是难点。有关内容请参见《建立完整的检测认证体系对信息化建设与管理的重要意义》。20、数字签名关乎数据、更关乎行为信息化的本质是按照一定的流程对数据进行行为处理的过程,其中的核心就是数据和处理行为,数据安全保障无可厚非使用数字签名,对于行为的保护一方面要通过授权控制,另一方面就是保障权益的数字签名,在这个角度分析,数字签名和信息化是全方位紧密耦合的关系,所以,数字签名的设计和建设必须贯穿信息化的全流程、全数据、全行为,进行体系化部署与管理,这一点远远超越了数字签名作为技术支撑的范围。21、什么样的数字签名是合法的?《电子签名法》、《密码法》等相关法律,都赋予了信息化相关法律的特色,什么样的情况才是合法合规的,也成为信息化建设的一种考量指标,数字签名也不例外。数字签名首先是一项技术,对于技术本身没有什么合法不合法,仅是国家的相关文件赋予了数字签名和手写签名具备同等法律效力的能力而已。其次,数字签名技术在使用过程中尚需按照一定的制度和实际情况进行考量,就像前文提及的需要做到强绑定,并且要保障一切的真实、管理、合法。这是需要体系来支撑的,所以谈及数字签名体系是否合法合规才有意义,也就是说数字签名的合法与合规考量的是体系而非技术本身。22、数字签名绝对不是产品,而是成套体系前面反复提及,数字签名需要体系支撑而不简简单单是产品,在此在强调一遍,数字签名无论在业务需要、管理需要、合规性需要等层面都需要一个完整的体系给予保障,请参与者一定要认识到这一点,不要在为产品论了,产品仅是其中最简单的部分。23、数字签名的国际化现在我国有很多信息化业务是服务全球的,但是密码技术有些是有本地化特点的,比如,我国的密码体系以国密为主,虽然我国有些算法已经上升到国际算法标准,但是离真正广泛应用还有很大的差距,鉴于此,对于那些服务全球的信息化系统在构建数字签名体系时,就需要考量当地的密码技术管控情况,这十分必要。24、协同签名的意义深远大家所熟知的数字签名都是主体独立完成,但是鉴于信息化的协同性以及终端的普及,一方面为了保障安全,另一方面还要凸显易用性,协同签名就成了数字签名走向平民化的基础。所谓协同签名就是将相关私钥进行分段处理,签名过程协同完成。这种方法在当下已经得到广泛的应用,所以在数字签名体系设计时,设计者需要重点考虑使用这样的方法解决多场景问题。25、数字签名与区块链当下,区块链成为一个新型技术被广泛关注,鉴于区块链也是一种基于密码技术的应用方式(业界认为,没有密码技术就没有区块链),有必要将区块链和数字签名的关系做个说明。区块链的重点在于对数据的分布式存储和智能合约约定层面,对数据上链前没有相关保障意义,而数字签名只要你愿意可以对任何数据进行处理,这样更能从数据或行为原点做保障。数字签名和区块链没有任何冲突,协同是最好的保障数据和行为的方式,业界有很多也是这样做的。26、数字签名与《电子签名法》《电子签名法》明确了电子签名的地位,而数字签名是当下最主流的电子签名技术。《电子签名法》虽然颁布尚早也没有就相关细则进行约定,但行业内自主形成了许多共识还是需要遵照执行的,上文也提及了技术并无合不合法的属性,仅有有没有能力的属性。一句话,《电子签名法》赋予和强化了数字签名技术的安全保障能力。27、数字签名与《密码法》数字签名是一种密码技术应用,而《密码法》是对所有密码应用的一种法律约束,所以数字签名在应用过程中遵照《密码法》是无容置疑的。虽然当下《密码法》的相关规定还是原则性的,但是设计者还是可以从中得到如何做的启示。28、数字签名与电子证据依法治网是当下信息化的国家战略,而电子数据成为电子证据是网络安全设计和建设的最高目标,请参见《安全的高级目标是确保电子数据能成为电子证据》。真实、关联、合法是证据的三要素,电子证据也必须符合这三点,而前文也提及过数字签名技术结合数字签名体系是保障电子数据具备上述三性的重要基础。所以,电子数据成为电子证据,数字签名是最基础的技术支撑和体系源头,设计者和建设者照章应用是最好选择。特别说明,保障电子数据成为电子证据更需要体系保障,任何技术论、产品论都有失偏颇。29、数字签名与电子证照、电子票据、电子档案、数字版权。。。。。。按照数字签名的能力法赋的现状,诸如电子证照、电子票据、电子档案、数字版权等涉及客观性的数据,都应该借助数字签名技术的法赋能力,并结合体系的法定能力,最终方能实现场景化的公众性和可信性。也就是说,上述的几种应用基于数字签名技术和体系进行设计和建设才是最佳选择。30、数字签名与电子数据司法鉴定的关系为了贯彻执行依法治网的信息化安全国家战略,司法体系在执法层面约定,对于产生分歧的电子数据需要借助有权力的电子数据司法鉴定机构给予评价。同样司法鉴定机构在判断电子数据是否具备真实、关联、合法的特性时,是否采用了数字签名是重要的考量指标,也就是说,采用了数字签名技术和体系保障的电子数据更容易被司法鉴定机构鉴定为符合电子证据要求。31、数字签名与大数据数据被确定为重要的生产要素,数据具备价值已经成为行业共识,国家也明确规定,数据需要在确权、授权、交易、维权层面进行保障,否则数据价值很难被健康应用。正在制定的《个人隐私保护法》也是为了明确个人信息的权力保护问题,在这个层面数字签名可以发挥重要的作用。也就是说,数字签名是数据的重要安全保障手段,可以贯穿数据的全生命周期,有数据的地方就应该有数字签名,一点也不为过,对于有大量数据存在的大数据更是如此。32、数字签名与追踪溯源疫情的影响使大家切身体会到追踪溯源的重要意义,而在信息化高速发展的当下,如何能快速准确的完成追踪溯源意义深远。快速本身是信息化的特点,但是否准确就成了数字签名重要的使命,不准确不完整的数据