一种防篡改的业务流程验证方法及系统技术方案

技术编号:38884015 阅读:14 留言:0更新日期:2023-09-22 14:12
本发明专利技术公开了一种防篡改的业务流程验证方法及系统,本专利通过对终端请求云端更新业务流程进行摘要,取hash值进行校验,每次的hash值生成基于上一次变更流程的hash摘要和本次变更业务流程信息,并将每次的hash值业务端服务器都反馈终端作为下一次业务流程变更获取hash值使用。实现了对业务流程变更合法性的验证,通过业务流程更新进行合法、追溯、有效等特性的验证,起到防止中间人假冒攻击,随意篡改等作用。篡改等作用。篡改等作用。

【技术实现步骤摘要】
一种防篡改的业务流程验证方法及系统


[0001]本专利技术涉及通信安全领域,更具体地,本专利技术涉及一种防篡改的业务流程验证方法及系统。

技术介绍

[0002]目前保证业务流程状态的方法是采用校验流程的当前状态和变更状态是否符合逻辑,或常用的对称加密技术。这样做的缺陷是业务流程校验容易被中间人假冒截取并篡改;采用普通加密技术也易于伪造重放攻击使其非法更改流程;有的业务对流程演进的要求非常高,尤其涉及支付或财务的流程,需要严格保证流程演进合规合法,具有较高权限的运维人员也不能随意更新流程状态。
[0003]因此需要采用一种校验业务流程状态更新的方法,具有可信可靠,可追溯性,并防止乱序。

技术实现思路

[0004]本专利技术克服了现有技术的不足,提供一种防篡改的业务流程验证方法及系统,以期望可以解决现有流程安全性不足的问题。
[0005]为解决上述的技术问题,本专利技术一方面提供了一种防篡改的业务流程验证方法,包括以下步骤:
[0006]S1:终端用户首次向业务云端服务器发起业务流程变更请求、首次hash值和验证数据请求;
[0007]S2:业务云端服务器获取验证数据和流程变更时间戳,并发送至终端和流程状态认证服务器,流程状态认证服务器随机生成首次hash值并发送至终端;
[0008]S3:终端将返回的首次hash值和验证数据摘要生成中间hash值,中间hash值与流程变更时间戳、用户id摘要生成验证hash值;
[0009]S4:终端在需要对业务流程状态进行变更时,向云端业务服务器发出变更业务流程状态的请求和验证hash值;
[0010]S5:云端业务服务器收到终端变更业务流程状态的请求后,对变更流程状态请求的验证hash值进行校验;
[0011]S6:如果校验一致,则云端业务服务器更新业务流程状态,同时将该业务流程当前状态变更的验证数据和流程变更时间戳储存在业务流程状态变更记录表,并将验证数据和时间戳发送至终端和业务流程状态认证服务器,并将验证hash值发送至业务流程状态认证服务器;
[0012]业务流程状态认证服务器对验证hash值、状态变更的验证数据和流程变更时间戳进行存储;
[0013]如果校验不一致,则不对业务流程进行变更,流程结束;
[0014]S7:终端在收到状态变更的验证数据和流程变更时间戳后,通过将返回的验证
hash值和验证数据摘要生成中间hash值,再将中间hash值与流程变更时间戳、用户id摘要生成新的验证hash值,以备下次验证使用;
[0015]终端下次需要对业务流程状态进行变更时,再重复S4

