一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

信息处理方法、通信设备和加密设备与流程

2022-04-09 02:25:56 来源:中国专利 TAG:


1.本发明涉及通信技术领域,特别是指一种信息处理方法、通信设备和加密设备。


背景技术:

2.基于身份标识的密码系统(identity-based cryptograph,简称ibc)是一种非对称的公钥密码体系。在基于身份的密码系统中,每个实体具有一个身份标识,该标识可以是任何有意义的字符串,实体的身份标识本身就用作实体的公开密钥。由于标识本身就是实体的公钥,这类系统就不再依赖证书和证书管理系统,从而极大地简化了管理密码系统的复杂性。
3.基于ibc技术的密码系统基本结构如下图所示。私钥生成器(pkg,private key generator)是ibc的核心部分,主要功能是在ibc系统初始化时,产生主密钥(master key)和公开参数(public params),并公开发布公开参数,此外,根据用户id(如imsi、邮箱地址、手机号等公开信息),为用户生成相应的私钥。可以分为基于身份的加密算法(ibe,identity based encryption),和基于身份的签名算法(ibs,identity based signature)。
4.相比于传统pki(公钥基础设施)系统,ibc系统的用户可以很容易地获取通信对方的公钥(直接由id确定),不需要使用专门的数字证书来绑定身份信息和公钥,无需证书请求和证书传递过程,能够有效减少数据交互过程中传递证书所带来的通信开销,简化了认证中证书管理机制和流程。
5.用户在使用ibc技术时,需要首先从pkg获取ibc系统的公开参数,而随着技术的发展,网络接入的ibc系统可能有多套。如果ibc系统的公开参数无保护措施,那么攻击者有可能发布虚假的公开参数冒用其他合法的ibc系统;使得用户使用虚假的公开参数和接收者的身份加密数据,由于公开参数由攻击者发布,那么攻击者可以解密用户的加密数据,并且可以仿冒接收者进行签名。
6.为了防止攻击者可能篡改或发布虚假的pkg的公开参数,pkg需要对系统的公开参数加以保护,以确保公开参数的完整性和有效性。目前,较为可行的方式是采用pki技术对pkg的公开参数进行签名保护,签名信息与公开参数一起存放作为公开参数的一部分,用户在使用公开参数时首先验证公开参数的有效性,以防止攻击者对公开参数的篡改。但采用该方案,不仅需要在用户终端预置可信的数字证书,而且在进行身份验证时需要验签pki的签名(目前较多采用1024或2048位的rsa算法),产生了较大的计算负荷、增加了消息传递的负担。同时,ibc的用户也存在另一种需求,即不希望自己在大量的pkg上进行注册。


技术实现要素:

