CN106656463A - 密钥固定的对称白盒密码加密方法和装置及设备 - Google Patents

密钥固定的对称白盒密码加密方法和装置及设备 Download PDF

Info

Publication number
CN106656463A
CN106656463A CN201611107935.5A CN201611107935A CN106656463A CN 106656463 A CN106656463 A CN 106656463A CN 201611107935 A CN201611107935 A CN 201611107935A CN 106656463 A CN106656463 A CN 106656463A
Authority
CN
China
Prior art keywords
message
encryption
terminal
group
authentication center
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.)
Pending
Application number
CN201611107935.5A
Other languages
English (en)
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.)
YANGPUWEIYE TECHNOLOGY Ltd
Original Assignee
YANGPUWEIYE TECHNOLOGY 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 YANGPUWEIYE TECHNOLOGY Ltd filed Critical YANGPUWEIYE TECHNOLOGY Ltd
Priority to CN201611107935.5A priority Critical patent/CN106656463A/zh
Publication of CN106656463A publication Critical patent/CN106656463A/zh
Pending legal-status Critical Current

Links

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/002Countermeasures against attacks on cryptographic mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请公开了一种密钥固定的对称白盒密码加密方法及设备。所述方法包括:接收来自消息发送终端的加密消息、加密流水号,其中,加密消息是认证中心将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、再由消息发送终端转发的;将接收的加密消息与加密流水号对应保存;响应于获取消息内容的请求,将对应保存的加密消息和加密流水号发送到认证中心;从认证中心接收解密得到的消息内容。本申请实现了在把加密数据的运行和存储看成“白盒”的情况下的信息安全。

Description

