CN115001720B - 联邦学习建模安全传输的优化方法、装置、介质和设备 - Google Patents

联邦学习建模安全传输的优化方法、装置、介质和设备 Download PDF

Info

Publication number
CN115001720B
CN115001720B CN202210935659.0A CN202210935659A CN115001720B CN 115001720 B CN115001720 B CN 115001720B CN 202210935659 A CN202210935659 A CN 202210935659A CN 115001720 B CN115001720 B CN 115001720B
Authority
CN
China
Prior art keywords
message packet
application node
plaintext
node
message
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
Application number
CN202210935659.0A
Other languages
English (en)
Other versions
CN115001720A (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.)
Beijing Rongshulianzhi Technology Co ltd
Original Assignee
Beijing Rongshulianzhi Technology Co ltd
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 Beijing Rongshulianzhi Technology Co ltd filed Critical Beijing Rongshulianzhi Technology Co ltd
Priority to CN202210935659.0A priority Critical patent/CN115001720B/zh
Publication of CN115001720A publication Critical patent/CN115001720A/zh
Application granted granted Critical
Publication of CN115001720B publication Critical patent/CN115001720B/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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供联邦学习建模安全传输的优化方法、装置、介质和设备,该方法包括:从中心服务节点获取账号信息,根据账号信息创建第一客户端,按照主题命名规则订阅第一主题;获取第二应用节点的第二公钥;随机生成第一对称加密密钥加密要发送的第一消息报文明文获得第一消息报文密文,并使用第二应用节点的第二公钥对第一对称加密密钥的明文进行加密获得第一对称加密密钥的密文;计算第一消息报文明文的第一哈希散列值,并使用第二私钥对第一哈希散列值进行加密生成第一签名值,获得第一消息包;将第一消息包通过第一客户端发送到中心服务节点中与第一主题对应的主题。本发明在外网不可访问的情况下,两个应用节点之间可进行安全数据传输。

Description

