CN114615025A - 一种密钥同步处理方法和装置 - Google Patents

一种密钥同步处理方法和装置 Download PDF

Info

Publication number
CN114615025A
CN114615025A CN202210162173.8A CN202210162173A CN114615025A CN 114615025 A CN114615025 A CN 114615025A CN 202210162173 A CN202210162173 A CN 202210162173A CN 114615025 A CN114615025 A CN 114615025A
Authority
CN
China
Prior art keywords
key
redis
memory
name
new
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.)
Granted
Application number
CN202210162173.8A
Other languages
English (en)
Other versions
CN114615025B (zh
Inventor
夏莹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN202210162173.8A priority Critical patent/CN114615025B/zh
Publication of CN114615025A publication Critical patent/CN114615025A/zh
Application granted granted Critical
Publication of CN114615025B publication Critical patent/CN114615025B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/068Network architectures or network communication protocols for network security for supporting key management in a packet data network using time-dependent keys, e.g. periodically changing keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0846Network architectures or network communication protocols for network security for authentication of entities using passwords using time-dependent-passwords, e.g. periodically changing passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种密钥同步处理方法和装置,涉及数据安全技术领域。该方法的一具体实施方式包括:接收密钥更新请求,解析请求报文得到新密钥和密钥类型,基于新密钥的属性和密钥类型,生成密钥键名;在Redis中,查询当前与密钥键名对应的目标密钥,以将目标密钥替换为新密钥;响应于对Redis的密钥更新完成信息,将Redis中的新密钥键值对同步更新到内存中;接收业务交易请求,解析请求报文得到密钥键名,从Redis中读取与密钥键名对应的密钥;将密钥和内存中与密钥键名对应的密钥进行比对,根据比对结果使用更新时间最新的Redis或内存中的密钥,对业务交易请求进行处理。该实施方式提高了同步密钥的实时性,通过密钥比对确保使用的是新密钥,保证交易正常运行。

Description

一种密钥同步处理方法和装置
技术领域
本发明涉及数据安全技术领域,尤其涉及一种密钥同步处理方法和装置。
背景技术
为确保与三方系统之间网络通讯的安全性,需要对通讯报文做MAC(MessageAuthentication Code,消息认证码)校验、PIN(Personal Identification Number,个人识别密码)加密等处理。为确保MAC校验、PIN加密的可靠性,需要对安全处理所使用的密钥定期进行更换。
参见图1所示,目前主要通过共享存储的方式实现密钥同步,与对端系统完成密钥交换后,处理密钥交换的应用服务器将新密钥更新到集群共享存储上的指定文件中,集群中的所有应用服务器通过自动任务定时(如每分钟执行1次)扫描该文件,当检测到密钥变更后将新密钥更新到本地配置文件中,并使用内存刷新工具刷新到内存。
现有方式密钥存储在应用服务器的本地配置文件中,密钥更新则存放在共享存储上,对外可见,存在可能被误删改等风险隐患。现有密钥同步方式实时性较差,同步间隔最长为1分钟,因而密钥同步期间可能会产生因仍采用旧密钥进行安全处理,导致交易处理失败的情况。
发明内容
有鉴于此,本发明实施例提供一种密钥同步处理方法和装置,至少能够解决现有技术中共享存储风险大、密钥同步期间可能使用旧密钥导致交易失败的现象。
为实现上述目的,根据本发明实施例的一个方面,提供了一种密钥同步处理方法,包括:
接收密钥更新请求,解析请求报文得到新密钥和密钥类型,基于所述新密钥的属性和所述密钥类型,生成密钥键名;
在远程字典服务Redis中,查询当前与所述密钥键名对应的目标密钥,以将所述目标密钥替换为所述新密钥;
响应于对Redis的密钥更新完成信息,将Redis中的新密钥键值对同步更新到内存中;
接收业务交易请求,解析请求报文得到密钥键名,从Redis中读取与所述密钥键名对应的密钥;
将所述密钥和内存中与所述密钥键名对应的密钥进行比对,根据比对结果使用更新时间最新的Redis或内存中的密钥,对所述业务交易请求进行处理。
可选的,所述在远程字典服务Redis中,查询当前与所述密钥键名对应的目标密钥,以将所述目标密钥替换为所述新密钥,包括:
在Redis中查询当前是否存在与所述密钥键名对应的目标密钥;
响应于查询结果为不存在,将所述密钥键名和所述新密钥以键值对形式添加到Redis中;或
响应于查询结果为存在,将所述目标密钥替换为所述新密钥。
可选的,所述根据比对结果使用更新时间最新的Redis或内存中的密钥,对所述业务交易请求进行处理,包括:
响应于比对结果为相同,使用内存中的密钥对所述业务交易请求进行处理;或
响应于比对结果为不同,使用Redis中的密钥对所述业务交易请求进行处理,以及将内存中的密钥替换为Redis中的密钥。
可选的,所述根据比对结果使用更新时间最新的Redis或内存中的密钥,对所述业务交易请求进行处理,包括:
响应于从Redis中读取密钥结果为失败,从内存中读取与所述密钥键名对应的密钥;
若读取结果为成功,则将内存中的密钥加载到Redis,以及使用内存中的密钥处理所述业务交易请求;或
若读取结果为失败,则从本地配置文件中读取所述密钥键名对应的密钥,并将密钥加载到内存,以及将内存中的密钥加载到Redis,使用Redis或内存中的密钥处理所述业务交易请求。
可选的,所述将Redis中的新密钥键值对同步更新到内存中,包括:
将Redis中的新密钥键值对,同步更新到服务器集群中每个服务器的内存和本地配置文件中,使得每个服务器均可以处理业务交易请求。
可选的,密钥类型为消息认证码类型或个人识别密码类型。
为实现上述目的,根据本发明实施例的另一方面,提供了一种密钥同步处理装置,包括:
解析模块,用于接收密钥更新请求,解析请求报文得到新密钥和密钥类型,基于所述新密钥的属性和所述密钥类型,生成密钥键名;
更新模块,用于在远程字典服务Redis中,查询当前与所述密钥键名对应的目标密钥,以将所述目标密钥替换为所述新密钥;
同步模块,用于响应于对Redis的密钥更新完成信息,将Redis中的新密钥键值对同步更新到内存中;
读取模块,用于接收业务交易请求,解析请求报文得到密钥键名,从Redis中读取与所述密钥键名对应的密钥;
比对模块,用于将所述密钥和内存中与所述密钥键名对应的密钥进行比对,根据比对结果使用更新时间最新的Redis或内存中的密钥,对所述业务交易请求进行处理。
可选的,所述更新模块,用于:
在Redis中查询当前是否存在与所述密钥键名对应的目标密钥;
响应于查询结果为不存在,将所述密钥键名和所述新密钥以键值对形式添加到Redis中;或
响应于查询结果为存在,将所述目标密钥替换为所述新密钥。
可选的,所述比对模块,用于:
响应于比对结果为相同,使用内存中的密钥对所述业务交易请求进行处理;或
响应于比对结果为不同,使用Redis中的密钥对所述业务交易请求进行处理,以及将内存中的密钥替换为Redis中的密钥。
可选的,所述比对模块,用于:
响应于从Redis中读取密钥结果为失败,从内存中读取与所述密钥键名对应的密钥;
若读取结果为成功,则将内存中的密钥加载到Redis,以及使用内存中的密钥处理所述业务交易请求;或
若读取结果为失败,则从本地配置文件中读取所述密钥键名对应的密钥,并将密钥加载到内存,以及将内存中的密钥加载到Redis,使用Redis或内存中的密钥处理所述业务交易请求。
可选的,所述同步模块,用于:
将Redis中的新密钥键值对,同步更新到服务器集群中每个服务器的内存和本地配置文件中,使得每个服务器均可以处理业务交易请求。
可选的,密钥类型为消息认证码类型或个人识别密码类型。
为实现上述目的,根据本发明实施例的再一方面,提供了一种密钥同步处理电子设备。
本发明实施例的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一所述的密钥同步处理方法。
为实现上述目的,根据本发明实施例的再一方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任一所述的密钥同步处理方法。
为实现上述目的,根据本发明实施例的又一个方面,提供了一种计算程序产品。本发明实施例的一种计算程序产品,包括计算机程序,所述程序被处理器执行时实现本发明实施例提供的密钥同步处理方法。
根据本发明所述提供的方案,上述发明中的一个实施例具有如下优点或有益效果:用于对MAC校验、PIN加密这两种通讯报文安全处理所使用的密钥进行管理和维护,使用Redis存储密钥主本、本地配置文件和内存存储密钥副本,提高密钥更新和同步的实时性,在处理具体交易业务时优先从Redis中读取密钥进行使用,内存和本地配置文件做为备用,且从Redis读取的密钥需要与内存的密钥进行比对,保证最终使用的密钥为最新密钥,提升密钥使用的可靠性,促使业务交易正常进行。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是现有密钥同步示意图;
图2根据本发明实施例的一种密钥同步处理方法的主要流程示意图;
图3是本方案密钥同步示意图;
图4是具体确定密钥处理业务交易请求的流程示意图;
图5是根据本发明实施例的一种密钥同步处理装置的主要模块示意图;
图6是本发明实施例可以应用于其中的示例性系统架构图;
图7是适于用来实现本发明实施例的移动设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
需要指出的是,在不冲突的情况下,本发明中的实施例以及实施例中的特征可以互相组合。本申请技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
参见图2,示出的是本发明实施例提供的一种密钥同步处理方法的主要流程图,包括如下步骤:
S201:接收密钥更新请求,解析请求报文得到新密钥和密钥类型,基于所述新密钥的属性和所述密钥类型,生成密钥键名;
S202:在远程字典服务Redis中,查询当前与所述密钥键名对应的目标密钥,以将所述目标密钥替换为所述新密钥;
S203:响应于对Redis的密钥更新完成信息,将Redis中的新密钥键值对同步更新到内存中;
S204:接收业务交易请求,解析请求报文得到密钥键名,从Redis中读取与所述密钥键名对应的密钥;
S205:将所述密钥和内存中与所述密钥键名对应的密钥进行比对,根据比对结果使用更新时间最新的Redis或内存中的密钥,对所述业务交易请求进行处理。
上述实施方式中,对于步骤S201~S203,当前密钥同步方式首先将新密钥存储到本地配置文件中,系统启动时从本地配置文件中读取新密钥并加载到内存中,交易中直接使用内存中已加载的新密钥进行安全相关处理。当密钥发生变更时,需及时使用内存刷新工具,以将新密钥从本地配置文件刷新到内存中,因此集群中所有服务器通过自动任务完成密钥刷新存在一定的间隔,在此时间间隔内易发生使用旧密钥处理交易失败的情况。
本系统在更换密钥后,会及时将新密钥同步到集群中的所有应用服务器,以使得每个服务器在收到业务处理请求时,均可以使用新密钥处理该请求,避免使用旧密钥导致交易处理失败问题,保证业务正常处理。
本系统与对端系统会定期(每种密钥每天更换1次)进行密钥更换,每次由对端系统生成新密钥,因此目前由对端系统定期发起密钥更新请求。本系统在收到对端系统发起的密钥交换请求后,对请求报文进行解析以提取出新密钥,经处理后更新到Redis(RemoteDictionary Server,远程字典服务)中;其中,Redis是一个高性能的、开源的Key-Value数据库。
Redis采用Key-Value形式存储数据,其中Key值基于密钥名称和类型生成,本系统与对端系统的通讯报文通常需进行MAC校验、PIN加密等安全处理,因此类型为MAC类型或PIN类型中的一种。每个密钥的Key值唯一,因此Redis中只会保留一条相应的Key-Value数据,value值是密钥,一般为字符串形式。在执行密钥更新操作时,首先查询Redis中是否存在与新密钥key对应的Key-Value数据,若不存在,则将生成的key和新密钥,以Key-Value形式存储到Redis中,若存在,则需将Redis中原先与key对应的目标密钥,替换为本次新密钥。
在完成对Redis的密钥更新操作后,可以返回成功应答消息给对端系统,之后双方将使用新密钥进行相关安全处理。进一步的,可以将新密钥同步更新到服务器集群中每个服务器的内存和本地配置文件中,保证本地配置文件、内存、Redis三者的密钥同步,使得每个服务器均可以处理业务交易请求,具体参见图3所示。
对于步骤S204和S205,本系统处理每一笔联机业务交易请求时,都会从请求报文中解析出密钥key,按照密钥Key实时从Redis中读取相应的当前最新密钥Value,使用该新密钥对业务交易请求进行处理。
但对于系统初始化阶段,可能Redis中并未存储密钥,而服务器的本地配置文件中通常会配置有一个初始密钥,因此此时需要比对Redis中的密钥和内存中的密钥是否相同,两个密钥对应于同一个key,具体参见图4所示:
1)Redis中不存在与该key对应的密钥,即表示读取密钥失败,此时从内存中读取与该key对应的密钥:
①内存中存在与该key对应的密钥,则将该key和内存中的密钥,以Key-Value形式加载到Redis中,以及使用内存中的密钥处理业务交易请求;
②内存中不存在与该key对应的密钥,即表示此时未从本地配置文件更新密钥到内存,则需将本地配置文件中与该key对应的密钥,和该key以Key-Value形式加载到Redis和内存中,并使用Redis或内存中的密钥处理业务交易请求。
上述实施过程,使用Redis存储密钥主本、本地配置文件存储密钥副本。在处理业务交易请求时,优先从Redis中读取密钥,如果获取失败则使用内存中已写入的密钥,若内存中也未写入,则从本地配置文件中读取并装入内存,之后将内存中已装载的密钥写入Redis,确保后续可从Redis中读取到该密钥。
2)Redis中存在与该key对应的密钥,考虑同步期间的请求处理,需比对Redis和内存两者密钥是否相同:
①比对结果为相同,则直接使用内存中的密钥处理业务交易请求;
②比对结果为不同,则将内存中与该key对应的密钥,替换为Redis中与该key对应的密钥。由于内存为本地配置文件的映射,即两者信息通常保持一致,但本地配置文件的访问量需控制较低,因此优选访问内存,因而进一步的,可以继续更新本地配置文件中的密钥,以确保Redis、内存、本地配置中的密钥保持一致。
上述实施例所提供的方法,将密钥主本存储在Redis、密钥副本存储在本地配置文件中作为备用,提高密钥更新和同步的实时性,通过Redis同步密钥的方式实时性更高,对业务运行几乎无影响;在处理业务交易请求时,通过比对Redis密钥和内存密钥,有效保证最终使用的密钥是最新的密钥,以此实现业务交易处理的安全性和可靠性,促使业务交易正常运行。
参见图5,示出了本发明实施例提供的一种密钥同步处理装置500的主要模块示意图,包括:
解析模块501,用于接收密钥更新请求,解析请求报文得到新密钥和密钥类型,基于所述新密钥的属性和所述密钥类型,生成密钥键名;
更新模块502,用于在远程字典服务Redis中,查询当前与所述密钥键名对应的目标密钥,以将所述目标密钥替换为所述新密钥;
同步模块503,用于响应于对Redis的密钥更新完成信息,将Redis中的新密钥键值对同步更新到内存中;
读取模块504,用于接收业务交易请求,解析请求报文得到密钥键名,从Redis中读取与所述密钥键名对应的密钥;
比对模块505,用于将所述密钥和内存中与所述密钥键名对应的密钥进行比对,根据比对结果使用更新时间最新的Redis或内存中的密钥,对所述业务交易请求进行处理。
本发明实施装置中,所述更新模块502,用于:
在Redis中查询当前是否存在与所述密钥键名对应的目标密钥;
响应于查询结果为不存在,将所述密钥键名和所述新密钥以键值对形式添加到Redis中;或
响应于查询结果为存在,将所述目标密钥替换为所述新密钥。
本发明实施装置中,所述比对模块505,用于:
响应于比对结果为相同,使用内存中的密钥对所述业务交易请求进行处理;或
响应于比对结果为不同,使用Redis中的密钥对所述业务交易请求进行处理,以及将内存中的密钥替换为Redis中的密钥。
本发明实施装置中,所述比对模块505,用于:
响应于从Redis中读取密钥结果为失败,从内存中读取与所述密钥键名对应的密钥;
若读取结果为成功,则将内存中的密钥加载到Redis,以及使用内存中的密钥处理所述业务交易请求;或
若读取结果为失败,则从本地配置文件中读取所述密钥键名对应的密钥,并将密钥加载到内存,以及将内存中的密钥加载到Redis,使用Redis或内存中的密钥处理所述业务交易请求。
本发明实施装置中,所述同步模块503,用于:
将Redis中的新密钥键值对,同步更新到服务器集群中每个服务器的内存和本地配置文件中,使得每个服务器均可以处理业务交易请求。
本发明实施装置中,密钥类型为消息认证码类型或个人识别密码类型。
另外,在本发明实施例中所述装置的具体实施内容,在上面所述方法中已经详细说明了,故在此重复内容不再说明。
图6示出了可以应用本发明实施例的示例性系统架构600,包括终端设备601、602、603,网络604和服务器605(仅仅是示例)。
终端设备601、602、603可以是具有显示屏并且支持网页浏览的各种电子设备,安装有各种通讯客户端应用,用户可以使用终端设备601、602、603通过网络604与服务器605交互,以接收或发送消息等。
网络604用以在终端设备601、602、603和服务器605之间提供通信链路的介质。网络604可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
服务器605可以是提供各种服务的服务器,需要说明的是,本发明实施例所提供的方法一般由服务器605执行,相应地,装置一般设置于服务器605中。
应该理解,图6中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图7,其示出了适于用来实现本发明实施例的终端设备的计算机系统700的结构示意图。图7示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,计算机系统700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有系统700操作所需的各种程序和数据。CPU 701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU)701执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括解析模块、更新模块、同步模块、读取模块和比对模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,比对模块还可以被描述为“比对处理模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备执行上述任一所述的密钥同步处理方法。
本发明的计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本发明实施例中的密钥同步处理方法。
根据本发明实施例的技术方案,使用Redis存储密钥主本、本地配置文件和内存存储密钥副本,提高密钥更新和同步的实时性,在处理具体交易业务时优先从Redis中读取密钥进行使用,且需要与内存的密钥进行比对,保证最终使用的密钥为最新密钥,提升密钥使用的可靠性,促使业务交易正常进行。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (14)