密钥固定的对称白盒密码加密方法和装置及设备
技术领域
本公开一般涉及计算机技术领域,具体涉及信息处理安全领域,尤其涉及一种密钥固定的对称白盒密码加密方法和装置。
背景技术
在数据传输和存储中,为了信息安全考虑,通常需要对数据加密。目前的加密主要假定对数据的攻击者无法接触到加密运行的环境,也不能控制加密数据存储的环境,从而无法接触加密时的算法和密钥。即,加密的过程和加密数据的存储作为一个“黑盒”存在,无法被攻击者获知。
然而,实际上,在一些情况下,数据的攻击者是能够接触到加密运行的环境的,甚至能够取得对数据加密、加密数据存储环境的控制。这样,他们很容易通过数据加密、加密数据存储环境中的一些中间数据、环境数据等以反向工程的方式推知加密算法和密钥等,从而攻击数据。因此,提出了在攻击者能够取得对数据加密、加密数据存储环境的控制时如何实现信息安全的需求,即在把加密数据的运行和加密数据的存储看成“白盒”的情况下,如何实现信息安全。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种在攻击者能够取得对加密数据运行、存储环境的控制时实现信息安全的方案,即在把加密数据的运行和存储看成“白盒”的情况下,实现信息安全的方案。
第一方面,本申请实施例提供了一种非对称白盒密码加密方法,所述方法包括:接收来自消息发送终端的加密消息、加密流水号,其中,加密消息是认证中心将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、再由消息发送终端转发的;将接收的加密消息与加密流水号对应保存;响应于获取消息内容的请求,将对应保存的加密消息和加密流水号发送到认证中心,以便认证中心对消息接收终端的身份进行认证并认证通过后,根据认证中心对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密;从认证中心接收解密得到的消息内容。
第二方面,本申请实施例提供了一种非对称白盒密码加密方法,所述方法包括:接收来自消息接收终端的加密消息、加密流水号,其中,加密消息是将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、由消息发送终端转发到消息接收终端、由消息接收终端响应于获取消息内容的请求转发的;对消息接收终端的身份进行认证;如果认证通过,根据对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密;发送解密得到的消息内容到消息接收终端。
第三方面,本申请实施例提供了一种密钥固定的对称白盒密码加密方法,所述方法包括:向认证中心发送要加密的消息;如果认证中心对消息发送终端的身份认证通过,接收认证中心根据消息分组方案、与每个组对应的加密密钥加密所述要加密的消息得到的加密消息、以及认证中心分配的加密流水号;将加密消息连同加密流水号发送到消息接收终端。
第四方面,本申请实施例提供了一种密钥固定的对称白盒密码加密装置,所述装置包括:第一接收单元,配置用于接收来自消息发送终端的加密消息、加密流水号,其中,加密消息是认证中心将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、再由消息发送终端转发的;第一保存单元,配置用于将接收的加密消息与加密流水号对应保存;第一发送单元,配置用于响应于获取消息内容的请求,将对应保存的加密消息和加密流水号发送到认证中心,以便认证中心对消息接收终端的身份进行认证并认证通过后,根据认证中心对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密;第二接收单元,配置用于从认证中心接收解密得到的消息内容。
第五方面,本申请实施例提供了一种密钥固定的对称白盒密码加密装置,所述装置包括:第三接收单元,配置用于接收来自消息接收终端的加密消息、加密流水号,其中,加密消息是将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、由消息发送终端转发到消息接收终端、由消息接收终端响应于获取消息内容的请求转发的;第一认证单元,配置用于对消息接收终端的身份进行认证;解密单元,配置用于如果认证通过,根据对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密;第二发送单元,配置用于发送解密得到的消息内容到消息接收终端。
第六方面,本申请实施例提供了一种密钥固定的对称白盒密码加密装置,所述装置包括:第五发送单元,配置用于向认证中心发送要加密的消息;第五接收单元,配置用于如果认证中心对消息发送终端的身份认证通过,接收认证中心根据消息分组方案、与每个组对应的加密密钥加密所述要加密的消息得到的加密消息、以及认证中心分配的加密流水号;第六发送单元,配置用于将加密消息连同加密流水号发送到消息接收终端。
第七方面,本申请实施例提供了一种设备,包括处理器、存储器和显示器;所述存储器包含可由所述处理器执行的指令以使得所述处理器执行:接收来自消息发送终端的加密消息、加密流水号,其中,加密消息是认证中心将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、再由消息发送终端转发的;将接收的加密消息与加密流水号对应保存;响应于获取消息内容的请求,将对应保存的加密消息和加密流水号发送到认证中心,以便认证中心对消息接收终端的身份进行认证并认证通过后,根据认证中心对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密;从认证中心接收解密得到的消息内容。
第八方面,本申请实施例提供了一种设备,包括处理器、存储器和显示器;所述存储器包含可由所述处理器执行的指令以使得所述处理器执行:接收来自消息接收终端的加密消息、加密流水号,其中,加密消息是将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、由消息发送终端转发到消息接收终端、由消息接收终端响应于获取消息内容的请求转发的;对消息接收终端的身份进行认证;如果认证通过,根据对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密;发送解密得到的消息内容到消息接收终端。
第九方面,本申请实施例提供了一种设备,包括处理器、存储器和显示器;所述存储器包含可由所述处理器执行的指令以使得所述处理器执行:向认证中心发送要加密的消息;如果认证中心对消息发送终端的身份认证通过,接收认证中心根据消息分组方案、与每个组对应的加密密钥加密所述要加密的消息得到的加密消息、以及认证中心分配的加密流水号;将加密消息连同加密流水号发送到消息接收终端。
在本申请实施例中,在消息接收终端是不保存加密消息的加密密钥的,甚至消息接收终端也不知道加密密钥,因为加解密由认证中心进行。在消息接收终端存储的是接收的加密消息和加密流水号。这样,即使攻击者能够取得对加密数据运行、存储环境的控制,其也无法解密加密数据。另外,加密消息不是用单一密钥加密的,而是按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密。如此复杂的加密方法也使得即使攻击者能够取得对加密数据运行、存储环境的控制,也很难通过反向工程破解出分组方案和各加密密钥,进而无法解密加密消息。而在消息接收终端想知道消息的内容时,是可以获得解密后的消息的。此时,消息接收终端将加密消息和对应的加密流水号发送到认证中心。认证中心对消息接收终端的身份进行认证并认证通过后,根据认证中心对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密,并向消息接收终端返回解密后的加密消息。加解密都在认证中心进行。即使攻击者能够取得对加密数据运行、存储环境的控制,其也无法仅凭一个加密流水号来反向工程破解加密消息。如果攻击者得到加密流水号,向认证中心请求解密后的数据也是不可能成功的,因为无法通过认证中心对请求者身份的认证。而消息接收终端却能够通过认证,因此能够请求到解密后的数据。通过这种方式,即使在攻击者能够取得对加密数据运行、存储环境的控制的情况下,仍能实现信息安全。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1示出了其中可以应用本申请实施例的示例性系统架构;
图2示出了根据本申请一个实施例的在消息接收终端侧的密钥固定的对称白盒密码加密方法的示例性流程图;
图3示出了根据本申请一个实施例的在认证中心侧的密钥固定的对称白盒密码加密方法的示例性流程图;
图4示出了根据本申请一个实施例的在消息发送终端侧的密钥固定的对称白盒密码加密方法的示例性流程图;
图5示出了根据本申请一个实施例的在消息接收终端侧的密钥固定的对称白盒密码加密装置的示例性结构框图;
图6示出了根据本申请一个实施例的在认证中心侧的密钥固定的对称白盒密码加密装置的示例性结构框图;
图7示出了根据本申请一个实施例的在消息发送终端侧的密钥固定的对称白盒密码加密装置的示例性结构框图;
图8示出了适于用来实现本申请实施例的消息接收终端的计算机系统的结构示意图。
图9示出了适于用来实现本申请实施例的认证中心的计算机系统的结构示意图。
图10示出了适于用来实现本申请实施例的消息发送终端的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
请参考图1,其示出了可以应用本申请实施例的示例性系统架构。
如图1所示,系统架构可以包括消息发送终端102、认证中心101、消息接收终端103。消息发送终端102指发送消息的终端。消息接收终端103指接收消息的终端。终端可以指一个实体的硬件,如车载设备、手机等,也可以指硬件内部的一个元件,如车辆中的ECU。认证中心101指对发送、接收消息的终端的身份进行认证、对消息进行加解密的中心。其可以位于服务器侧,如云服务器上,也可以作为硬件的一部分,例如在对车辆中的ECU身份认证的情况下,其可以作为车辆的一部分位于车辆上。
如背景技术中提到的,目前的加密主要假定对数据的攻击者无法接触到加密运行的环境,也不能控制加密数据存储的环境,也无法接触加密时的算法和密钥。即,加密的过程和加密数据的存储作为一个“黑盒”存在,无法被攻击者获知。然而,实际上,在一些情况下,数据的攻击者是能够接触到加密运行的环境的,甚至能够取得对数据加密、加密数据存储环境的控制。这样,他们很容易通过数据加密、加密数据存储环境中的一些中间数据、环境数据等以反向工程的方式推知加密算法和密钥等,从而攻击数据。因此,提出了在攻击者能够取得对加密数据运行、加密数据存储环境的控制时如何实现信息安全的需求,即在把加密数据的运行和加密数据的存储看成“白盒”的情况下,如何实现信息安全。
在本申请实施例中,在消息接收终端是不保存加密消息的加密密钥的,甚至消息接收终端也不知道加密密钥,因为加解密由认证中心进行。在消息接收终端存储的是接收的加密消息和加密流水号。这样,即使攻击者能够取得对加密数据运行、存储环境的控制,其也无法解密加密数据。另外,加密消息不是用单一密钥加密的,而是按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密。如此复杂的加密方法也使得即使攻击者能够取得对加密数据运行、存储环境的控制,也很难通过反向工程破解出分组方案和各加密密钥,进而无法解密加密消息。而在消息接收终端想知道消息的内容时,是可以获得解密后的消息的。此时,消息接收终端将加密消息和对应的加密流水号发送到认证中心。认证中心对消息接收终端的身份进行认证并认证通过后,根据认证中心对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密,并向消息接收终端返回解密后的加密消息。加解密都在认证中心进行。即使攻击者能够取得对加密数据运行、存储环境的控制,其也无法仅凭一个加密流水号来反向工程破解加密消息。如果攻击者得到加密流水号,向认证中心请求解密后的数据也是不可能成功的,因为无法通过认证中心对请求者身份的认证。而消息接收终端却能够通过认证,因此能够请求到解密后的数据。通过这种方式,即使在攻击者能够取得对加密数据运行、存储环境的控制的情况下,仍能实现信息安全。
参考图2,其示出了根据本申请一个实施例的密钥固定的对称白盒密码加密方法的示例性流程图。图2所示的方法可以在图1中的消息接收终端103执行。“白盒”的概念在上文中已描述。“对称”加密是指采用加密和解密用同一个密钥完成的加密技术。
如图2所示,在步骤210中,接收来自消息发送终端的加密消息、加密流水号。
加密消息是认证中心将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、再由消息发送终端发到认证中心解密的。
消息发送终端要想发送消息,必须首先加密。本申请实施例中,加密是由认证中心进行的,以保证信息安全。消息发送终端要向认证中心发送要加密的消息。认证中心首先要认证该消息发送终端的身份,认证通过后才能加密消息。认证消息发送终端的身份可以采取主动查询消息发送终端的标识的方法,因为如果让消息发送终端上报自己的标识,一个未授权的消息发送终端可能知道另一个已授权的消息发送终端的标识而将该另一个已授权的消息发送终端的标识伪装成自己的标识上报给认证中心,通过这种方式“蒙混过关”,通过认证。因此,认证中心要主动查询消息发送终端的标识。一般来说,根据消息发送终端与认证中心的通信协议,消息发送终端在向认证中心发送消息时,消息发送终端的标识是按照通信协议自动装入发送的消息的某个特定字段的,这个字段不能人为修改,专用于表明消息发送者的身份。因此,认证中心可以获取消息发送终端与认证中心之间交换的消息中的特定字段中的消息发送终端标识。该字段中的标识不能被篡改,因此,通过这种方式,准确地查询到了消息发送终端的标识。然后,将该消息发送终端标识与已授权终端标识列表进行比对。可以被信任作为消息的发送方的终端标识事先都登记在认证中心的已授权终端标识列表中。如果该消息发送终端标识在已授权终端标识列表中,则认证通过。如果该消息发送终端标识不在已授权终端标识列表中,则认证失败。
如果认证中心对消息发送终端的身份认证通过,认证中心生成消息分组方案、与每个组对应的加密密钥、以及加密流水号。消息分组方案即为了给消息加密如何将消息分成组的方案。例如,在消息分组方案1中规定,将消息均分成三个组:组A1,组B1,组C2。在消息分组方案2中规定,将消息按照大小2:1:1的比例分成三个组:组A2,组B2,组C2。生成消息分组方案可以采取事先规定若干消息分组方案,然后在其中随机指定一个的方式。例如,事先规定有10个消息分组方案:消息分组方案1、消息分组方案2……、消息分组方案10。当需要生成消息分组方案时,从中随机指定一个消息分组方案。与每个组对应的加密密钥也可以采用事先规定一个加密密钥集合,然后在其中随机指定一个的方式。例如,在加密密钥集合中有100个密钥(其对应100个密钥)。在上面提到的将消息均分成组A1、组B1、组C2的消息分组方案1中,对于组A1在100个密钥中随机分配一个加密密钥k1,对于组A2在100个密钥中随机分配一个加密密钥k2,对于组A3在100个密钥中随机分配一个加密密钥k3。加密流水号是表示这次加密区别于其它次加密的序号。认证中心每加密一次,就分配一个加密流水号。一般来说,每次分配的加密流水号互不相同。这样,在后续解密时就可以根据接收到的加密流水号找到唯一对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密。
认证中心生成消息分组方案、与每个组对应的加密密钥、以及加密流水号后,按照生成的消息分组方案、与每个组对应的加密密钥,加密所述要加密的消息,得到加密消息。然后,认证中心发送加密消息和加密流水号到消息发送终端。消息发送终端将加密消息连同加密流水号发送到消息接收终端。
例如,假设生成的消息分组方案是消息分组方案1,即将消息均分成组A1、组B1、组C2,与组1对应的加密密钥是k1,与组2对应的加密密钥是k2,与组3对应的加密密钥是k3。认证中心先将要加密的消息平均分成3组,分别用k1、k2、k3加密后合在一起连同加密流水号发送到消息发送终端,再由消息发送终端发送给消息接收终端。
在步骤220中,将接收的加密消息与加密流水号对应保存。
在本申请实施例中,在消息接收终端是不保存加密消息的加密密钥的,甚至消息接收终端也不知道加密密钥,因为解密由认证中心进行。在消息接收终端存储的是接收的加密消息和加密流水号。这样,即使攻击者能够取得对加密数据运行、存储环境的控制,其也无法解密加密数据。另外,加密消息不是用单一密钥加密的,而是认证中心将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到的。如此复杂的加密方法也使得即使攻击者能够取得对加密数据运行、存储环境的控制,也很难通过反向工程破解出分组方案和各加密密钥,进而无法解密加密消息。
在步骤230中,响应于获取消息内容的请求,将对应保存的加密消息和加密流水号发送到认证中心,以便认证中心对消息接收终端的身份进行认证并认证通过后,根据认证中心对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密。
如前所述,为了信息安全起见,消息在消息接收终端始终是加密存储的。在消息接收终端想知道消息的内容时,响应于获取消息内容的请求(可以来自消息接收终端外部,也可以来自消息接收终端内部的某一模块),将加密消息和对应的加密流水号发送到认证中心。然后,认证中心对消息接收终端的身份进行认证。认证消息接收终端的身份可以采取主动查询消息接收终端的标识的方法,因为如果让消息接收终端上报自己的标识,一个未授权的消息接收终端(可能是攻击者)可能知道另一个已授权的消息接收终端的标识而将该另一个已授权的消息接收终端的标识伪装成自己的标识上报给认证中心,通过这种方式“蒙混过关”,通过认证。因此,认证中心要主动查询消息接收终端的标识。一般来说,根据消息接收终端与认证中心的通信协议,消息接收终端在向认证中心发送消息时,消息接收终端的标识是按照通信协议自动装入发送的消息的某个特定字段的,这个字段不能人为修改,专用于表明与认证中心通信者的身份。因此,认证中心可以获取消息接收终端与认证中心之间交换的消息中的特定字段中的消息接收终端标识。该字段中的标识不能被篡改,因此,通过这种方式,准确地查询到了消息接收终端的标识。然后,将该消息接收终端标识与已授权终端标识列表进行比对。可以被信任进行安全通信的终端标识事先都登记在认证中心的已授权终端标识列表中。如果该消息接收终端标识在已授权终端标识列表中,则认证通过。如果该消息接收终端标识不在已授权终端标识列表中,则认证失败。
认证中心在生成消息分组方案、与每个组对应的加密密钥、以及加密流水号之后还将生成的消息分组方案、与每个组对应的加密密钥、以及加密流水号相对应地保存。这样,认证中心对消息接收终端的身份进行认证并认证通过后,根据所述对应记录,就可以查找到与接收到的加密流水号对应的消息分组方案、加密密钥。认证中心按照查找到的消息分组方案和与各组对应的加密密钥对加密消息解密。
由于解密的关键部分都在认证中心进行,即使攻击者能够取得对加密数据运行、存储环境的控制,其也无法仅凭一个加密流水号来反向工程破解加密消息。如果攻击者得到加密流水号,向认证中心请求解密后的数据也是不可能成功的,因为无法通过认证中心对请求者身份的认证。而消息接收终端却能够通过认证,因此能够请求到解密后的数据。通过这种方式,即使在攻击者能够取得对加密数据运行、存储环境的控制的情况下,仍能实现信息安全。
在步骤240中,从认证中心接收解密得到的消息内容。
参考图3,其示出了根据本申请一个实施例的密钥固定的对称白盒密码加密方法的示例性流程图。图3所示的方法可以在图1中的认证中心101执行。“白盒”的概念在上文中已描述。“对称”加密是指采用加密和解密用同一个固定密钥完成的加密技术。
如图3所示,在步骤310中,接收来自消息接收终端的加密消息、加密流水号。
加密消息是认证中心将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、由消息发送终端转发到消息接收终端、由消息接收终端响应于获取消息内容的请求发到认证中心的。
实际上,在步骤310之前,所述方法还包括:接收来自消息发送终端的要加密的消息;对消息发送终端的身份进行认证;如果认证通过,生成消息分组方案、与每个组对应的加密密钥、以及加密流水号;按照生成的消息分组方案、与每个组对应的加密密钥,加密所述要加密的消息,得到加密消息;发送加密消息和加密流水号到消息发送终端。
消息发送终端要想发送消息,必须首先加密。本申请实施例中,加密是由认证中心进行的,以保证信息安全。消息发送终端要向认证中心发送要加密的消息。认证中心首先要认证该消息发送终端的身份,认证通过后才能加密消息。认证消息发送终端的身份可以采取主动查询消息发送终端的标识的方法,因为如果让消息发送终端上报自己的标识,一个未授权的消息发送终端可能知道另一个已授权的消息发送终端的标识而将该另一个已授权的消息发送终端的标识伪装成自己的标识上报给认证中心,通过这种方式“蒙混过关”,通过认证。因此,认证中心要主动查询消息发送终端的标识。一般来说,根据消息发送终端与认证中心的通信协议,消息发送终端在向认证中心发送消息时,消息发送终端的标识是按照通信协议自动装入发送的消息的某个特定字段的,这个字段不能人为修改,专用于表明消息发送者的身份。因此,认证中心可以获取消息发送终端与认证中心之间交换的消息中的特定字段中的消息发送终端标识。该字段中的标识不能被篡改,因此,通过这种方式,准确地查询到了消息发送终端的标识。然后,将该消息发送终端标识与已授权终端标识列表进行比对。可以被信任作为消息的发送方的终端标识事先都登记在认证中心的已授权终端标识列表中。如果该消息发送终端标识在已授权终端标识列表中,则认证通过。如果该消息发送终端标识不在已授权终端标识列表中,则认证失败。
如果认证中心对消息发送终端的身份认证通过,认证中心生成消息分组方案、与每个组对应的加密密钥、以及加密流水号。消息分组方案即为了给消息加密如何将消息分成组的方案。例如,在消息分组方案1中规定,将消息均分成三个组:组A1,组B1,组C2。在消息分组方案2中规定,将消息按照大小2:1:1的比例分成三个组:组A2,组B2,组C2。生成消息分组方案可以采取事先规定若干消息分组方案,然后在其中随机指定一个的方式。例如,事先规定有10个消息分组方案:消息分组方案1、消息分组方案2……、消息分组方案10。当需要生成消息分组方案时,从中随机指定一个消息分组方案。与每个组对应的加密密钥也可以采用事先规定一个加密密钥集合,然后在其中随机指定一个的方式。例如,在加密密钥集合中有100个密钥(其对应100个密钥)。在上面提到的将消息均分成组A1、组B1、组C2的消息分组方案1中,对于组A1在100个密钥中随机分配一个加密密钥k1,对于组A2在100个密钥中随机分配一个加密密钥k2,对于组A3在100个密钥中随机分配一个加密密钥k3。加密流水号是表示这次加密区别于其它次加密的序号。认证中心每加密一次,就分配一个加密流水号。一般来说,每次分配的加密流水号互不相同。这样,在后续解密时就可以根据接收到的加密流水号找到唯一对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密。
认证中心生成消息分组方案、与每个组对应的加密密钥、以及加密流水号后,按照生成的消息分组方案、与每个组对应的加密密钥,加密所述要加密的消息,得到加密消息。例如,假设生成的消息分组方案是消息分组方案1,即将消息均分成组A1、组B1、组C2,与组1对应的加密密钥是k1,与组2对应的加密密钥是k2,与组3对应的加密密钥是k3。认证中心先将要加密的消息平均分成3组,分别用k1、k2、k3加密后合在一起,得到加密消息。
然后,认证中心发送加密消息和加密流水号到消息发送终端。消息发送终端将加密消息连同加密流水号发送到消息接收终端。
然后,消息接收终端将接收的加密消息与加密流水号对应保存。
在本申请实施例中,在消息接收终端是不保存加密消息的加密密钥的,甚至消息接收终端也不知道加密密钥,因为解密由认证中心进行。在消息接收终端存储的是接收的加密消息和加密流水号。这样,即使攻击者能够取得对加密数据运行、存储环境的控制,其也无法解密加密数据。另外,加密消息不是用单一密钥加密的,而是认证中心将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到的。如此复杂的加密方法也使得即使攻击者能够取得对加密数据运行、存储环境的控制,也很难通过反向工程破解出分组方案和各加密密钥,进而无法解密加密消息。
然后,响应于获取消息内容的请求,消息接收终端将对应保存的加密消息和加密流水号发送到认证中心。
在步骤320中,对消息接收终端的身份进行认证。
认证消息接收终端的身份可以采取主动查询消息接收终端的标识的方法,因为如果让消息接收终端上报自己的标识,一个未授权的消息接收终端(可能是攻击者)可能知道另一个已授权的消息接收终端的标识而将该另一个已授权的消息接收终端的标识伪装成自己的标识上报给认证中心,通过这种方式“蒙混过关”,通过认证。因此,认证中心要主动查询消息接收终端的标识。一般来说,根据消息接收终端与认证中心的通信协议,消息接收终端在向认证中心发送消息时,消息接收终端的标识是按照通信协议自动装入发送的消息的某个特定字段的,这个字段不能人为修改,专用于表明与认证中心通信者的身份。因此,认证中心可以获取消息接收终端与认证中心之间交换的消息中的特定字段中的消息接收终端标识。该字段中的标识不能被篡改,因此,通过这种方式,准确地查询到了消息接收终端的标识。然后,将该消息接收终端标识与已授权终端标识列表进行比对。可以被信任进行安全通信的终端标识事先都登记在认证中心的已授权终端标识列表中。如果该消息接收终端标识在已授权终端标识列表中,则认证通过。如果该消息接收终端标识不在已授权终端标识列表中,则认证失败。
在步骤330中,根据对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密。
认证中心在生成消息分组方案、与每个组对应的加密密钥、以及加密流水号之后还将生成的消息分组方案、与每个组对应的加密密钥、以及加密流水号相对应地保存。这样,认证中心对消息接收终端的身份进行认证并认证通过后,根据所述对应记录,就可以查找到与接收到的加密流水号对应的消息分组方案、加密密钥。认证中心按照查找到的消息分组方案和与各组对应的加密密钥对加密消息解密。
在步骤340中,发送解密得到的消息内容到消息接收终端。
由于解密的关键部分都在认证中心进行,即使攻击者能够取得对在消息接收终端处加密数据运行、存储环境的控制,其也无法仅凭一个加密流水号来反向工程破解加密消息。如果攻击者得到加密流水号,向认证中心请求解密后的数据也是不可能成功的,因为无法通过认证中心对请求者身份的认证。而消息接收终端却能够通过认证,因此能够请求到解密后的数据。通过这种方式,即使在攻击者能够取得对加密数据运行、存储环境的控制的情况下,仍能实现信息安全。
在一个实施例中,所述方法还包括:如果认证失败,向消息接收终端发送认证失败消息。
参考图4,其示出了根据本申请一个实施例的密钥固定的对称白盒密码加密方法的示例性流程图。图4所示的方法可以在图1中的消息发送终端102执行。“白盒”的概念在上文中已描述。“对称”加密是指采用加密和解密用同一个固定密钥完成的加密技术。
如图3所示,在步骤310中,向认证中心发送要加密的消息。
消息发送终端要想发送消息,必须首先加密。本申请实施例中,加密是由认证中心进行的,以保证信息安全。消息发送终端要向认证中心发送要加密的消息。
在步骤320中,如果认证中心对消息发送终端的身份认证通过,接收认证中心根据消息分组方案、与每个组对应的加密密钥加密所述要加密的消息得到的加密消息、以及认证中心分配的加密流水号。
认证中心首先要认证该消息发送终端的身份,认证通过后才能加密消息。认证消息发送终端的身份可以采取主动查询消息发送终端的标识的方法,因为如果让消息发送终端上报自己的标识,一个未授权的消息发送终端可能知道另一个已授权的消息发送终端的标识而将该另一个已授权的消息发送终端的标识伪装成自己的标识上报给认证中心,通过这种方式“蒙混过关”,通过认证。因此,认证中心要主动查询消息发送终端的标识。一般来说,根据消息发送终端与认证中心的通信协议,消息发送终端在向认证中心发送消息时,消息发送终端的标识是按照通信协议自动装入发送的消息的某个特定字段的,这个字段不能人为修改,专用于表明消息发送者的身份。因此,认证中心可以获取消息发送终端与认证中心之间交换的消息中的特定字段中的消息发送终端标识。该字段中的标识不能被篡改,因此,通过这种方式,准确地查询到了消息发送终端的标识。然后,将该消息发送终端标识与已授权终端标识列表进行比对。可以被信任作为消息的发送方的终端标识事先都登记在认证中心的已授权终端标识列表中。如果该消息发送终端标识在已授权终端标识列表中,则认证通过。如果该消息发送终端标识不在已授权终端标识列表中,则认证失败。
如果认证中心对消息发送终端的身份认证通过,认证中心生成消息分组方案、与每个组对应的加密密钥、以及加密流水号。消息分组方案即为了给消息加密如何将消息分成组的方案。例如,在消息分组方案1中规定,将消息均分成三个组:组A1,组B1,组C2。在消息分组方案2中规定,将消息按照大小2:1:1的比例分成三个组:组A2,组B2,组C2。生成消息分组方案可以采取事先规定若干消息分组方案,然后在其中随机指定一个的方式。例如,事先规定有10个消息分组方案:消息分组方案1、消息分组方案2……、消息分组方案10。当需要生成消息分组方案时,从中随机指定一个消息分组方案。与每个组对应的加密密钥也可以采用事先规定一个加密密钥集合,然后在其中随机指定一个的方式。例如,在加密密钥集合中有100个密钥(其对应100个密钥)。在上面提到的将消息均分成组A1、组B1、组C2的消息分组方案1中,对于组A1在100个密钥中随机分配一个加密密钥k1,对于组A2在100个密钥中随机分配一个加密密钥k2,对于组A3在100个密钥中随机分配一个加密密钥k3。加密流水号是表示这次加密区别于其它次加密的序号。认证中心每加密一次,就分配一个加密流水号。一般来说,每次分配的加密流水号互不相同。这样,在后续解密时就可以根据接收到的加密流水号找到唯一对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密。
认证中心生成消息分组方案、与每个组对应的加密密钥、以及加密流水号后,按照生成的消息分组方案、与每个组对应的加密密钥,加密所述要加密的消息,得到加密消息。例如,假设生成的消息分组方案是消息分组方案1,即将消息均分成组A1、组B1、组C2,与组1对应的加密密钥是k1,与组2对应的加密密钥是k2,与组3对应的加密密钥是k3。认证中心先将要加密的消息平均分成3组,分别用k1、k2、k3加密后合在一起,得到加密消息。
然后,认证中心发送加密消息和加密流水号到消息发送终端。
在步骤430中,将加密消息连同加密流水号发送到消息接收终端。
然后,消息接收终端将接收的加密消息与加密流水号对应保存。
在本申请实施例中,在消息接收终端是不保存加密消息的加密密钥的,甚至消息接收终端也不知道加密密钥,因为解密由认证中心进行。在消息接收终端存储的是接收的加密消息和加密流水号。这样,即使攻击者能够取得对加密数据运行、存储环境的控制,其也无法解密加密数据。另外,加密消息不是用单一密钥加密的,而是认证中心将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到的。如此复杂的加密方法也使得即使攻击者能够取得对加密数据运行、存储环境的控制,也很难通过反向工程破解出分组方案和各加密密钥,进而无法解密加密消息。
然后,响应于获取消息内容的请求,消息接收终端将对应保存的加密消息和加密流水号发送到认证中心。认证中心对消息接收终端的身份进行认证。
认证消息接收终端的身份可以采取主动查询消息接收终端的标识的方法,因为如果让消息接收终端上报自己的标识,一个未授权的消息接收终端(可能是攻击者)可能知道另一个已授权的消息接收终端的标识而将该另一个已授权的消息接收终端的标识伪装成自己的标识上报给认证中心,通过这种方式“蒙混过关”,通过认证。因此,认证中心要主动查询消息接收终端的标识。一般来说,根据消息接收终端与认证中心的通信协议,消息接收终端在向认证中心发送消息时,消息接收终端的标识是按照通信协议自动装入发送的消息的某个特定字段的,这个字段不能人为修改,专用于表明与认证中心通信者的身份。因此,认证中心可以获取消息接收终端与认证中心之间交换的消息中的特定字段中的消息接收终端标识。该字段中的标识不能被篡改,因此,通过这种方式,准确地查询到了消息接收终端的标识。然后,将该消息接收终端标识与已授权终端标识列表进行比对。可以被信任进行安全通信的终端标识事先都登记在认证中心的已授权终端标识列表中。如果该消息接收终端标识在已授权终端标识列表中,则认证通过。如果该消息接收终端标识不在已授权终端标识列表中,则认证失败。
然后,认证中心根据对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密。
认证中心在生成消息分组方案、与每个组对应的加密密钥、以及加密流水号之后还将生成的消息分组方案、与每个组对应的加密密钥、以及加密流水号相对应地保存。这样,认证中心对消息接收终端的身份进行认证并认证通过后,根据所述对应记录,就可以查找到与接收到的加密流水号对应的消息分组方案、加密密钥。认证中心按照查找到的消息分组方案和与各组对应的加密密钥对加密消息解密。
然后,认证中心发送解密得到的消息内容到消息接收终端。
由于解密的关键部分都在认证中心进行,即使攻击者能够取得对在消息接收终端处加密数据运行、存储环境的控制,其也无法仅凭一个加密流水号来反向工程破解加密消息。如果攻击者得到加密流水号,向认证中心请求解密后的数据也是不可能成功的,因为无法通过认证中心对请求者身份的认证。而消息接收终端却能够通过认证,因此能够请求到解密后的数据。通过这种方式,即使在攻击者能够取得对加密数据运行、存储环境的控制的情况下,仍能实现信息安全。
应当注意,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
进一步参考图5,其示出了根据本申请一个实施例的密钥固定的对称白盒密码加密装置500的示例性结构框图。
如图5所示,所述非对称白盒密码加密装置500包括:第一接收单元510,配置用于接收来自消息发送终端的加密消息、加密流水号,其中,加密消息是认证中心将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、再由消息发送终端转发的;第一保存单元520,配置用于将接收的加密消息与加密流水号对应保存;第一发送单元530,配置用于响应于获取消息内容的请求,将对应保存的加密消息和加密流水号发送到认证中心,以便认证中心对消息接收终端的身份进行认证并认证通过后,根据认证中心对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密;第二接收单元540,配置用于从认证中心接收解密得到的消息内容。
可选地,认证中心对消息接收终端的身份进行认证是通过获取消息接收终端与认证中心之间交换的消息中的特定字段中的消息接收终端标识,并将该消息接收终端标识与已授权终端标识列表进行比对进行的。
可选地,如果该消息接收终端标识在已授权终端标识列表中,则认证通过。
进一步参考图6,其示出了根据本申请一个实施例的密钥固定的对称白盒密码加密装置600的示例性结构框图。
如图6所示,所述非对称白盒密码加密装置600包括:第三接收单元610,配置用于接收来自消息接收终端的加密消息、加密流水号,其中,加密消息是将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、由消息发送终端转发到消息接收终端、由消息接收终端响应于获取消息内容的请求转发的;第一认证单元620,配置用于对消息接收终端的身份进行认证;解密单元630,配置用于如果认证通过,根据对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密;第二发送单元640,配置用于发送解密得到的消息内容到消息接收终端。
可选地,所述装置600还包括:第三发送单元,配置用于如果认证失败,向消息接收终端发送认证失败消息。
可选地,所述装置600还包括:第四接收单元,配置用于接收来自消息发送终端的要加密的消息;第二认证单元,配置用于对消息发送终端的身份进行认证;第一生成单元,配置用于如果认证通过,生成消息分组方案、与每个组对应的加密密钥、以及加密流水号;加密单元,配置用于按照生成的消息分组方案、与每个组对应的加密密钥,加密所述要加密的消息,得到加密消息;第四发送单元,配置用于发送加密消息和加密流水号到消息发送终端;
可选地,所述装置600还包括:第二保存单元,配置用于将生成的消息分组方案、与每个组对应的加密密钥、以及加密流水号相对应地保存。
可选地,所述第一认证单元620进一步配置用于:获取消息接收终端与认证中心之间交换的消息中的特定字段中的消息接收终端标识;将该消息接收终端标识与已授权终端标识列表进行比对。
可选地,所述第二认证单元进一步配置用于:获取消息发送终端与认证中心之间交换的消息中的特定字段中的消息发送终端标识;将该消息发送终端标识与已授权终端标识列表进行比对。
进一步参考图7,其示出了根据本申请一个实施例的密钥固定的对称白盒密码加密装置700的示例性结构框图。
如图7所示,所述非对称白盒密码加密装置700包括:第五发送单元710,配置用于向认证中心发送要加密的消息;第五接收单元720,配置用于如果认证中心对消息发送终端的身份认证通过,接收认证中心根据消息分组方案、与每个组对应的加密密钥加密所述要加密的消息得到的加密消息、以及认证中心分配的加密流水号;第六发送单元730,配置用于将加密消息连同加密流水号发送到消息接收终端。
应当理解,图5-7中记载的诸子系统或单元与参考图2-图4描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作和特征同样适用于图5-7及其中包含的单元,在此不再赘述。
下面参考图8,其示出了适于用来实现本申请实施例的消息接收终端的计算机系统800的结构示意图。
如图8所示,计算机系统800包括中央处理单元(CPU)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储部分808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM 803中,还存储有系统800操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
以下部件连接至I/O接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
下面参考图9,其示出了适于用来实现本申请实施例的认证中心的计算机系统900的结构示意图。
如图9所示,计算机系统900包括中央处理单元(CPU)901,其可以根据存储在只读存储器(ROM)902中的程序或者从存储部分908加载到随机访问存储器(RAM)903中的程序而执行各种适当的动作和处理。在RAM 903中,还存储有系统900操作所需的各种程序和数据。CPU 901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
以下部件连接至I/O接口905:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至I/O接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。
下面参考图10,其示出了适于用来实现本申请实施例的消息接收终端的计算机系统1000的结构示意图。
如图10所示,计算机系统1000包括中央处理单元(CPU)1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储部分1008加载到随机访问存储器(RAM)1003中的程序而执行各种适当的动作和处理。在RAM 1003中,还存储有系统1000操作所需的各种程序和数据。CPU 1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
以下部件连接至I/O接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至I/O接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
特别地,根据本公开的实施例,上文参考图2-图4描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行图2-图4的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809、909、1009从网络上被下载和安装,和/或从可拆卸介质811、911、1011被安装。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中。这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中所述装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本申请的公式输入方法。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (23)