联邦学习建模安全传输的优化方法、装置、介质和设备
技术领域
本发明涉及网络数据传输技术领域,尤其涉及联邦学习建模安全传输的优化方法、装置、介质和设备。
背景技术
目前,联邦学习是一个机器学习框架,能有效帮助多个机构在满足用户隐私保护、数据安全和政府法规的要求下,进行数据使用和机器学习建模。联邦学习作为分布式的机器学习范式,可以有效解决数据孤岛问题,让参与方在不共享数据的基础上联合建模,能从技术上打破数据孤岛,实现AI(Artificial Intelligence,人工智能)协作。如两方用户想通过联邦学习框架(即联邦学习系统)进行协作建模,则必须两方各自部署相应的系统服务,同时为了两方必须保证两方服务都是外网可访问的。对于对外暴露服务的方式存在引入网络安全方面的风险,一般会通过引入SSL(Secure Sockets Layer,安全套接层)证书加密的方式保证通道安全。但是现有技术中,存在一种情况,当两合作方不想暴露自己的内网服务或者没有外网IP,其服务外部不可访问,即在网络不连通的情况下,两个节点无法传输数据导致无法进行联邦学习建模。
发明内容
有鉴于此,本发明实施例的目的在于提供联邦学习建模安全传输的优化方法、装置、介质和设备,以解决现有技术中在无外网或外部网络不连通的情况下,两个节点无法进行数据传输的技术问题。
为达到上述目的,第一方面,本发明提供一种联邦学习建模安全传输的优化方法,应用于第一应用节点,所述方法包括:
从中心服务节点获取第一账号信息,根据所述第一账号信息创建第一客户端,并按照主题命名规则订阅第一主题;
通过所述中心服务节点获取第二应用节点的第二公钥;
随机生成第一对称加密密钥,通过所述第一对称加密密钥加密要发送的第一消息报文明文获得第一消息报文密文,并使用所述第二应用节点的第二公钥对所述第一对称加密密钥的明文进行加密获得第一对称加密密钥的密文;
计算所述第一消息报文明文的第一哈希散列值,并使用第一私钥对所述第一哈希散列值进行加密生成第一签名值,获得包含所述第一对称加密密钥的密文、所述第一签名值和所述第一消息报文密文的第一消息包;
将所述第一消息包通过所述第一客户端发送到所述第二应用节点在所述中心服务节点中订阅的第二主题。
在一些可能的实施方式中,在将所述第一消息包通过所述第一客户端发送到所述第二应用节点在所述中心服务节点中订阅的第二主题之后,还包括:
监听所述第一主题,获取所述第二应用节点发送过来的处理结果对应的第二消息包;
使用所述第一私钥对所述第二消息包中的第二对称加密密钥的密文进行解密,获取所述第二对称加密密钥的明文,并使用所述第二对称加密密钥的明文解密所述第二消息包中的第二消息报文密文,获取所述第二消息报文明文;
计算所述第二消息报文明文的第二哈希散列值,使用所述第二应用节点的第二公钥验证所述第二消息包中的第二签名值是否合法;
当所述第二签名值合法时,解析所述第二消息报文明文。
在一些可能的实施方式中,所述的从中心服务节点获取第一账号信息之前,还包括:
通过中心服务节点注册第一应用节点,触发所述中心服务节点生成第一账号信息;
生成包含第一公钥和第一私钥的第一密钥对,将所述第一公钥保存至所述中心服务节点,所述第一私钥保存在第一应用节点;
所述的从中心服务节点获取第一账号信息,根据所述第一账号信息创建第一客户端,具体包括:从所述中心服务节点获取所述第一账号信息,所述第一账号信息包括第一账号和第一密码,根据所述第一账号和所述第一密码创建第一客户端。
在一些可能的实施方式中,所述的按照主题命名规则订阅第一主题,具体包括:
按照指令类型、数据请求类型、所述第一应用节点的标识和所述第二应用节点的标识订阅第一主题,以接收所述第二应用节点发送至所述第一应用节点的请求数据;其中,所述第一应用节点的标识和所述第二应用节点的标识是由所述中心服务节点分配的。
第二方面,本发明提供了另一种联邦学习建模安全传输的优化方法,应用于第二应用节点,所述方法包括:
从中心服务节点获取第二账号信息,根据所述第二账号信息创建第二客户端,并按照主题命名规则订阅第二主题;
监听所述第二主题,获取第一应用节点发送过来的第一消息包;
使用第二私钥对所述第一消息包中的第一对称加密密钥的密文进行解密,获得第一对称加密密钥的明文,并使用所述第一对称加密密钥的明文解密所述第一消息包中的第一消息报文密文,获得第一消息报文明文;
从所述中心服务节点获取所述第一应用节点的第一公钥;
计算所述第一消息报文明文的第一哈希散列值,并使用所述第一应用节点的第一公钥验证所述第一消息包中的第一签名值是否合法;
当所述第一签名值合法时,按照所述第一消息包中的第一消息报文明文进行数据处理,获得处理结果;
随机生成第二对称加密密钥,通过所述第二对称加密密钥加密所述处理结果对应的第二消息报文明文,获得第二消息报文密文,并使用所述第一应用节点的第一公钥对所述第二对称加密密钥的明文进行加密获得第二对称加密密钥的密文;
计算所述第二消息报文明文的第二哈希散列值,并使用所述第二私钥对所述第二哈希散列值进行加密生成第二签名值,获得包含所述第二对称加密密钥的密文、所述第二签名值和所述第二消息报文密文的第二消息包;
将所述第二消息包通过所述第二客户端发送到所述第一应用节点在所述中心服务节点中订阅的第一主题。
在一些可能的实施方式中,在所述的从中心服务节点获取第二账号信息之前,还包括:
通过中心服务节点注册第二应用节点,触发所述中心服务节点生成第二账号信息;
生成包含第二公钥和第二私钥的第二密钥对,所述第二公钥保存至所述中心服务节点,所述第二私钥保存在第二应用节点;
所述的从中心服务节点获取所述第二账号信息,根据所述第二账号信息创建第二客户端,具体包括:从所述中心服务节点获取第二账号信息,所述第二账号信息包括第二账号和第二密码,根据所述第二账号和所述第二密码创建第二客户端。
在一些可能的实施方式中,所述的按照主题命名规则订阅第二主题,具体包括:
按照指令类型、数据请求类型、所述第二应用节点的标识和所述第一应用节点的标识订阅第一主题,以接收所述第一应用节点发送至所述第二应用节点的请求数据;其中,所述第一应用节点的标识和所述第二应用节点的标识是由所述中心服务节点分配的。
第三方面,本发明提供了一种联邦学习建模安全传输的优化装置,应用于第一应用节点,包括:
第一创建与订阅模块,用于从中心服务节点获取第一账号信息,根据所述第一账号信息创建第一客户端,并按照主题命名规则订阅第一主题;
第一公钥获取模块,用于通过所述中心服务节点获取第二应用节点的第二公钥;
第一加密模块,用于随机生成第一对称加密密钥,通过所述第一对称加密密钥加密要发送的第一消息报文明文获得第一消息报文密文,并使用所述第二应用节点的第二公钥对所述第一对称加密密钥的明文进行加密获得第一对称加密密钥的密文;
第一计算与签名模块,用于计算所述第一消息报文明文的第一哈希散列值,并使用第一私钥对所述第一哈希散列值进行加密生成第一签名值,获得包含所述第一对称加密密钥的密文、所述第一签名值和所述第一消息报文密文的第一消息包;
第一发送模块,用于将所述第一消息包通过所述第一客户端发送到所述第二应用节点在所述中心服务节点中订阅的第二主题。
在一些可能的实施方式中,还包括:
第一监听与消息包获取模块,用于监听所述第一主题,获取所述第二应用节点发送过来的处理结果对应的第二消息包;
第一解密模块,用于使用第一私钥对所述第二消息包中的第二对称加密密钥的密文进行解密,获取所述第二对称加密密钥的明文,并使用所述第二对称加密密钥的明文解密所述第二消息包中的第二消息报文密文,获取所述第二消息报文明文;
第一计算与验证模块,用于计算所述第二消息报文明文的第二哈希散列值,使用所述第二应用节点的第二公钥验证所述第二消息包中的第二签名值是否合法;
解析模块,用于当第二签名值合法时,解析所述第二消息报文明文。
在一些可能的实施方式中,所述第一创建与订阅模块具体用于:
从所述中心服务获取第一账号信息,所述第一账号信息包括第一账号和第一密码,根据所述第一账号和所述第一密码创建第一客户端,并按照主题命名规则订阅第一主题。
第四方面,本发明提供了另一种联邦学习建模安全传输的优化装置,应用于第二应用节点,包括:
第二创建与订阅模块,用于从中心服务节点获取第二账号信息,根据所述第二账号信息创建第二客户端,并按照主题命名规则订阅第二主题;
第二监听与消息包获取模块,用于监听所述第二主题,获取第一应用节点发送过来的第一消息包;
第二解密模块,用于使用第二私钥对所述第一消息包中的第一对称加密密钥的密文进行解密,获得第一对称加密密钥的明文,并使用所述第一对称加密密钥的明文解密所述第一消息包中的第一消息报文密文,获得第一消息报文明文;
第二公钥获取模块,用于从所述中心服务节点获取所述第一应用节点的第一公钥;
第二计算与验证模块,用于计算所述第一消息报文明文的第一哈希散列值,并使用所述第一应用节点的第一公钥验证所述第一消息包中的第一签名值是否合法;
数据处理模块,用于当验证所述第一消息包中的第一签名值合法时,按照所述第一消息包中的第一消息报文明文进行数据处理,获得处理结果;
第二加密模块,用于随机生成第二对称加密密钥,通过所述第二对称加密密钥加密所述处理结果对应的第二消息报文明文,获得第二消息报文密文,并使用所述第一应用节点的第一公钥对所述第二对称加密密钥的明文进行加密获得第二对称加密密钥的密文;
第二计算与签名模块,用于计算所述第二消息报文明文的第二哈希散列值,并使用第二私钥对所述第二哈希散列值进行加密生成第二签名值,获得包含所述第二对称加密密钥的密文、所述第二签名值和所述第二消息报文密文的第二消息包;
第二发送模块,用于将所述第二消息包通过所述第二客户端发送到所述第一应用节点在所述中心服务节点中订阅的第一主题。
在一些可能的实施方式中,所述第二创建与订阅模块具体用于:
从所述中心服务节点获取第二账号信息,所述第二账号信息包括第二账号和第二密码,根据所述第二账号和第二密码创建第二客户端,并按照主题命名规则订阅第二主题。
第五方面,本发明是实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述所述的一种联邦学习建模安全传输的优化方法。
第六方面,本发明实施例提供了一种计算机设备,其包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如上述所述的一种联邦学习建模安全传输的优化方法。
上述技术方案具有如下有益效果:
本发明实施例可以在无外网或外网不可访问通情况下,通过中心服务节点实现两个应用节点正常数据传输与通信。
本发明实施例在通信过程中通过引入非对称加密算法实现密钥的交换及签名,保证传输的数据不被中转方窃听和篡改,保证了数据的安全。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的一种联邦学习建模安全传输的优化方法的流程图;
图2是本发明实施例的一种第一应用节点与第二应用节点之间通讯的架构图;
图3是本发明实施例的第一应用节点接收第二应用节点发送的数据的流程图;
图4是本发明实施例的另一种联邦学习建模安全传输的优化方法的流程图;
图5是本发明实施例的第一应用节点发送数据给第二应用节点的时序图;
图6是本发明实施例的第一种联邦学习建模安全传输的优化装置的功能框图;
图7是本发明实施例的第二种联邦学习建模安全传输的优化装置的功能框图;
图8是本发明实施例的第三种联邦学习建模安全传输的优化装置的功能框图;
图9是本发明实施例的一种计算机可读存储介质的功能框图;
图10是本发明实施例的一种计算机设备的功能框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
图1是本发明实施例的一种联邦学习建模安全传输的优化方法的流程图,如图1所示,该方法应用于第一应用节点,其包括如下步骤:
S11:从中心服务节点获取第一账号信息,根据第一账号信息创建第一客户端,并按照主题命名规则订阅第一主题。
图2是本发明实施例的一种第一应用节点与第二应用节点之间通讯的架构图,如图2所示,本实施例中,第一应用节点作为联邦学习系统的联邦学习模型训练任务的参与方,提供己方数据进行模型训练,第二应用节点作为联邦学习系统的联邦学习模型训练任务的参与方,提供己方数据进行模型训练,中心服务节点作为联邦学习的协调方,其包括节点管理服务和数据转发服务器(例如MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)服务器),由于中心服务节点为公有网络,而第一应用节点和第二应用节点为内部网络,可访问公网,但公网不可访问,所以需要通过中心服务节点的节点管理服务为第一应用节点和第二应用节点提供注册、登录、账号管理及权限认证以保证数据安全,通过MQTT服务器进行数据转发。本实施例中,联邦学习建模简称联邦建模,是使用联邦学习系统进行机器学习建模,是联邦学习技术的应用;第一应用节点与第二应用节点这两个应用节点是同一个联邦学习系统,相当于是联邦学习系统的两个组成部分,两个应用节点通过中心服务节点建立合作关系。
S12:通过中心服务节点获取第二应用节点的第二公钥。
具体的,第一应用节点在中心服务节点注册第一节点时,生成包含第一私钥和第一公钥的第一密钥对,第一私钥保存在本地(即第一应用节点),第一公钥保存在中心服务节点,第二应用节点在中心服务节点注册第二节点时,生成包含第二公钥和第二私钥的第二密钥对,将第二私钥保存在本地(即第二应用节点),将第二公钥保存至中心服务节点;因此,第一应用节点可以从中心服务节点处获取第二应用节点的第二公钥。
本发明实施例中采用RSA加密技术,可以在不直接传递密钥的情况下,完成解密,能够确保信息的安全性,避免了直接传递密钥所造成的被破解的风险。
S13:随机生成第一对称加密密钥,通过第一对称加密密钥加密要发送的第一消息报文明文获得第一消息报文密文,并使用第二应用节点的第二公钥对第一对称加密密钥的明文进行加密获得第一对称加密密钥的密文。
本发明实施例中,第一应用节点和第二应用节点之间的通信的报文通过AES加密进行传递,可以保证传输的数据不被泄露。其中,AES(Advanced Encryption Standard,高级加密标准)是一种对称加密算法,加密和解密都是用同一个密钥,加密和解密效率较高,加密强度非常可靠。
S14:计算第一消息报文明文的第一哈希散列值,并使用第一私钥对第一哈希散列值进行加密生成第一签名值,获得包含第一对称加密密钥的密文、第一签名值和第一消息报文密文的第一消息包。
在本发明实施例中采用对原始报文进行求哈希散列值,不论输入数据长度是否一致,均可以以统一长度输出最终哈希值,具有良好的分散性,并通过RSA私钥加密进行签名,接收方会对其进行校验,防止密文被篡改。本发明实施例在对消息报文明文加密的基础上,进一步进行签名认证以保证消息不被中转方窃听和篡改。
S15:将第一消息包通过第一客户端发送到第二应用节点在中心服务节点中订阅的第二主题。
具体的,中心服务节点包括MQTT服务器,发送的消息不是从第一应用节点直接发送至第二应用节点,而是通过MQTT服务器进行分发;MQTT协议是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,它提供了一对多的消息分发机制,从而实现与应用程序的解耦,并拥有简单紧凑的架构和较小的代码占用空间,适用于低成本、低功耗的IoT(Internet of Things,物联网)微控制设备。
图3是本发明实施例的第一应用节点接收第二应用节点发送的数据的流程图,如图3所示,在一些实施例中,在步骤S15将第一消息包通过第一客户端发送到第二应用节点在中心服务节点中订阅的第二主题之后,还包括如下步骤:
S16:监听第一主题,获取第二应用节点发送过来的处理结果对应的第二消息包。
本发明实施例中,第一应用节点还可以监听MQTT服务器对应的第一主题,获取第二应用节点发送过来的处理结果对应的第二消息包,可以在无外网或外网不可访问的情况下,直接从中心服务节点接收第二应用节点对其发送的处理结果对应的第二消息包,以实现双方的数据的交互。
S17:使用第一私钥对第二消息包中的第二对称加密密钥的密文进行解密,获取第二对称加密密钥的明文,并使用第二对称加密密钥的明文解密第二消息包中的第二消息报文密文,获取第二消息报文明文。
具体的,第一应用节点通过保存在本地的第一私钥对第二消息包中的第二对称加密密钥的密文进行解密,获得第二对称加密密钥的明文,并使用第二对称加密密钥的明文解密第二消息包中的第二消息报文密文,获得第二消息报文明文。
本发明实施例中采用RSA加密技术,可以在不直接传递密钥的情况下,完成解密,能够确保信息的安全性,避免了直接传递密钥所造成的被破解的风险。
S18:计算第二消息报文明文的第二哈希散列值,使用第二应用节点的第二公钥验证第二消息包中的第二签名值是否合法。
S19:当第二签名值合法时,解析第二消息报文明文。
本发明实施例在对消息报文明文加密的基础上,进一步进行签名验证以保证消息不被中转方窃听和篡改。
本发明实施例中,第一应用节点可以在无外网或外网不可访问的情况下,直接从中心服务节点接收第二应用节点对其发送的数据包中的消息报文明文的处理结果,既可以保证联邦学习建模过程中数据传输的安全,又可以实现双方的通信。
在一些实施例中,在第一应用节点从中心服务节点获取第一账号信息之前,还包括:通过中心服务节点注册第一应用节点,触发中心服务节点生成第一账号信息;第一应用节点生成包含第一公钥和第一私钥的第一密钥对,第一私钥保存在本地,也就是第一应用节点,第一公钥保存到中心服务节点,第一应用节点从中心服务节点获取第一账号信息,同时中心服务节点分配第一应用节点的标识;
第一应用节点从中心服务节点获取第一账号信息,根据第一账号信息创建第一客户端,具体包括:第一应用节点获取中心服务节点分配的第一应用节点的标识和第一账号信息,第一账号信息包括第一账号和第一密码,第一应用节点根据第一账号和第一密码创建第一客户端。
本发明实施例通过在联邦学习框架中引入中心服务节点,用于管理合作节点信息,公钥信息及账号密码等,其中,合作节点为建模双方相互通信合作的节点,例如本实施例中的第一应用节点和第二应用节点。第二应用节点通过中心服务节点注册第二应用节点时,生成包含第二公钥和第二私钥的第一密钥对,第二私钥保存在本地,也就是第二应用节点,第二公钥保存在中心服务节点,中心服务节点分配第二应用节点的标识(例如ID)、第二应用节点的账号和密码等,用于两方通信环节的认证和路由。
在一些实施例中,按照主题命名规则订阅第一主题,具体包括:按照指令类型、数据请求类型、第一应用节点的标识和第二应用节点的标识订阅第一主题,以接收第二应用节点发送至第一应用节点的请求数据;其中,第二应用节点的标识是由中心服务节点预先分配的。其中,请求数据是指与指令类型和数据请求类型对应的数据。其中,主题是用于将消息进行分类管理,标识某一类消息的。消息是指每次通信传输的内容或记录,消息类似于数据库表的记录,主题类似于数据库的表。订阅某个主题,就可以获取该主题下所有的消息。
具体的,第一应用节点按照规则订阅指定的MQTT主题,对应的主题命名规则如下:指令类型/数据类型/发送目标节点的标识/发送来源节点的标识,名称之间使用“/”进行分隔,例如“/command/request/9999/10000”,该主题为指令请求相关主题,command为指令类型,request为数据请求类型,第三位为目标应用节点的ID,目标应用节点即本实施例中的第一应用节点,此处为9999为第一应用节点的标识ID,第四位为来源应用节点的ID,即本实施例中的第二应用节点,此处为10000为第二应用节点的标识ID,第一应用节点订阅该第一主题可以接收到第二应用节点发送给第一应用节点的所有指令类型请求数据。另外,第一应用节点同时与其他多个应用节点进行通信时,发送来源节点即为其他多个应用节点,此时主题命名规则中“发送来源节点的标识”处可以用“#”等其他符号代替,例如“/command/request/9999/#”,即还可以同时接收其他应用节点发送过来的数据,本实施例中的command和request仅作为一个举例说明,也可以使用其他定义的英文代替。
本发明实施例支持分主题发布订阅及权限认证,支持按照规则批量订阅主题。
实施例二
图4是本发明实施例的另一种联邦学习建模安全传输的优化方法的流程图,如图4所示,该方法应用于第二应用节点,其包括如下步骤:
S21:从中心服务节点获取第二账号信息,根据第二账号信息创建第二客户端,并按照主题命名规则订阅第二主题。
如图2所示,本实施例中,第一应用节点作为联邦学习模型训练任务的参与方,提供己方数据进行模型训练,第二应用节点作为联邦学习模型训练任务的参与方,提供己方数据进行模型训练,中心服务节点作为联邦学习的协调方,其包括节点管理服务和数据转发服务器(例如MQTT服务器),由于中心服务节点为公有网络,而第一应用节点和第二应用节点为内部网络,可访问公网,但公网不可访问,所以需要通过中心服务节点的节点管理服务为第一应用节点和第二应用节点提供注册、登录、账号管理及权限认证以保证数据安全,通过MQTT服务器进行数据转发,并通过账号管理及权限认证保证数据安全。
S22:监听第二主题,获取第一应用节点发送过来的第一消息包。
本发明实施例中,第二应用节点监听MQTT服务器对应的第二主题,获取第一应用节点发送过来的消息包,可以在无外网或者外网不可访问的情况下,直接从中心服务节点接收第一应用节点对其发送的数据包,以实现双方的通信。
S23:使用第二私钥对第一消息包中的第一对称加密密钥的密文进行解密,获得第一对称加密密钥的明文,并使用第一对称加密密钥的明文解密第一消息包中的第一消息报文密文,获得第一消息报文明文。
具体的,第二应用节点在通过在中心服务节点注册第二应用节点时,第二应用节点生成包含第二私钥和第二公钥的第二密钥对,第二私钥保存在本地(即第二应用节点),第二公钥保存在中心服务节点,所以第二应用节点可以通过本地的第二私钥对第一消息包中的第一对称加密密钥的密文进行解密,获得第一对称加密密钥的明文,并使用第一对称加密密钥的明文解密第一消息包中的第一消息报文密文,获得第一消息报文明文。
本发明实施例中采用RSA加密技术,可以在不直接传递密钥的情况下,完成解密,能够确保信息的安全性,避免了直接传递密钥所造成的被破解的风险。
S24:从中心服务节点获取第一应用节点的第一公钥。
具体的,第一应用节点在中心服务节点注册第一应用节点时,第一应用节点生成包含第一公钥和第一私钥的第一密钥对,第一私钥保存在本地(即第一应用节点),第一公钥保存至中心服务节点;因此,第二应用节点可以从中心服务节点处获取第一应用节点的第一公钥。
S25:计算第一消息报文明文的第一哈希散列值,并使用第一应用节点的第一公钥验证第一消息包中的第一签名值是否合法。
本发明实施例在对消息报文明文加密的基础上,进一步进行签名验证以保证消息不被中转方窃听和篡改。
S26:当第一签名值合法时,按照第一消息包中的第一消息报文明文进行数据处理,获得处理结果。
具体的,数据处理指的是联邦学习内部处理逻辑,例如接收到第一消息包后会对消息报文明文的数据进行解析,并保存到数据库,并将数据应用到本地的模型训练。
S27:随机生成第二对称加密密钥,通过第二对称加密密钥加密处理结果对应的第二消息报文明文,获得第二消息报文密文,并使用第一应用节点的第一公钥对第二对称加密密钥的明文进行加密获得第二对称加密密钥的密文。
本发明实施例中,第一应用节点和第二应用节点之间的通信的报文通过AES加密进行传递,可以保证传输的数据不被泄露。其中,AES是一种对称加密算法,加密和解密都是用同一个密钥,加密和解密效率较高,加密强度非常可靠。
S28:计算第二消息报文明文的第二哈希散列值,并使用第二私钥对第二哈希散列值进行加密生成第二签名值,获得包含第二对称加密密钥的密文、第二签名值和第二消息报文密文的第二消息包。
在本发明中采用对原始报文进行求哈希散列值,不论输入数据长度是否一致,均可以以统一长度输出最终哈希值,具有良好的分散性,并通过RSA私钥加密进行签名,接收方会对其进行校验,防止密文被篡改。本发明实施例在对消息报文明文加密的基础上,进一步进行签名认证以保证消息不被中转方窃听和篡改。
S29:将第二消息包通过第二客户端发送到第一应用节点在中心服务节点中订阅的第一主题。
具体的,中心服务节点包括MQTT服务器,发送的消息不是从第二应用节点直接发送至第一应用节点,而是通过MQTT服务器进行分发;MQTT协议是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,它提供了一对多的消息分发机制,从而实现与应用程序的解耦,并拥有简单紧凑的架构和较小的代码占用空间,适用于低成本、低功耗的IoT(Internet of Things,物联网)微控制设备。本发明实施例通过在联邦学习框架中引入中心服务节点,用于管理合作节点信息,其中,合作节点为建模双方相互通信合作的节点,例如本实施例中的第一应用节点和第二应用节点,公钥信息及账号密码等。
本实施例中,联邦学习建模简称联邦建模,是使用联邦学习系统进行机器学习建模,是联邦学习技术的应用;第一应用节点与第二应用节点这两个应用节点是同一个联邦学习系统,相当于是联邦学习系统的两个组成部分,两个应用节点通过中心服务节点建立合作关系。
在一些实施例中,在第二应用节点从中心服务节点获取第二账号信息之前,还包括:通过中心服务节点注册第二应用节点,触发中心服务节点生成第二账号信息;第二应用节点生成包含第二公钥和第二私钥的第二密钥对,第二私钥保存在本地,也就是第二应用节点,第二公钥保存到中心服务节点,第二应用节点从中心服务节点获取第二账号信息,同时中心服务节点分配第二应用节点的标识;
第二应用节点从中心服务节点获取第二账号信息,根据第二账号信息创建第二客户端,具体包括:第二应用节点获取第二账号信息,第二账号信息包括第二账号和第二密码,第二应用节点根据第二账号和第二密码创建第二客户端。
本发明实施例通过在联邦学习框架中引入中心服务节点,用于管理合作节点信息,公钥信息及账号密码等,其中,合作节点为建模双方相互通信合作的节点,例如本实施例中的第一应用节点和第二应用节点。第一应用节点通过中心服务节点注册第一应用节点时,生成包含第一公钥和第一私钥的第一密钥对,第一私钥保存在本地,也就是第一应用节点,第一公钥保存在中心服务节点,中心服务节点分配第一应用节点的标识(例如ID)、第一应用节点的账号和密码等,用于两方通信环节的认证和路由。
在一些实施例中,按照主题命名规则订阅第二主题,具体包括:
按照指令类型、数据请求类型、第二应用节点的标识和第一应用节点的标识订阅第二主题,以接收第一应用节点发送至第二应用节点的请求数据;其中,第一应用节点的标识是由中心服务节点分配的。其中,主题是用于将消息进行分类管理,标识某一类消息的。消息是指每次通信传输的内容或记录,消息类似于数据库表的记录,主题类似于数据库的表。订阅某个主题,就可以获取该主题下所有的消息。
本发明实施例中,第一应用节点与第二应用节点通信的过程中,第一应用节点发送第一消息包到第二主题,第二应用节点发送第二消息包到第一主题,第一应用节点可以获取第一主题对应的所有消息,第二应用节点可以获取第二主题对应的所有消息。
具体的,各个应用节点按照规则订阅指定的MQTT主题消息,对应的主题命名规则如下:指令类型/数据类型/发送目标节点的标识/发送来源节点的标识,名称之间使用“/”进行分隔,例如“/command/request/10000/9999”,第三位为目标应用节点的ID,目标应用节点即本实施例中的第二应用节点,此处为10000为第二应用节点的标识ID,第四位为来源应用节点的ID,即本实施例中的第一应用节点,此处为9999为第一应用节点的标识ID,第二应用节点订阅该第二主题可以接收到第一应用节点发送给第二应用节点的所有指令类型请求数据。另外,第二应用节点同时与其他多个应用节点进行通信时,发送来源节点即为其他多个应用节点,此时主题命名规则中“发送来源节点的标识”处可以用“#”等其他符号代替,例如“/command/request/10000/#”,即还可以同时接收其他应用节点发送过来的数据,本实施例中的command和request仅作为一个举例说明,也可以使用其他定义的英文代替。
本发明实施例支持分主题发布订阅及权限认证,支持按照规则批量订阅主题。
为了使本领域技术人员更加理解本发明实施例提供的技术方案,下面对本发明实施例提供的一种联邦学习建模安全传输的优化方法进行详细说明。图5是本发明实施例的第一应用节点发送数据给第二应用节点的时序图,具体包括如下步骤:
步骤1,登录、订阅第一主题:第一应用节点从中心服务节点获取第一账号信息,根据第一账号信息创建第一客户端,登录第一客户端并按照主题命名规则订阅第一主题;
步骤2,登录、订阅第二主题:第二应用节点从中心服务节点获取第二账号信息,根据第二账号信息创建第二客户端,登录第二客户端并按照主题命名规则订阅第二主题;
步骤3,获取第二应用节点的第二公钥:第一应用节点通过中心服务节点获取第二应用节点的第二公钥;
步骤4,生成对称加密密钥以加密第一消息报文明文:第一应用节点随机生成第一对称加密密钥,通过第一对称加密密钥加密要发送的第一消息报文明文获得第一消息报文密文。
步骤5,使用第二应用节点公钥加密对称加密密钥:第一应用节点使用第二应用节点的第二公钥对第一对称加密密钥的明文进行加密获得第一对称加密密钥的密文;
步骤6,使用第一私钥对第一消息报文明文签名:第一应用节点计算第一消息报文明文的第一哈希散列值,并使用第一私钥对第一哈希散列值进行加密生成第一签名值;
步骤7,将步骤4至步骤6构造的第一消息包发送到第二主题:第一应用节点将构造好的包含第一对称加密密钥的密文、第一签名值和第一消息报文密文的第一消息包通过第一客户端发送到第二应用节点在中心服务节点中订阅的第二主题;
步骤8,获取第一数据包:第二应用节点监听第二主题,获取第一应用节点发送过来的第一消息包;
步骤9,密钥解密、获取密钥、解密密文:第二应用节点使用第二私钥对第一消息包中的第一对称加密密钥的密文进行解密,获得第一对称加密密钥的明文,并使用第一对称加密密钥的明文解密第一消息包中的第一消息报文密文,获得第一消息报文明文;
步骤10,获取第一应用节点的第一公钥:第二应用节点从中心服务节点获取第一应用节点的第一公钥;
步骤11,验证签名、消息处理:第二应用节点计算第一消息报文明文的第一哈希散列值,并使用第一应用节点的第一公钥验证第一消息包中的第一签名值是否合法;当第一签名值合法时,按照第一消息包中的第一消息报文明文进行数据处理,获得处理结果;
步骤12,对消息处理结果加密、签名构造第二消息包:第二应用节点随机生成第二对称加密密钥,通过第二对称加密密钥加密处理结果对应的第二消息报文明文,获得第二消息报文密文,并使用第一应用节点的第一公钥对第二对称加密密钥的明文进行加密获得第二对称加密密钥的密文;计算第二消息报文明文的第二哈希散列值,并使用第二私钥对第二哈希散列值进行加密生成第二签名值,获得包含第二对称加密密钥的密文、第二签名值和第二消息报文密文的第二消息包;
步骤13,发送第二消息包到第一主题:第二应用节点将第二消息包通过第二客户端发送到第一应用节点在中心服务节点中订阅的第一主题。
步骤14,密钥解密、获取密钥、解密密文:第一应用节点监听第一主题,获取第二应用节点发送过来的处理结果对应的第二消息包;使用第一私钥对第二消息包中的第二对称加密密钥的密文进行解密,获取第二对称加密密钥的明文,并使用第二对称加密密钥的明文解密第二消息包中的第二消息报文密文,获取第二消息报文明文;计算第二消息报文明文的第二哈希散列值,使用第二应用节点的第二公钥验证第二消息包中的第二签名值是否合法;当第二签名值合法时,解析第二消息报文明文。
本发明实施例可以在应用节点为外网不可访问的场景下,无法进行联邦学习模型训练的情况下,通过引入MQTT协议,提供一种基于发布/订阅模式的轻量级、高可用通讯协议。通过在中心节点MQTT服务器的转发,实现两方数据的高效通信。同时在通信过程中通过引入RSA非对称加密算法实现密钥的交换及签名,保证传输的数据不被中转方窃听和篡改,保证了数据的安全。
实施例三
图6是本发明实施例的第一种联邦学习建模安全传输的优化装置的功能框图,如图6所示,该联邦学习建模安全传输的优化装置100,应用于第一应用节点,其包括:
第一创建与订阅模块101,用于从中心服务节点获取第一账号信息,根据第一账号信息创建第一客户端,并按照主题命名规则订阅第一主题;
第一公钥获取模块102,用于通过中心服务节点获取第二应用节点的第二公钥;
第一加密模块103,用于随机生成第一对称加密密钥,通过第一对称加密密钥加密要发送的第一消息报文明文获得第一消息报文密文,并使用第二应用节点的第二公钥对第一对称加密密钥的明文进行加密获得第一对称加密密钥的密文;
第一计算与签名模块104,用于计算第一消息报文明文的第一哈希散列值,并使用第一私钥对第一哈希散列值进行加密生成第一签名值,获得包含第一对称加密密钥的密文、第一签名值和第一消息报文密文的第一消息包;
第一发送模块105,用于将第一消息包通过第一客户端发送到第二应用节点在中心服务节点中订阅的第二主题。
图7是本发明实施例的第二种联邦学习建模安全传输的优化装置的功能框图,如图7所示,在一些实施例中,该联邦学习建模安全传输的优化装置100’还可以包括:
第一监听与消息包获取模块106,用于监听第一主题,获取第二应用节点发送过来的处理结果对应的第二消息包;
第一解密模块107,用于使用第一私钥对第二消息包中的第二对称加密密钥的密文进行解密,获取第二对称加密密钥的明文,并使用第二对称加密密钥的明文解密第二消息包中的第二消息报文密文,获取第二消息报文明文;
第一计算与验证模块108,用于计算第二消息报文明文的第二哈希散列值,使用第二应用节点的第二公钥验证第二消息包中的第二签名值是否合法;
解析模块109,用于当第二签名值合法时,解析第二消息报文明文。
相关细节请参考图1和图3对应的方法实施例。
实施例四
图8是本发明实施例的第三种联邦学习建模安全传输的优化装置的功能框图,如图8所示,该联邦学习建模安全传输的优化装置200应用于第二应用节点,其包括:
第二创建与订阅模块201,用于从中心服务节点获取第二账号信息,根据第二账号信息创建第二客户端,并按照主题命名规则订阅第二主题;
第二监听与消息包获取模块202,用于监听第二主题,获取第一应用节点发送过来的第一消息包;
第二解密模块203,用于使用第二私钥对第一消息包中的第一对称加密密钥的密文进行解密,获得第一对称加密密钥的明文,并使用第一对称加密密钥的明文解密第一消息包中的第一消息报文密文,获得第一消息报文明文;
第二公钥获取模块204,用于从中心服务节点获取第一应用节点的第一公钥;
第二计算与验证模块205,用于计算第一消息报文明文的第一哈希散列值,并使用第一应用节点的第一公钥验证第一消息包中的第一签名值是否合法;
数据处理模块206,用于当验证第一消息包中的第一签名值合法时,按照第一消息包中的第一消息报文明文进行数据处理,获得处理结果;
第二加密模块207,用于随机生成第二对称加密密钥,通过第二对称加密密钥加密处理结果对应的第二消息报文明文,获得第二消息报文密文,并使用第一应用节点的第一公钥对第二对称加密密钥的明文进行加密获得第二对称加密密钥的密文;
第二计算与签名模块208,用于计算第二消息报文明文的第二哈希散列值,并使用第二私钥对第二哈希散列值进行加密生成第二签名值,获得包含第二对称加密密钥的密文、第二签名值和第二消息报文密文的第二消息包;
第二发送模块209,用于将第二消息包通过第二客户端发送到第一应用节点在中心服务节点中订阅的第一主题。
相关细节请参考图4对应的方法实施例。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
实施例五
图9是本发明实施例的一种计算机可读存储介质的功能框图,如图9所示,本发明实施例还提供了一种计算机可读存储介质300,计算机可读存储介质300内存储有用于执行本方法实施例中各个步骤的程序代码310,该程序代码310被处理器执行时,实现上述一种联邦学习建模安全传输的优化方法。
图1至图5所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。当然,还有其他方式的可读存储介质,例如量子存储器、石墨烯存储器等等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
实施例六
图10是本发明实施例的一种计算机设备的功能框图。请参考图10,在硬件层面,该计算机设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该计算机设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是工业标准体系结构ISA总线、外设部件互连标准PCI总线或扩展工业标准结构EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行。处理器,执行存储器所存放的程序,并具体用于执行图1至图5所示实施例揭示的一种联邦学习建模安全传输的优化方法。
上述如图1至图5所示实施例揭示的一种联邦学习建模安全传输的优化方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(CentralProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
当然,除了软件实现方式之外,本发明的计算机设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、车载人机交互设备、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
虽然本发明提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。
本发明是参照根据本发明实施例的方法、设备、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、计算机设备及可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (14)

1.联邦学习建模安全传输的优化方法,应用于第一应用节点,其特征在于,所述方法包括:
从中心服务节点获取第一账号信息,根据所述第一账号信息创建第一客户端,并按照主题命名规则订阅第一主题;
通过所述中心服务节点获取第二应用节点的第二公钥;
随机生成第一对称加密密钥,通过所述第一对称加密密钥加密要发送的第一消息报文明文获得第一消息报文密文,并使用所述第二应用节点的第二公钥对所述第一对称加密密钥的明文进行加密获得第一对称加密密钥的密文;
计算所述第一消息报文明文的第一哈希散列值,并使用第一私钥对所述第一哈希散列值进行加密生成第一签名值,获得包含所述第一对称加密密钥的密文、所述第一签名值和所述第一消息报文密文的第一消息包;
将所述第一消息包通过所述第一客户端发送到所述第二应用节点在所述中心服务节点中订阅的第二主题。
2.根据权利要求1所述的方法,其特征在于,在将所述第一消息包通过所述第一客户端发送到所述第二应用节点在所述中心服务节点中订阅的第二主题之后,还包括:
监听所述第一主题,获取所述第二应用节点发送过来的处理结果对应的第二消息包;
使用所述第一私钥对所述第二消息包中的第二对称加密密钥的密文进行解密,获取所述第二对称加密密钥的明文,并使用所述第二对称加密密钥的明文解密所述第二消息包中的第二消息报文密文,获取所述第二消息报文明文;
计算所述第二消息报文明文的第二哈希散列值,使用所述第二应用节点的第二公钥验证所述第二消息包中的第二签名值是否合法;
当所述第二签名值合法时,解析所述第二消息报文明文。
3.根据权利要求1所述的方法,其特征在于,在所述的从中心服务节点获取第一账号信息之前,还包括:
通过中心服务节点注册第一应用节点,触发所述中心服务节点生成第一账号信息;
生成包含第一公钥和第一私钥的第一密钥对,将所述第一公钥保存至所述中心服务节点,并且将所述第一私钥保存在所述第一应用节点;
所述的从中心服务节点获取第一账号信息,根据所述第一账号信息创建第一客户端,具体包括:
从所述中心服务节点获取所述第一账号信息,所述第一账号信息包括第一账号和第一密码,根据所述第一账号和所述第一密码创建第一客户端。
4.根据权利要求3所述的方法,其特征在于,所述的按照主题命名规则订阅第一主题,具体包括:
按照指令类型、数据请求类型、所述第一应用节点的标识和所述第二应用节点的标识订阅第一主题,以接收所述第二应用节点发送至所述第一应用节点的请求数据;其中,所述第一应用节点的标识和所述第二应用节点的标识是由所述中心服务节点分配的。
5.联邦学习建模安全传输的优化方法,应用于第二应用节点,其特征在于,所述方法包括:
从中心服务节点获取第二账号信息,根据所述第二账号信息创建第二客户端,并按照主题命名规则订阅第二主题;
监听所述第二主题,获取第一应用节点发送过来的第一消息包;
使用第二私钥对所述第一消息包中的第一对称加密密钥的密文进行解密,获得第一对称加密密钥的明文,并使用所述第一对称加密密钥的明文解密所述第一消息包中的第一消息报文密文,获得第一消息报文明文;
从所述中心服务节点获取所述第一应用节点的第一公钥;
计算所述第一消息报文明文的第一哈希散列值,并使用所述第一应用节点的第一公钥验证所述第一消息包中的第一签名值是否合法;
当所述第一签名值合法时,按照所述第一消息包中的第一消息报文明文进行数据处理,获得处理结果;
随机生成第二对称加密密钥,通过所述第二对称加密密钥加密所述处理结果对应的第二消息报文明文,获得第二消息报文密文,并使用所述第一应用节点的第一公钥对所述第二对称加密密钥的明文进行加密获得第二对称加密密钥的密文;
计算所述第二消息报文明文的第二哈希散列值,并使用所述第二私钥对所述第二哈希散列值进行加密生成第二签名值,获得包含所述第二对称加密密钥的密文、所述第二签名值和所述第二消息报文密文的第二消息包;
将所述第二消息包通过所述第二客户端发送到所述第一应用节点在所述中心服务节点中订阅的第一主题。
6.根据权利要求5所述的方法,其特征在于,在所述的从中心服务节点获取第二账号信息之前,还包括:
通过中心服务节点注册第二应用节点,触发所述中心服务节点生成第二账号信息;
生成包含第二公钥和第二私钥的第二密钥对,将所述第二公钥保存至所述中心服务节点,并且将所述第二私钥保存在第二应用节点;
所述的从中心服务节点获取所述第二账号信息,根据所述第二账号信息创建第二客户端,具体包括:从所述中心服务节点获取所述第二账号信息,所述第二账号信息包括第二账号和第二密码,根据所述第二账号和所述第二密码创建第二客户端。
7.根据权利要求5所述的方法,其特征在于,所述的按照主题命名规则订阅第二主题,具体包括:
按照指令类型、数据请求类型、所述第二应用节点的标识和所述第一应用节点的标识订阅第二主题,以接收所述第一应用节点发送至所述第二应用节点的请求数据;其中,所述第一应用节点的标识和所述第二应用节点的标识是由所述中心服务节点分配的。
8.联邦学习建模安全传输的优化装置,应用于第一应用节点,其特征在于,包括:
第一创建与订阅模块,用于从中心服务节点获取第一账号信息,根据所述第一账号信息创建第一客户端,并按照主题命名规则订阅第一主题;
第一公钥获取模块,用于通过所述中心服务节点获取第二应用节点的第二公钥;
第一加密模块,用于随机生成第一对称加密密钥,通过所述第一对称加密密钥加密要发送的第一消息报文明文获得第一消息报文密文,并使用所述第二应用节点的第二公钥对所述第一对称加密密钥的明文进行加密获得第一对称加密密钥的密文;
第一计算与签名模块,用于计算所述第一消息报文明文的第一哈希散列值,并使用第一私钥对所述第一哈希散列值进行加密生成第一签名值,获得包含所述第一对称加密密钥的密文、所述第一签名值和所述第一消息报文密文的第一消息包;
第一发送模块,用于将所述第一消息包通过所述第一客户端发送到所述第二应用节点在所述中心服务节点中订阅的第二主题。
9.根据权利要求8所述的装置,其特征在于,还包括:
第一监听与消息包获取模块,用于监听所述第一主题,获取所述第二应用节点发送过来的处理结果对应的第二消息包;
第一解密模块,用于使用第一私钥对所述第二消息包中的第二对称加密密钥的密文进行解密,获取所述第二对称加密密钥的明文,并使用所述第二对称加密密钥的明文解密所述第二消息包中的第二消息报文密文,获取所述第二消息报文明文;
第一计算与验证模块,用于计算所述第二消息报文明文的第二哈希散列值,使用所述第二应用节点的第二公钥验证所述第二消息包中的第二签名值是否合法;
解析模块,用于当第二签名值合法时,解析所述第二消息报文明文。
10.根据权利要求8所述的装置,其特征在于,所述第一创建与订阅模块具体用于:
从所述中心服务节点 获取第一账号信息,所述第一账号信息包括第一账号和第一密码,根据所述第一账号和第一密码创建第一客户端,并按照主题命名规则订阅第一主题。
11.联邦学习建模安全传输的优化装置,应用于第二应用节点,其特征在于,包括:
第二创建与订阅模块,用于从中心服务节点获取第二账号信息,根据所述第二账号信息创建第二客户端,并按照主题命名规则订阅第二主题;
第二监听与消息包获取模块,用于监听所述第二主题,获取第一应用节点发送过来的第一消息包;
第二解密模块,用于使用第二私钥对所述第一消息包中的第一对称加密密钥的密文进行解密,获得第一对称加密密钥的明文,并使用所述第一对称加密密钥的明文解密所述第一消息包中的第一消息报文密文,获得第一消息报文明文;
第二公钥获取模块,用于从所述中心服务节点获取所述第一应用节点的第一公钥;
第二计算与验证模块,用于计算所述第一消息报文明文的第一哈希散列值,并使用所述第一应用节点的第一公钥验证所述第一消息包中的第一签名值是否合法;
数据处理模块,用于当验证所述第一消息包中的第一签名值合法时,按照所述第一消息包中的第一消息报文明文进行数据处理,获得处理结果;
第二加密模块,用于随机生成第二对称加密密钥,通过所述第二对称加密密钥加密所述处理结果对应的第二消息报文明文,获得第二消息报文密文,并使用所述第一应用节点的第一公钥对所述第二对称加密密钥的明文进行加密获得第二对称加密密钥的密文;
第二计算与签名模块,用于计算所述第二消息报文明文的第二哈希散列值,并使用第二私钥对所述第二哈希散列值进行加密生成第二签名值,获得包含所述第二对称加密密钥的密文、所述第二签名值和所述第二消息报文密文的第二消息包;
第二发送模块,用于将所述第二消息包通过所述第二客户端发送到所述第一应用节点在所述中心服务节点中订阅的第一主题。
12.根据权利要求11所述的装置,其特征在于,所述第二创建与订阅模块具体用于:
从所述中心服务节点获取第二账号信息,所述第二账号信息包括第二账号和第二密码,根据所述第二账号和所述第二密码创建第二客户端,并按照主题命名规则订阅第二主题。
13.一种计算机可读存储介质,其上存储有程序代码,其特征在于,该程序代码被处理器执行时实现如权利要求1-7中任意一项所述的联邦学习建模安全传输的优化方法。
14.一种计算机设备,其特征在于,其包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1-7中任意一项所述的联邦学习建模安全传输的优化方法。
CN202210935659.0A 2022-08-05 2022-08-05 联邦学习建模安全传输的优化方法、装置、介质和设备 Active CN115001720B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210935659.0A CN115001720B (zh) 2022-08-05 2022-08-05 联邦学习建模安全传输的优化方法、装置、介质和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210935659.0A CN115001720B (zh) 2022-08-05 2022-08-05 联邦学习建模安全传输的优化方法、装置、介质和设备

Publications (2)

Publication Number Publication Date
CN115001720A CN115001720A (zh) 2022-09-02
CN115001720B true CN115001720B (zh) 2022-10-04

Family

ID=83023050

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210935659.0A Active CN115001720B (zh) 2022-08-05 2022-08-05 联邦学习建模安全传输的优化方法、装置、介质和设备

Country Status (1)

Country Link
CN (1) CN115001720B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116170396A (zh) * 2022-12-29 2023-05-26 天翼云科技有限公司 一种im消息传输方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111865563A (zh) * 2020-07-27 2020-10-30 北京航空航天大学 一种基于联盟链的民航乘客数据安全保护及防纂改方案
CN112883435A (zh) * 2021-04-12 2021-06-01 北京飞天数科科技有限公司 一种实现与智能合约安全通信的方法和设备
WO2021218885A1 (zh) * 2020-04-28 2021-11-04 万维数码智能有限公司 用于数据传输的安全保密方法和系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11496326B2 (en) * 2019-03-13 2022-11-08 Arizona Board Of Regents On Behalf Of Northern Arizona University Physical unclonable function-based encryption schemes with combination of hashing methods
US11646900B2 (en) * 2020-03-18 2023-05-09 International Business Machines Corporation Subscription service for networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021218885A1 (zh) * 2020-04-28 2021-11-04 万维数码智能有限公司 用于数据传输的安全保密方法和系统
CN111865563A (zh) * 2020-07-27 2020-10-30 北京航空航天大学 一种基于联盟链的民航乘客数据安全保护及防纂改方案
CN112883435A (zh) * 2021-04-12 2021-06-01 北京飞天数科科技有限公司 一种实现与智能合约安全通信的方法和设备

Also Published As

Publication number Publication date
CN115001720A (zh) 2022-09-02

Similar Documents

Publication Publication Date Title
US10880732B2 (en) Authentication of phone caller identity
CN108600227B (zh) 一种基于区块链的医疗数据共享方法及装置
EP4191430A1 (en) Data processing method and apparatus applied to blockchain system
CN112581126A (zh) 基于区块链的平台数据管理方法、装置及存储介质
US10680805B2 (en) Data encryption control using multiple controlling authorities
US20230254129A1 (en) Key management for multi-party computation
CN110365662B (zh) 业务审批方法及装置
CN113328997B (zh) 联盟链跨链系统及方法
CN107196919B (zh) 一种匹配数据的方法和装置
CN108923925B (zh) 应用于区块链的数据存储方法和装置
JP2001177513A (ja) 通信システムにおける認証方法、センタ装置、認証プログラムを記録した記録媒体
CN112653556A (zh) 一种基于token的微服务安全认证方法、装置、存储介质
CN115001720B (zh) 联邦学习建模安全传输的优化方法、装置、介质和设备
CN112511295A (zh) 接口调用的认证方法、装置、微服务应用和密钥管理中心
KR102647433B1 (ko) 하이브리드블록체인 이용한 존재증명 방법
CN114051031A (zh) 基于分布式身份的加密通讯方法、系统、设备及存储介质
CN112235290B (zh) 基于区块链的物联网设备管理方法及第一物联网设备
US11411744B2 (en) Encryption communication method, information processing apparatus, and program
CN112699391B (zh) 目标数据的发送方法及隐私计算平台
CN112202552B (zh) 一种区块链数据的质量监控方法、装置、介质及电子设备
CN116506227B (zh) 数据处理方法、装置、计算机设备和存储介质
Dang et al. Applying attribute-based encryption on mobile devices
CN111865972B (zh) 一种匿名通信方法与系统
Chintapalli et al. Controlled blockchain enabled data record security for healthcare applications
Kiss et al. Web Application for Privacy-preserving Scheduling using Secure Computation.

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