7.本发明提供了一种信息处理方法、通信设备和加密设备。能够基于区块链对pkg进行安全保护,避免了pkg信息的伪造以及恶意的pkg攻击。
8.为解决上述技术问题,本发明的技术方案如下:
9.一种信息处理方法,应用于第一通信设备,包括:
10.将第一通信设备支持的加密设备的加密设备信息发送至区块链;
11.接收第二通信设备发送的第一数据,所述第一数据是基于第一通信设备支持的加密设备信息计算得到的;
12.对接收到的第一数据进行处理。
13.可选地,将第一通信设备支持的加密设备的加密设备信息发送至区块链包括:
14.将第一通信设备支持的加密设备信息发送给区块链的验证节点;
15.通过所述验证节点验证第一通信设备的用户标识,并向所述区块链查询第一通信设备支持的加密设备信息与区块链中存储的加密设备信息的一致性,如果通过验证,将第一通信设备的支持的加密设备的加密设备信记录到区块链中。
16.可选地,所述加密设备信息包括第一通信设备的用户标识、加密设备的用户标识及公开参数。
17.可选地,所述根据第一通信设备支持的加密设备信息计算得到的第一数据,包括如下至少一项:
18.根据第一通信设备的用户标识以及公开参数计算得到的加密消息,其中所述加密消息中包括第一通信设备的用户标识、公开参数和密文;
19.基于第二通信设备的私钥和公开参数计算得到的签名消息,所述签名消息中包括第二通信设备的用户标识、消息原文、签名以及加密设备的用户标识和公开参数。
20.可选地,对接收到的第一数据进行处理包括以下至少一项:
21.当第一通信设备接收到加密消息时,利用第一通信设备的私钥对加密消息进行解密;
22.当第一通信设备接收到签名消息时,利用第二通信设备的用户标识和公开参数验证签名消息。
23.可选地,所述加密设备为基于身份标识的密码系统中的私钥生成器。
24.可选地,所述加密设备信息还包括加密设备的统一资源定位符url消息。
25.一种信息处理方法,应用于第二通信设备,所述方法包括:
26.向区块链查询第一通信设备支持的加密设备的加密设备信息;
27.基于第一通信设备支持的加密设备信息计算需要发送的第一数据;
28.将第一数据发送给第一通信设备。
29.可选地,所述加密设备信息包括第一通信设备的用户标识、加密设备的用户标识及公开参数。
30.可选地,基于第一通信设备支持的加密设备信息计算需要发送的第一数据包括如下至少一项:
31.根据第一通信设备的用户标识和公开参数计算得到加密消息,其中所述加密消息包括第一通信设备的用户标识、公开参数和密文;
32.获取第二通信设备的私钥,基于第二通信设备的私钥和公开参数计算签名信息,所述签名信息中包括第二通信设备的用户标识、消息原文、签名、加密设备的用户标识和公开参数。
33.可选地,将第一数据发送给第一通信设备包括以下至少一项:
34.将加密消息发送给第一通信设备;
35.将签名信息发送给第一通信设备。
36.可选地,将加密消息发送给第一通信设备包括:
37.将加密消息发送给一安全网关;
38.安全网关验证加密消息中携带的加密设备信息与区块链上第一通信设备支持的加密设备的加密设备信息是否一致,如果一致,将加密消息发送给第一通信设备;否则删除加密消息。
39.可选地,所述加密设备为基于身份标识的密码系统中的私钥生成器。
40.可选地,所述加密设备信息还包括加密设备的url消息。
41.一种加密设备信息上报方法,应用于加密设备,包括:
42.生成至少一个公开参数;
43.将加密设备的用户标识和所述至少一个公开参数发送给区块链的验证节点,
44.将区块链的验证节点验证通过的用户标识和至少一个公开参数记录到区块链。
45.可选地,所述的方法还包括:
46.加密设备发布公开参数更新请求;
47.使用加密设备的私钥,对待更新的公开参数进行签名以生成签名信息;
48.将签名信息发送给区块链的验证节点;
49.区块链的验证节点向区块链查询加密设备的公开参数,使用加密设备的用户标识以及公开参数验证签名信息,验证通过后,将待更新的公开参数上传至区块链。
50.可选地,所述加密设备为基于身份标识的密码系统中的私钥生成器。
51.一种第一通信设备,包括:
52.第一发送模块,将第一通信设备支持的加密设备的加密设备信息发送至区块链;
53.接收模块,接收第二通信设备发送的第一数据,所述第一数据是基于第一通信设备支持的加密设备信息计算得到的;
54.处理模块,对接收到的第一数据进行处理。
55.一种第二通信设备,包括:
56.查询模块,向区块链查询第一通信设备支持的加密设备的加密设备信息;
57.计算模块,基于第一通信设备支持的加密设备信息计算需要发送的第一数据;
58.第二发送模块,将第一数据发送给第一通信设备。
59.一种加密设备,包括:
60.生成模块,生成至少一个公开参数;
61.第三发送模块,将加密设备的用户标识和所述至少一个公开参数发送给区块链的验证节点,
62.记录模块,将区块链的验证节点验证通过的用户标识和至少一个公开参数记录到区块链。
63.本发明的实施例还提供一种通信设备,包括:处理器、存储有计算机程序的存储器,所述计算机程序被处理器运行时,执行如上所述的方法。
64.本发明的实施例还提供一种计算机可读存储介质,存储指令,当所述指令在计算机上运行时,使得计算机执行如上所述的方法。
65.本发明的上述方案至少包括以下有益效果:
66.本发明的上述方案,在ibc体系中,合法的pkg需要在区块链上登记并注册其公开参数;在发送方尝试进行消息发送时,可以通过上链查询,确认其身份、公开参数的有效性,然后再发送机密数据。通过区块链登记pkg信息,避免了pkg信息的伪造。此外,消息的接收方基于区块链声明其支持的pkg信息,可以避免被恶意的pkg攻击。
附图说明
67.图1是本发明的实施例的信息处理方法的流程示意图;
68.图2是本发明的实施例的pkg身份保护系统的示意图;
69.图3是本发明实施例的用户支持的pkg信息的示意图;
70.图4是本发明的实施例的信息处理方法的另一流程示意图;
71.图5是本发明的实施例的加密设备信息上报方法的流程示意图;
72.图6是本发明实施例的pkg上报的pkg信息的示意图;
73.图7为本发明实施例的第一通信设备示意图;
74.图8为本发明实施例的第二通信设备示意图;
75.图9为本发明实施例的加密设备示意图。
具体实施方式
76.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
77.如图1所示,本发明的实施例提供一种信息处理方法,应用于第一通信设备,包括:
78.步骤110,将第一通信设备支持的加密设备的加密设备信息发送至区块链;
79.步骤120,接收第二通信设备发送的第一数据,所述第一数据是基于第一通信设备支持的加密设备信息计算得到的;
80.步骤130,对接收到的第一数据进行处理。
81.本发明的上述方案,第一通信设备为ibc系统中信息的发送方,第二通信设备为信息的接收方,加密设备为ibc系统中的pkg。
82.图2示出了一种去中心化的pkg身份保护系统,该系统由若干pkg、ibc私钥用户、ibc依赖方、验证节点组成,执行pkg信息发布、用户支持的pkg信息发布、ibc加密过程、ibc签名过程、pkg信息更新等过程。
83.首先对图2所示系统的系统架构进行说明。
84.区块链:存储pkg及其公开参数信息、ibc依赖方及其信任的pkg信息。
85.pkg:ibc系统中的私钥生成器,生成公开参数,并且将公开参数发送给验证节点,将验证节点验证通过后的信息记录到区块链中。
86.ibc依赖方:信任并使用某个pkg的参与方,依赖方无需拥有私钥;例如,在加密模型中的加密方(消息发送方),签名模型中的验证方(消息接收方)。
87.ibc私钥用户:需要在pkg注册并申请私钥的参与方;例如,在加密模型中的解密方
(消息接收方),签名模型中的签名方(消息发送方);
88.区块链验证节点:接收pkg提交的pkg信息,以及pkg更新信息,并对这些信息进行验证;接收ibc私钥用户或ibc依赖方提交的信任的pkg及其公开参数,并对这些信息进行验证。
89.本发明的一可选的实施例中,步骤110包括:
90.将第一通信设备支持的加密设备信息发送给区块链的验证节点;
91.通过所述验证节点验证第一通信设备的用户标识,并向所述区块链查询第一通信设备支持的加密设备信息与区块链中存储的加密设备信息的一致性,如果通过验证,将第一通信设备的支持的加密设备的加密设备信记录到区块链中。
92.在该实施例中,ibc私钥用户或依赖方发布其支持的pkg信息。该过程主要用于ibc私钥用户或ibc依赖方发布自己信任的pkg,由于可能存在多个pkg,那么ibc私钥用户或依赖方(例如终端用户或运营商网元)可能仅信任部分pkg,那么这些用户或网元就可以将信任的pkg信息发布到区块链中,当其他用户或网元向这些节点发送ibc消息时,就需要使用接收方信任的pkg公开参数计算ibc消息。
93.用户将自身信任的pkg信息发送给验证节点。验证节点验证用户的身份信息,并向区块链查询用户支持的pkg的公开参数信息,验证用户提交的公开参数与区块链中信息的一致性,验证通过后,用户信息及其信任的pkg信息将被记录到区块链中。
94.本发明的一可选的实施例中,所述加密设备信息包括第一通信设备的用户标识、加密设备的用户标识及公开参数。
95.在本实施例中,用户信任的pkg包括[用户id、用户支持的pkg及公开参数信息列表]。如图3所示,用户声明的可支持pkg信息使用区块格式表示。区块分为区块头和区块体,区块头使用当前通用技术,区块体中包含若干条记录,是用户声明的可支持pkg信息,主要包括用户id、pkg的身份信息、公开参数信息,还可以包含pkg的url等信息。每个用户可以将自己支持的pkg及公开参数放到区块链。
[0096]
本发明的一可选的实施例中,所述根据第一通信设备支持的加密设备信息计算得到的数据,包括如下至少一项:
[0097]
根据第一通信设备的用户标识以及公开参数计算得到的加密消息,其中所述加密消息中包括第一通信设备的用户标识、公开参数和密文;
[0098]
基于第二通信设备的私钥和公开参数计算得到的签名消息,所述签名消息中包括第二通信设备的用户标识、消息原文、签名以及加密设备的用户标识和公开参数。
[0099]
本发明的一可选的实施例中,步骤130包括以下至少一项:
[0100]
当第一通信设备接收到加密消息时,利用第一通信设备的私钥对加密消息进行解密;
[0101]
当第一通信设备接收到签名消息时,利用第二通信设备的用户标识和公开参数验证签名消息。
[0102]
在ibc系统中,信息传输过程主要分为两种,即ibc加密过程和ibc前面签名过程。
[0103]
在ibc加密过程中,例如移动用户(ibc依赖方)向运营商网元(ibc私钥用户)发送加密报文。ibc依赖方需要向ibc私钥用户发送加密消息时,依赖方首先向区块链查询ibc私钥用户所信任的pkg以及公开参数;ibc依赖方利用ibc私钥用户的身份信息,以及公开参数
计算加密报文,报文中包含ibc私钥用户的身份信息、公开参数、密文等;ibc依赖方将加密报文发送至ibc私钥用户;私钥用户接受到加密报文之后,利用私钥解密报文。
[0104]
具体的,基于区块链的ibc系统的加密流程如下:
[0105]
(1)可信的pkg生成主密钥(master key)和公开参数(public params),并公开发布格式为[pkg_id,public params]的信息到区块链;如[pkg_iot1,public params_iot1]、[pkg_iot1,public params_iot2]。
[0106]
(2)接收方用户声明自己支持的区块链、公开参数信息,并将其发布到区块链,例如:[bob_id,pkg_iot1,public params_iot2]。
[0107]
(3)当发送方用户需要给接收方用户发送加密消息时,从区块链中查询接收方用户的id和支持的public params,计算出接收方用户的公钥pubkeybob=f(idbob,pkg_iot1,public params_iot2),然后进行加密操作得到密文cipher;其中,计算公钥的函数f是公开的算法。
[0108]
(4)发送方用户将消息[idbob,public params_iot2,cipher]发送给接收方用户。接收方用户接收到密文后,使用私钥进行解密;如果未注册,则从pkg_iot1申请得到与其id相对应的私钥(由master key和id计算得出)。
[0109]
(5)为了避免对接收方的dos攻击,还可以设置安全网关,在步骤(4)中,发送方用户将消息[idbob,public params_iot2,cipher]发送给安全网关,安全网关对消息的有效性进行验证:从区块链上查询验证,若接收方用户已在区块链声明支持[pkg_iot1,public params_iot2],则将信息转发给接收方用户;否则丢弃信息。
[0110]
在icb签名过程中,例如,移动用户(ibc私钥用户)向运营商网元(ibc依赖方)发送签名报文。当ibc私钥用户需要对消息进行签名,并由ibc依赖方进行验证时,ibc私钥用户向区块链查询ibc依赖方所支持的pkg及公开参数,根据支持的pkg及其公开参数申请私钥;ibc私钥用户使用申请到的私钥和公开参数计算签名,并将签名消息发送给依赖方,其中签名消息包括ibc私钥用户的身份标识、签名消息原文、签名、pkg标识、pkg公开参数等内容;ibc依赖方接收到签名消息之后,利用ibc私钥用户身份信息以及pkg公开参数等信息验证签名。
[0111]
具体的,基于区块链的ibc系统的签名流程如下:
[0112]
(1)接收方用户声明自己支持的区块链、公开参数信息,并将其发布到区块链中,例如:[bob_id,pkg_iot1,public params_iot2];
[0113]
(2)当发送方用户需要对消息m进行签名,并由接收方用户进行验证时,向区块链查询接收方用户支持的pkg及其公开参数,根据支持的pkg及其公开参数申请私钥;
[0114]
(3)发送方用户使用申请到的私钥skalice,和pkg的公开参数public params_iot2计算签名:sigalice=f(m,skalice,public params),其中f是公开算法;
[0115]
(4)发送方用户将消息[alice_id,m,sigalice,public params_iot2]发送给接收方用户;
[0116]
(5)接收方用户接收到发送方用户发送的签名消息后,使用发送方用户的id以及公开参数验证签名,得出验证结果。
[0117]
本发明的一可选的实施例中,所述加密设备为基于身份标识的密码系统中的私钥生成器。
[0118]
本发明的一可选的实施例中,所述加密设备信息还包括加密设备的统一资源定位符url消息。
[0119]
本发明的上述方案,在ibc体系中,合法的pkg需要在区块链上登记并注册其公开参数;在发送方尝试进行消息发送时,可以通过上链查询,确认其身份、公开参数的有效性,然后再发送机密数据。通过区块链登记pkg信息,避免了pkg信息的伪造。此外,消息的接收方基于区块链声明其支持的pkg信息,可以避免被恶意的pkg攻击。
[0120]
如图4所示,本发明的实施例提供一种信息处理方法,应用于第二通信设备,所述方法包括:
[0121]
步骤410,向区块链查询第一通信设备支持的加密设备的加密设备信息;
[0122]
步骤420,基于第一通信设备支持的加密设备信息计算需要发送的第一数据;
[0123]
步骤430,将第一数据发送给第一通信设备。
[0124]
本发明的一可选的实施例中,所述加密设备信息包括第一通信设备的用户标识、加密设备的用户标识及公开参数。
[0125]
本发明的一可选的实施例中,步骤420包括如下至少一项:
[0126]
根据第一通信设备的用户标识和公开参数计算得到加密消息,其中所述加密消息包括第一通信设备的用户标识、公开参数和密文;
[0127]
获取第二通信设备的私钥,基于第二通信设备的私钥和公开参数计算签名信息,所述签名信息中包括第二通信设备的用户标识、消息原文、签名、加密设备的用户标识和公开参数。
[0128]
本发明的一可选的实施例中,步骤430包括以下至少一项:
[0129]
将加密消息发送给第一通信设备;
[0130]
将签名信息发送给第一通信设备。
[0131]
本发明的一可选的实施例中,将加密消息发送给第一通信设备包括:
[0132]
将加密消息发送给一安全网关;
[0133]
安全网关验证加密消息中携带的加密设备信息与区块链上第一通信设备支持的加密设备的加密设备信息是否一致,如果一致,将加密消息发送给第一通信设备;否则删除加密消息。
[0134]
在本实施例中,为了避免对接收方的dos攻击,还可以设置安全网关,发送方用户将消息[idbob,public params_iot2,cipher]发送给安全网关,安全网关对消息的有效性进行验证:从区块链上查询验证,若接收方用户已在区块链声明支持[pkg_iot1,public params_iot2],则将信息转发给接收方用户;否则丢弃信息。
[0135]
本发明的一可选的实施例中,所述加密设备为基于身份标识的密码系统中的私钥生成器。
[0136]
本发明的一可选的实施例中,所述加密设备信息还包括加密设备的url消息。
[0137]
本发明的上述方案,在ibc体系中,合法的pkg需要在区块链上登记并注册其公开参数;在发送方尝试进行消息发送时,可以通过上链查询,确认其身份、公开参数的有效性,然后再发送机密数据。通过区块链登记pkg信息,避免了pkg信息的伪造。此外,消息的接收方基于区块链声明其支持的pkg信息,可以避免被恶意的pkg攻击。
[0138]
如图5所示,一种加密设备信息上报方法,应用于加密设备,包括:
[0139]
步骤510,生成至少一个公开参数;
[0140]
步骤520,将加密设备的用户标识和所述至少一个公开参数发送给区块链的验证节点,
[0141]
步骤530,将区块链的验证节点验证通过的用户标识和至少一个公开参数记录到区块链。
[0142]
本发明的一可选的实施例中,所述加密设备信息上报方法还包括:
[0143]
加密设备发布公开参数更新请求;
[0144]
使用加密设备的私钥,对待更新的公开参数进行签名以生成签名信息;
[0145]
将签名信息发送给区块链的验证节点;
[0146]
区块链的验证节点向区块链查询加密设备的公开参数,使用加密设备的用户标识以及公开参数验证签名信息,验证通过后,将待更新的公开参数上传至区块链。
[0147]
在ibc系统中,pkg信息发布流程具体如下:
[0148]
(1)pkg生成公开参数,一个pkg可以生成多套公开参数;
[0149]
(2)pkg将自身信息(包括pkg的名称,url等),公开参数信息发送给验证节点;
[0150]
(3)验证节点验证pkg提交的信息,验证通过后,这些信息将被记录到区块链中。
[0151]
当pkg需要更新公开参数等信息时,pkg执行pkg信息更新过程,具体如下:
[0152]
(1)当pkg需要更新信息时,例如生成新的公开参数[pkg_iot1,public params_iot3],那么pkg产生公开信息发布请求,使用原有的ibc私钥,对新的公开参数进行签名;
[0153]
(2)pkg将签名发送给验证节点;
[0154]
(3)验证节点向区块链查询pkg的公开参数信息,使用其id以及公开参数验证签名正确性,通过验证后,新的公开参数将记录到区块链中。
[0155]
如图6所示,pkg信息使用区块格式表示。区块分为区块头和区块体,区块头使用当前通用技术,区块体中包含若干条记录,,主要包括pkg的身份信息和公开参数信息。每个pkg将自己的公开参数放到区块链。可选地,用户支持的pkg信息和pkg自己公开的信息可以记录在于相同的区块链中,也可以记录在不同的区块链中,在此不做限定。
[0156]
本发明的一可选的实施例中,所述加密设备为基于身份标识的密码系统中的私钥生成器。
[0157]
本发明的上述方案,在ibc体系中,合法的pkg需要在区块链上登记并注册其公开参数;在发送方尝试进行消息发送时,可以通过上链查询,确认其身份、公开参数的有效性,然后再发送机密数据。通过区块链登记pkg信息,避免了pkg信息的伪造。此外,消息的接收方基于区块链声明其支持的pkg信息,可以避免被恶意的pkg攻击。
[0158]
如图7所示,本发明的实施例提供一种第一通信设备70,包括:
[0159]
第一发送模块710,将第一通信设备支持的加密设备的加密设备信息发送至区块链;
[0160]
接收模块720,接收第二通信设备发送的第一数据,所述第一数据是基于第一通信设备支持的加密设备信息计算得到的;
[0161]
处理模块730,对接收到的第一数据进行处理。
[0162]
在本公开的实施例中,所示第一发送模块710具体用于:
[0163]
将第一通信设备支持的加密设备信息发送给区块链的验证节点;
[0164]
通过所述验证节点验证第一通信设备的用户标识,并向所述区块链查询第一通信设备支持的加密设备信息与区块链中存储的加密设备信息的一致性,如果通过验证,将第一通信设备的支持的加密设备的加密设备信记录到区块链中。
[0165]
在本公开的实施例中,所述加密设备信息包括第一通信设备的用户标识、加密设备的用户标识及公开参数。
[0166]
在本公开的实施例中,所述根据第一通信设备支持的加密设备信息计算得到的第一数据,包括如下至少一项:
[0167]
根据第一通信设备的用户标识以及公开参数计算得到的加密消息,其中所述加密消息中包括第一通信设备的用户标识、公开参数和密文;
[0168]
基于第二通信设备的私钥和公开参数计算得到的签名消息,所述签名消息中包括第二通信设备的用户标识、消息原文、签名以及加密设备的用户标识和公开参数。
[0169]
在本公开的实施例中,所述处理模块730具体用于:
[0170]
当第一通信设备接收到加密消息时,利用第一通信设备的私钥对加密消息进行解密;
[0171]
当第一通信设备接收到签名消息时,利用第二通信设备的用户标识和公开参数验证签名消息。
[0172]
在本公开的实施例中,所述加密设备为基于身份标识的密码系统中的私钥生成器。
[0173]
在本公开的实施例中,所述加密设备信息还包括加密设备的统一资源定位符url消息。
[0174]
本发明的上述方案,在ibc体系中,合法的pkg需要在区块链上登记并注册其公开参数;在发送方尝试进行消息发送时,可以通过上链查询,确认其身份、公开参数的有效性,然后再发送机密数据。通过区块链登记pkg信息,避免了pkg信息的伪造。此外,消息的接收方基于区块链声明其支持的pkg信息,可以避免被恶意的pkg攻击。
[0175]
如图8所示,本发明的实施例提供一种第二通信设备80,包括:
[0176]
查询模块810,向区块链查询第一通信设备支持的加密设备的加密设备信息;
[0177]
计算模块820,基于第一通信设备支持的加密设备信息计算需要发送的第一数据;
[0178]
第二发送模块830,将第一数据发送给第一通信设备。
[0179]
在本公开的实施例中,所述加密设备信息包括第一通信设备的用户标识、加密设备的用户标识及公开参数。
[0180]
在本公开的实施例中,所述计算模块820具体用于:
[0181]
根据第一通信设备的用户标识和公开参数计算得到加密消息,其中所述加密消息包括第一通信设备的用户标识、公开参数和密文;
[0182]
获取第二通信设备的私钥,基于第二通信设备的私钥和公开参数计算签名信息,所述签名信息中包括第二通信设备的用户标识、消息原文、签名、加密设备的用户标识和公开参数。
[0183]
在本公开的实施例中,所述第二发送模块830具体用于:
[0184]
将加密消息发送给第一通信设备;或者
[0185]
将签名信息发送给第一通信设备。
[0186]
在本公开的实施例中,将加密消息发送给第一通信设备包括:
[0187]
将加密消息发送给一安全网关;
[0188]
安全网关验证加密消息中携带的加密设备信息与区块链上第一通信设备支持的加密设备的加密设备信息是否一致,如果一致,将加密消息发送给第一通信设备;否则删除加密消息。
[0189]
在本公开的实施例中,所述加密设备为基于身份标识的密码系统中的私钥生成器。
[0190]
在本公开的实施例中,所述加密设备信息还包括加密设备的url消息。
[0191]
本发明的上述方案,在ibc体系中,合法的pkg需要在区块链上登记并注册其公开参数;在发送方尝试进行消息发送时,可以通过上链查询,确认其身份、公开参数的有效性,然后再发送机密数据。通过区块链登记pkg信息,避免了pkg信息的伪造。此外,消息的接收方基于区块链声明其支持的pkg信息,可以避免被恶意的pkg攻击。
[0192]
如图9所示,本发明的实施例提供一种加密设备,包括:
[0193]
生成模块910,生成至少一个公开参数;
[0194]
第三发送模块920,将加密设备的用户标识和所述至少一个公开参数发送给区块链的验证节点,
[0195]
记录模块930,将区块链的验证节点验证通过的用户标识和至少一个公开参数记录到区块链。
[0196]
在本公开的实施例中,当加密设备发布公开参数更新请求时,所述生成模块910使用加密设备的私钥,对待更新的公开参数进行签名以生成签名信息;所述第三发送模块920将签名信息发送给区块链的验证节点;区块链的验证节点向区块链查询加密设备的公开参数,使用加密设备的用户标识以及公开参数验证签名信息,验证通过后,所述记录模块930将待更新的公开参数上传至区块链。
[0197]
在本公开的实施例中,所述加密设备为基于身份标识的密码系统中的私钥生成器。
[0198]
本发明的上述方案,在ibc体系中,合法的pkg需要在区块链上登记并注册其公开参数;在发送方尝试进行消息发送时,可以通过上链查询,确认其身份、公开参数的有效性,然后再发送机密数据。通过区块链登记pkg信息,避免了pkg信息的伪造。此外,消息的接收方基于区块链声明其支持的pkg信息,可以避免被恶意的pkg攻击。
[0199]
本发明的实施例还提供一种通信设备,包括:处理器、存储有计算机程序的存储器,所述计算机程序被处理器运行时,执行如上所述的方法。上述方法实施例中的所有实现方式均适用于该实施例中,也能达到相同的技术效果。
[0200]
本发明的实施例还提供一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得计算机执行如上所述的方法。上述方法实施例中的所有实现方式均适用于该实施例中,也能达到相同的技术效果。
[0201]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出
本发明的范围。
[0202]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0203]
在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0204]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0205]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0206]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
[0207]
此外,需要指出的是,在本发明的装置和方法中,显然,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本发明的等效方案。并且,执行上述系列处理的步骤可以自然地按照说明的顺序按时间顺序执行,但是并不需要一定按照时间顺序执行,某些步骤可以并行或彼此独立地执行。对本领域的普通技术人员而言,能够理解本发明的方法和装置的全部或者任何步骤或者部件,可以在任何计算装置(包括处理器、存储介质等)或者计算装置的网络中,以硬件、固件、软件或者它们的组合加以实现,这是本领域普通技术人员在阅读了本发明的说明的情况下运用他们的基本编程技能就能实现的。
[0208]
因此,本发明的目的还可以通过在任何计算装置上运行一个程序或者一组程序来实现。所述计算装置可以是公知的通用装置。因此,本发明的目的也可以仅仅通过提供包含实现所述方法或者装置的程序代码的程序产品来实现。也就是说,这样的程序产品也构成本发明,并且存储有这样的程序产品的存储介质也构成本发明。显然,所述存储介质可以是任何公知的存储介质或者将来所开发出来的任何存储介质。还需要指出的是,在本发明的装置和方法中,显然,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本发明的等效方案。并且,执行上述系列处理的步骤可以自然地按照说明的顺序按时间顺序执行,但是并不需要一定按照时间顺序执行。某些步骤可以并行或彼此独立地执行。
[0209]
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员
来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献