1.一种密钥固定的对称白盒密码加密方法,其特征在于,所述方法包括:
接收来自消息发送终端的加密消息、加密流水号,其中,加密消息是认证中心将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、再由消息发送终端转发的;
将接收的加密消息与加密流水号对应保存;
响应于获取消息内容的请求,将对应保存的加密消息和加密流水号发送到认证中心,以便认证中心对消息接收终端的身份进行认证并认证通过后,根据认证中心对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密;
从认证中心接收解密得到的消息内容。
2.根据权利要求1所述的方法,其特征在于,认证中心对消息接收终端的身份进行认证是通过获取消息接收终端与认证中心之间交换的消息中的特定字段中的消息接收终端标识,并将该消息接收终端标识与已授权终端标识列表进行比对进行的。
3.根据权利要求2所述的方法,其特征在于,如果该消息接收终端标识在已授权终端标识列表中,则认证通过。
4.一种密钥固定的对称白盒密码加密方法,其特征在于,所述方法包括:
接收来自消息接收终端的加密消息、加密流水号,其中,加密消息是将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、由消息发送终端转发到消息接收终端、由消息接收终端响应于获取消息内容的请求转发的;
对消息接收终端的身份进行认证;
如果认证通过,根据对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密;
发送解密得到的消息内容到消息接收终端。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
如果认证失败,向消息接收终端发送认证失败消息。
6.根据权利要求4所述的方法,其特征在于,所述方法在接收来自消息接收终端的加密消息、加密流水号之前还包括:
接收来自消息发送终端的要加密的消息;
对消息发送终端的身份进行认证;
如果认证通过,生成消息分组方案、与每个组对应的加密密钥、以及加密流水号;
按照生成的消息分组方案、与每个组对应的加密密钥,加密所述要加密的消息,得到加密消息;
发送加密消息和加密流水号到消息发送终端。
7.根据权利要求6所述的方法,其特征在于,所述方法在生成消息分组方案、与每个组对应的加密密钥、以及加密流水号之后还包括:
将生成的消息分组方案、与每个组对应的加密密钥、以及加密流水号相对应地保存。
8.根据权利要求4所述的方法,其特征在于,所述对消息接收终端的身份进行认证包括:
获取消息接收终端与认证中心之间交换的消息中的特定字段中的消息接收终端标识;
将该消息接收终端标识与已授权终端标识列表进行比对。
9.根据权利要求6所述的方法,其特征在于,所述对消息发送终端的身份进行认证包括:
获取消息发送终端与认证中心之间交换的消息中的特定字段中的消息发送终端标识;
将该消息发送终端标识与已授权终端标识列表进行比对。
10.一种密钥固定的对称白盒密码加密方法,其特征在于,所述方法包括:
向认证中心发送要加密的消息;
如果认证中心对消息发送终端的身份认证通过,接收认证中心根据消息分组方案、与每个组对应的加密密钥加密所述要加密的消息得到的加密消息、以及认证中心分配的加密流水号;
将加密消息连同加密流水号发送到消息接收终端。
11.一种密钥固定的对称白盒密码加密装置,其特征在于,所述装置包括:
第一接收单元,配置用于接收来自消息发送终端的加密消息、加密流水号,其中,加密消息是认证中心将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、再由消息发送终端转发的;
第一保存单元,配置用于将接收的加密消息与加密流水号对应保存;
第一发送单元,配置用于响应于获取消息内容的请求,将对应保存的加密消息和加密流水号发送到认证中心,以便认证中心对消息接收终端的身份进行认证并认证通过后,根据认证中心对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密;
第二接收单元,配置用于从认证中心接收解密得到的消息内容。
12.根据权利要求11所述的装置,其特征在于,认证中心对消息接收终端的身份进行认证是通过获取消息接收终端与认证中心之间交换的消息中的特定字段中的消息接收终端标识,并将该消息接收终端标识与已授权终端标识列表进行比对进行的。
13.根据权利要求12所述的装置,其特征在于,如果该消息接收终端标识在已授权终端标识列表中,则认证通过。
14.一种密钥固定的对称白盒密码加密装置,其特征在于,所述装置包括:
第三接收单元,配置用于接收来自消息接收终端的加密消息、加密流水号,其中,加密消息是将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、由消息发送终端转发到消息接收终端、由消息接收终端响应于获取消息内容的请求转发的;
第一认证单元,配置用于对消息接收终端的身份进行认证;
解密单元,配置用于如果认证通过,根据对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密;
第二发送单元,配置用于发送解密得到的消息内容到消息接收终端。
15.根据权利要求14所述的装置,其特征在于,所述装置还包括:
第三发送单元,配置用于如果认证失败,向消息接收终端发送认证失败消息。
16.根据权利要求14所述的装置,其特征在于,所述装置还包括:
第四接收单元,配置用于接收来自消息发送终端的要加密的消息;
第二认证单元,配置用于对消息发送终端的身份进行认证;
第一生成单元,配置用于如果认证通过,生成消息分组方案、与每个组对应的加密密钥、以及加密流水号;
加密单元,配置用于按照生成的消息分组方案、与每个组对应的加密密钥,加密所述要加密的消息,得到加密消息;
第四发送单元,配置用于发送加密消息和加密流水号到消息发送终端。
17.根据权利要求16所述的装置,其特征在于,所述装置还包括:
第二保存单元,配置用于将生成的消息分组方案、与每个组对应的加密密钥、以及加密流水号相对应地保存。
18.根据权利要求14所述的装置,其特征在于,所述第一认证单元进一步配置用于:
获取消息接收终端与认证中心之间交换的消息中的特定字段中的消息接收终端标识;
将该消息接收终端标识与已授权终端标识列表进行比对。
19.根据权利要求16所述的装置,其特征在于,所述第二认证单元进一步配置用于:
获取消息发送终端与认证中心之间交换的消息中的特定字段中的消息发送终端标识;
将该消息发送终端标识与已授权终端标识列表进行比对。
20.一种密钥固定的对称白盒密码加密装置,其特征在于,所述装置包括:
第五发送单元,配置用于向认证中心发送要加密的消息;
第五接收单元,配置用于如果认证中心对消息发送终端的身份认证通过,接收认证中心根据消息分组方案、与每个组对应的加密密钥加密所述要加密的消息得到的加密消息、以及认证中心分配的加密流水号;
第六发送单元,配置用于将加密消息连同加密流水号发送到消息接收终端。
21.一种设备,包括处理器、存储器和显示器;其特征在于:
所述存储器包含可由所述处理器执行的指令以使得所述处理器执行:
接收来自消息发送终端的加密消息、加密流水号,其中,加密消息是认证中心将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、再由消息发送终端转发的;
将接收的加密消息与加密流水号对应保存;
响应于获取消息内容的请求,将对应保存的加密消息和加密流水号发送到认证中心,以便认证中心对消息接收终端的身份进行认证并认证通过后,根据认证中心对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密;
从认证中心接收解密得到的消息内容。
22.一种设备,包括处理器、存储器和显示器;其特征在于:
所述存储器包含可由所述处理器执行的指令以使得所述处理器执行:
接收来自消息接收终端的加密消息、加密流水号,其中,加密消息是将消息发送终端要发送的消息按照消息分组方案和与每个组对应的加密密钥,将消息分成组并针对每个组用与该组对应的加密密钥加密得到并伴随分配的加密流水号返回给消息发送终端、由消息发送终端转发到消息接收终端、由消息接收终端响应于获取消息内容的请求转发的;
对消息接收终端的身份进行认证;
如果认证通过,根据对消息加密时采用的消息分组方案和与每个组对应的加密密钥,对加密消息解密;
发送解密得到的消息内容到消息接收终端。
23.一种设备,包括处理器、存储器和显示器;其特征在于:
所述存储器包含可由所述处理器执行的指令以使得所述处理器执行:
向认证中心发送要加密的消息;
如果认证中心对消息发送终端的身份认证通过,接收认证中心根据消息分组方案、与每个组对应的加密密钥加密所述要加密的消息得到的加密消息、以及认证中心分配的加密流水号;
将加密消息连同加密流水号发送到消息接收终端。
CN201611107935.5A 2016-12-06 2016-12-06 密钥固定的对称白盒密码加密方法和装置及设备 Pending CN106656463A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611107935.5A CN106656463A (zh) 2016-12-06 2016-12-06 密钥固定的对称白盒密码加密方法和装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611107935.5A CN106656463A (zh) 2016-12-06 2016-12-06 密钥固定的对称白盒密码加密方法和装置及设备

