基于规则定义的自动签名/验签装置和自动签名/验签方法制造方法及图纸

技术编号:9796154 阅读:112 留言:0更新日期:2014-03-22 02:35
本发明专利技术提供了一种基于规则定义的自动签名/验签装置,包括:签名配置提供模块,提供适应不同业务场景的签名配置;签名规则定义模块,负责定义从实体对象中抽取交易特征字段组成签名特征串的规则;签名日志记录及服务定义模块,从实体对象、签名规则中提取签名日志信息,并调用日志服务将签名信息保存到数据库;应用级签名/验签服务及过程定义模块,定义实体对象的签名和验签服务并实现该服务。本发明专利技术还提供了一种基于规则定义的自动签名/验签方法。通过本发明专利技术的技术方案,可以在现有的基于规则定义的自动签名/验签方式基础上,充分利用单业务对象完成多业务对象的自动签名/验签,建立面向通用业务对象自动签名/验签的通用解决思路。

【技术实现步骤摘要】
基于规则定义的自动签名/验签装置和自动签名/验签方法
本专利技术涉及计算机
,具体地,涉及一种基于规则定义的自动签名/验签装置和一种基于规则定义的自动签名/验签方法。
技术介绍
互联网技术的发展拓展了企业业务系统的应用范围,其应用范围从企业内部延伸到企业外部。企业业务系统不仅与企业内部员工和企业内部其它业务系统交互,也与企业外部(合作伙伴)的员工或业务系统交互。在Internet大众化、Web技术飞速演变、黑客工具日益普及的今天,企业核心业务应用系统应用环境也更加复杂。针对业务应用的攻击和破坏不断增多,在线安全面临日益严峻的挑战,安全风险达到了前所未有的高度。为了规避应用安全风险,国家金融业标准《国家金融行业标准JR/T0071—2012》对敏感交易有明确的强制要求,对于敏感的业务数据和业务操作,必须在应用的建立过程中引入成熟的安全方案。在业务系统中,当用户通过互联网操作敏感数据(例如资金流出相关单据)或执行敏感操作(例如资金相关的审批操作)时,其数据有可能在互联网中传输的过程中被他人非法篡改;在数据保存到数据库中以后,也存在着非法用户绕过应用通过直接操作数据库篡改的风险。如图3所示。涉及到敏感数据或敏感操作的业务要求能够主动防范篡改和抵赖的风险。目前实现该安全需求基本都是采用业界比较成熟的公开密钥基础建设(PublicKeyInfrastructure)/数字证书认证机构(certificateauthority,CA)中的签名/验签方案,保障业务系统的重要业务操作的完整性和防抵赖。在当前的业务系统中,一般采用定制化方法进行签名/验签,其方案如图4所示。用户从客户端提交数据时,系统从业务对象中提取用于签名的特征串(不是所有的信息参与签名,只关注敏感信息,不同的业务对象有不同的特征串抽取规则),然后利用客户私钥依据特征串得到签名数据,签名完成。然后通过网络将业务对象和签名数据发送到服务端,服务端得到业务对象和签名数据之后,首先必须采用与客户端同样的规则从业务对象中提取签名特征串,并利用公钥证书解密签名数据。然后对比签名数据和依据业务对象特征串是否一致。如果一致,则签名成功,否则就签名失败。当前方案中,存在一些问题,例如:⑴各签名业务需要独立实现提取签名特征串(数字摘要明文)的拼装,签名规则内嵌在源代码中,代码复杂而且冗余度大;⑵同一交易的客户端和服务端提取签名特征串规则相同,但分别实现,容易造成规则不一致,造成验签失败;⑶数字签名(密文)的存储和记录没有统一的方式;⑷可拓展性差,增加签名业务或修改签名规则需要修改源代码;⑸由于签名特征串(数字摘要明文)提取规则分散在源代码中,规则可见性和可维护性差;⑹实现较复杂,要求开发人员对签名/验签知识有一定的了解。随着应用安全要求的提高,有更多的业务数据或业务操作有签名/验签的要求。以上问题会直接增加业务系统的复杂度,进而影响系统的质量。需要建立通用的自动签名/验签装置,统一管理系统的签名和验签,可以大大提高系统的可拓展性和可维护性,充分降低系统的复杂度,提高工作效率和质量。因此,需要一种新的基于规则定义的自动签名/验签技术,可以在现有的基于规则定义的自动签名/验签方式基础上,充分利用单业务对象完成多业务对象的服自动签名/验签,建立多业务对象参与的面向通用业务对象自动签名/验签的通用、统一签名/验签思路。
技术实现思路
本专利技术正是基于上述问题,提出了一种新的基于规则定义的自动签名/验签装置技术,可以在现有的基于规则定义的自动签名/验签方式基础上,充分利用单业务对象完成多业务对象的服自动签名/验签,建立多业务对象参与的面向通用业务对象自动签名/验签的通用、统一签名/验签思路。有鉴于此,本专利技术提出了一种基于规则定义的自动签名/验签装置,包括:签名配置提供模块,用于提供适应不同业务场景的签名配置;签名规则定义模块,用于对需要签名的实体对象定义签名规则,以定义交易特征字段并组成签名特征串;签名日志记录及服务定义模块,用于在实际签名过程中,从所述签名配置提供模块提供的签名配置对应的实体对象、所述签名规则定义模块定义的签名规则中,提取签名日志相关信息,调用日志服务并保存到数据库;应用级签名/验签服务及过程定义模块,用于定义基于所述签名配置提供模块提供的签名配置对应的实体对象的签名和验签的服务,并基于所述签名日志记录及服务定义模块定义的签名日志记录及服务,实现相应的实体对象的签名和验签的服务。在该技术方案中,可以提供适应不同业务场景的签名配置,定义通用的签名规则,有利于简化签名/验签过程。在上述技术方案中,优选地,所述基于规则定义的自动签名/验签装置,还包括:签名/验签跟踪/追溯模块,用于对所述应用级签名/验签服务及过程定义模块实现的相应的实体对象的签名和/或验签,进行跟踪/追溯。在该技术方案中,可以对相应实体对象的签名和/或验签进行跟踪/追溯,有利于提高签名和/或验签的真实性和可靠性。在上述技术方案中,优选地,所述签名/验签跟踪/追溯模块进行跟踪/追溯的操作,具体包括当签名/验签失败的时候,查询验签日志,追溯签名/验签历史;所述验签日志,具体为保存在所述签名日志记录及服务定义模块定义的数据库中的签名日志相关信息;当单据多次保存/提交时,所述签名日志记录及服务定义模块会记录多份验签日志,当前最新签名保存在所述签名日志记录及服务定义模块定义的数据库中一个独立表中。在该技术方案中,从性能上考虑,当前最新签名日志可以放在一个独立表中,有利于提高查询效率和准确性。在上述技术方案中,优选地,所述签名配置提供模块提供的适应不同业务场景的签名配置,包括签名依据单据类型、交易类型、动作类型配置,与每个签名配置对应的签名配置项包括“是否签名”、“验签的时候是否执行数据库验签”、“是否记录签名日志”;以及,所述签名日志记录及服务定义模块提取的签名日志相关信息,包括基于实体对象的标识、模块编码、单据类型、单据标识、单据号、功能编码、动作编码、签名明文、签名密文、签名操作员、签名来源类型、验签状态、密钥厂家ID和密钥序列号中的一种或多种;以及,所述应用级签名/验签服务及过程定义模块定义的实体对象的签名和验签的服务,包括签名、网络验签和数据库验签;其中:所述签名的操作,具体为依据客户端输入单据及预定义的签名规则进行签名;所述网络验签的操作,具体为依据接受到的业务实体、签名数据、签名规则验证签名,并记录验签日志;所述数据库验签的操作,具体为依据数据库中的上次修改数据及签名日志进行验签,签名日志中应该记录证书序列号,用该证书验签。在上述技术方案中,优选地,所述签名规则定义模块定义的签名规则,包括签名字段列表、定义参照字段、格式化方式和字段排列顺序;以及,所述签名规则定义模块还用于:针对需要签名的实体,增加一个签名规则配置文件,定义包含字段列表、参照字段、格式化方式和字段排列顺序的签名规则;签名的时候,依据签名规则和实体生成签名特征串。在该技术方案中,可以通过增加的签名规则配置文件,提高对类似实体对象进行签名的复用性和可靠性。根据本专利技术的又一个方面,还提出了一种基于规则定义的自动签名/验签方法,包括:步骤202:提供适应不同业务场景的签名配置;步骤204:对需要签名的实体对象定义签名规则,以定义本文档来自技高网
...
基于规则定义的自动签名/验签装置和自动签名/验签方法

