提供及获得用于wusb安全的会话密钥的方法和设备的制作方法

文档序号:7643323阅读:186来源:国知局
专利名称:提供及获得用于wusb安全的会话密钥的方法和设备的制作方法
技术领域
本发明涉及无线通用串行总线(WUSB)安全,更具体地讲,涉及一种提供用于WUSB安全的会话密钥的方法和设备以及获得该会话密钥的方法和设备。
背景技术
在连接计算机及其外围装置的通用串行总线(USB)普及之后,由于无线LAN的普及,提出了以无线方式支持USB的无线通用串行总线(WUSB)。
图1是传统WUSB系统的示图。参照图1,传统WUSB系统包括主机2、装置131~装置333以及客户装置34。
主机2是用作WUSB主机的计算机系统。装置131~装置333以及客户装置34是用作WUSB装置的外围装置,例如,WUSB键盘、打印机、外部存储单元、数字相机等。更具体地讲,装置131~装置333连续地连接到主机2,客户装置34由用户暂时地连接到主机2。
根据WUSB标准,主机2生成在主机2和客户装置34之间的会话期间创建会话密钥所需的连接上下文(Connection Context,CC)。用户将会话密钥分发给客户装置34。会话密钥被称为成对暂时密钥(PTK)。
图2是传统WUSB安全通信方法的流程图。参照图2,主机2生成CC,所述CC包括连接主机ID(CHID)、连接装置ID(CDID)以及种子密钥(seed key)连接密钥(CK),并且主机2将CC输出到用户1(操作201)。
用户1将CC分发给连接到主机2的客户装置34。用户1看到主机2输出的CC,并使用诸如键盘的输入工具将CC输入客户装置34。或者用户将主机2输出的CC下载到诸如CD ROM的记录介质,并将下载的CC上传到客户装置34(操作202)。
客户装置34将CDID提供给主机2以请求与主机2相连接,并且主机2将指示客户装置34连接到主机2的响应发送到客户装置34(操作203)。
根据WUSB标准,主机2和客户装置34彼此交换四条消息以获得创建会话密钥所需的信息。消息交换协议被称为四次握手。
主机2将包括用于标识会话密钥的信息TKID(暂时密钥ID)和HNonce的消息1发送到客户装置34(操作204)。
客户装置34生成与客户装置34相应的随机数DNonce(操作205)。
客户装置34基于主机2的地址、客户装置34的地址、HNonce、与客户装置34相应的随机数DNonce以及SEED KEY CK创建与TKID相应的会话密钥(操作206)。
客户装置34将包括TKID和与客户装置34相应的随机数DNonce的消息2发送到主机2(操作207)。
主机2基于主机2的地址、客户装置34的地址、HNonce、与客户装置34相应的随机数DNonce以及SEED KEY CK创建与TKID相应的会话密钥(操作208)。
主机2计算消息完整性编码(MIC),并将消息3发送到客户装置34,所述消息3包括作为用于标识会话密钥的信息的TKID、与客户装置34相应的随机数HNonce以及MIC(操作209)。
客户装置34计算MIC,如果该MIC与从主机2获得的MIC相同,则客户装置34安装会话密钥,并将指示成功安装会话密钥的消息4发送到主机2(操作210)。
客户装置34在会话期间使用会话密钥执行与主机2的安全通信(操作211)。
主机2删除关于客户装置34的CC,并且释放主机2与客户装置34之间的会话(操作212)。
主机2和客户装置34必须共享创建会话密钥所需的信息(即与CC相应的信息)以使用会话密钥执行安全通信。然而,根据WUSB标准,每当客户装置连接到主机2时,用户1将创建会话密钥所需的信息分发给客户装置,这个工作对于用户1来说非常繁重。具体地说,如果许多客户装置频繁地连接到主机2,则用户1负担较大,造成WUSB力求的用户便利性的损害。
根据WUSB标准,由于每当客户装置连接到主机2时,用户1必须更新CC,因此必须更新包括共享CC的主机和装置的整个WUSB系统,这给主机和装置造成相当大的负担。

发明内容
本发明提供了这样一种方法和设备每当客户装置连接到主机时,所述方法和设备不需要将作为用于创建会话密钥所需的信息的连接上下文(CC)分发给客户装置。
根据本发明的一方面,提供一种用于提供将在主机与装置会话期间使用的会话密钥的方法,所述方法包括(a)基于存储在不允许装置访问的区域中的种子密钥创建会话密钥;(b)将所述会话密钥提供给所述装置。
根据本发明的另一方面,提供一种用于提供将在主机与装置会话期间使用的会话密钥的设备,所述设备包括会话密钥创建器,基于存储在不允许装置访问的区域中的种子密钥创建会话密钥;以及会话密钥提供器,将所述会话密钥提供给所述装置。
根据本发明的另一方面,提供一种在其上实现有用于执行用于提供将在主机与装置会话期间使用的会话密钥的方法的计算机程序的计算机可读存储介质,所述方法包括(a)基于存储在不允许装置访问的区域中的种子密钥创建会话密钥;(b)将所述会话密钥提供给所述装置。
根据本发明的另一方面,提供一种获得与主机和装置之间的会话相应的会话密钥的方法,所述方法包括(a)从所述主机获得创建会话密钥所需的第一信息;(b)将第一信息提供给用于创建会话密钥的设备以请求所述会话密钥;以及(c)获得作为所述请求的响应的会话密钥。
根据本发明的另一方面,提供一种获得与主机和装置之间的会话相应的会话密钥的设备,所述设备包括信息获得器,从主机获得生成会话密钥所需的信息;会话密钥请求器,将所述信息提供给用于生成会话密钥的设备以请求会话密钥;以及会话密钥获得器,获得作为所述请求的响应的会话密钥。
根据本发明的另一方面,提供一种在其上实现有用于执行权利要求10的获得与主机和装置之间的会话相应的会话密钥的方法的计算机程序的计算机可读存储介质,所述方法包括(a)从所述主机获得创建会话密钥所需的第一信息;(b)将第一信息提供给用于创建会话密钥的设备以请求所述会话密钥;以及(c)获得作为所述请求的响应的会话密钥。