Publications (1)

Publication Number Publication Date
CN106656463A true CN106656463A (zh) 2017-05-10

Family

ID=58818750

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611107935.5A Pending CN106656463A (zh) 2016-12-06 2016-12-06 密钥固定的对称白盒密码加密方法和装置及设备

Country Status (1)

Country Link
CN (1) CN106656463A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107276741A (zh) * 2017-06-06 2017-10-20 北京洋浦伟业科技发展有限公司 空气态隐形加密保护方法和装置
CN107809313A (zh) * 2017-10-31 2018-03-16 北京三未信安科技发展有限公司 一种白盒密码运算方法及系统
US11502817B2 (en) 2020-02-12 2022-11-15 Wipro Limited Enhanced data security system and method thereof

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050182735A1 (en) * 2004-02-12 2005-08-18 Zager Robert P. Method and apparatus for implementing a micropayment system to control e-mail spam
CN101902664A (zh) * 2009-05-26 2010-12-01 中兴通讯股份有限公司 一种提高无源光网络加解密速度的方法和系统
CN103716157A (zh) * 2013-12-13 2014-04-09 厦门市美亚柏科信息股份有限公司 分组多密钥加密方法及装置
CN104410616A (zh) * 2014-11-20 2015-03-11 广州日滨科技发展有限公司 数据加密、解密、传输方法和系统
EP2940920A2 (en) * 2014-04-28 2015-11-04 Nxp B.V. Security patch without changing the key

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050182735A1 (en) * 2004-02-12 2005-08-18 Zager Robert P. Method and apparatus for implementing a micropayment system to control e-mail spam
CN101902664A (zh) * 2009-05-26 2010-12-01 中兴通讯股份有限公司 一种提高无源光网络加解密速度的方法和系统
CN103716157A (zh) * 2013-12-13 2014-04-09 厦门市美亚柏科信息股份有限公司 分组多密钥加密方法及装置
EP2940920A2 (en) * 2014-04-28 2015-11-04 Nxp B.V. Security patch without changing the key
CN104410616A (zh) * 2014-11-20 2015-03-11 广州日滨科技发展有限公司 数据加密、解密、传输方法和系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107276741A (zh) * 2017-06-06 2017-10-20 北京洋浦伟业科技发展有限公司 空气态隐形加密保护方法和装置
CN107809313A (zh) * 2017-10-31 2018-03-16 北京三未信安科技发展有限公司 一种白盒密码运算方法及系统
US11502817B2 (en) 2020-02-12 2022-11-15 Wipro Limited Enhanced data security system and method thereof

