用区块链与手写签字技术防止电子文书篡改
Posted 政通技术团队
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用区块链与手写签字技术防止电子文书篡改相关的知识,希望对你有一定的参考价值。
注:文中人名、印章、签名等信息均为示意。
1背景
电子签名是指数据电文中以电子形式所含、所附用于识别签名人身份并表明签名人认可其中内容的数据。
需要使用专门的设备,如数字证书一般存储在电子令牌之类的硬件设备中,在执法文书审核过程中使用并不方便,而且存在被盗用的可能。
一般需要对接第三方的服务,由于使用的第三方系统的加密数据一般只存储于第三方系统中,从理论和实际上也无法保证数据不被篡改。
为了解决以上问题,我们研究了“手写签字+区块链”的技术方案:
-
手写签字,模拟用户真实的签字笔迹,很好的区分使用人 ,防止代签 。并且无需“U盾”一类硬件支持,也无需输入密码,解决传统电子签名对接和使用麻烦等问题。 -
区块链技术,很好地解决了文书被修改后不易发现的问题 ,同时去中心化的特点也解决了传统电子签章中心化存储的问题。
2 总体设计
2.1 目标
-
运用电子签名技术解决文书的审核确认问题, 签名即视为被审核; -
运用区块链技术防止文书内容篡改, 上链则不可篡改。
2.2 实现流程
当执法人员收到待审核文书时,首先会审核文书相关内容并签字确认,然后保存文书。
文书保存成功后,执法系统会将审核过的内容保存到区块链服务器中,即文书上链。
3 手写电子签名技术
3.1 签名绘制
-
组合控件:将一些系统控件组合起来形成一个新的控件。 -
继承控件:通过继承已有的系统控件来创建新控件,保留继承的父控件的特性,并且可以引入新特性。 -
自绘控件:通过继承View,并在onDraw方法中实现自定义的绘制逻辑。
手写签字View需要实时记录用户在屏幕上的触摸轨迹,并绘制到屏幕上。由于系统控件中没有提供类似功能的组件,我们无法通过组合控件或继承控件的方式实现,因此采用自绘View的方式实现。
实现自定义手写签名View的基本流程如下:
3.3 背景绘制
3.4 横竖屏切换
3.5 变身手写板
4 区块链技术签伪
4.1 区块链结构特点
-
区块头:记录当前区块的特征值; -
区块体:实际数据。
-
生成时间; -
实际数据(即区块体)的哈希; -
上一个区块的哈希; -
...
4.2 文书内容上链
上链即将已审核的文书内容生成新的区块并加入区块链中。具体实现流程如下图所示。当文书被签字审核之后,执法服务会将文书内容、当前区块信息等作为参数调用区块链服务,区块链服务会生成新的区块连接到上一区块,并返回最新区块的信息。执法服务会保存最新的区块信息。
4.3 鉴伪
注:以上成果使用了蚂蚁区块链服务。
4.4 多级审批与鉴伪
5 总结
我们提出的“手写签字+区块链”的技术方案,正好解决了电子文书审核和内容篡改的问题。当文书审核后,手写签字能够标识该文书被审核过,以及审核人身份,且审核人不易伪造。而区块链技术可以将审核后的文书上链,保证文书不被篡改。除执法系统外,该技术方案还可应用于其他使用电子文书的系统,如金融保险、企业管理系统等。
End
以上是关于用区块链与手写签字技术防止电子文书篡改的主要内容,如果未能解决你的问题,请参考以下文章