1.一种密钥同步处理方法,其特征在于,包括:
接收密钥更新请求,解析请求报文得到新密钥和密钥类型,基于所述新密钥的属性和所述密钥类型,生成密钥键名;
在远程字典服务Redis中,查询当前与所述密钥键名对应的目标密钥,以将所述目标密钥替换为所述新密钥;
响应于对Redis的密钥更新完成信息,将Redis中的新密钥键值对同步更新到内存中;
接收业务交易请求,解析请求报文得到密钥键名,从Redis中读取与所述密钥键名对应的密钥;
将所述密钥和内存中与所述密钥键名对应的密钥进行比对,根据比对结果使用更新时间最新的Redis或内存中的密钥,对所述业务交易请求进行处理。
2.根据权利要求1所述的方法,其特征在于,所述在远程字典服务Redis中,查询当前与所述密钥键名对应的目标密钥,以将所述目标密钥替换为所述新密钥,包括:
在Redis中查询当前是否存在与所述密钥键名对应的目标密钥;
响应于查询结果为不存在,将所述密钥键名和所述新密钥以键值对形式添加到Redis中;或
响应于查询结果为存在,将所述目标密钥替换为所述新密钥。
3.根据权利要求1或2所述的方法,其特征在于,所述根据比对结果使用更新时间最新的Redis或内存中的密钥,对所述业务交易请求进行处理,包括:
响应于比对结果为相同,使用内存中的密钥对所述业务交易请求进行处理;或
响应于比对结果为不同,使用Redis中的密钥对所述业务交易请求进行处理,以及将内存中的密钥替换为Redis中的密钥。
4.根据权利要求3所述的方法,其特征在于,所述根据比对结果使用更新时间最新的Redis或内存中的密钥,对所述业务交易请求进行处理,包括:
响应于从Redis中读取密钥结果为失败,从内存中读取与所述密钥键名对应的密钥;
若读取结果为成功,则将内存中的密钥加载到Redis,以及使用内存中的密钥处理所述业务交易请求;或
若读取结果为失败,则从本地配置文件中读取所述密钥键名对应的密钥,并将密钥加载到内存,以及将内存中的密钥加载到Redis,使用Redis或内存中的密钥处理所述业务交易请求。
5.根据权利要求1所述的方法,其特征在于,所述将Redis中的新密钥键值对同步更新到内存中,包括:
将Redis中的新密钥键值对,同步更新到服务器集群中每个服务器的内存和本地配置文件中,使得每个服务器均可以处理业务交易请求。
6.根据权利要求1所述的方法,其特征在于,密钥类型为消息认证码类型或个人识别密码类型。
7.一种密钥同步处理装置,其特征在于,包括:
解析模块,用于接收密钥更新请求,解析请求报文得到新密钥和密钥类型,基于所述新密钥的属性和所述密钥类型,生成密钥键名;
更新模块,用于在远程字典服务Redis中,查询当前与所述密钥键名对应的目标密钥,以将所述目标密钥替换为所述新密钥;
同步模块,用于响应于对Redis的密钥更新完成信息,将Redis中的新密钥键值对同步更新到内存中;
读取模块,用于接收业务交易请求,解析请求报文得到密钥键名,从Redis中读取与所述密钥键名对应的密钥;
比对模块,用于将所述密钥和内存中与所述密钥键名对应的密钥进行比对,根据比对结果使用更新时间最新的Redis或内存中的密钥,对所述业务交易请求进行处理。
8.根据权利要求7所述的装置,其特征在于,所述更新模块,用于:
在Redis中查询当前是否存在与所述密钥键名对应的目标密钥;
响应于查询结果为不存在,将所述密钥键名和所述新密钥以键值对形式添加到Redis中;或
响应于查询结果为存在,将所述目标密钥替换为所述新密钥。
9.根据权利要求7或8所述的装置,其特征在于,所述比对模块,用于:
响应于比对结果为相同,使用内存中的密钥对所述业务交易请求进行处理;或
响应于比对结果为不同,使用Redis中的密钥对所述业务交易请求进行处理,以及将内存中的密钥替换为Redis中的密钥。
10.根据权利要求9所述的装置,其特征在于,所述比对模块,用于:
响应于从Redis中读取密钥结果为失败,从内存中读取与所述密钥键名对应的密钥;
若读取结果为成功,则将内存中的密钥加载到Redis,以及使用内存中的密钥处理所述业务交易请求;或
若读取结果为失败,则从本地配置文件中读取所述密钥键名对应的密钥,并将密钥加载到内存,以及将内存中的密钥加载到Redis,使用Redis或内存中的密钥处理所述业务交易请求。
11.根据权利要求7所述的装置,其特征在于,所述同步模块,用于:
将Redis中的新密钥键值对,同步更新到服务器集群中每个服务器的内存和本地配置文件中,使得每个服务器均可以处理业务交易请求。
12.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的方法。
13.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-6中任一所述的方法。
14.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-6中任一项所述的方法。
CN202210162173.8A 2022-02-22 2022-02-22 一种密钥同步处理方法和装置 Active CN114615025B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210162173.8A CN114615025B (zh) 2022-02-22 2022-02-22 一种密钥同步处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210162173.8A CN114615025B (zh) 2022-02-22 2022-02-22 一种密钥同步处理方法和装置

