CN101682639B - 握手过程 - Google Patents
握手过程 Download PDFInfo
- Publication number
- CN101682639B CN101682639B CN2008800196664A CN200880019666A CN101682639B CN 101682639 B CN101682639 B CN 101682639B CN 2008800196664 A CN2008800196664 A CN 2008800196664A CN 200880019666 A CN200880019666 A CN 200880019666A CN 101682639 B CN101682639 B CN 101682639B
- Authority
- CN
- China
- Prior art keywords
- group
- key
- random number
- identifier
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
- H04L9/0662—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/083—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
- H04L9/0833—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/068—Network 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
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)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种用于由握手过程建立用于组通信的组暂时密钥的解决方案。所述组暂时密钥由组过程建立,并且是对于组特定的暂时密钥。
Description
技术领域
本发明涉及数据管理系统。具体地,本发明涉及用于通过握手过程建立用于保护组通信的组暂时(temporal)密钥的新颖方法和设备。
背景技术
在数据通信中,术语握手可以被确定成例如指的是由硬件或软件管理的事件序列,其在信息交换之前需要操作模式的状态的相互协定。握手还可以被用于验证另一参与方就是它所声明的角色。
在有线和无线环境中已知多种类型的握手过程。实现用于保护进一步通信的会话密钥的导出的一种典型方式是使用成对的握手过程。成对的握手过程在两个参与方之间执行。如果想要组通信,则每个组成员必须单独地与每个其他组成员执行成对的握手过程,从而得出在执行握手的两个参与方之间的公共成对暂时密钥。
已建立的成对暂时密钥可以被用于将会话密钥(即,组暂时密钥)分发给同一组中的其他成员。随着组中的成员或成员设备的数量的增加,组通信的会话密钥建立是非常麻烦的。会话密钥可以是特定于发送者的,并且一个组的会话密钥的数量可以等于组中的成员数量。例如,如果组包括八个成员,则每个成员必须执行与其余七个组成员的成对握手过程。在此之后,每个成员必须通过使用成对的暂时密钥将其会话密钥分发给组中的每个其他成员。
基于以上内容,存在对于简化对会话密钥的使用和建立的明显需要。
发明内容
根据本发明的第一方面,提供了一种用于通过握手过程建立用于组通信的组暂时密钥的方法。所述方法包括:向握手发起者提供共享组密钥、组密钥标识符、以及组标识符,所述组标识符识别组成员,其中所述组包括至少三个成员;生成组暂时密钥标识符;生成发起者随机数;创建发起消息,所述发起消息包括:所述组标识符、所述组密钥标识符、所述组暂时密钥标识符、以及所述发起者随机数;将所述发起消息发送到其他组成员;从至少一个组成员接收响应消息,所述响应消息包括:所述响应消息的发送者的随机数;确定是否已从预定的组成员集合接收到响应消息;以及当已从预定的组成员集合接收到响应消息时,至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、以及来自发起者随机数和所接收的随机数的集合的至少一个随机数,来计算组暂时密钥。
本发明的第一方面可以进一步独立地或者与至少一个其他实施例相结合地包括以下实施例之一。
在一实施例中,当确定尚未从预定的组成员集合接收到响应消息时,所述第一方面进一步包括:重新发起所述握手过程;以及中止所述握手过程。
在一实施例中,在所述组暂时密钥计算中使用属于预定的组成员集合的所有组成员的随机数。
在一实施例中,预定的组成员集合包括所有组成员。
在一实施例中,预定的组成员集合包括所有组成员的子组。
在一实施例中,当检测到未从其接收到响应消息的组成员时,重新发起所述握手过程。
在一实施例中,所述第一方面进一步包括:将包括在计算所述组暂时密钥时使用的随机数的消息发送到所述组。
在一实施例中,所述第一方面进一步包括:将包括在计算所述组暂时密钥时使用的随机数以及所接收的随机数的发送者信息的消息发送到所述组。
在一实施例中,所述第一方面进一步包括:将包括在计算所述组暂时密钥中使用的随机数、所述组密钥标识符、以及所述组标识符的消息发送到未从其接收到响应消息的至少一个组成员。
在一实施例中,所述第一方面进一步包括:在所述消息中指示出所述发起者随机数和在计算所述组暂时密钥中使用的随机数的顺序是否有意义。
在一实施例中,所述组密钥标识符和所述组标识符被包括在单个标识符中。
在一实施例中,所述握手过程在数据链路层中执行。
在一实施例中,所述握手过程在数据链路层之上执行,并且所述第一方面进一步包括:将所计算的组暂时密钥传输到数据链路层。
根据本发明的第二方面,提供了一种用于由握手过程建立用于组通信的组暂时密钥的方法。所述方法包括:向握手响应者提供共享组密钥、组密钥标识符、以及组标识符,所述组标识符识别组成员,其中所述组包括至少三个成员;从握手发起者接收发起消息,所述发起消息包括:所述组标识符、组暂时密钥标识符、以及发起者随机数;从至少一个组成员接收响应消息,所述消息包括:所述消息的发送者的随机数;确定是否已从预定的组成员集合接收到响应消息;以及当已从预定的组成员集合接收到响应消息时,至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、以及来自发起者随机数和至少一个所接收的响应消息中的所接收的随机数的集合的至少一个随机数,来计算组暂时密钥。
本发明的第二方面可以进一步独立地或者与至少一个其他实施例相结合地包括以下实施例之一。
在一实施例中,所述第二方面进一步包括:生成响应者随机数;创建至少包括所述响应者随机数的响应消息;以及将所述响应消息发送给所述组的其他成员。
在一实施例中,当确定尚未从预定的组成员集合接收到响应消息时,所述第二方面进一步包括:中止所述握手过程。
在一实施例中,在所述组暂时密钥计算中使用属于预定的组成员集合的所有组成员的随机数。
在一实施例中,组成员的预定集合包括所有组成员。
在一实施例中,组成员的预定集合包括所有组成员的子组。
在一实施例中,所述第二方面进一步包括:从所述握手发起者接收密钥计算消息,所述密钥计算消息包括在计算所述组暂时密钥中由所述握手发起者使用的随机数;检查所述握手响应者是否已接收到与所述密钥消息中包括的相同的随机数;当所述检查的结果为肯定时,在计算所述组暂时密钥时使用所述密钥消息中包括的随机数;以及当所述检查的结果为否定时,中止所述握手过程。
在一实施例中,所述第二方面进一步包括:从所述握手发起者接收密钥计算消息,所述密钥计算消息包括在计算所述组暂时密钥中使用的随机数以及所述随机数的相应发送者信息;检查所述握手响应者是否已从相同的发送者接收到与所述密钥消息中包括的相同的随机数;当所述检查的结果为肯定时,在计算所述组暂时密钥时使用所述密钥消息中包括的随机数;以及当所述检查的结果为否定时,中止所述握手过程。
在一实施例中,所述组密钥标识符和所述组标识符被包括在单个标识符中。
在一实施例中,所述握手过程在数据链路层中执行。
在一实施例中,所述握手过程在数据链路层之上执行,并且其中所述第二方面进一步包括:将所计算的组暂时密钥传输到数据链路层。
根据本发明的第三方面,提供了一种用于通过握手过程建立用于组通信的组暂时密钥的方法。所述方法包括:向组成员提供共享组密钥、组密钥标识符、以及组标识符,所述组标识符识别组成员,其中所述组包括至少三个成员;从握手发起者接收密钥计算消息,所述密钥计算消息包括:组暂时密钥标识符、组标识符、以及在计算所述组暂时密钥中使用的那些组成员的随机数;以及至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、所述组标识符、以及所接收的随机数来计算组暂时密钥。
在一实施例中,所述第三方面进一步包括:在所述密钥计算消息中指示出在计算所述组暂时密钥中随机数的顺序是否有意义。
根据本发明的第四方面,提供了一种用于通过握手过程建立用于组通信的组暂时密钥的设备。所述设备包括:收发器,被配置用于通过有线或无线连接与其他组成员通信;以及握手单元,包括共享组密钥、组密钥标识符、以及组标识符,所述组标识符识别组成员,其中所述组包括至少三个成员;其中所述握手单元被配置用于:生成组暂时密钥标识符;生成发起者随机数;创建发起消息,所述发起消息包括:所述组标识符、所述组密钥标识符、所述组暂时密钥标识符、以及所述发起者随机数;将所述发起消息发送到其他组成员;从至少一个组成员接收响应消息,所述响应消息包括:所述响应消息的发送者的随机数;确定是否已从预定的组成员集合接收到响应消息;以及当已从预定的组成员集合接收到响应消息时,至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、以及来自发起者随机数和所接收的随机数的集合的至少一个随机数来计算组暂时密钥。
根据本发明的第五方面,提供了一种用于通过握手过程建立用于组通信的组暂时密钥的设备。所述设备包括:收发器,被配置用于通过有线或无线连接与其他组成员通信;以及握手单元,包括共享组密钥、组密钥标识符、以及组标识符,所述组标识符识别组成员,其中所述组包括至少三个成员;其中所述握手单元被配置用于:从握手发起者接收发起消息,所述发起消息包括:所述组标识符、组暂时密钥标识符、以及发起者随机数;从至少一个组成员接收响应消息,所述消息包括:所述消息的发送者的随机数;确定是否已从预定的组成员集合接收到响应消息;以及当已从预定的组成员集合接收到响应消息时,至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、以及来自发起者随机数和至少一个所接收的响应消息中的所接收的随机数的集合的至少一个随机数,来计算组暂时密钥。
根据本发明的第六方面,提供了一种用于通过握手过程建立用于组通信的组暂时密钥的设备。所述设备包括:收发器,被配置用于通过有线或无线连接与其他组成员通信;以及握手单元,包括共享组密钥、组密钥标识符、以及组标识符,所述组标识符识别组成员,其中所述组包括至少三个成员;其中所述握手单元被配置用于:从握手发起者接收密钥计算消息,所述密钥计算消息包括:组暂时密钥标识符、组标识符、以及在计算所述组暂时密钥时使用的那些组成员的随机数;以及至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、所述组标识符、以及所接收的随机数,来计算组暂时密钥。
根据本发明的第七方面,提供了一种在计算机可读介质上包含的、用于通过握手过程建立用于组通信的组暂时密钥的计算机程序,所述组包括至少三个成员。所述计算机程序当在数据处理装置上执行时被配置执行以下步骤:生成组暂时密钥标识符;生成发起者随机数;创建发起消息,所述发起消息包括:组标识符、组密钥标识符、组暂时密钥标识符、以及所述发起者随机数;将所述发起消息发送到其他组成员;从至少一个组成员接收响应消息,所述响应消息包括:所述响应消息的发送者的随机数;确定是否已从预定的组成员集合接收到响应消息;以及当已从预定的组成员集合接收到响应消息时,至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、以及来自发起者随机数和所接收的随机数的集合的至少一个随机数,来计算组暂时密钥。
根据本发明的第八方面,提供了一种在计算机可读介质上包含的、用于由握手过程建立用于组通信的组暂时密钥的计算机程序,所述组包括至少三个成员。所述计算机程序当在数据处理装置上执行时被配置执行以下步骤:从握手发起者接收发起消息,所述发起消息包括:组标识符、组暂时密钥标识符、以及发起者随机数;从至少一个组成员接收响应消息,所述消息包括:所述消息的发送者的随机数;确定是否已从预定的组成员集合接收到响应消息;以及当已从预定的组成员集合接收到响应消息时,至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、以及来自发起者随机数和至少一个所接收的响应消息中的所接收的随机数的集合的至少一个随机数,来计算组暂时密钥。
根据本发明的第九方面,提供了一种在计算机可读介质上包含的、用于由握手过程建立用于组通信的组暂时密钥的计算机程序,所述组包括至少三个成员。所述计算机程序当在数据处理装置上执行时被配置执行以下步骤:从握手发起者接收密钥计算消息,所述密钥计算消息包括:组暂时密钥标识符、组标识符、以及在计算所述组暂时密钥中使用的那些组成员的随机数;以及至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、所述组标识符、以及所接收的随机数,来计算组暂时密钥。
本发明的优点涉及在握手过程中提高效率。
附图说明
附图被包括用于提供对本发明的进一步理解并组成了该说明书的一部分,附图示出了本发明的实施例,并连同描述一起协助说明本发明的原理。在附图中:
图1公开了示出根据本发明一实施例的在建立会话密钥中的组通信的流程图;
图2A公开了示出根据本发明另一实施例的握手发起者动作的流程图;
图2B公开了示出根据本发明一实施例的握手发起者动作的流程图;
图2C公开了示出根据本发明另一实施例的握手发起者动作的流程图;
图3A公开了示出根据本发明一实施例的握手发起者动作的流程图;
图3B公开了示出根据本发明另一实施例的握手发起者动作的流程图;
图4A公开了示出根据本发明一实施例的握手响应者动作的流程图;
图4B公开了示出根据本发明一实施例的握手响应者动作的流程图;
图4C公开了示出根据本发明另一实施例的握手响应者动作的流程图;
图4D公开了示出根据本发明另一实施例的握手响应者动作的流程图;
图4E公开了示出根据本发明另一实施例的握手响应者动作的流程图;
图5A公开了示出根据本发明一实施例的握手发起者实现方式的框图;
图5B公开了示出根据本发明另一实施例的握手发起者实现方式的框图;
图6A公开了示出根据本发明一实施例的握手响应者实现方式的框图;以及
图6B公开了示出根据本发明另一实施例的握手响应者实现方式的框图。
具体实施方式
现在将详细参考本发明的实施例,其示例在附图中示出。
图1公开了示出根据本发明一实施例的在建立会话密钥中的组通信的流程图。
通过将无线电媒体访问控制(MAC)层解决方案用作示例而描述了以下实施例。电气和电子工程师协会(IEEE)无线局域网(WLAN)规范和ECMA-368超宽频带标准是其中可使用本发明的示例。这些解决方案规定了被称为组密钥握手的过程,用以分发用于多播的临时会话密钥。
在以上两种规范中,在一对设备已经执行了用于导出成对临时会话密钥的成对握手过程之后,在该对设备之间发生组握手过程。图1公开了根据本发明一实施例的解决方案,其公开了对当前规范的改进。
图1仅公开了组中的两个成员。换句话说,该组还包括图1中未示出的其他成员。在此实施例中,组成员之一是握手发起者100。其余成员担当握手响应者102。在此实施例中,假定每个组成员拥有共享组密钥(GK),其被用作为主密钥。此外,每个组成员知道其他组成员,并且由此知道组的大小。每个组成员例如由MAC地址所识别。
握手发起者100通过创作并发送多播消息给响应者而发起组握手。首先,握手发起者生成组暂时密钥标识符(GTKID)(步骤104)以及随机数(步骤106)。在一实施例中,随机数是128位的密码随机数。发起消息包括用于将被导出的组暂时密钥的组暂时密钥标识符(GTKID)的命题(proposition)、以及以上生成的随机数(被标为R0)——其是每当发起者开始新的握手时新生成的。在发起消息中,握手发起者还指定组身份(GroupID)。组身份向发起消息的接收者指示所指的组(步骤108)。在一实施例中,GroupID识别所述组和将使用的组密钥(预共享密钥)二者。在另一实施例中,握手发起者在发起消息中分开地包括组身份(GroupID)和组密钥身份(GKID)。
握手发起者将发起消息广播到该组的其他成员。图1仅示出了所有可能的组成员中的一个其他成员(被标为握手响应者102)。当握手响应者102接收发起消息时,它可选地可以验证所提出的组暂时密钥标识符(GTKID)是新的。如果其不是新的,则该结果可以以某种方式指示给握手发起者100。握手响应者102生成(110)新的随机数(被标为R1),并创建响应消息(步骤112)。响应消息至少包括所生成的随机数R1。响应消息被广播给组的其他成员。每个组成员(除了握手发起者)执行相同的响应消息创建和发送。
握手发起者100接收包括随机数R1的响应消息(步骤114)。类似地,其还接收由其余组成员生成的其他随机数。在步骤116中,握手发起者100通过使用适当的函数计算组暂时密钥,以及可选地还计算密钥确认密钥。在一实施例中,所使用的函数是伪随机函数,并且它例如采用以下参数:
-组密钥(GK)
-组标识符(GroupID)
-握手发起者以及握手响应者的随机数R0、R1、...R(n-1),其中n是组成员的总数
-g是将随机数作为输入的函数。
可以写出以下函数:
GTK||KCK=PRF(GK,GroupID,R0,g(R1,R2,...,R{n-1}),
其中PRF的输出满足所需的大小,典型地是256位。PRF例如可以被实现为HMAC,其使用SHA-256以及将组密钥(GK)作为密钥,并且将PRF输入的其余部分作为输入数据。PRF函数的结果的后一部分(128位)构成密钥确认密钥(KCK)。其可以被用于确认组暂时密钥(GTK)被正确地生成。PRF函数还可以采用以上未公开的其他附加输入。一个附加输入可以是串“group_key”,其仅指示出PRF函数的结果是组密钥。
每个组成员(除了握手发起者)执行相同的组暂时密钥(GTK)的生成过程(步骤118、120)。如上所述,由于握手发起者100通过组密钥身份识别将在发起消息中使用的组密钥(GK),因此每个组成员(响应者)能够使用组密钥标识符检索组密钥。对组暂时密钥(GTK)的计算以与握手发起者的情形中的完全相同方式被执行。组暂时密钥(GTK)接着可以被用于保护从发送设备到接受者设备组的多播流量。
在上文中,g函数被用在PRF函数中。为了避免对组成员的排序和编号,函数g可以是可交换的,即,g的输出独立于输入的顺序。可交换的函数的示例是:
如果使用该函数,则响应者可以通过首先等待其他响应者发送其响应者随机数,并接着适当地选择其自己的响应者随机数,将g的输出强制为任意选定值。如果握手发起者总是选择新的随机数R0,这不会产生问题。如果无法这样假定,则能够这样选择g,使其具有充分的单向属性,以防止将输出强制为选定值。这样的函数的示例例如是:密码累加器以及指数函数。密码累加器例如可以是以下:
g(R1,R2,...,R{n-1})=prf(R1)∧prf(R2)∧...∧prf(R{n-1}),
其中∧是对适当长度的串prf(Ri)的逐位“与”。
相应地,指数函数例如可以是以下:
g(R1,R2,...,R{n-1})=αR1·R2·...·R{n-1)mod p
图1中公开的解决方案可以在媒体访问控制(MAC)层中实现。如果其在MAC层之上实现,则提供用于将会话密钥(组暂时密钥(GTK))传输到MAC层的过程。
图2A公开了示出根据本发明一实施例的握手发起者动作的流程图。图2A中的初始情况与图1完全相同。图2A中的步骤200-206等同于图1中的步骤104-108和114。因此,对这些步骤的描述被省略。
尽管图1中公开的实施例假定所有组成员都在场,并且每个组成员的随机数都被用于计算组暂时密钥,但是图2A讨论了下述情况,其中当发起消息被发送时,或当不是所有已接收的随机数都被用于计算组暂时密钥时,可以不用所有组成员都在场。
在步骤208中,确定是否已从所需组成员接收了响应。不过,在本发明的不同实施例中,术语“所需”可以具有不同的意思。
在一实施例中,直到从每个组成员都接收了随机数,才计算组暂时密钥。由于握手发起者以及其他组成员知道组结构,握手发起者能够确定是否已从每个组成员接收了响应消息(以及由此接收了随机数)。相应地,由于每个握手响应者知道组结构,则能够确定是否已从每个组成员接收了响应消息(以及由此接收了随机数)。如果每个组成员已提供了其自身的随机数,则握手发起者和握手响应者能够计算组暂时密钥(步骤210),如在图1中已经更详细讨论的。
如果尚未从每个组成员接收随机数,则握手发起者可以重新发起握手过程。缺少至少一个随机数还意味着,当握手过程被发起时,不是所有的组成员都在场。握手发起者可以再次通过之前情形中的相同配置重新发起握手过程。握手发起者的另一选项是:重新发起与向其他组成员提供了其自身的随机数的那些握手响应者的握手过程。
在一实施例中,可以存在这样的参数,其确定在未从握手响应者接收到随机数的情形中的重新发起的最大次数。如果达到了重新发起的最大次数,并且如果握手过程在MAC层中实现,则MAC层可以将握手过程失败的通知转发到上层。充当握手发起者的用户于是可以决定如何继续进行握手过程。
在图2A的另一实施例中,可以向握手发起者提供配置信息,该配置信息将预定的组成员确定为组的核心部分。因此,如果在步骤208中确定核心部分中的所有成员已经发送了其随机数,则握手发起者计算组暂时密钥,并仅将来自属于组的核心部分的那些组成员的随机数用于组暂时密钥的计算。相应地,如果核心部分中的所有组成员尚未发送其随机数,则握手过程被中止,并且握手发起者可以再次开始握手过程。核心部分还可以仅包括一个成员(例如,握手发起者或任意其他组成员)。因此,在这样的实施例中,仅一个随机数将被用于计算组暂时密钥。显而易见,在核心部分中包括的组成员的数量可以是1...n之间的任意数,其中n是组成员的总数。
在图2A的另一实施例中,不管可能尚未从每个组成员接收到随机数的事实,握手发起者基于从组成员接收的那些随机数来计算组暂时密钥。
图2B提供了对图2A中公开的解决方案的附加。在图2B中,握手发起者在广播消息中包括已接收随机数的列表,并广播该消息(步骤212)。通过这样做,握手发起者将(由握手发起者)用于计算组暂时密钥的那些随机数通知其他组成员。
图2C提供了对图2B中公开的解决方案的附加。在图2C中,握手发起者在广播消息中包括已接收随机数及其发送者的列表,并广播该消息(步骤214)。通过这样做,握手发起者将(由握手发起者)用于计算组暂时密钥的那些随机数通知其他组成员。由于广播消息还识别了随机数的发送者,因此广播消息的每个接收者能够检查:广播消息中的随机数与早先从每个组成员接收的随机数相同。
在以上公开的实施例中,例如当创建组的时候,有可能使组成员配备有这样的配置信息,即该配置信息用于确定规则,例如,当握手过程被发起的时候不是所有组成员在场时如何继续进行。
图3A公开了示出根据本发明一实施例的握手发起者动作的流程图。图3A的情况是,当组暂时密钥(GTK)被计算(步骤210)时,不是所有组成员在场。当握手发起者检测到(步骤300)当组暂时密钥(GTK)被计算时不在场的组成员现在在场的时候,握手发起者具有至少两个选项。握手发起者可以重新发起握手过程,以将加入的成员包括到组中(步骤302、200)。可替换地,握手发起者可以向加入的组成员发送这样的信息,基于所述信息,组成员能够计算所使用的组暂时密钥(GTK)(步骤304)。所发送的信息包括握手发起者在握手发起消息中包括的相同信息(换句话说,组密钥标识符(或组密钥标识符以及组身份)、组暂时密钥标识符(GTKID)、以及握手发起者的随机数。此外,所发送的信息包括发起者从响应者接收的并被用于计算组暂时密钥(GTK)的随机数。该信息还可以表明哪个随机数与哪个响应者相关。
图3B公开了示出根据本发明另一实施例的握手发起者动作的流程图。尽管图3A描述了握手发起者仅在检测到当生成组暂时密钥(GTK)时不在场的组成员之后才发送信息(如图3A的步骤304所公开的),但在图3B公开的实施例中,握手发起者周期性地将用于计算组暂时密钥(GTK)所需的信息发送给缺席的组成员。
图4A公开了示出根据本发明一实施例的握手响应者动作的流程图。握手响应者从握手发起者接收广播消息(发起消息)(步骤400)。响应于接收到广播消息,握手响应者生成新的随机数(步骤402)。此外,握手响应者创建至少包括所生成的随机数的响应消息,并将响应消息广播到组(步骤404)。
握手响应者从至少一个其他握手响应者类似地接收广播响应消息(步骤406)。每个响应消息包括由发送了响应消息的握手响应者生成的随机数。在步骤408,确定是否已从所需的组成员接收了响应。不过,在本发明的不同实施例中,术语“所需”可以具有不同的意思。
在一实施例中,每个组成员必须发送用于组暂时密钥计算的其自身的随机数。因此,握手响应者检查其是否已经从所有的组成员接收了响应消息。在此实施例中,每个组成员已经被配置有用于确定组的信息。换句话说,每个组成员知道属于该特定组的那些成员。如果握手响应者尚未从所有的组成员接收到响应消息,则其执行预定动作(步骤412)。预定动作例如可以是:中止握手过程。如果握手响应者已经从所有的组成员接收到响应消息,则其计算组暂时密钥(步骤410)。组暂时密钥的计算过程已经在图1中更详细地讨论过。
在另一实施例中,握手响应者已经被提供有这样的配置信息,所述配置信息将组的预定成员确定为组的核心部分。因此,如果在步骤408中确定:在步骤406中核心部分中的所有成员已经发送了其随机数,则握手响应者计算组暂时密钥,并在组暂时密钥计算中仅使用来自属于核心部分的那些组成员的随机数。相应地,如果核心部分中的所有组成员尚未发送其随机数,则执行预定动作(步骤412)。预定动作例如可以是:中止握手过程。
图4B公开了示出根据本发明一实施例的握手响应者动作的流程图。在此实施例中,握手响应者已经被提供有这样的配置信息,所述配置信息将组的预定成员确定为组的核心部分。在此情形中,握手响应者不属于核心部分。
握手响应者从握手发起者接收广播消息(发起消息)(步骤420)。由于握手响应者不属于核心部分,其不会响应于从握手发起者接收到发起消息而发送响应消息。不过,握手响应者从至少一个其他握手响应者接收到响应消息(步骤422)。在此实施例中,仅属于核心部分的那些组成员将响应消息广播到其他组成员。每个响应消息包括由发送响应消息的握手响应者生成的随机数。
在步骤424,确定是否已从所需的组成员接收了响应。在此实施例中,握手响应者检查其是否已从属于核心部分的所有组成员接收了响应消息。如果否,则握手响应者执行预定动作(步骤428)。预定动作例如可以是:中止握手过程。
如果握手响应者已从属于核心部分的所有组成员接收了响应消息,则其计算组暂时密钥(步骤426),并在组暂时密钥计算中仅使用来自属于核心部分的那些组成员的随机数。组暂时密钥的计算过程已经在图1中更详细地讨论过。
图4C公开了示出根据本发明另一实施例的握手响应者动作的流程图。图4C所公开的实施例直到步骤446之前都与图4A公开的实施例一致。因此,图4C的步骤440-446等同于图4A的步骤400-406,并因此,与这些步骤有关的描述在此被省略。
在步骤448,握手响应者从握手发起者接收包括列表的广播消息。在一实施例中,列表包括握手发起者在计算组暂时密钥时使用的那些随机数。在另一实施例中,列表还识别哪个随机数与哪个组成员相关。接下来,握手响应者将列表与其在步骤440中从握手发起者以及在步骤446中从其他组成员接收的随机数进行比较(步骤450)。
如果列表仅包括由握手发起者用于计算组密钥的随机数,则握手响应者检查:其已经在来自组的其他成员的广播消息(响应消息)中接收了相同的随机数。如果列表还识别随机数的发送者,则握手响应者可以检查:其从相同的发送者接收了响应消息(每个响应消息包括随机数),以及发送者的随机数与列表中的发送者的随机数相同。
在一实施例中,仅当从握手发起者接收的所有随机数等于在广播消息中接收的随机数时,所述比较才是可接受的。在另一实施例中,从握手响应者接收的所有随机数等于在来自握手发起者的列表中的随机数可以不是必须的。
如果比较的结果是可接受的,则握手响应者计算组暂时密钥(步骤454),并将列表中的随机数用于组暂时密钥计算。组暂时密钥的计算过程已经在图1中更详细地讨论过。如果比较的结果是不可接受的,则握手响应者执行预定动作(步骤456)。预定动作例如可以是:中止握手过程。
尽管在图1、图2A-2B、3A-3B和4A-4C中未公开,但是握手过程可以继续进行验证步骤,其中,验证每个组成员已经正确地计算了组暂时密钥,以及所计算的组暂时密钥现在可以被使用。
握手发起者将验证消息广播到组。在所述消息中,发起者包括与发起消息中包含的相同的随机数(R0),以及通过使用最新导出的密钥确认密钥(KCK)为该消息计算的密码检验码GTK MIC(组暂时密钥消息完整性码)。在接收到前述消息时,握手响应者将执行以下两个步骤。
1.使用KCK为该消息验证GTK MIC。如果重新计算的GTK MIC不匹配于所接收消息中的GTK MIC,则所接收的消息被丢弃,并且握手被中止。否则,所接收的消息被看成是发起者持有正确GK、已导出正确GTK和KCK的证明。
2.构造并向组发送验证消息。
相应地,握手响应者将验证消息广播到组(以上的步骤2)。在所述消息中,握手响应者包括在步骤112中创建的响应消息中的相同的随机数,以及通过使用最新导出的KCK为该消息计算的密码检验码GTK MIC。
在接收到以上消息时,握手发起者和其他握手响应者使用KCK为该消息验证GTK MIC。如果所计算的GTK MIC不匹配于所述消息中的GTK MIC字段,则所述消息被丢弃,并且握手被中止。
当握手发起者和握手响应者已经接收和接受了所有验证消息时,它们为该组安装GTK和GTKID。
尽管以上公开了握手响应者等待来自握手发起者的验证消息,以及握手响应者首先验证该消息,并且接着握手响应者才发送其相应的验证消息,但是在另一实施例中,组成员有可能同时开始验证过程。换句话说,当一个组成员已计算了组暂时密钥(GTK)和密钥确认密钥(KCK)时,该组成员(握手发起者和握手响应者)接着可以通过发送这样的验证消息来开始验证过程,所述验证消息包括组成员的初始随机数和通过使用最新导出的KCK为该消息计算的密码检验码GTK MIC。
以上验证过程仅是一种可能的替换方案,而也可以使用其他方法。
图4D公开了示出根据本发明另一实施例的握手响应者动作的流程图。图4D所公开的实施例直到步骤422之前都与图4B公开的实施例一致。因此,图4D的步骤460-462等同于图4B的步骤420-422,并因此,与这些步骤有关的描述在此被省略。
在步骤464,握手响应者从握手发起者接收包括列表的广播消息。在一实施例中,列表包括握手发起者在计算组暂时密钥时使用的那些随机数。在另一实施例中,列表还识别哪个随机数与哪个组成员相关。接下来,握手响应者将列表与其在步骤460中从握手发起者以及在步骤462中从其他组成员接收的随机数进行比较(步骤466)。
如果列表仅包括由握手发起者用于计算组密钥的随机数,则握手响应者检查:其已经在来自组的其他成员的广播消息(响应消息)中接收了相同的随机数。如果列表还识别随机数的发送者,则握手响应者可以检查:其从相同的发送者接收了响应消息(每个响应消息包括随机数),以及发送者的随机数与列表中的发送者的随机数相同。
如果比较的结果是可接受的,则握手响应者计算组暂时密钥(步骤470),并将列表中的随机数用于组暂时密钥计算。组暂时密钥的计算过程已经在图1中更详细地讨论过。如果比较的结果是不可接受的,则握手响应者执行预定动作(步骤472)。预定动作例如可以是:中止握手过程。
图4E公开了示出根据本发明另一实施例的握手响应者动作的流程图。
在接收步骤480中,在图3A的步骤304中或在图3B的步骤310中发送的信息被这样的组成员从握手发起者接收,即所述组成员当发起握手过程时未在场。所接收的信息包括握手发起者在握手发起消息中包括的相同信息(换句话说,组密钥标识符(或组密钥标识符以及组身份)、组暂时密钥标识符(GTKID)、以及握手发起者的随机数。此外,所发送的信息包括发起者从响应者接收的并被用于计算组暂时密钥(GTK)的随机数。基于所接收的信息,加入的组成员能够计算所需的组暂时密钥(GTK)(步骤482)。组暂时密钥的计算过程已经在图1中更详细地讨论过。
在图4D或4E的一实施例中,之前没有将其随机数广播到其他组成员的握手响应者创建随机数,并将其发送给握手发起者。握手发起者生成通过使用所接收的随机数来计算的消息完整性码(MIC),并将MIC发送回该握手响应者。
图5A公开了示出根据本发明一实施例的握手发起者实现方式的框图。根据图5,握手过程在数据链路层中实现,例如在媒体访问控制(MAC)层510中。
握手过程的操作由程序逻辑500控制。握手过程中所需的某些信息从上层应用层接收,即,对于组特定的信息508。MAC层510还包括组暂时密钥身份(GTKID)生成器502、随机数生成器504、以及组暂时密钥(GTK)生成器506。
图5B公开了示出根据本发明另一实施例的握手发起者实现方式的框图。尽管在图5A中握手发起者在数据链路层中实现,但在图5B中,握手发起者在数据链路层之上(上层530)实现。所述实现方式可以被分布在若干层中,或者其可以是单个层的解决方案。
握手过程的操作由程序逻辑520控制。上层530还包括组暂时密钥身份(GTKID)生成器522、随机数生成器524、组暂时密钥(GTK)生成器526、以及对于组特定的信息528。对于组特定的信息例如包括预定的共享组密钥、组密钥标识符、以及组标识符。
当组暂时密钥534已经被导出时,将密钥提供给数据链路层532。接着密钥可以被用于保护组成员之间的通信。
图6A公开了示出根据本发明一实施例的握手响应者实现方式的框图。根据图6,握手过程在数据链路层中实现,例如在媒体访问控制(MAC)层608中。
握手过程的操作由程序逻辑600控制。握手过程中所需的某些信息从上层应用层接收,即,对于组特定的信息606。MAC层608还包括随机数生成器602、以及组暂时密钥(GTK)生成器604。
图6B公开了示出根据本发明另一实施例的握手响应者实现方式的框图。尽管在图6A中握手响应者在数据链路层中实现,但在图6B中,握手响应者在数据链路层之上(上层628)实现。所述实现方式可以被分布在若干层中,或者其可以是单个层的解决方案。
握手过程的操作由程序逻辑620控制。上层628还包括随机数生成器622、组暂时密钥身份(GTKID)生成器624、以及对于组特定的信息626。对于组特定的信息例如包括预定的共享组密钥、组密钥标识符、以及组标识符。
随机数生成器602和622的虚线框意味着,随机数生成器602和622是可选特征。取决于实现方式,握手响应者可以或可以不包括随机数生成器602和622。
当组暂时密钥632已经被导出时,将密钥提供给数据链路层630。接着密钥可以被用于保护组成员之间的通信。
本发明的优点涉及例如通过减少用于建立秘密会话密钥所需的消息数量而实现的提高的效率。此外,在某些现有技术解决方案中,组成员必须首先创建成对的临时密钥,以便能够将对于组成员特定的组暂时密钥分发给其他组成员。换句话说,每个组成员具有对于组成员特定的组暂时密钥,该密钥必须在组通信之前在组成员之间分发。本发明引入了一种方式,以用于建立对于所有组成员公用的单个组暂时密钥用以保护组通信。同样显而易见,所述解决方案还简化了使用组暂时密钥的思路,因为根本不需要建立分开的成对暂时密钥。
同样显而易见,所需的信息量(不同临时性密钥的数量)显著减少,因为不需要创建或存储任意成对的临时性密钥。例如,假定一个组包括六个成员。每个成员必须与每个其他组成员建立成对的暂时密钥。此外,每个组成员具有对于成员特定的组暂时密钥。总之,每个组成员具有五个成对的暂时密钥,以及六个组暂时密钥(一个自身的组暂时密钥以及五个来自其他组成员的组暂时密钥)。本发明使得能够仅使用一个对于所有组成员公用的组暂时密钥,以代替在现有技术中使用的多个成对的暂时密钥以及组暂时密钥。
示例性的实施例可以在可以作为组的一部分的任何设备中实现。组设备之间的传输路径可以是有线或无线连接。
尽管以上公开了本发明可以在IEEE WLAN解决方案和ECMA-368超宽频带标准中使用,但是所公开的解决方案适用于需要组暂时密钥保护组通信的任意体系结构。例如,本发明可以应用于WiMedia协会的WiNet标准,其用于超宽频带无线电设备的组网。该标准规定了WiNet关联模型(WAM)过程,其在MAC层上进行,并且其中长期组密钥(GK)被分发给属于该组的所有设备。接着使用MAC层过程导出用于组通信(多播)的会话密钥,组暂时密钥(GTK)。
本发明的优点之一在于,避免了成对的握手。此外,本发明减少了组成员之间的消息数量。而且,组暂时密钥被所有组成员基本上同时地建立。此外,由于不需要成对的握手,以及由此不需要成对的暂时密钥,因此减少了组成员的设备中的存储器消耗。
应该理解,示例性实施例用于示例性目的,因为如硬件和/或软件领域的技术人员将理解的,用于实现示例性实施例的特定硬件的许多变体是可能的。例如,示例性实施例的一个或多个组件的功能可以经由一个或多个硬件和/或软件装置实现。
示例性实施例可以存储与此处所述的多种过程有关的信息。该信息可以被存储在一个或多个存储器中,诸如硬盘、光盘、磁光盘、RAM等等。一个或多个数据库可以存储用于实现本发明的示例性实施例的信息。数据库可以使用在此处列出的一个或多个存储器或存储设备中包括的数据结构(例如,记录、表、阵列、字段、图、树、列表等等)进行组织。参考示例性实施例描述的过程可以包括用于在一个或多个数据库中存储这样的数据的数据结构,所述数据由示例性实施例的设备和子系统的过程所收集和/或生成。
如计算机和/或软件领域的技术人员将理解的,由所有或一部分的示例性实施例可以使用根据本发明的示例性实施例的教导进行编程的、一个或多个通用处理器、微处理器、数字信号处理器、微控制器等等便利地实现。如软件领域的技术人员将理解的,基于示例性实施例的教导,可以由普通技术人员容易地准备适当的软件。此外,如电子领域的技术人员将理解的,通过准备对于应用特定的集成电路或通过使传统元件电路的适当网络互连,可以实现示例性实施例。因此,示例性实施例不限于硬件和/或软件的任意特定组合。
当在任一个计算机可读介质或计算机可读媒体组合上存储时,本发明的示例性实施例可以包括软件,用于控制示例性实施例的组件、用于驱动示例性实施例的组件、用于使得示例性实施例的组件能够与人类用户相交互,等等。所述软件可以包括但不限于:设备驱动、固件、操作系统、开发工具、应用软件等等。所述计算机可读介质可以进一步包括本发明的实施例的计算机程序产品,用于执行在实现本发明时执行的所有或一部分(如果处理是分布式的)处理。
如上所述,示例性实施例的组件可以包括计算机可读介质或存储器,用于保存根据本发明的教导进行编程的指令,以及用于保存此处所述的数据结构、表、记录、和/或其他数据。计算机可读介质可以包括任意适当的介质,其参与了将指令提供给处理器以用于执行。所述介质可以采用许多形式,包括但不限于:非易失性介质、易失性介质、传输介质等等。非易失性介质例如可以包括:光盘或磁盘、磁光盘等等。易失性介质可以包括动态存储器等等。计算机可读介质的公用形式例如可以包括:软盘、软磁盘、硬盘、磁带、任意其他适当的磁介质、CD-ROM、CDR、CD-RW、DVD、DVD-ROM、DVD±RW、DVD±R、任意其他适当的光介质、打孔卡、纸带、光标记图、具有孔图案或其他光学可识别的标记的任意其他适当的物理介质、RAM、PROM、EPROM、FLASH-EPROM、任意其他适当的存储器芯片或盒式磁带(cartridge)、载波或计算机可读的任意其他适当的介质。
尽管已经结合多个示例性实施例、实现方式描述了本发明,但是本发明并不限于此,而是覆盖了落入预期的权利要求的范围内的多种修改以及等效方案。
Claims (29)
1.一种用于握手过程的方法,包括:
向握手发起者提供共享组密钥、组密钥标识符、以及组标识符,所述组标识符识别组成员,其中所述组包括至少三个成员;
生成组暂时密钥标识符;
生成发起者随机数;
创建发起消息,所述发起消息包括:所述组标识符、所述组密钥标识符、所述组暂时密钥标识符、以及所述发起者随机数;
将所述发起消息发送给其他组成员;
从至少一个组成员接收响应消息,所述响应消息包括:所述响应消息的发送者的随机数;
确定是否已从预定的组成员集合接收到响应消息;以及
当已从所述预定的组成员集合接收到响应消息时,至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、以及来自发起者随机数和所接收的随机数的集合的至少一个随机数,来计算组暂时密钥。
2.根据权利要求1所述的方法,其中当确定尚未从所述预定的组成员集合接收到响应消息时,所述方法进一步包括以下步骤之一:
重新发起所述握手过程;以及
中止所述握手过程。
3.根据权利要求1所述的方法,其中在所述组暂时密钥计算中使用属于所述预定的组成员集合的所有组成员的随机数。
4.根据权利要求1所述的方法,其中所述预定的组成员集合包括所有组成员。
5.根据权利要求1所述的方法,其中所述预定的组成员集合包括所有组成员的子组。
6.根据权利要求1所述的方法,进一步包括:
当检测到未从其接收到响应消息的组成员时,重新发起所述握手过程。
7.根据权利要求1所述的方法,进一步包括:
将包括在计算所述组暂时密钥中使用的随机数的消息发送到所述组。
8.根据权利要求1所述的方法,进一步包括:
将包括在计算所述组暂时密钥中使用的随机数以及所接收的随机数的发送者信息的消息发送到所述组。
9.根据权利要求1所述的方法,进一步包括:
将包括在计算所述组暂时密钥时使用的随机数、所述组密钥标识符、以及所述组标识符的消息发送到未从其接收到响应消息的至少一个组成员。
10.根据权利要求9所述的方法,进一步包括:
在所述消息中指示出所述发起者随机数和在计算所述组暂时密钥时使用的随机数的顺序是否有意义。
11.根据权利要求1所述的方法,其中所述组密钥标识符和所述组标识符被包括在单个标识符中。
12.根据权利要求1所述的方法,其中所述握手过程在数据链路层中执行。
13.根据权利要求1所述的方法,其中所述握手过程在数据链路层之上执行,并且其中所述方法进一步包括:
将所计算的组暂时密钥传输到数据链路层。
14.一种用于握手过程的方法,包括:
向握手响应者提供共享组密钥、组密钥标识符、以及组标识符,所述组标识符识别组成员,其中所述组包括至少三个成员;
从握手发起者接收发起消息,所述发起消息包括:所述组标识符、组暂时密钥标识符、以及发起者随机数;
从至少一个组成员接收响应消息,所述消息包括:所述消息的发送者的随机数;
确定是否已从预定的组成员集合接收到响应消息;以及
当已从所述预定的组成员集合接收到响应消息时,至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、以及来自发起者随机数和至少一个所接收的响应消息中的所接收的随机数的集合的至少一个随机数,来计算组暂时密钥。
15.根据权利要求14所述的方法,进一步包括:
生成响应者随机数;
创建至少包括所述响应者随机数的响应消息;以及
将所述响应消息发送给所述组的其他成员。
16.根据权利要求14所述的方法,其中当确定尚未从所述预定的组成员集合接收到响应消息时,所述方法进一步包括:
中止所述握手过程。
17.根据权利要求14所述的方法,其中在所述组暂时密钥计算中使用属于所述预定的组成员集合的所有组成员的随机数。
18.根据权利要求14所述的方法,其中所述预定的组成员集合包括所有组成员。
19.根据权利要求14所述的方法,其中所述预定的组成员集合包括所有组成员的子组。
20.根据权利要求14所述的方法,进一步包括:
从所述握手发起者接收密钥计算消息,所述密钥计算消息包括在计算所述组暂时密钥时由所述握手发起者使用的随机数;
检查所述握手响应者是否已接收到与所述密钥计算消息中包括的相同的随机数;
当所述检查的结果为肯定时,在计算所述组暂时密钥中使用所述密钥计算消息中包括的随机数;以及
当所述检查的结果为否定时,中止所述握手过程。
21.根据权利要求14所述的方法,进一步包括:
从所述握手发起者接收密钥计算消息,所述密钥计算消息包括在计算所述组暂时密钥中使用的随机数以及所述随机数的相应发送者信息;
检查所述握手响应者是否已接收从相同的发送者接收到与所述密钥计算消息中包括的相同的随机数;
当所述检查的结果为肯定时,在计算所述组暂时密钥中使用所述密钥计算消息中包括的随机数;以及
当所述检查的结果为否定时,中止所述握手过程。
22.根据权利要求14所述的方法,其中所述组密钥标识符和所述组标识符被包括在单个标识符中。
23.根据权利要求14所述的方法,其中所述握手过程在数据链路层中执行。
24.根据权利要求14所述的方法,其中所述握手过程在数据链路层之上执行,并且其中所述方法进一步包括:
将所计算的组暂时密钥传输给数据链路层。
25.一种用于握手过程的方法,包括:
向组成员提供共享组密钥、组密钥标识符、以及组标识符,所述组标识符识别组成员,其中所述组包括至少三个成员;
从握手发起者接收密钥计算消息,所述密钥计算消息包括:组暂时密钥标识符、组标识符、以及在计算组暂时密钥中要使用的那些组成员的随机数;以及
至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、所述组标识符、以及所接收的随机数,来计算所述组暂时密钥。
26.根据权利要求25所述的方法,进一步包括:
在所述密钥计算消息中指示出在计算所述组暂时密钥中随机数的顺序是否有意义。
27.一种用于握手过程的装置,包括:
用于向握手发起者提供共享组密钥、组密钥标识符、以及组标识符的模块,所述组标识符识别组成员,其中所述组包括至少三个成员;
用于生成组暂时密钥标识符的模块;
用于生成发起者随机数的模块;
用于创建发起消息的模块,所述发起消息包括:组标识符、组密钥标识符、组暂时密钥标识符、以及所述发起者随机数;
用于将所述发起消息发送给其他组成员的模块;
用于从至少一个组成员接收响应消息的模块,所述响应消息包括:所述响应消息的发送者的随机数;
用于确定是否已从预定的组成员集合接收到响应消息的模块;以及
用于当已从所述预定的组成员集合接收到响应消息时,至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、以及来自发起者随机数和所接收的随机数的集合的至少一个随机数,来计算组暂时密钥的模块。
28.一种用于握手过程的装置,包括:
用于向握手响应者提供共享组密钥、组密钥标识符、以及组标识符的模块,所述组标识符识别组成员,其中所述组包括至少三个成员;
用于从握手发起者接收发起消息的模块,所述发起消息包括:组标识符、组暂时密钥标识符、以及发起者随机数;
用于从至少一个组成员接收响应消息的模块,所述消息包括:所述消息的发送者的随机数;
用于确定是否已从预定的组成员集合接收到响应消息的模块;以及
用于当已从所述预定的组成员集合接收到响应消息时,至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、以及来自发起者随机数和至少一个所接收的响应消息中的所接收的随机数的集合的至少一个随机数,来计算组暂时密钥的模块。
29.一种用于握手过程的装置,包括:
用于向组成员提供共享组密钥、组密钥标识符、以及组标识符的模块,所述组标识符识别组成员,其中所述组包括至少三个成员;
用于从握手发起者接收密钥计算消息的模块,所述密钥计算消息包括:组暂时密钥标识符、组标识符、以及在计算组暂时密钥中要使用的那些组成员的随机数;以及
用于至少通过密钥导出函数、由所述组密钥标识符识别的共享组密钥、所述组标识符、以及所接收的随机数,来计算所述组暂时密钥的模块。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/783,856 | 2007-04-12 | ||
US11/783,856 US20080253562A1 (en) | 2007-04-12 | 2007-04-12 | Handshake procedure |
PCT/FI2008/050181 WO2008125731A1 (en) | 2007-04-12 | 2008-04-11 | A handshake procedure |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101682639A CN101682639A (zh) | 2010-03-24 |
CN101682639B true CN101682639B (zh) | 2013-06-19 |
Family
ID=39853724
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008800196664A Expired - Fee Related CN101682639B (zh) | 2007-04-12 | 2008-04-11 | 握手过程 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20080253562A1 (zh) |
EP (1) | EP2135420B1 (zh) |
KR (1) | KR20090133130A (zh) |
CN (1) | CN101682639B (zh) |
WO (1) | WO2008125731A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5012173B2 (ja) * | 2007-04-26 | 2012-08-29 | コニカミノルタホールディングス株式会社 | 暗号通信処理方法及び暗号通信処理装置 |
US8284939B2 (en) | 2007-10-01 | 2012-10-09 | Neology, Inc. | Systems and methods for preventing transmitted cryptographic parameters from compromising privacy |
CN101431519B (zh) * | 2008-12-09 | 2011-06-01 | 西安西电捷通无线网络通信股份有限公司 | 一种三步握手协议方法 |
US8351434B1 (en) | 2009-02-06 | 2013-01-08 | Olympus Corporation | Methods and systems for data communication over wireless communication channels |
CN103124257B (zh) * | 2011-11-21 | 2018-01-19 | 中兴通讯股份有限公司 | 安全联盟管理方法及设备 |
CN103297400A (zh) * | 2012-03-01 | 2013-09-11 | 中兴通讯股份有限公司 | 基于双向转发检测协议的安全联盟管理方法及系统 |
US9237448B2 (en) * | 2012-08-15 | 2016-01-12 | Interdigital Patent Holdings, Inc. | Enhancements to enable fast security setup |
KR101701889B1 (ko) | 2012-08-15 | 2017-02-02 | 이카노스 커뮤니케이션스, 인크. | 크로스-토크 환경들에서의 강건한 핸드쉐이크 절차 |
KR20140041226A (ko) * | 2012-09-27 | 2014-04-04 | 삼성전자주식회사 | 이동 통신 시스템에서 그룹 통신을 위한 보안 관리 방법 및 장치 |
US9712324B2 (en) | 2013-03-19 | 2017-07-18 | Forcepoint Federal Llc | Methods and apparatuses for reducing or eliminating unauthorized access to tethered data |
US9697372B2 (en) * | 2013-03-19 | 2017-07-04 | Raytheon Company | Methods and apparatuses for securing tethered data |
JP6838789B2 (ja) * | 2013-06-28 | 2021-03-03 | 日本電気株式会社 | Ue及びその通信方法 |
EP3028431A1 (en) * | 2013-07-31 | 2016-06-08 | Nec Corporation | Devices and method for mtc group key management |
EP2846509B1 (en) * | 2013-09-09 | 2019-08-28 | Alcatel Lucent | Tls protocol extension |
CN108270561B (zh) * | 2017-01-04 | 2021-08-13 | 阿里巴巴集团控股有限公司 | 数据发送方法及装置、密钥索引的生成方法及装置 |
US11057776B2 (en) * | 2018-01-11 | 2021-07-06 | Mediatek Inc. | Device identifying method, identifying device, and device pairing method |
WO2020042023A1 (zh) * | 2018-08-29 | 2020-03-05 | 区链通网络有限公司 | 一种即时通信的数据加密方法及装置 |
US11637685B2 (en) | 2021-08-31 | 2023-04-25 | Samsung Display Co., Ltd. | System and method for transition encoding with flexible word-size |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1456993A (zh) * | 2003-05-30 | 2003-11-19 | 武汉理工大学 | 一种用户计算机之间交换密钥的方法 |
US7096356B1 (en) * | 2001-06-27 | 2006-08-22 | Cisco Technology, Inc. | Method and apparatus for negotiating Diffie-Hellman keys among multiple parties using a distributed recursion approach |
CN1905436A (zh) * | 2005-07-28 | 2007-01-31 | 北京航空航天大学 | 保证数据交换安全的方法 |
CN1909551A (zh) * | 2005-08-03 | 2007-02-07 | 北京航空航天大学 | 基于Web服务的数据交换方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US126847A (en) * | 1872-05-14 | Improvement in duplex telegraph apparatus | ||
US6363154B1 (en) * | 1998-10-28 | 2002-03-26 | International Business Machines Corporation | Decentralized systems methods and computer program products for sending secure messages among a group of nodes |
JP2000181803A (ja) * | 1998-12-18 | 2000-06-30 | Fujitsu Ltd | 鍵管理機能付電子データ保管装置および電子データ保管方法 |
US7178021B1 (en) * | 2000-03-02 | 2007-02-13 | Sun Microsystems, Inc. | Method and apparatus for using non-secure file servers for secure information storage |
US6882730B1 (en) * | 2000-06-29 | 2005-04-19 | Intel Corporation | Method for secure distribution and configuration of asymmetric keying material into semiconductor devices |
US7222236B1 (en) * | 2000-06-30 | 2007-05-22 | Stamps.Com | Evidencing indicia of value using secret key cryptography |
US7123719B2 (en) * | 2001-02-16 | 2006-10-17 | Motorola, Inc. | Method and apparatus for providing authentication in a communication system |
US7366170B2 (en) * | 2003-09-25 | 2008-04-29 | Kabushiki Kaisha Toshiba | Communication connection method, authentication method, server computer, client computer and program |
US20060126847A1 (en) * | 2004-11-12 | 2006-06-15 | Jin-Meng Ho | System and method for establishing secure communications between devices in distributed wireless networks |
-
2007
- 2007-04-12 US US11/783,856 patent/US20080253562A1/en not_active Abandoned
-
2008
- 2008-04-11 EP EP08736830.4A patent/EP2135420B1/en active Active
- 2008-04-11 WO PCT/FI2008/050181 patent/WO2008125731A1/en active Application Filing
- 2008-04-11 KR KR1020097023329A patent/KR20090133130A/ko not_active Application Discontinuation
- 2008-04-11 CN CN2008800196664A patent/CN101682639B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7096356B1 (en) * | 2001-06-27 | 2006-08-22 | Cisco Technology, Inc. | Method and apparatus for negotiating Diffie-Hellman keys among multiple parties using a distributed recursion approach |
CN1456993A (zh) * | 2003-05-30 | 2003-11-19 | 武汉理工大学 | 一种用户计算机之间交换密钥的方法 |
CN1905436A (zh) * | 2005-07-28 | 2007-01-31 | 北京航空航天大学 | 保证数据交换安全的方法 |
CN1909551A (zh) * | 2005-08-03 | 2007-02-07 | 北京航空航天大学 | 基于Web服务的数据交换方法 |
Non-Patent Citations (1)
Title |
---|
Yongdae Kim et al..《Group Key Agreement Efficient in Communication》.《IEEE TRANSACTIONS ON COMPUTERS》.2004,第53卷(第7期),905-921. * |
Also Published As
Publication number | Publication date |
---|---|
EP2135420A4 (en) | 2017-06-28 |
KR20090133130A (ko) | 2009-12-31 |
EP2135420A1 (en) | 2009-12-23 |
WO2008125731A1 (en) | 2008-10-23 |
US20080253562A1 (en) | 2008-10-16 |
CN101682639A (zh) | 2010-03-24 |
EP2135420B1 (en) | 2019-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101682639B (zh) | 握手过程 | |
US10594672B2 (en) | Secure node admission in a communication network | |
US20150188701A1 (en) | Scalable software architecture for quantum cryptographic key management | |
CN109194702B (zh) | 医疗数据记录方法、系统、计算机设备和存储介质 | |
US20210021412A1 (en) | Method and apparatus for electing representative node device, computer device, and storage medium | |
CN107210913A (zh) | 用于数据链路组的组密钥通告和分发 | |
CN104010276B (zh) | 一种宽带集群系统的组密钥分层管理方法、系统和终端 | |
CN109543443A (zh) | 基于区块链的用户数据管理方法、装置、设备和存储介质 | |
KR20070057871A (ko) | 다항식에 기초한 인증 방법 | |
CN111479269B (zh) | 一种可实现同步的Lora节点入网方法 | |
CN107113296A (zh) | 安全的节点到多节点通信 | |
US12021867B2 (en) | Authentication processing method and device, storage medium, and electronic device | |
US20090280738A1 (en) | Wireless Communication System Counting Mobile Terminals Using MBMS | |
CN104303583A (zh) | 用于在通信系统中建立安全连接的系统和方法 | |
CN115955358B (zh) | 基于点对点通信的数据流传输系统 | |
US20220397659A1 (en) | Method and device for performing uwb ranging | |
US20220400366A1 (en) | Method and device for providing uwb service | |
Wilhelm et al. | SUDOKU: Secure and usable deployment of keys on wireless sensors | |
KR101786607B1 (ko) | 이벤트 알림 방법 및 상기 방법을 수행하는 디바이스 및 통신 서버 | |
KR20220167170A (ko) | Uwb 레인징을 수행하기 위한 방법 및 장치 | |
CN112118267A (zh) | 一种匿名通信方法及相关装置 | |
CN114760594B (zh) | 一种基于去中心化网络的密切接触者追踪方法及系统 | |
CN116996113B (zh) | 一种卫星终端组网方法、装置及设备 | |
KR102482057B1 (ko) | 모바일 단말들 간의 모니터링 또는 트래킹을 위한 방법 | |
Zhang | Adaptive protocol for entity authentication and key agreement in mobile networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20160205 Address after: Espoo, Finland Patentee after: Technology Co., Ltd. of Nokia Address before: Espoo, Finland Patentee before: Nokia Oyj |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130619 Termination date: 20170411 |