通过结合附图对本发明示例性实施例进行的详细描述,本发明的上述和其它目的和其他特点和优点将会变得更加清楚,其中图1是传统无线通用串行总线(WUSB)系统的示图;图2是传统WUSB安全通信方法的流程图;图3是根据本发明示例性实施例的WUSB系统的示图;图4是根据本发明示例性实施例的WUSB安全通信方法的流程图;图5是根据本发明另一示例性实施例的WUSB安全通信方法的流程图;图6是根据本发明另一示例性实施例的WUSB安全通信方法的流程图;图7是根据本发明另一示例性实施例的WUSB安全通信方法的流程图;图8是根据本发明示例性实施例的客户装置的方框图;图9是根据本发明示例性实施例的会话密钥提供装置的方框图;图10是根据本发明另一示例性实施例的客户装置的方框图;图11是根据本发明另一示例性实施例的会话密钥提供装置的方框图;图12是根据本发明示例性实施例的获得会话密钥的方法的流程图;图13是根据本发明示例性实施例的提供会话密钥的方法的流程图;图14是根据本发明另一示例性实施例的获得会话密钥的方法的流程图;和图15是根据本发明另一示例性实施例的提供会话密钥的方法的流程图。
具体实施例方式
现在将参照附图更加全面地描述本发明。
图3是根据本发明示例性实施例的无线通用串行总线(WUSB)系统的示图。参照图3,WUSB系统包括主机5、装置161~装置363、客户装置64以及会话密钥提供装置7。
主机5是用作WUSB主机的计算机系统。装置161~装置363以及客户装置64是用作WUSB装置的外围装置,例如,WUSB键盘、打印机、外部存储单元、数字相机等。更具体地讲,装置161~装置363连接到主机5,并且客户装置64由用户4暂时地连接到主机5。
在本实施例中,会话密钥提供装置7从主机5获得创建会话密钥所需的信息,并基于所述信息创建会话密钥。每当任意客户装置暂时连接到主机5时,会话密钥提供装置7将会话密钥提供给所述任意客户装置。因此,对于用户4来说没有必要将创建会话密钥所需的信息(即,连接上下文)分发给客户装置64。会话密钥提供装置7持有种子密钥连接密钥(CK),而不是客户装置64。因此,每当任意客户装置连接到主机5时,没有必要创建SEED KEY CK并更新CC。本发明的当前实施例的WUSB系统使用在CC的组分中不更新的SEED KEY CK,并更新客户装置64的ID。
图4是根据本发明示例性实施例的WUSB安全通信方法的流程图。参照图4,在图3示出的WUSB系统按时序执行该WUSB安全通信方法。
会话密钥提供装置7检测客户装置64,并将连接主机ID(CHID)提供给客户装置64(操作401)。
客户装置64根据主机5和客户装置64同意的协议请求主机5发送连接装置ID(CDID),并且主机5响应于该请求将CDID提供给客户装置64(操作402)。所述协议可被设计为诸如动态主机配置协议(DHCP)的服务器/客户装置模型。
主机5获得包括CHID、CDID和SEED KEY CK的CC,然而客户装置64仅获得CHID和CDID。在当前和随后的示例性实施例中,会话密钥提供装置7持有SEED KEY CK,而不是客户装置64。每当任意客户装置连接到主机时,会话密钥提供装置7基于SEED KEY CK创建会话密钥,并将会话密钥提供给所述任意客户装置。
客户装置64将CDID提供给主机5以请求与主机5的连接,并且主机5将指示客户装置64连接到主机5的响应发送到客户装置64(操作403)。
主机5将包括用于标识会话密钥的信息TKID和HNonce的消息1发送到客户装置64(操作404)。根据WUSB标准的四次握手,主机5和客户装置64彼此交换四条消息以获得会话密钥。消息1是所述四条消息中的第一消息。
客户装置64将TKID以及HNonce提供给会话密钥提供装置7以请求会话密钥(操作405)。
会话密钥提供装置7生成与客户装置64相应的DNonce(操作406)。
会话密钥提供装置7基于主机5的地址、客户装置64的地址、HNonce、与客户装置64相应的随机数DNonce以及SEED KEY CK创建与TKID相应的会话密钥(操作407)。
会话密钥提供装置7将TKID、与客户装置64相应的随机数DNonce以及会话密钥提供给客户装置64(操作408)。
客户装置64将包括TKID以及与客户装置64相应的随机数DNonce的消息2发送到主机5(操作409)。消息2是四条消息中的第二消息。
主机5基于主机5的地址、客户装置64的地址、HNonce、与客户装置64相应的随机数DNonce以及SEED KEY CK创建与TKID相应的会话密钥(操作410)。
主机5计算消息完整性编码(MIC),并将消息3发送到客户装置64(操作411),所述消息3包括作为用于标识会话密钥的信息的TKID、与客户装置64相应的随机数HNonce以及MIC。
客户装置64计算MIC,如果该MIC与从主机5获得的MIC相同,则客户装置64安装会话密钥,并将指示成功安装会话密钥的消息4发送到主机5(操作412)。
客户装置64在会话期间使用会话密钥执行与主机5的安全通信(操作413)。
主机5删除关于客户装置64的CC,并且释放主机5与客户装置64之间的会话(操作414)。
图5是根据本发明另一示例性实施例的WUSB安全通信方法的流程图。参照图5,在图3中示出的WUSB系统按时序执行该WUSB安全通信方法。
会话密钥提供装置7检测客户装置64,并将CHID和CDID提供给客户装置64(操作501)。
客户装置64将CDID提供给主机5以请求与主机连接,并且主机5响应于该请求发送指示客户装置64连接道主机5的响应(操作502)。
主机5将包括用于标识会话密钥的信息TKID和HNonce的消息1发送到客户装置64(操作503)。
客户装置64将TKID和HNonce提供给会话密钥提供装置7以请求会话密钥(操作504)。
会话密钥提供装置7生成与客户装置64相应的随机数DNonce(操作505)。
会话密钥提供装置7基于主机5的地址、客户装置64的地址、HNonce、与客户装置64相应的随机数DNonce以及SEED KEY CK创建与TKID相应的会话密钥(操作506)。
会话密钥提供装置7将会话密钥、TKID以及与客户装置64相应的DNonce提供给客户装置64(操作507)。
客户装置64将包括TKID和与客户装置64相应的随机数DNonce的消息2提供给主机5(操作508)。
主机5基于主机5的地址、客户装置64的地址、HNonce、与客户装置64相应的随机数DNonce以及SEED KEY CK创建与TKID相应的会话密钥(操作509)。
主机5计算MIC,并将消息3发送到客户装置64(操作510),所述消息3包括作为用于标识会话密钥的信息的TKID、用于标识会话密钥的信息的与客户装置64相应的随机数HNonce以及MIC。
客户装置64计算MIC,如果该MIC与从主机5获得的MIC相同,则客户装置64安装会话密钥,并将指示成功安装会话密钥的消息4发送到主机5(操作511)。
客户装置64在会话期间使用会话密钥执行与主机5的安全通信(操作512)。
主机5删除关于客户装置64的CC,并且释放主机5与客户装置64之间的会话(操作513)。
图6是根据本发明另一示例性实施例的WUSB安全通信方法的流程图。参照图6,在图3中示出的WUSB系统按时序执行该WUSB安全通信方法。
会话密钥提供装置7检测客户装置64,并将CHID提供给客户装置64(操作601)。
客户装置64根据主机5和客户装置64同意的协议请求主机5发送CDID,并且主机5响应于该请求将CDID提供给客户装置64(操作602)。主机5获得包括CHID、CDID和SEED KEY CK的CC,而客户装置64仅获得CHID和CDID。
客户装置64将CDID提供给主机5以请求与主机连接,并且主机5将指示客户装置64连接到主机5的响应发送到客户装置604(操作603)。
主机5将包括用于标识会话密钥的信息TKID和HNonce的消息1发送到客户装置64(操作604)。
客户装置64生成与客户装置64相应的随机数DNonce(操作605)。
客户装置64将TKID、HNonce以及与客户装置64相应的随机数DNonce提供给会话密钥提供装置7以请求会话密钥(操作606)。
会话密钥提供装置7基于主机5的地址、客户装置64的地址、HNonce、与客户装置64相应的随机数DNonce以及SEED KEY CK创建与TKID相应的会话密钥(操作607)。
会话密钥提供装置7将TKID以及会话密钥提供给客户装置64(操作608)。
客户装置64将包括TKID以及与客户装置64相应的随机数DNonce的消息2发送到主机5(操作609)。
主机5基于主机5的地址、客户装置64的地址、HNonce、与客户装置64相应的随机数DNonce以及SEED KEY CK创建与TKID相应的会话密钥(操作610)。
主机5计算MIC,并将消息3发送到客户装置64(操作611),所述消息3包括作为用于标识会话密钥的信息的TKID、用于标识会话密钥的信息的与客户装置64相应的随机数HNonce以及MIC。
客户装置64计算MIC,如果该MIC与从主机5获得的MIC相同,则客户装置64安装会话密钥,并将指示成功安装会话密钥的消息4发送到主机5(操作612)。
客户装置64在会话期间使用会话密钥执行与主机5的安全通信(操作613)。
主机5删除关于客户装置64的CC,并且释放主机5与客户装置64之间的会话(操作614)。
图7是根据本发明另一示例性实施例的WUSB安全通信方法的流程图。参照图7,在图3中示出的WUSB系统按时序执行该WUSB安全通信方法。
会话密钥提供装置7检测客户装置64,并将CHID和CDID提供给客户装置64(操作701)。主机5获得包括CHID、CDID和SEED KEY CK的CC,而客户装置64仅获得CHID和CDID。
客户装置64将CDID提供给主机5以请求与主机5的连接,并且主机5将指示客户装置64连接到主机5的响应发送到客户装置64(操作702)。
主机5发送包括用于标识会话密钥的信息TKID和HNonce的消息1发送到客户装置64(操作703)。
客户装置64生成与客户装置64相应的随机数DNonce(操作704)。
客户装置64将TKID、HNonce以及与客户装置64相应的随机数DNonce提供给会话密钥提供装置7以请求会话密钥(操作705)。
会话密钥提供装置7基于主机5的地址、客户装置64的地址、HNonce、与客户装置64相应的随机数DNonce以及SEED KEY CK创建与TKID相应的会话密钥(操作706)。
会话密钥提供装置7将TKID以及会话密钥提供给客户装置64(操作707)。
客户装置64将包括TKID以及与客户装置64相应的随机数DNonce的消息2发送到主机5(操作708)。
主机5基于主机5的地址、客户装置64的地址、HNonce、与客户装置64相应的随机数DNonce以及SEED KEY CK创建与TKID相应的会话密钥(操作709)。
主机5计算消息完整性编码(MIC),并将消息3发送到客户装置64(操作710),所述消息3包括作为用于标识会话密钥的信息的TKID、用于标识会话密钥的信息的与客户装置64相应的随机数HNonce以及MIC。
客户装置64计算MIC,如果该MIC与从主机5获得的MIC相同,则客户装置64安装会话密钥,并将指示成功安装会话密钥的消息4发送到主机5(操作711)。
客户装置64在会话期间使用会话密钥执行与主机5的安全通信(操作712)。
主机5删除关于客户装置64的CC,并且释放主机5与客户装置64之间的会话(操作713)。
图8是根据本发明示例性实施例的客户装置64的方框图。参照图8,客户装置64包括WUSB接口81、有限范围通信(LRC)接口82、ID获得器83、连接处理器84、四次握手处理器85、会话密钥请求器86、会话密钥获得器87以及安全通信器88。当前实施例的客户装置64使用在图4或图5中示出的WUSB安全通信方法。因此,在图4或图5中示出的WUSB安全通信方法可被应用到本发明的当前实施例的客户装置64。
WUSB接口81通过WUSB通信信道发送/接收消息以及包括数据的数据包。WUSB接口81根据WUSB标准通过与超宽带(UWB)相应的通信信道发送/接收消息。
LRC接口82通过LRC通信信道接收/发送消息。LRC指示小于1米的短距离的接触式或非接触式通信,诸如,智能卡、红外数据协会(IrDA)、近场通信(NFC)、蓝牙、射频标识(RFID)等。LRC接口82通过LRC之一使用的通信信道发送/接收消息。LRC接口82通过WUSB接口81使用的WUSB通信信道发送/接收消息。
ID获得器83取决于客户装置64是使用图4示出WUSB安全通信方法还是图5示出的WUSB安全通信方法。如果客户装置64使用图4示出的WUSB安全通信方法,则ID获得器83通过LRC接口接收包括CHID的消息以从会话密钥提供装置7获得主机5的CHID。ID获得器83请求主机5发送CDID,并从主机5获得客户装置64的CDID。
如果客户装置64使用图5示出的WUSB安全通信方法,则ID获得器83通过LRC接口接收包括CHID和CDID的消息以从会话密钥提供装置7获得主机5的CHID以及客户装置64的CDID。
连接处理器84将由ID获得器获得的CDID提供给具有由ID获得器83获得的CHID的主机5以请求与主机5的连接。更具体地说,连接处理器84通过WUSB接口81发送包括由ID获得器83获得的CDID的消息以将由ID获得器83获得的CDID提供给主机5。连接处理器84从主机5接收连接请求的响应,并识别出与主机5的连接。
四次握手处理器85根据WUSB标准交换四条消息以传送创建会话密钥所需的信息,并标识所述会话密钥。四次握手处理器85通过WUSB接口81接收包括暂时密钥ID(TKID)以及HNonce的消息1以从主机5获得作为用于标识会话密钥的信息的TKID和连接到连接处理其84的HNonce。TKID用于标识主机5以客户装置64之间发送的包的编码密钥。HNonce由主机5生成。
四次握手处理器85响应于消息1通过WUSB接口81发送包括TKID和与客户装置64相应的随机数DNonce的消息2,以将作为用于标识会话密钥的信息的TKID和与客户装置64相应的随机数DNonce提供给主机5。所述TKID与包括在消息1中的TKID相同。与客户装置64相应的随机数DNonce由会话密钥提供装置7生成。
四次握手处理器85通过WUSB接口81响应于消息2的接收包括TKID、HNonce以及MIC的消息3以从主机5获得作为用于标识会话密钥的信息的TKID、HNonce以及MIC。
四次握手处理器85计算MIC,如果该MIC与主机5提供的MIC相同,则安装会话密钥,并通过WUSB接口81发送指示成功安装会话密钥的消息4。如果该MIC与从主机5提供的MIC不同,则四次握手处理器85从主机5断开。
会话密钥请求器86将作为由四次握手处理器85获得的信息的TKID和HNonce提供给会话密钥提供装置7以请求会话密钥。更具体地说,会话密钥请求器86通过LRC接口82发送包括作为由四次握手处理器85获得的信息的TKID和HNonce的消息,以将所述TKID和HNonce提供给会话密钥提供装置7。
会话密钥获得器87获得响应于会话密钥请求器86的请求会话密钥、作为用于标识会话密钥的信息的TKID以及作为创建会话密钥所需的信息的与客户装置64相应的随机数DNonce。更具体地说,会话密钥获得器87通过LRC接口82接收包括会话密钥、作为用于标识会话密钥的信息的TKID以及作为创建会话密钥所需的信息的与客户装置64相应的随机数DNonce的消息以获得会话密钥、TKID以及与客户装置64相应的随机数DNonce。
安全通信器88在使用四次握手处理器85安装的会话密钥进行会话期间执行与主机5的安全通信。更具体地说,安全通信器88通过WUSB接口81使用四次握手处理器85安装的会话密钥对数据包编码,并通过WUSB接口81发送编码的数据包。安全通信器88通过WUSB接口81接收数据包,并使用四次握手处理器85安装的会话密钥对接收的数据包解码以执行与主机5的安全通信。
由于安全通信器88在使用四次握手处理器85安装的会话密钥进行会话期间执行与主机5的安全通信,所以如果用户释放主机5与客户装置64之间的会话,则客户装置64没有用户的许可不能与主机5通信。通过根据WUSB标准从客户装置删除CHID或从主机5删除CDID并废除包括所述CHID和CDID的CC来释放主机5与客户装置64之间的会话。
图9是根据本发明示例性实施例的会话密钥提供装置7的方框图。参照图9,会话密钥提供装置7包括LRC接口91、安全存储器92、ID提供器93、随机数生成器94、会话密钥创建器95以及会话密钥提供器96。当前实施例的会话密钥提供装置7使用图4或图5示出的WUSB安全通信方法。因此,在图4或图5中示出的WUSB安全通信方法可被应用到本发明的当前实施例的会话密钥提供装置7。
LRC接口91通过LRC通信信道发送/接收消息。
安全存储器92是不允许客户装置64访问的存储区域。例如,由DallasSemiconductor生产的电可擦除可编程只读存储器(EEPROM)DS2432包括安全散列算法(SHA)-1引擎。
安全存储器92取决于会话密钥提供装置7使用图4示出的WUSB安全通信方法还是图5示出的WUSB安全通信方法。如果会话密钥提供装置7使用图4示出的WUSB安全通信方法,则安全存储器92存储主机的主机5的CHID,主机5是获得会话密钥提供装置7提供的会话密钥的装置的主机。
如果会话密钥提供装置7使用图5示出的WUSB安全通信方法,则安全存储器92除主机5的CHID之外还存储诸如连接到主机5的客户装置64的装置的CDID。主机5的用户将主机5持有的SEED KEY CK、CHID以及CDID存储在安全存储器92中,以便会话密钥提供装置7可将会话密钥提供给连接到主机5的装置。主机5的用户将SEED KEY CK、CHID以及CDID手动输入到安全存储器92中,或会话密钥提供装置7访问主机以自动将SEED KEYCK、CHID以及CDID下载到安全存储器92中。在后者的情况下,主机必须包括LRC接口91。
ID提供器93取决于会话密钥提供装置7使用图4示出的WUSB安全通信方法还是图5示出的WUSB安全通信方法。如果会话密钥提供装置7使用图4示出的WUSB安全通信方法,则ID提供器93检测客户装置64,并通过LRC接口91发送包括存储在安全存储器中的包括CHID的消息以将CHID提供给客户装置64。
如果会话密钥提供装置7使用图5示出的WUSB安全通信方法,则ID提供器93根据通用即插即用(UPnP)标准生成诸如自动IP的CDID,并将所述CDID存储在安全存储器92中。更具体地说,主机5确定连接到主机5的客户装置的最大数目N以及作为用于生成CDID的SEED KEY CK的特定手符串客户装置ID(GUID),并将确定的客户装置的最大数目N和GUID提供给会话密钥提供装置7。ID提供器93获得连接到主机5的客户装置的最大数目N以及作为用于生成CDID的SEED KEY CK的特定字符串GUID,将从1到N的值添加到GUID,生成CDID,并将所述CDID存储到安全存储器92中。
ID提供器93检测客户装置64,并通过LRC接口91发送包括存储在安全存储器92中的CHID和CDID的消息,以将CHID和CDID提供给客户装置64。
随机数生成器94从主机5获得TKID和HNonce,并且如果随机数生成器94接收到会话密钥请求,则生成与客户装置64相应的随机数DNonce。
会话密钥创建器95基于根据会话密钥请求获得的信息,创建将在主机5与客户装置64之间进行会话期间使用的会话密钥。更具体地说,会话密钥创建器95通过LRC接口91接收包括TKID和HNonce的消息以获得TKID和HNonce,并基于主机5的地址、客户装置64的地址、HNonce、从会话密钥提供装置7获得的随机数DNonce以及存储在安全存储器92中的SEED KEYCK创建与TKID相应的会话密钥。主机5的地址和客户装置64的地址被记录在消息的头的源地址字段以及目的地址字段中。
会话密钥提供器96发送包括由会话密钥创建器95创建的会话密钥、作为用于标识会话密钥的信息的TKID以及作为创建会话密钥所需的信息的由随机数生成器94生成的随机数DNonce的消息以将会话密钥、TKID以及随机数DNonce提供给客户装置64。
图10是根据本发明另一示例性实施例的客户装置64的方框图。参照图10,客户装置64包括WUSB接口101、LRC接口102、ID获得器103、连接处理器104、四次握手处理器105、随机数生成器106、会话密钥请求器107、会话密钥获得器108以及安全通信器109。当前实施例的客户装置64使用在图6或图7中示出的WUSB安全通信方法。因此,在图6或图7中示出的WUSB安全通信方法可被应用到本发明的当前实施例的客户装置64。
WUSB接口101通过WUSB通信信道发送/接收消息以及包括数据的数据包。LRC接口102通过LRC通信信道接收/发送消息。
ID获得器103取决于客户装置64使用图6示出的WUSB安全通信方法还是图7示出的WUSB安全通信方法。如果客户装置64使用图6示出的WUSB安全通信方法,则ID获得器103通过LRC接口102接收包括CHID的消息以从会话密钥提供装置7获得主机5的CHID。ID获得器103根据主机5和客户装置64同意的协议请求主机5发送CDID,并从主机5获得响应于所述请求的客户装置64的CDID。
如果客户装置64使用图7示出的WUSB安全通信方法,则ID获得器103通过LRC接口102接收包括CHID和CDID的消息以从会话密钥提供装置7获得主机5的CHID以及客户装置64的CDID。
连接处理器104将由ID获得器103获得的CDID提供给具有由ID获得器103获得的CHID的主机5以请求与主机5的连接。四次握手处理器105根据WUSB标准交换四条消息以传送创建会话密钥所需的信息,并标识所述会话密钥。
随机数生成器106使用四次握手处理器105从主机5获得作为用于标识会话密钥的信息的TKID以及作为创建会话密钥所需的信息的HNonce,并生成与客户装置64相应的随机数DNonce。
会话密钥请求器107将作为通过四次握手处理器105获得的信息的TKID、HNonce以及由随机数生成器106生成的随机数DNonce提供给会话密钥提供装置7以请求会话密钥。更具体地说,会话密钥请求器107通过LRC接口102发送包括作为通过四次握手处理器105获得的信息的TKID、HNonce以及由随机数生成器106生成的随机数DNonce的消息以将所述TKID、HNonce以及与客户装置64相应的随机数DNonce提供给会话密钥提供装置7。
会话密钥获得器108获得响应于会话密钥请求器107的请求的会话密钥、作为用于标识会话密钥的信息的TKID。更具体地说,会话密钥获得器108通过LRC接口102接收包括会话密钥和作为用于标识会话密钥的信息的TKID的消息以获得会话密钥和TKID。
安全通信器109在使用四次握手处理器105安装的会话密钥进行会话期间执行与主机5的安全通信。
图11是根据本发明另一示例性实施例的会话密钥提供装置7的方框图。参照图11,会话密钥提供装置7包括LRC接口111、安全存储器112、ID提供器113、会话密钥创建器114、以及会话密钥提供器115。当前实施例的会话密钥提供装置7使用图6或图7示出的WUSB安全通信方法。因此,在图6或图7中示出的WUSB安全通信方法可被应用到本发明的当前实施例的会话密钥提供装置7。
LRC接口111通过LRC通信信道发送/接收消息。安全存储器112是不允许客户装置64访问的存储区域。
安全存储器112取决于会话密钥提供装置7使用图6示出的WUSB安全通信方法还是图7示出的WUSB安全通信方法。如果会话密钥提供装置7使用图6示出的WUSB安全通信方法,则安全存储器112存储主机5的CHID,主机5是获得会话密钥提供装置7提供的会话密钥的装置的主机。如果会话密钥提供装置7使用图7示出的WUSB安全通信方法,则安全存储器112除主机5的CHID之外还存储诸如连接到主机5的客户装置64的装置的CDID。
ID提供器113取决于会话密钥提供装置7使用图6示出的WUSB安全通信方法还是图7示出的WUSB安全通信方法。如果会话密钥提供装置7使用图6示出的WUSB安全通信方法,则ID提供器113检测客户装置64,并通过LRC接口111发送包括存储在安全存储器112中的CHID的消息以将CHID提供给客户装置64。
如果会话密钥提供装置7使用图7示出的WUSB安全通信方法,则ID提供器113获得连接到主机5的客户装置的最大数目N以及作为用于生成CDID的SEED KEY CK的特定字符串GUID,将从1到N的值添加到GUID,生成CDID,并将所述CDID存储到安全存储器112中。ID提供器113检测客户装置64,并通过LRC接口111发送包括存储在安全存储器112中的CHID和CDID的消息以将CHID和CDID提供给客户装置64。
会话密钥创建器114从主机5获得TKID、HNonce以及与客户装置64相应的随机数DNonce并接收到会话密钥请求,并基于根据会话密钥请求获得的信息创建将在主机5与客户装置64之间进行会话期间使用的会话密钥。更具体地说,会话密钥创建器114通过LRC接口111获得包括TKID、HNonce以及与客户装置64相应的随机数DNonce的消息以获得TKID、HNonce以及与客户装置64相应的随机数DNonce,并基于主机5的地址、客户装置64的地址、HNonce、从客户装置64获得的随机数DNonce以及存储在安全存储器112中的SEED KEY CK创建与TKID相应的会话密钥。主机5的地址和客户装置64的地址被记录在消息的头的源地址字段以及目的地址字段中。
会话密钥提供器115通过LRC接口111发送包括由会话密钥创建器114创建的会话密钥以及作为用于标识会话密钥的信息的TKID的消息以将会话密钥和TKID提供给客户装置64。
图12是根据本发明示例性实施例的获得会话密钥的方法的流程图。参照图12,在图8中示出的客户装置64按时序执行本发明当前实施例的获得会话密钥的方法。因此,本发明当前实施例的获得会话密钥的方法可被应用到图8示出的客户装置64。
如果本发明当前实施例的获得会话密钥的方法被应用到使用图4示出的WUSB安全通信方法的设备,则操作125跟随操作121、122和123。如果本发明当前实施例的获得会话密钥的方法被应用到使用图5示出的WUSB安全通信方法的设备,则操作125跟随操作124。
客户装置64从会话密钥提供装置7获得主机5的CHID(操作121)。
客户装置64请求具有CHID的主机5发送CDID(操作122)。
客户装置64获得响应于所述请求的客户装置64的CDID(操作123)。
客户装置64从会话密钥提供装置7获得主机5的CHID以及客户装置64的CDID(操作124)。
客户装置64将在操作123或操作124获得的CDID提供给主机5以请求与主机5的连接(操作125)。
客户装置64接收对与主机5连接的请求的响应,并识别出客户装置64连接到主机5(操作126)。
客户装置64从连接到客户装置64的主机5获得作为用于标识会话密钥的信息的TKID以及HNonce(操作127)。
客户装置64将TKID以及HNonce提供给会话密钥提供装置7以请求会话密钥(操作128)。
客户装置64获得响应于对会话密钥的请求的会话密钥、作为用于标识会话密钥的信息的TKID以及作为创建会话密钥所需的信息的与客户装置64相应的随机数DNonce(操作129)。
客户装置64将TKID以及随机数DNonce提供给主机5(操作1210)。
客户装置64从主机5获得作为用于标识会话密钥的信息的TKID、HNonce以及MIC(操作1211)。
客户装置64计算MIC(操作1212),如果该MIC与在操作1211获得的MIC相同,则执行操作1213,并且如果该MIC与在操作1211获得的MIC不同,则执行操作1215。
客户装置64安装会话密钥,并通知主机5会话密钥安装成功(操作1213)。
客户装置64在会话期间使用在操作1213安装的会话密钥执行与主机5的安全通信(操作1214)。
客户装置64断开与主机5的连接(操作1215)。
图13是根据本发明示例性实施例的提供会话密钥的方法的流程图。参照图13,在图9中示出的会话密钥提供装置7按时序执行本发明当前实施例的提供会话密钥的方法。因此,本发明当前实施例的提供会话密钥的方法可被应用到图9示出的会话密钥提供装置7。
如果将本发明当前实施例的提供会话密钥的方法应用到使用图4示出的WUSB安全通信方法的设备,则操作137跟随操作131。如果将本发明当前实施例的提供会话密钥的方法应用到使用图5示出的WUSB安全通信方法的设备,则操作137跟随操作132到操作136。
会话密钥提供装置7检测客户装置64,并将CHID提供给客户装置64(操作131)。
会话密钥提供装置7检测客户装置64,确定客户装置64的编号(操作132),当连接到主机5的客户装置的最大数目是N时,如果客户装置64是第一客户装置或第N+1客户装置,则执行操作133,如果客户装置64不是第一客户装置也不是第N+1客户装置,则执行操作134。
会话密钥提供装置7将客户装置64的数目i确定为1(操作133)。
会话密钥提供装置7将客户装置64的数目i加1(操作134)。
会话密钥提供装置7将客户装置64的数目i添加到作为用于生成CDID的SEED KEY CK值的特定字符串GUID,以生成客户装置64的CDID(操作135)会话密钥提供装置7将CHID和CDID提供给客户装置64(操作136)。
会话密钥提供装置7从主机5获得TKID以及HNonce接收会话密钥的请求(操作137)。
会话密钥提供装置7生成与客户装置64相应的随机数DNonce(操作138)。
会话密钥提供装置7基于根据会话密钥请求获得的信息以及随机数DNonc生成将在主机5和客户装置64之间的会话期间使用的会话密钥(操作139)。
会话密钥提供装置7将会话密钥、TKID以及随机数DNonce提供给客户装置64(操作1310)。
图14是根据本发明另一示例性实施例的获得会话密钥的方法的流程图。参照图14,在图10中示出的客户装置64按时序执行本发明当前实施例的获得会话密钥的方法。因此,本发明当前实施例的获得会话密钥的方法可被应用到图10示出的客户装置64。
如果将本发明当前实施例的获得会话密钥的方法应用到使用图6示出的WUSB安全通信方法的设备,则操作145跟随操作141、142和143。如果将本发明当前实施例的获得会话密钥的方法应用到使用图7示出的WUSB安全通信方法的设备,则操作145跟随操作144。
客户装置64从会话密钥提供装置7获得主机5的CHID(操作141)。
客户装置64请求具有CDID的主机5发送CDID(操作142)。
客户装置64获得响应于对CDID的请求的客户装置64的CDID(操作143)。
客户装置64从会话密钥提供装置7获得主机5的CHID以及客户装置64的CDID(操作144)。
客户装置64将在操作143或操作144获得的CDID提供给主机5以请求与主机5的连接(操作145)。
客户装置64接收对与主机5连接的请求的响应,并识别出客户装置64连接到主机5(操作146)。
客户装置64从连接到客户装置64的主机5获得作为用于标识会话密钥的信息的TKID以及HNonce(操作147)。
客户装置64生成与客户装置64相应的随机数DNonce(操作148)。
客户装置64将TKID、HNonce以及与客户装置64相应的随机数DNonce提供给会话密钥提供装置7以请求会话密钥(操作149)。
客户装置64获得响应于对会话密钥的请求的会话密钥以及作为用于标识会话密钥的信息的TKID(操作1410)。
客户装置64将TKID以及随机数DNonce提供给主机5(操作1411)。
客户装置64从主机5获得作为用于标识会话密钥的信息的TKID、HNonce以及MIC(操作1412)。
客户装置64计算MIC(操作1413),如果该MIC与在操作1412获得的MIC相同,则执行操作1414,并且如果该MIC与在操作1412获得的MIC不同,则执行操作1416。
客户装置64安装会话密钥,并通知主机5会话密钥安装成功(操作1414)。
客户装置64在会话期间使用在操作1414安装的会话密钥执行与主机5的安全通信(操作1415)。
客户装置64断开与主机5的连接(操作1416)。
图15是根据本发明另一示例性实施例的提供会话密钥的方法的流程图。参照图15,在图11中示出的会话密钥提供装置7按时序执行本发明当前实施例的提供会话密钥的方法。因此,本发明当前实施例的提供会话密钥的方法可被应用到图11示出的会话密钥提供装置7。
如果将本发明当前实施例的提供会话密钥的方法应用到使用图6示出的WUSB安全通信方法的设备,则操作157跟随操作151。如果将本发明当前实施例的提供会话密钥的方法应用到使用图7示出的WUSB安全通信方法的设备,则操作157跟随操作152到操作156。
会话密钥提供装置7检测客户装置64,并将CHID提供给客户装置64(操作151)。
会话密钥提供装置7检测客户装置64,确定客户装置64的编号(操作152),当连接到主机5的客户装置的最大数目是N时,如果客户装置64是第一客户装置或第N+1客户装置,则执行操作153,如果客户装置64不是第一客户装置也不是第N+1客户装置,则执行操作154。
会话密钥提供装置7将客户装置64的数目i设置为1(操作153)。
会话密钥提供装置7将客户装置64的数目i加1(操作154)。
会话密钥提供装置7将客户装置64的数目i添加到作为用于生成CDID的SEED KEY CK值的特定字符串GUID,以生成客户装置64的CDID(操作155)会话密钥提供装置7将CHID和CDID提供给客户装置64(操作156)。
会话密钥提供装置7从主机5获得TKID、HNonce以及与客户装置64相应的随机数DNonce,接收会话密钥请求(操作157)。
会话密钥提供装置7基于根据会话密钥请求获得的信息生成将在主机5和客户装置64之间的会话期间使用的会话密钥(操作158)。
会话密钥提供装置7将会话密钥以及TKID提供给客户装置64(操作159)。
本发明还可被实施为计算机可读记录介质上的计算机可读代码。所述计算机可读记录介质可以是可存储其后可以被计算机系统读取的数据的任何数据存储装置。所述计算机可读记录介质的示例包括只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、磁带、软盘、光学数据存储装置以及载波。
根据本发明,由于每当客户装置暂时连接到主机时,会话密钥提供装置将会话密钥提供给客户装置,因此没有必要将作为创建会话密钥所需的信息的CC分发给客户装置,从而提高了用户的便利性,并保持了WUSB通信的安全。
由于每当客户装置暂时连接到主机时,会话密钥提供装置基于存储在安全存储器中的SEED KEY CK创建会话密钥,因此会话密钥提供装置不需要创建SEED KEY CK。因此,每当客户装置暂时连接到主机时,不需要为更新CC而更新WUSB系统。就是说,当客户装置暂时连接到主机时,本发明的WUSB系统使用作为CC的一个组分的不更新的SEED KEY CK,并更新客户装置的ID,从而减轻主机和装置的负担。
尽管已经参照本发明示例性实施例具体显示和描述了本发明,但是本领域的技术人员应该理解,在不脱离由权利要求限定的本发明的精神和范围的情况下,可以对其进行形式和细节上的各种改变。
权利要求
1.一种用于提供将在主机与装置会话期间使用的会话密钥的方法,所述方法包括(a)基于存储在不允许装置访问的区域中的种子密钥创建会话密钥;和(b)将所述会话密钥提供给所述装置。
2.如权利要求1所述的方法,其中,不允许装置访问的区域是安装在使用所述方法的设备中的安全存储器。
3.如权利要求1所述的方法,还包括将主机的主机ID提供给装置;和从装置获得由具有所述主机ID的主机提供的用于创建会话密钥的所需信息,其中,操作(a)基于所述信息和连接密钥(CK)创建会话密钥。
4.如权利要求1所述的方法,还包括;检测装置,并将特定的装置ID提供给装置;和从接收所述装置ID的装置接收会话密钥请求,其中,在接收到所述请求之后,操作(a)创建会话密钥。
5.如权利要求1所述的方法,还包括从装置接收与主机相应的第一随机数;和生成与装置相应的第二随机数,其中,操作(a)基于第一随机数和第二随机数创建会话密钥。
6.如权利要求5所述的方法,其中,操作(b)将第二随机数和会话密钥发送到所述装置。
7.如权利要求1所述的方法,其中,主机和装置基于无线通用串行总线标准。
8.一种用于提供将在主机与装置会话期间使用的会话密钥的设备,所述设备包括会话密钥创建器,基于存储在不允许装置访问的区域中的种子密钥来创建会话密钥;和会话密钥提供器,将所述会话密钥提供给所述装置。
9.一种实现有用于执行如权利要求1所述的提供将在主机与装置会话期间使用的会话密钥的方法的计算机程序的计算机可读存储介质,所述方法包括(a)基于存储在不允许装置访问的区域中的种子密钥创建会话密钥;和(b)将会话密钥提供给装置。
10.一种获得与主机和装置之间的会话相应的会话密钥的方法,所述方法包括(a)从主机获得创建会话密钥所需的第一信息;(b)将第一信息提供给用于创建会话密钥的设备以请求所述会话密钥;和(c)获得作为所述请求的响应的会话密钥。
11.如权利要求10所述的方法,还包括从所述用于创建会话密钥的设备获得主机的主机ID,其中,操作(a)从具有所述主机ID的主机获得生成会话密钥所需的第一信息。
12.如权利要求10所述的方法,还包括从主机获得装置ID;和将所述装置ID提供给所述主机以请求与所述主机的连接,其中,操作(a)从根据连接的请求连接的主机获得第一信息。
13.如权利要求10所述的方法,还包括从所述用于创建会话密钥的设备获得装置ID;和将所述装置ID提供给主机以请求与主机的连接,其中,操作(a)从根据连接的请求连接的主机获得第一信息。
14.如权利要求10所述的方法,其中,第一信息是与所述主机相应的随机数。
15.如权利要求10所述的方法,其中,操作(c)获得作为所述请求的响应的会话密钥以及生成会话密钥所需的第二信息,还包括将第二信息提供给主机。
16.如权利要求15所述的方法,其中,所述第二信息是与装置相应的随机数。
17.如权利要求10所述的方法,其中,主机和装置基于无线通用串行总线标准。
18.一种获得与主机和装置之间的会话相应的会话密钥的设备,所述设备包括信息获得器,从主机获得创建会话密钥所需的信息;会话密钥请求器,将所述信息提供给用于创建会话密钥的设备以请求会话密钥;和会话密钥获得器,获得作为所述请求的响应的会话密钥。
19.一种实现有用于执行如权利要求10所述的获得与主机和装置之间的会话相应的会话密钥的方法的计算机程序的计算机可读存储介质,所述方法包括(a)从主机获得创建会话密钥所需的第一信息;(b)将第一信息提供给用于创建会话密钥的设备以请求会话密钥;和(c)获得作为所述请求的响应的会话密钥。
全文摘要
本发明提供了一种提供用于无线通用串行总线(WUSB)安全的会话密钥的方法及设备。提供将在主机与装置会话期间使用的会话密钥的方法,所述方法包括基于存储在不允许装置访问的区域中的种子密钥创建会话密钥,并将所述会话密钥提供给所述装置。因此,用户不需要将生成会话密钥所需的信息(即,连接上下文(CC))分发给客户装置。
文档编号H04L9/08GK1996836SQ200710001530
公开日2007年7月11日 申请日期2007年1月4日 优先权日2006年1月3日
发明者吴昇栽, 李圣民 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1