【技术保护点】
一种基于规则定义的自动签名/验签装置,其特征在于,包括:签名配置提供模块,用于提供适应不同业务场景的签名配置;签名规则定义模块,用于对需要签名的实体对象定义签名规则,以定义交易特征字段并组成签名特征串;签名日志记录及服务定义模块,用于在实际签名过程中,从所述签名配置提供模块提供的签名配置对应的实体对象、所述签名规则定义模块定义的签名规则中,提取签名日志相关信息,调用日志服务并保存到数据库;应用级签名/验签服务及过程定义模块,用于定义基于所述签名配置提供模块提供的签名配置对应的实体对象的签名和验签的服务,并基于所述签名日志记录及服务定义模块定义的签名日志记录及服务,实现相应的实体对象的签名和验签的服务。

【技术特征摘要】
1.一种基于规则定义的自动签名/验签装置,其特征在于,包括:签名配置提供模块,用于提供适应不同业务场景的签名配置;签名规则定义模块,用于对需要签名的实体对象定义签名规则,以定义交易特征字段并组成签名特征串;签名日志记录及服务定义模块,用于在实际签名过程中,从所述签名配置提供模块提供的签名配置对应的实体对象以及从所述签名规则定义模块定义的签名规则中,提取签名日志相关信息,调用日志服务并保存到数据库;应用级签名/验签服务及过程定义模块,用于定义基于所述签名配置提供模块提供的签名配置对应的实体对象的签名和验签的服务,并基于所述签名日志记录及服务定义模块定义的签名日志记录及服务,实现相应的实体对象的签名和验签的服务,所述签名配置提供模块提供的适应不同业务场景的签名配置,包括签名依据单据类型、交易类型和动作类型配置,与每个签名配置对应的签名配置项包括“是否签名”、“验签的时候是否执行数据库验签”和“是否记录签名日志”;以及,所述签名日志记录及服务定义模块提取的签名日志相关信息,包括以下一种或多种信息,基于实体对象的标识、模块编码、单据类型、单据标识、单据号、功能编码、动作编码、签名明文、签名密文、签名操作员、签名来源类型、验签状态、密钥厂家ID和密钥序列号;以及,所述应用级签名/验签服务及过程定义模块定义的实体对象的签名和验签的服务,包括签名、网络验签和数据库验签;其中:所述签名的操作,具体为依据客户端输入单据及预定义的签名规则进行签名;所述网络验签的操作,具体为依据接受到的业务实体、签名数据和签名规则验证签名,并记录验签日志;所述数据库验签的操作,具体为依据数据库中的上次修改数据及签名日志进行验签,签名日志中应该记录证书序列号,用该证书验签。2.根据权利要求1所述的基于规则定义的自动签名/验签装置,其特征在于,还包括:签名/验签跟踪/追溯模块,用于对所述应用级签名/验签服务及过程定义模块实现的相应的实体对象的签名和/或验签,进行跟踪/追溯。3.根据权利要求2所述的基于规则定义的自动签名/验签装置,其特征在于,所述签名/验签跟踪/追溯模块进行跟踪/追溯的操作,具体包括当签名/验签失败的时候,查询验签日志,追溯签名/验签历史;所述验签日志,具体为保存在所述签名日志记录及服务定义模块定义的数据库中的签名日志相关信息;当单据多次保存/提交时,所述签名日志记录及服务定义模块会记录多份验签日志,当前最新签名保存在所述签名日志记录及服务定义模块定义的数据库中一个独立表中。4.根据权利要求1至3中任一项所述的基于规则定义的自动签名/验签装置,其特征在于,所述签名规则定义模块定义的签名规则,包括签名字段列表、定义参照字段、格式化方式和字段排列顺序;以及,所述签名规则定义模块还用于:针对需要签名的实体,增加一个签名规...

【专利技术属性】
技术研发人员:刘学斌
申请(专利权)人:用友软件股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1