Publications (2)

Publication Number Publication Date
CN114615025A true CN114615025A (zh) 2022-06-10
CN114615025B CN114615025B (zh) 2024-05-03

Family

ID=81858722

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210162173.8A Active CN114615025B (zh) 2022-02-22 2022-02-22 一种密钥同步处理方法和装置

Country Status (1)

Country Link
CN (1) CN114615025B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108776665A (zh) * 2018-04-20 2018-11-09 北京奇艺世纪科技有限公司 一种数据处理方法及装置
CN109995524A (zh) * 2019-03-22 2019-07-09 西安电子科技大学 一种基于加解密资源调度和密钥管理的加密数据库及方法
CN110297822A (zh) * 2019-05-22 2019-10-01 平安科技(深圳)有限公司 面向区块链的密钥管理方法、装置、设备及存储介质
CN110995703A (zh) * 2019-12-03 2020-04-10 望海康信(北京)科技股份公司 业务处理请求的处理方法、装置、电子设备
CN112765182A (zh) * 2021-01-28 2021-05-07 江苏视博云信息技术有限公司 云服务器集群间的数据同步方法及装置
CN113127717A (zh) * 2021-03-30 2021-07-16 国家电网有限公司 一种密钥检索方法和系统
WO2021164166A1 (zh) * 2020-02-20 2021-08-26 苏州浪潮智能科技有限公司 一种业务数据保护方法、装置、设备及可读存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108776665A (zh) * 2018-04-20 2018-11-09 北京奇艺世纪科技有限公司 一种数据处理方法及装置
CN109995524A (zh) * 2019-03-22 2019-07-09 西安电子科技大学 一种基于加解密资源调度和密钥管理的加密数据库及方法
CN110297822A (zh) * 2019-05-22 2019-10-01 平安科技(深圳)有限公司 面向区块链的密钥管理方法、装置、设备及存储介质
CN110995703A (zh) * 2019-12-03 2020-04-10 望海康信(北京)科技股份公司 业务处理请求的处理方法、装置、电子设备
WO2021164166A1 (zh) * 2020-02-20 2021-08-26 苏州浪潮智能科技有限公司 一种业务数据保护方法、装置、设备及可读存储介质
CN112765182A (zh) * 2021-01-28 2021-05-07 江苏视博云信息技术有限公司 云服务器集群间的数据同步方法及装置
CN113127717A (zh) * 2021-03-30 2021-07-16 国家电网有限公司 一种密钥检索方法和系统