Similar Documents

Publication Publication Date Title
Ullah et al. Elliptic Curve Cryptography; Applications, challenges, recent advances, and future trends: A comprehensive survey
EP2228942B1 (en) Securing communications sent by a first user to a second user
CN104158827B (zh) 密文数据共享方法、装置、查询服务器和上传数据客户端
CN101529791A (zh) 利用复杂性低的装置提供认证和保密的方法和设备
CN109800588B (zh) 条码动态加密方法及装置、条码动态解密方法及装置
CN107172056A (zh) 一种信道安全确定方法、装置、系统、客户端及服务器
CN109067528A (zh) 密码运算、创建工作密钥的方法、密码服务平台及设备
CN101815091A (zh) 密码提供设备、密码认证系统和密码认证方法
US20070055893A1 (en) Method and system for providing data field encryption and storage
US20010014156A1 (en) Common key generating method, common key generator, cryptographic communication method and cryptographic communication system
CN108809633A (zh) 一种身份认证的方法、装置及系统
CN106789963A (zh) 非对称白盒密码加密方法和装置及设备
CN107690079A (zh) 直播平台中的用户隐私保护方法
CN106656463A (zh) 密钥固定的对称白盒密码加密方法和装置及设备
CN110365472B (zh) 基于非对称密钥池对的量子通信服务站数字签名方法、系统
US10764260B2 (en) Distributed processing of a product on the basis of centrally encrypted stored data
CN111008400A (zh) 数据处理方法、装置及系统
CN104253692B (zh) 基于se的密钥管理方法和装置
CN106257859A (zh) 一种密码使用方法
CN107493281A (zh) 加密通信方法及装置
CN113545004A (zh) 具有减少攻击面的认证系统
KR101929355B1 (ko) 고유 일련번호 및 대칭키를 이용한 암복호화 시스템
CN106972928B (zh) 一种堡垒机私钥管理方法、装置及系统
US10445510B2 (en) Data checking apparatus and method using same
CN112861156B (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100083 Beijing, Haidian District Xueyuan Road 30 days building A 20 floor

Applicant after: Beijing Bang Bang Safety Technology Co. Ltd.

Address before: 100083 Beijing, Haidian District Xueyuan Road 30 days building A 20 floor

Applicant before: Yangpuweiye Technology Limited

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170510