S7步骤。
[0016]进一步的技术方案为,所述校验具体包括以下步骤:
[0017]云端业务服务器将首次hash值,验证数据进行摘要生成中间hash值;中间hash值再与第一步的时间戳,用户id进行摘要获得第一步的验证hash值;
[0018]云端业务服务器查询业务流程数据字典表和业务流程状态变更路线表,获取终端发出的业务流程变更请求位于流程中的位置,并获得相应的验证数据,随后将验证hash值、验证数据进行摘要生成中间hash值;中间hash值再与第二步的时间戳,用户id进行摘要获得第二步的验证hash值;并不断重复此步骤,直到获取该业务流程当前状态变更所需要校验的验证hash值;
[0019]云端业务服务器将获取的验证hash值与终端发送的验证hash值进行校验,如果比对一致,则校验一致,如果比对不一致,则校验不一致。
[0020]更进一步的技术方案为,所述验证数据包括业务id,业务流程状态id;
[0021]所述业务id,业务流程状态id通过业务云端服务器接口查询业务流程数据字典表获取。
[0022]所述业务id,用于识别不同的业务,所述业务流程状态id,用于识别不同的业务流程状态,所述用户id用于识别不同的用户。
[0023]更进一步的技术方案为,所述验证数据还包括事件uuid;
[0024]所述事件uuid用于进一步表示在相同业务流程状态中的不同事件,通过业务云端服务器接口查询业务流程数据字典表获取。
[0025]所述业务流程数据字典表设置于云端业务服务器数据库中,该表配置有业务和对应业务的每步流程,通过在该表中查询终端发送的变更业务流程状态的请求,可以获得业务id,业务名称,业务流程状态id,业务流程状态值等。
[0026]云端业务服务器数据库中还建立有业务流程状态变更路线表,该表作用是记录某业务的流程状态顺序,包括所有的流程分支。该表数据至少包括业务id,该业务id的业务流程状态链等。业务流程状态链是由该业务流程前后的所有业务流程状态id按业务流程顺序组成的序列字段,多个业务流程状态id用
“‑”
隔开,业务流程id可以有多个业务流程链,业务流程id与业务流程链以一对多的形式存储在该表中。
[0027]云端业务服务器数据库中还建立有业务流程状态变更记录表,该表的作用是记录具体操作业务状态变更的流水,该表数据至少包括业务id,业务流程状态id,具有权限操作人员的用户id,变更时间,事件uuid,初始hash值等。
[0028]所述事件uuid用于进一步表示在相同业务流程状态中不同事件。
[0029]更进一步的技术方案为,如果流程下一步的变更需要由其他终端发起,或者之前发起流程的终端出现数据丢失;
[0030]由消息服务器将存储在流程状态认证服务器中的验证hash值、状态变更的验证数据和流程变更时间戳推送至具有业务流程状态变更权限的终端。
[0031]本专利技术另一方面提供了一种防篡改的业务流程验证的系统,包括,终端、云端业务服务器、业务流程状态认证服务器;
[0032]所述终端用于向业务云端服务器发起业务流程变更请求,将返回的首次hash值、流程变更时间戳和验证数据储存,并将返回的首次hash值、流程变更时间戳和验证数据摘要生成验证hash值;
[0033]所述云端业务服务器用于获取验证数据和流程变更时间戳,并发送至终端和流程状态认证服务器,云端业务服务器收到终端变更业务流程状态的请求后,对变更流程状态请求的验证hash值进行校验,并根据校验结果,更新业务流程状态。
[0034]所述业务流程状态认证服务器用于生成首次hash值,对验证hash值、状态变更的验证数据和流程变更时间戳进行存储。
[0035]进一步的技术方案为,所述防篡改的业务流程验证的系统包括消息服务器;
[0036]所述消息服务器用于将存储在流程状态认证服务器中的验证hash值、状态变更的验证数据和流程变更时间戳推送至具有业务流程状态变更权限的终端。
[0037]与现有技术相比,本专利技术至少具有以下有益效果:本专利通过对终端请求云端更新业务流程进行摘要,取hash值进行校验,每次的hash值生成基于上一次变更流程的hash摘要和本次变更业务流程信息,并将本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种防篡改的业务流程验证方法,其特征在于,包括以下步骤,S1:终端用户首次向业务云端服务器发起业务流程变更请求、首次hash值和验证数据请求;S2:业务云端服务器获取验证数据和流程变更时间戳,并发送至终端和流程状态认证服务器,流程状态认证服务器随机生成首次hash值并发送至终端;S3:终端将返回的首次hash值和验证数据摘要生成中间hash值,中间hash值与流程变更时间戳、用户id摘要生成验证hash值;S4:终端在需要对业务流程状态进行变更时,向云端业务服务器发出变更业务流程状态的请求和验证hash值;S5:云端业务服务器收到终端变更业务流程状态的请求后,对变更流程状态请求的验证hash值进行校验;S6:如果校验一致,则云端业务服务器更新业务流程状态,同时将该业务流程当前状态变更的验证数据和流程变更时间戳储存在业务流程状态变更记录表,并将验证数据和时间戳发送至终端和业务流程状态认证服务器,并将验证hash值发送至业务流程状态认证服务器;业务流程状态认证服务器对验证hash值、状态变更的验证数据和流程变更时间戳进行存储;如果校验不一致,则不对业务流程进行变更,流程结束;S7:终端在收到状态变更的验证数据和流程变更时间戳后,通过将返回的验证hash值和验证数据摘要生成中间hash值,再将中间hash值与流程变更时间戳、用户id摘要生成新的验证hash值,以备下次验证使用;终端下次需要对业务流程状态进行变更时,再重复S4

S7步骤。2.如权利要求1所述的一种防篡改的业务流程验证方法,其特征在于,所述校验具体包括以下步骤:云端业务服务器将首次hash值,验证数据进行摘要生成中间hash值;中间hash值再与第一步的时间戳,用户id进行摘要获得第一步的验证hash值;云端业务服务器查询业务流程数据字典表和业务流程状态变更路线表,获取终端发出的业务流程变更请求位于流程中的位置,并获得相应的验证数据,随后将验证hash值、验证数据进行摘要生成中间hash值;中间hash值再与第二步的时间戳,用户id进...

【专利技术属性】
技术研发人员:刘剑飞
申请(专利权)人:四川启睿克科技有限公司
类型:发明
国别省市:

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

1