Also Published As

Publication number Publication date
CN114615025B (zh) 2024-05-03

Similar Documents

Publication Publication Date Title
CN108846753B (zh) 用于处理数据的方法和装置
CN112860451A (zh) 一种基于SaaS的多租户数据处理方法和装置
CN109492013A (zh) 应用于数据库集群的数据处理方法、装置和系统
CN113495921A (zh) 一种数据库集群的路由方法和装置
US11018860B2 (en) Highly available and reliable secret distribution infrastructure
CN109614439A (zh) 数据同步方法、装置、电子设备及存储介质
CN112882647A (zh) 存储和访问数据的方法、电子设备和计算机程序产品
CN110895472A (zh) 一种识别业务变更的方法和装置
CN110795443A (zh) 数据同步的方法、装置、设备和计算机可读介质
CN110648216A (zh) 一种风控方法和装置
CN112953719B (zh) 一种令牌认证方法和装置
US20160072923A1 (en) Client system communication with a member of a cluster of server systems
CN113760924A (zh) 一种分布式事务的处理方法和装置
CN116737662A (zh) 业务数据处理的方法、装置、电子设备和存储介质
CN112084254A (zh) 一种数据同步方法和系统
CN114615025B (zh) 一种密钥同步处理方法和装置
CN115629909A (zh) 业务数据处理的方法、装置、电子设备和存储介质
US20230129559A1 (en) Method and system for pruning blocks from blockchains for data retention and storage scalability purposes
CN115543967A (zh) 一种数据迁移方法、装置、电子设备及计算机可读介质
CN109087097B (zh) 一种更新链码同一标识的方法和装置
CN112580975A (zh) 业务流程处理方法和装置
CN114186999A (zh) 一种数字货币交易异常的验证方法和装置
CN113360689A (zh) 图像检索系统、方法、相关装置及计算机程序产品
CN112463887A (zh) 一种数据处理方法、装置、设备及存储介质
CN113783826A (zh) 一种微服务异常处理方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant