APP下载

基于RSA数字签名的二维码检验报告防伪平台构建

2015-12-29卢江海

质量技术监督研究 2015年4期
关键词:数字签名公钥防伪

林 涌,卢江海,姚 军

(福建省标准化研究院,福建 福州 350013)

基于RSA数字签名的二维码检验报告防伪平台构建

林 涌,卢江海,姚 军

(福建省标准化研究院,福建 福州 350013)

当前,检验报告造假呈日趋上升趋势,防伪鉴别技术已引起越来越多民众的重视。文中通过将RSA数字签名和二维码技术相结合,构建一个基于RSA数字签名的二维码防伪系统平台,方便公众查验报告真伪,为数据安全提供有效的保障。

RSA数字签名;二维码;防伪;检验报告

1 背景

检验质量标准的检验报告因其具有公正性、准确性和法律性逐渐成为了企业和消费者关注的焦点。由于目前法定检验机构的检验报告多数是以纸质文件并加盖公章的形式出具。一些不法分子利用篡改技术擅自更改检验报告内容,这种情况不仅降低了检验机构的可信度,同时也给社会带来极坏的负面影响。

为了加强检验报告的防伪功能,致力于在检验机构和公众之间搭建沟通的桥梁,文中拟构建一个基于RSA数字签名的二维码防伪认证平台,为公众提供动态验证服务,以提升检验机构在社会中的公信力。

2 构建原则

2.1 RSA算法

RSA算 法[1]是 1978年 由R.L.Rivest,A. Shamir和L.Adleman提出的一种基于欧拉定理[2]构造的非对称密码算法。是目前为止理论上最为成熟完善的公钥密码体制,也是第一个能同时用于加密和数字签名的算法且易于理解和操作,其算法如下:

公钥:N,e

私钥:d

当p和q是一对大素数的时候,从它们的乘积pq去分解因子p和q,这是一个公认的数学难题。比如当pq大到1024位时,迄今为止还没有人能够利用任何计算工具去完成分解因子的任务。因此它成为了目前最流行的公开密钥算法。

2.2 数字签名

数字签名[3]就是对电子形式的文件或信息进行签名的方法。要使签名的消息能在通信网络中传输,信息的发送方用单向散列函数(如MD5函数、HASH函数等)对要发送的信息生成新的信息摘要并用自己的私密加密,接收方以发送方的公钥进行解密,使用同一散列函数算法生成信息摘要进行验证,以确认信息的来源以及完整性和发送者不可抵赖性。

RSA算法即能于数据加密,也可用于数字签名,且可以同时使用。如图1所示发送方用接收方的公钥对信息进行加密,然后用自己的私钥加密摘要生成签名;接受方先用自己的私钥解密信息,以同一散列算法生成摘要,然后用发送方的公钥解密签名,最后比较验证。数字签名过程可分为数字签名和验证数字签名两个子过程。

图1 数字签名的实现过程

2.3 防伪原理

二维码加密防伪原理就是将二维码编码技术和RSA签名原理结合起来,对检验报告的内容进行数字签名,利用二维码承载信息量大、保密性好、容错能力强、易识读等优点,以二维码图形作为防伪载体,通过手机扫描和互联网进行交互在后台实现验证,从而得到查询结果,保证数据的真实可靠。

3 平台架构

3.1 框架

在结构上,该防伪系统主要包括法定检测机构、用户两大部分,框架图如下:

图2 二维码防伪系统框架

检验机构:储存检测报告原始信息资料,通过RSA数字签名算法生成二维码,验证用户端发送信息的真实性。

用户:手机扫描二维码通过网页验证,比对传回的页面是否和纸质报告相同。

系统加密和解密过程都在检验机构服务器端处理,安全性得到有效的保障。用户端只需通过回传的网页信息对照纸质检验报告进行验证,而不必另外加装第三方软件,避免带来不必要的麻烦。

3.2 流程

如图2所示,检验机构首先从数据库中将报告编码作为唯一的标识符,采用任意摘要算法,提取该检测报告中的内容(如规格、型号、鉴定结论等)形成信息摘要,并附上时间戳,然后通过RSA算法用私钥加密信息摘要和时间戳生成数字签名,附上加密的报告内容通过二维码生成软件形成二维码图形。用户通过手机扫描检测报告上的二维码,发送到检测机构服务器端。服务器端验证时先解密报告内容,以相同摘要算法提取信息摘要,然后用公钥解密数字签名,对比计算的信息摘要与解密签名后的信息摘要是否一致,并查看时间戳。如果一致就读取数据库内报告编码对应的详细信息返回到用户的手机端,用户将纸质报告对照手机端的内容,鉴别真伪。

3.3 安全机制

系统综合应用了二维码编码技术和RSA数字签名原理,对防伪系统进行了创新,用RSA算法对信息摘要和时间戳用私钥加密生成数字签名,在服务器端用公钥进行解密,加密解密都在服务器端运行,保证了信息的真实性、准确性和安全性。另外在用户与检验机构服务器端之间应用SSL协议[4]进行数据传输交换,为信息安全和数据的完整性提供了更有力的保障。

4 结束语

此系统平台是在二维码的基础上,运用密码学的原理,对检测报告予以数字签名加密,防止报告伪造或被篡改。用先进的技术提供防伪认证查询的功能,同时在平台的构建上,提供实验室标准、实验室检测资质的动态查询系统,为公众提供更为专业、优质的服务,同时对检验机构的监管提供了新的技术手段。

[1]张淑芬,陈学斌,刘春风.RSA公钥密码体制的安全性分析及其算法实现.计算机应用与软件[J],2005,22(7):108.1-10.

[2] 贺令亚. RSA加密算法的研究与实现[D]. 长沙:中南大学计算机系,2009:7-10.

[3] 雷超阳基于RSA的数字签名技术研究与实现[J].长沙:长沙通信职业技术学院学报,2008,7(4):22-23.

[4]史春光.浅析基于SSL协议的VPN技术. 信息技术[J], 2009(3):121-123

Structure for Two-Dimensional Barcode in Test Reports of Anti-Fake Platform Based on RSA Digital Signature

LIN-Yong, LU Jinag-Hai, YAO Jun
(Fujian Standardization Institute, Fuzhou 350013, Fujian,China)

At present, the test report fraud shows a rising trending, so the security identification technology arouses more and more people's attention. In this paper, the RSA digital signature and the two-dimensional barcode technology are combined to build a security identification system platform based on two-dimensional barcode. This system can be used to identify test report authenticity and provide effective protection for data security.

RSA digital signature; Two-dimensional barcode; Anti-fake; Test report

2015-05-28

林 涌,男,福建省标准化研究院,物品编码部,技术负责人,工程师

卢江海,男,福建省标准化研究院,副院长,高级工程师

姚 军,男,福建省标准化研究院,助理工程师

猜你喜欢

数字签名公钥防伪
基于正交拉丁方理论的数字签名分组批量验证
INTEGRITYTM ECO100再生缝纫线引入防伪技术
案例教学法在公钥密码体制难点教学中的应用——以ssh服务中双向认证为例
你知道古代圣旨和纸钞是怎样防伪的吗
交通运输行业数字签名系统的设计与实现分析
浅析计算机安全防护中数字签名技术的应用
电子防伪技术专利综述
神奇的公钥密码
国密SM2密码算法的C语言实现
P2X7 receptor antagonism in amyotrophic lateral sclerosis