CN101964710B - 数字签名和验签方法 - Google Patents
数字签名和验签方法 Download PDFInfo
- Publication number
- CN101964710B CN101964710B CN201010292017A CN201010292017A CN101964710B CN 101964710 B CN101964710 B CN 101964710B CN 201010292017 A CN201010292017 A CN 201010292017A CN 201010292017 A CN201010292017 A CN 201010292017A CN 101964710 B CN101964710 B CN 101964710B
- Authority
- CN
- China
- Prior art keywords
- signature
- business paper
- label
- test
- contract
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种数字签名和验签方法,包括:步骤102,接收业务单据;步骤104,读取业务单据对应的签名规则契约;步骤106,根据业务单据对应的签名规则契约,从业务单据中解析出单据字段,并组成签名明文;步骤108,发送方对签名明文进行数字签名后,将业务单据发送至接收方;步骤110,接收方接收业务单据并进行验签。本发明还提供一种数字签名和验签装置。根据本发明,能够由用户动态配置“签名/验签”字段规则,实现业务需求与认证功能的相对独立,并为认证操作提供统一的日志记录,以保证所有签名记录都有据可查。
Description
技术领域
本发明涉及安全认证技术,具体而言,涉及一种数字签名和验签方法。
背景技术
CA安全认证技术为核实鉴别电子单据(尤其涉及金融交易类)真伪提供了重要技术保障,既可以防止他人恶意破坏导致产生重大事故,又可以追究相关责任人。但是目前在各种应用系统中对于CA安全认证技术应用方式存在一些缺陷和不足。
由于当前CA专业提供厂商的缺陷和不足,只提供原子性的签名/验签API,无法简化在业务中的应用。不能根据客户的业务需求动态配置“签名/验签”的内容规则。由于只提供底层服务,在实际业务应用场景中不具有与用户良好的操作交互性。
当前应用系统的业务开发中应用CA认证的缺陷和不足,涉及CA认证的业务模块各自实现签名字段拼装排序,代码重复冗余度大。对于签名后的单据密文存储没有统一的标准处理方式,大多数业务单据处理方式是在单据表命名一个列用于存储,这样做的另一个问题是无法追溯该单据的所有经办人的签名记录,只能记住最新的签名密文。
因此,需求一种CA安全认证方式,能够由用户动态配置“签名/验签”字段规则,实现业务需求与认证功能的相对独立,并为认证操作提供统一的日志记录,以保证所有签名记录都有据可查。
发明内容
本发明所要解决的技术问题在于,提供一种CA安全认证方式,能够由用户动态配置“签名/验签”字段规则,实现业务需求与认证功能的相对独立,并为认证操作提供统一的日志记录,以保证所有签名记录都有据可查。
有鉴于此,本发明提供一种数字签名和验签方法,包括:步骤102,接收业务单据;步骤104,读取所述业务单据对应的签名规则契约;步骤106,根据所述业务单据对应的签名规则契约,从所述业务单据中解析出单据字段,并组成签名明文;步骤108,发送方对所述签名明文进行数字签名后,将所述业务单据发送至接收方;步骤110,所述接收方接收所述业务单据并进行验签。通过该技术方案,签名明文的内容可根据业务需求进行配置,与签名认证之间相对独立。
在上述技术方案中,优选地,还包括:步骤101,为每种类型业务单据设置签名规则契约,所述签名规则签约用于定义所述每种类型业务单据的单据字段的名称、位置、优先级顺序、数据类型和转换类型。
在上述技术方案中,优选地,所述签名规则契约通过类模板方式存储,或通过基于元数据结构的数据库持久化方式存储。
在上述技术方案中,优选地,还包括:步骤112,所述接收方验签成功后,生成一条签名日志记录并存储。通过该技术方案,将认证操作的记录统一存储,利于日后进行查询。
在上述技术方案中,优选地,所述步骤110中,根据所述业务单据的对应签名日志记录,取得对所述业务单据的上一次签名,以供所述接收方验签。
本发明还提供一种数字签名和验签装置,包括:业务单据录入模块,接收业务单据;签名规则契约读取模块,读取所述业务单据对应的签名规则契约;签名明文组合模块,根据所述业务单据对应的签名规则契约,从所述业务单据中解析出单据字段,并组成签名明文;签名模块,供发送方对所述签名明文进行数字签名;验签模块,供接收方对所述发送方发送来的所述业务单据进行验签。通过该技术方案,签名明文的内容可根据业务需求进行配置,与签名认证之间相对独立。
在上述技术方案中,优选地,还包括:签名规则契约设置模块,为每种类型业务单据设置签名规则契约,所述签名规则签约用于定义所述每种类型业务单据的单据字段的名称、位置、优先级顺序、数据类型和转换类型。
在上述技术方案中,优选地,还包括:签名规则契约存储模块,将所述签名规则契约通过类模板方式存储,或通过基于元数据结构的数据库持久化方式存储。
在上述技术方案中,优选地,还包括:签名日志记录存储模块,所述接收方验签成功后,生成一条签名日志记录并存储。通过该技术方案,将认证操作的记录统一存储,利于日后进行查询。
在上述技术方案中,优选地,所述验签模块还根据所述业务单据的对应签名日志记录,取得对所述业务单据的上一次签名,以供所述接收方验签。
通过上述技术方案,可以实现一种数字签名和验签方法和装置,可通过动态配置签名规则契约,来生成符合业务需求的签名明文,并对签名验签操作进行统一记录,有利于日后进行查询。
附图说明
图1是根据本发明的一个实施例的数字签名和验签方法的流程图;
图2是根据本发明的一个实施例的数字签名和验签装置的框图;
图3是根据本发明的一个实施例的数字签名和验签方法的操作流程图;
图4是根据本发明的一个实施例的数字签名和验签方法的签名规则契约的存储结构示意图;
图5是根据本发明的一个实施例的数字签名和验签方法的验签操作的示意图;
图6是纸质单据的流通示意图;
图7是根据本发明的一个实施例的数字签名和验签方法的保证纸质单据正确性的流程图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明并不限于下面公开的具体实施例的限制。
图1是根据本发明的一个实施例的数字签名和验签方法的流程图。
如图1所示,本发明提供了一种数字签名和验签方法,包括:步骤102,接收业务单据;步骤104,读取所述业务单据对应的签名规则契约;步骤106,根据所述业务单据对应的签名规则契约,从所述业务单据中解析出单据字段,并组成签名明文;步骤108,发送方对所述签名明文进行数字签名后,将所述业务单据发送至接收方;步骤110,所述接收方接收所述业务单据并进行验签。通过该技术方案,签名明文的内容可根据业务需求进行配置,与签名认证之间相对独立。
在上述技术方案中,还包括:步骤101,为每种类型业务单据设置签名规则契约,所述签名规则签约用于定义所述每种类型业务单据的单据字段的名称、位置、优先级顺序、数据类型和转换类型。
在上述技术方案中,所述签名规则契约通过类模板方式存储,或通过基于元数据结构的数据库持久化方式存储。
在上述技术方案中,还包括:步骤112,所述接收方验签成功后,生成一条签名日志记录并存储。通过该技术方案,将认证操作的记录统一存储,利于日后进行查询。
在上述技术方案中,所述步骤110中,根据所述业务单据的对应签名日志记录,取得对所述业务单据的上一次签名,以供所述接收方验签。
图2是根据本发明的一个实施例的数字签名和验签装置的框图。
如图2所示,本发明提供了一种数字签名和验签装置200,包括:业务单据录入模块202,接收业务单据;签名规则契约读取模块204,读取所述业务单据对应的签名规则契约;签名明文组合模块206,根据所述业务单据对应的签名规则契约,从所述业务单据中解析出单据字段,并组成签名明文;签名模块208,供发送方对所述签名明文进行数字签名;验签模块210,供接收方对所述发送方发送来的所述业务单据进行验签。通过该技术方案,签名明文的内容可根据业务需求进行配置,与签名认证之间相对独立。
在上述技术方案中,还包括:签名规则契约设置模块,为每种类型业务单据设置签名规则契约,所述签名规则签约用于定义所述每种类型业务单据的单据字段的名称、位置、优先级顺序、数据类型和转换类型。
在上述技术方案中,还包括:签名规则契约存储模块,将所述签名规则契约通过类模板方式存储,或通过基于元数据结构的数据库持久化方式存储。
在上述技术方案中,还包括:签名日志记录存储模块,所述接收方验签成功后,生成一条签名日志记录并存储。通过该技术方案,将认证操作的记录统一存储,利于日后进行查询。
在上述技术方案中,所述验签模块210还根据所述业务单据的对应签名日志记录,取得对所述业务单据的上一次签名,以供所述接收方验签。
图3至图5是采用根据本发明的一个实施例的数字签名和验签方法的进行单据签名验签的示意图。
如图3所示,对电子单据进行数字签名和验签的过程如下:
步骤302,用户录入业务数据。
步骤304,配置单据“签名/验签”字段项。
首先需要阐述两个名词“签名明文”,“签名规则契约”。
签名明文:也就是需要用私钥签名的一段内容信息,内容长度不限,一般是由单据上一些重要的敏感信息组成,也可以是单据上的任何内容信息。
签名规则契约:针对其一类单据的“签名明文”组成结构,是一种预先约定好的协议规则,“签名规则契约”主要说明了规则结构中所包含的单据字段名称,字段在单据上所处位置,优先级顺序,以及数据类型,转换类型等等。
单据字段名称:单据上字段的唯一标识,名称具有一定业务含义。
字段在单据上所处位置:单据字段是在单据表头,还是表体,或者在表尾,根据不同类型单据可以定义具体的位置。
优先级顺序:组成“签名明文”时,各个单据字段的拼接顺序,默认优先顺序为从左向右递减。
数据类型:单据字段是日期格式,还是金额数字格式,或者其它格式等等。
转换类型:在取得指定单据字段的值后,经过特定业务规则的数据转换,转换为其他具有特定含义的数值(例如:单据上填写的是银行账户编码,经过特定数据转换,最终得到的是银行账户名称)。
签名规则契约的配置存储方式:支持两种存储模式,第一种存储方式为类模板方式,第二种存储方式是基于元数据结构的数据库持久化方式。
配置存储与单据匹配规则:每一种类型的单据对应一条或者多条不同版本的“签名规则契约”。“类模板方式”是最简单的存储方式,一般由开发技术人员预先定义,不支持客户根据需求动态配置,没有版本记录。“基于元数据结构的数据库持久化方式”支持客户根据需求动态配置,可以随时变更“签名规则契约”组成结构,每次变更会产生一个新的版本,没有业务完结的单据将继续遵守老的版本执行,如图4所示。
步骤306,读取单据“签名/验签”字段项配置。
步骤308,组装签名明文。根据当前单据的业务类型读取与之对应的“签名规则契约”,通过内置的解析器翻译配置好的“签名规则契约”,然后从当前单据信息中取出所需内容摘要,组成“签名明文”用于CA私钥签名使用。
步骤310,前台或后台对单据进行签名。
步骤312,经网络发送单据。
步骤314,对当前单据进行数据库验签。
步骤316,确认数据库验签是否成功。
步骤318,数据库验签不成功时,提示验签失败。
步骤320,数据库验签成功后,对接收的单据进行网络验签。
步骤322,确认网络验签是否成功,不成功进入步骤318。
步骤324,验签成功,记录本次操作的签名记录。签名日志记录自动产生,并且由数据库存储下来。
对于不同业务类型的单据每次业务操作都会产生一条签名日志记录,分为两个表存储,一个为临时表,永远存储目前为止最后一次操作所产生的日志记录,另一个存储所有操作的签名日志记录。
通过查询先前存储的签名记录,用户可以直观的查看到所选单据经手的所有人员签名,单据被操作的次数,如果遇到突发事件,可以立刻对问题单据追溯到所有经办人的操作轨迹。
对于上述步骤中的数据库验签和网络验签的作用,可参考图5。
单据A为支付类单据,需要两个人审核,经理甲还有经理乙,业务环节已经进行到经理甲审批通过,需要经理乙审批的时候,经理乙在审批前肯定需要确定上一环节是否为经理甲审批,并且单据在经理甲审批后没有被其他人恶意篡改过,这时候可以先进行“数据库验签”,确保上一环节业务操作无异常,然后经理乙审批通过,但是要保证本次操作在传输到后台服务器的过程中没有被其他人恶意篡改过,时候就进行“网络验签”。
图6和图7是采用根据本发明的一个实施例的数字签名和验签方法的保证纸质单据正确性的示意图。
如图6所示,一般客户拿到应用系统打印出的纸制单据,会多人经手传递,此时可能会出现一些人恶意篡改单据内容,使最终接收者拿到错误的纸制单据。
如图7所示,使用本实施例中的数字签名和验签方法,针对上述情况的处理步骤为:
步骤702,用户根据数字签名和验签装置的验证界面提示,输入纸质打印单据信息和验证码;
步骤704,读取输入单据的对应签名规则契约,并组成明文摘要;
步骤706,对明文摘要进行验签;
步骤708,验签结果成功,证明该纸质打印单据合法;
步骤710,验签不成功,证明该纸质打印单据不合法。
根据本发明的技术方案,可以实现一种数字签名和验签方法,但保留了原有CA安全认证的全部特点,而且延伸优化了在不同场景下其使用方法,极大提高了客户的交互体验,又提高了技术人员的开发效率。同时支持用户根据需要自己配置,这样使得对于电子单据的CA安全认证更灵活,用户可以自定义单据的敏感信息,可以实时的根据用户的需要修改这个配置。总的来说也提升了CA安全认证方式的灵活性、使得企业电子信息系统安全保证上升了一个新的高度。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种数字签名和验签方法,其特征在于,包括:
步骤101,为每种类型业务单据设置签名规则契约,所述签名规则契约用于定义所述每种类型业务单据的单据字段的名称、位置、优先级顺序、数据类型和转换类型;
步骤102,接收业务单据;
步骤104,读取所述业务单据对应的签名规则契约;
步骤106,根据所述业务单据对应的签名规则契约,从所述业务单据中解析出单据字段,并组成签名明文;
步骤108,发送方对所述签名明文进行数字签名后,将所述业务单据发送至接收方;
步骤110,所述接收方接收所述业务单据并进行验签。
2.根据权利要求1所述的数字签名和验签方法,其特征在于,所述签名规则契约通过类模板方式存储,或通过基于元数据结构的数据库持久化方式存储。
3.根据权利要求1或2所述的数字签名和验签方法,其特征在于,还包括:
步骤112,所述接收方验签成功后,生成一条签名日志记录并存储。
4.根据权利要求3所述的数据签名和验签方法,其特征在于,所述步骤110中,根据所述业务单据的对应签名日志记录,取得对所述业务单据的上一次签名,以供所述接收方验签。
5.一种数字签名和验签装置,其特征在于,包括:
签名规则契约设置模块,为每种类型业务单据设置签名规则契约,所述签名规则契约用于定义所述每种类型业务单据的单据字段的名称、位置、优先级顺序、数据类型和转换类型;
业务单据录入模块,接收业务单据;
签名规则契约读取模块,读取所述业务单据对应的签名规则契约;
签名明文组合模块,根据所述业务单据对应的签名规则契约,从所述业务单据中解析出单据字段,并组成签名明文;
签名模块,供发送方对所述签名明文进行数字签名;
验签模块,供接收方对所述发送方发送来的所述业务单据进行验签。
6.根据权利要求5所述的数字签名和验签装置,其特征在于,还包括:
签名规则契约存储模块,将所述签名规则契约通过类模板方式存储,或通过基于元数据结构的数据库持久化方式存储。
7.根据权利要求5或6所述的数字签名和验签装置,其特征在于,还包括:
签名日志记录存储模块,所述接收方验签成功后,生成一条签名日志记录并存储。
8.根据权利要求7所述的数据签名和验签装置,其特征在于,所述验签模块还根据所述业务单据的对应签名日志记录,取得对所述业务单据的上一次签名,以供所述接收方验签。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010292017A CN101964710B (zh) | 2010-09-26 | 2010-09-26 | 数字签名和验签方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010292017A CN101964710B (zh) | 2010-09-26 | 2010-09-26 | 数字签名和验签方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101964710A CN101964710A (zh) | 2011-02-02 |
CN101964710B true CN101964710B (zh) | 2012-10-10 |
Family
ID=43517462
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010292017A Active CN101964710B (zh) | 2010-09-26 | 2010-09-26 | 数字签名和验签方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101964710B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102663317B (zh) * | 2012-03-05 | 2016-07-27 | 浪潮通用软件有限公司 | 业务单据及关键数据流转过程安全加固系统 |
CN103647650B (zh) * | 2013-12-18 | 2017-02-08 | 用友网络科技股份有限公司 | 基于规则定义的自动签名/验签装置和自动签名/验签方法 |
CN105847013A (zh) * | 2016-05-30 | 2016-08-10 | 上海欧冶金融信息服务股份有限公司 | 数字签名的安全验证方法 |
CN106788991A (zh) * | 2016-12-05 | 2017-05-31 | 北京中交兴路信息科技有限公司 | 一种数据传输的方法及装置 |
CN107276763A (zh) * | 2017-06-05 | 2017-10-20 | 北京网证科技有限公司 | 一种互联网电子询证函电子签名及验签方法及系统 |
CN111046039A (zh) * | 2019-11-25 | 2020-04-21 | 金蝶软件(中国)有限公司 | 一种单据查询方法及相关装置 |
CN112597443A (zh) * | 2020-12-25 | 2021-04-02 | 中国人民解放军总医院 | 一种电子签名中原文定义的方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101089880A (zh) * | 2007-07-13 | 2007-12-19 | 王少波 | 一种电子签名方法 |
CN101496059A (zh) * | 2005-04-19 | 2009-07-29 | 微软公司 | 网络商业交易 |
CN101753605A (zh) * | 2008-12-02 | 2010-06-23 | 北大方正集团有限公司 | 一种数据验证方法及一种服务器 |
-
2010
- 2010-09-26 CN CN201010292017A patent/CN101964710B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101496059A (zh) * | 2005-04-19 | 2009-07-29 | 微软公司 | 网络商业交易 |
CN101089880A (zh) * | 2007-07-13 | 2007-12-19 | 王少波 | 一种电子签名方法 |
CN101753605A (zh) * | 2008-12-02 | 2010-06-23 | 北大方正集团有限公司 | 一种数据验证方法及一种服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN101964710A (zh) | 2011-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101964710B (zh) | 数字签名和验签方法 | |
CN103189886B (zh) | 电子收据系统、终端装置、电子收据的提供方法及程序 | |
US8688992B2 (en) | System and method for generating agreements | |
US20140019761A1 (en) | Self-contained electronic signature | |
CN107959568A (zh) | 一种计量检定校准电子证书智能生成方法及系统 | |
CN107888557A (zh) | 一种协议文件的生成方法及其系统 | |
CN106600717B (zh) | 一种基于用户端界面联网验票的方法、系统及智能设备 | |
US20080294976A1 (en) | System and method for generating and communicating digital documents | |
JP2000148742A (ja) | 認証管理システム及び認証管理方法 | |
CN107463921B (zh) | 一种征信授权有效性验证方法及系统 | |
CN109165907A (zh) | 一种文件审批方法及系统 | |
CA2404286A1 (en) | Processing apparatus and method for electronic document | |
JP4983974B2 (ja) | 手続システム | |
CN111768013B (zh) | 一种商业银行对公账户综合管理系统及方法 | |
JP3617789B2 (ja) | 公開鍵証明書発行方法、検証方法、システム及び記録媒体 | |
CN102012999B (zh) | 机读信息卡的电子档案及其实现方法与系统 | |
CN109934588A (zh) | 一种业务办理方法及装置 | |
CN112100685A (zh) | 一种检验检测电子报告的加密与防篡改处理方法 | |
CN103647650A (zh) | 基于规则定义的自动签名/验签装置和自动签名/验签方法 | |
EP1883035A2 (en) | Electronic data disclosure method and system | |
CN116974999A (zh) | 电子文件签署方法、装置、电子设备及存储介质 | |
CN116051303A (zh) | 一种电子凭证识别处理的方法、装置、设备及介质 | |
CN110111105A (zh) | 基于区块链的合同存证方法、设备及存储介质 | |
JP2002139997A (ja) | 電子捺印システム | |
CN115641136A (zh) | 一种基于电子签名的凭证无纸化系统和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee |
Owner name: YONYOU NETWORK TECHNOLOGY CO., LTD. Free format text: FORMER NAME: UFIDA SOFTWARE CO., LTD. |
|
CP03 | Change of name, title or address |
Address after: 100094 Haidian District North Road, Beijing, No. 68 Patentee after: Yonyou Network Technology Co., Ltd. Address before: 100094 Beijing city Haidian District North Road No. 68, UFIDA Software Park Patentee before: UFIDA Software Co., Ltd. |