用于通信系统中的远程消息证实的方法

文档序号:6478000阅读:157来源:国知局
专利名称:用于通信系统中的远程消息证实的方法
技术领域
本发明涉及一种方法,所述方法包括在第一电子设备的可信平台模块中创建第 一非对称密钥对,所述第一非对称密钥对包括第一公共密钥和第一秘密密钥;将所述第一 公共密钥关联于所述第一电子设备内的软件平台状态信息;利用与所述可信平台模块相 关联的证实身份密钥来证明所述第一公共密钥和所述软件平台状态信息,以便产生第一证 书;在所述第一电子设备内的应用中创建第二非对称密钥对,所述第二非对称密钥对包括 第二公共密钥和第二秘密密钥;利用所述第一秘密密钥来证明所述第二公共密钥,以便产 生第二证书;利用所述第二秘密密钥来对消息进行签名,以便提供所述第一电子设备中的 消息签名;向第二电子设备提供所述消息和所述消息签名;以及向所述第二电子设备提供 所述软件平台状态信息、所述第一证书和所述第二证书。 本发明还涉及一种电子设备,所述电子设备包括应用实体,其被配置以便创建第 二非对称密钥对,所述第二非对称密钥对包括第二公共密钥和第二秘密密钥,利用所述第 二秘密密钥来对消息进行签名,从而提供所述电子设备中的消息签名;可信平台模块,其被 配置以便创建第一非对称密钥对,所述第一非对称密钥对包括第一公共密钥和第一秘密密 钥,将所述第一公共密钥关联于软件平台状态信息,利用与所述可信平台模块相关联的证 实身份密钥来证明所述第一公共密钥和所述软件平台状态信息,从而产生第一证书,以及 利用所述第一秘密密钥来证明所述第二公共密钥,从而产生第二证书;通信实体,其被配置
6以便向第二电子设备提供所述消息和所述消息签名,以及向所述第二电子设备提供所述软 件平台状态信息、所述第一证书和所述第二证书。 本发明还涉及一种电子设备,所述电子设备包括用于在电子设备的可信平台模 块中创建第一非对称密钥对的装置,所述第一非对称密钥对包括第一公共密钥和第一秘密 密钥;用于将所述第一公共密钥关联于所述电子设备内的软件平台状态信息的装置;用于 利用与所述可信平台模块相关联的证实身份密钥来证明所述第一公共密钥和所述软件平 台状态信息以产生第一证书的装置;用于在所述电子设备内的应用中创建第二非对称密钥 对的装置,所述第二非对称密钥对包括第二公共密钥和第二秘密密钥;用于利用所述第一 秘密密钥来证明所述第二公共密钥以产生第二证书的装置;用于利用所述第二秘密密钥来 对消息进行签名以提供所述电子设备中的消息签名的装置;用于向第二电子设备提供所述 消息和所述消息签名的装置;以及用于向所述第二电子设备提供所述软件平台状态信息、 所述第一证书和所述第二证书的装置。 本发明还涉及一种系统,所述系统包括第一电子设备,其被配置以便在第一电子 设备的可信平台模块中创建第一非对称密钥对,所述第一非对称密钥对包括第一公共密钥 和第一秘密密钥,将所述第一公共密钥关联于所述第一电子设备内的软件平台状态信息, 利用与所述可信平台模块相关联的证实身份密钥来证明所述第一公共密钥和所述软件平 台状态信息,从而产生第一证书,在所述第一 电子设备内的应用中创建第二非对称密钥对, 所述第二非对称密钥对包括第二公共密钥和第二秘密密钥,利用所述第一秘密密钥来证明 所述第二公共密钥,从而产生第二证书,利用所述第二秘密密钥来对消息进行签名,从而提 供所述第一电子设备中的消息签名,向第二电子设备提供所述消息和所述消息签名,以及 向所述第二电子设备提供所述软件平台状态信息、所述第一证书和所述第二证书;以及第 二电子设备,其被配置以便利用所述第二电子设备中的所述第一证书和所述第二证书来检 验所述消息签名,从而检验所述第一电子设备的软件配置,并且检验出所述第一电子设备 是被签名的消息的发送方。 本发明还涉及一种体现在计算机可读介质上的计算机程序,所述计算机程序包括 用于控制处理器执行方法的代码,所述方法包括创建第一非对称密钥对,所述第一非对称 密钥对包括第一公共密钥和第一秘密密钥;将所述第一公共密钥关联于电子设备内的软 件平台状态信息;利用证实身份密钥来证明所述第一公共密钥和所述软件平台状态信息, 以便产生第一证书;创建第二非对称密钥对,所述第二非对称密钥对包括第二公共密钥和 第二秘密密钥;利用所述第一秘密密钥来证明所述第二公共密钥,以便产生第二证书;利 用所述第二秘密密钥来对消息进行签名,以便提供第一电子设备中的消息签名;向第二电 子设备提供所述消息和所述消息签名;以及向所述第二电子设备提供所述软件平台状态信 息、所述第一证书和所述第二证书。 本发明还涉及一种计算机程序,所述计算机程序包括用于控制处理器执行方法的 代码,所述方法包括创建第一非对称密钥对,所述第一非对称密钥对包括第一公共密钥和 第一秘密密钥;将所述第一公共密钥关联于电子设备内的软件平台状态信息;利用证实身 份密钥来证明所述第一公共密钥和所述软件平台状态信息,以便产生第一证书;创建第二 非对称密钥对,所述第二非对称密钥对包括第二公共密钥和第二秘密密钥;利用所述第一 秘密密钥来证明所述第二公共密钥,以便产生第二证书;利用所述第二秘密密钥来对消息进行签名,以便提供第一电子设备中的消息签名;向第二电子设备提供所述消息和所述消 息签名;以及向所述第二电子设备提供所述软件平台状态信息、所述第一证书和所述第二 证书。 在本发明的一个实施例中,所述证实身份密钥是非对称证实身份密钥对内的秘密 密钥。 在本发明的一个实施例中,在单个消息中,与给予第二电子设备的所述软件平台
状态消息、所述第一证书和所述第二证书一起,将所述消息和所述消息签名提供给所述第
二电子设备。在本发明的一个实施例中,在单独的消息中,将给予所述第二电子设备的所述
软件平台状态消息、所述第一证书和所述第二证书提供给所述第二电子设备。 在本发明的一个实施例中,第二电子设备被配置以便在所述第二电子设备中利
用所述第一证书和所述第二证书来检验所述消息签名,从而检验所述第一电子设备的软件
配置,并且检验出所述第一电子设备是被签名的消息的发送方。 在本发明的一个实施例中,所述电子设备进一步包括被配置以便引导所述电子设
备的操作系统实体。所述电子设备进一步包括所述可信平台模块,所述可信平台模块被配
置以便确定当前软件平台状态,以及如果所述当前软件平台状态与所述软件平台状态信
息相匹配,则从所述可信平台模块向所述应用实体提供所述第二秘密密钥。 在本发明的一个实施例中,所述电子设备进一步包括所述可信平台模块,所述可
信平台模块被配置以便将所述第二秘密密钥关联于所述软件平台状态信息,以及在永久
贮存器中存储与所述软件平台状态信息相关联的所述第二秘密密钥。 在本发明的一个实施例中,所述电子设备进一步包括所述永久贮存器,所述永久
贮存器可以被包括在辅助存储器中,例如作为磁盘分区、目录或文件。所述永久贮存器可以
是诸如闪速存储器、磁盘或光盘这样的计算机可读介质的至少一部分存储空间。 在本发明的一个实施例中,所述电子设备进一步包括所述可信平台模块,所述可
信平台模块被配置以便在所述电子设备内的永久贮存器中存储所述第一证书和所述第二证书。 在本发明的一个实施例中,所述电子设备进一步包括所述可信平台模块,所述可 信平台模块被配置以便利用至少一个软件组件的程序代码来为至少一个寄存器计算散列 值,使用所述散列值来为所述至少一个寄存器确定新值,以及利用所述至少一个寄存器的 值来表示所述软件平台状态信息。用于所述至少一个寄存器的散列值可以通过所述电子设 备内的操作系统来计算,并且可以从那里被提供到所述可信平台模块,所述可信平台模块 根据所述散列值来为所述至少一个寄存器确定所述新值。 在本发明的一个实施例中,所述可信平台模块被配置以便在所述至少一个寄存 器中为操作系统预留至少一个寄存器。 在本发明的一个实施例中,所述可信平台模块被配置以便在所述至少一个寄存 器中为通信应用预留至少一个寄存器。 在本发明的一个实施例中,当对密钥和软件平台状态消息进行签名时,散列值可 以通过待签名的密钥和所述软件平台状态信息来计算。然后,使用签名密钥将密码变换应 用到散列值。在本发明的一个实施例中,在级联到待签名的密钥之前,通过所述软件平台状 态消息来计算散列值。在本发明的一个实施例中,所述软件平台状态消息包括至少一个平台配置寄存器值。 在本发明的一个实施例中,密码变换(换言之,签名变换算法)是加密或解密算
法。在本发明的一个实施例中,密码变换是与加密或解密算法相分离的算法。 在本发明的一个实施例中,当利用签名密钥来证明至少一个值时,使用密码变换。 在本发明的一个实施例中,所述电子设备包括通信网络节点。 在本发明的一个实施例中,所述电子设备包括移动通信设备,也就是,移动终端。 在本发明的一个实施例中,所述系统包括分组交换网络,例如,因特网协议(IP)
网络。网络地址可以是IP地址。 在本发明的一个实施例中,所述通信系统包括移动通信网络。在本发明的一个实 施例中,所述移动终端包括移动台。在本发明的一个实施例中,所述通信系统包括以下中的 至少一个全球移动通信(GSM)网络和通用移动电话系统(UMTS)网络。所述移动终端可以 例如是具有支持不同接入类型的双模或多模功能性的GSM移动台或UMTS移动台。
在本发明的一个实施例中,所述计算机程序被存储在计算机可读介质上。所述计 算机可读介质可以是可装卸存储卡、磁盘、光盘或磁带。 以上描述的本发明的实施例可以彼此结合在一起使用。若干所述实施例可以被组 合到一起形成本发明的进一步实施例。本发明所涉及的方法、系统、电子设备或计算机程序 可以包括以上描述的本发明的至少一个实施例。 本发明的优势与在签名(换言之,消息的数字签名和远程证实)方面的改进的效 率相关。本发明使得当第一电子设备和第二电子设备之间不存在直接的端到端连接时能够 进行证实。


所包括的构成本说明书的一部分并且提供对本发明的进一步理解的附图示出了 本发明的实施例,其与本说明书一起有助于解释本发明的原理。在附图中
图1是示出了本发明的一个实施例中应用远程证实的通信系统的框图;
图2A是示出了本发明一个实施例中的远程设备上的系统建立阶段的流程图;
图2B是示出了本发明一个实施例中的远程设备上的引导和消息发送阶段的流程 图; 图3是示出了本发明一个实施例中的远程证实方法的流程图;以及
图4是示出了本发明 一个实施例中的电子设备的框图。
具体实施例方式
现在将详细参照本发明的实施例,在附图中说明了所述实施例的例子。
图1是示出了本发明一个实施例中应用远程证实的通信系统的框图。图1中存在 网络110。连接到网络110的有从证实角度来看充当远程节点的网络节点100,以及从证 实角度来看充当目标节点的网络节点120。从网络节点100发送到网络节点120的消息可 以经由诸如居间节点112或居间节点114中的至少一个居间节点来传送。网络节点100包 括应用102、操作系统104和可信平台模块(TPM) 106。操作系统104和TPM 106被配置以 便与永久贮存器108通信。另一方面,网络节点120包括应用122、操作系统124和证实身
9份密钥(AIK)的公共部分(P-AIK)126的副本。应当注意,网络节点120并不要求TPM用于 证实。操作系统124被配置以便与永久贮存器128通信。 在应用102与TPM 106之间的交互通过双向箭头151示出。首先,为了能够从网 络节点100向网络节点120派送消息,应用102在初始化阶段期间要求TPM 106创建第一 密钥对,所述第一密钥对包括第一公共密钥和第一秘密密钥(换言之,公钥和私钥)。所述 第一密钥对被绑定于与应用102相对应的PCR值。由此,应用102向TPM 106请求可公共 检验的证书。可公共检验的证书允许任何人检验第一公共密钥及其匹配的秘密密钥可证 明地被绑定于所提及的PCR值。由此,应用102请求TPM 106利用第一秘密密钥来对证书 进行签名,以便将第一秘密密钥绑定于第二公共密钥。由此,应用102创建消息,并且使用 第二秘密密钥来对该消息进行签名。 该消息还附有TPM测量,所述TPM测量涉及操作系统104和应用102中的至少一 个。使用TPM测量所获得的平台配置寄存器值也与由TPM106为该平台配置寄存器值所提 供的证书一起被附着到该消息。该消息被发送到网络节点120,如箭头152所示。在接收到 该消息时,网络节点120通过以下方式来检验网络节点100的软件配置与将第一密钥对中 的公共密钥及其相匹配的秘密密钥绑定到由AIK公共密钥所证明的PCR值的证书,以及用 于第二密钥对中的公共密钥的将其绑定到第一密钥对中的秘密密钥的证书进行对照,从而 检验该消息的签名。因而得出远程证实的结论。 图2A是示出了本发明一个实施例中的远程设备上的系统建立阶段的流程图。利 用椭圆示出了方法步骤,并且利用矩形示出了提供给方法步骤或从方法步骤中获得的信 息。方法步骤沿箭头的方向按从上至下的顺序进行。在本发明的一个实施例中,在类似于 图1中的网络节点100的网络节点中实施所述方法步骤。所述设备包括至少一个操作系统、 TPM以及至少一个应用。所述设备还包括永久贮存器250。 在步骤201,经应用请求,TPM创建第一密钥对,其是包括第一公共密钥和第一 秘密密钥的非对称密钥对。步骤201的输入是PCR值200A和存储根密钥(SRK) 200B。 利用矩形201A示出了第一公共密钥PK"第一秘密密钥SI^的使用被绑定于PCR值200A, PCR值200A表示从当前测量中获得的当前PCR值,所述当前测量是使用远程设备的操作系 统以及远程设备中的至少一个应用程序形成的。第一秘密密钥S&与PCR级联,如矩形201B 中所示。利用字符"l"示出了该级联。第一公共密钥P&作为明文字段201A被从TPM返 回给应用。第一秘密密钥作为加密字段201B(其包括利用SRK 200B加密的第一秘密密钥 以及PCR值200A)被返回。代替SRK 200B,可以使用不同的存储密钥用于加密,所述不同的 存储密钥受到以SRK结尾的密钥序列的保护。加密字段201B被TPM或应用存储到永久贮 存器250。 在步骤202, TPM被该应用用于对第一公共密钥201A进行签名。签名为第一公共 密钥201A提供了证书202A。第一公共密钥因而被证明。TPM使用第一公共密钥201A、 PCR值200A和证实身份密钥(AIK)200C。在本发明的一个实施例中,AIK 200C是非对称AIK 密钥对内的秘密密钥。在证书202A中,将PCR值200A与第一公共密钥201A进行级联,并 且利用AIK 200C对其进行密码变换。应用或TPM将证书202A(此处也被称为第一证书), 也就是CER1\,存储到永久贮存器250用于稍后使用。该应用也被告知在TPM中完成签名。
在本发明的一个实施例中,当对密钥和PCR值进行签名时,可以通过待签名的密钥和所述PCR值来计算散列值,然后将散列值作为自变量提供给密码变换算法,该密码变 换算法利用签名密钥,根据自变量来计算签名。在本发明的一个实施例中,在级联到待签名 的密钥之前,通过PCR值来计算散列值。 在步骤203,该应用创建包括第二公共密钥PK2和第二秘密密钥SK2的第二密钥对 203A。利用矩形203A1示出了第二公共密钥PK2,并且利用矩形203A2示出了第二秘密密钥 SK2。 在步骤204,第二秘密密钥203A2被提供给TPM, TPM密封(seal)第二秘密密钥 SK2。该密封使用第二秘密密钥203A2、 PCR值200A和SRK200B。该密封提供了加密字段 204A,加密字段204A包括利用SRK 200B级联和加密的PCR值200A和第二秘密密钥203A2。 应用或TPM将字段204A存储到永久贮存器250。稍后,TPM将解密被加密的第二秘密密钥 SK2,并且仅在通过解密字段204A所获得的PCR值匹配于该设备在那时的PCR值的情况下, 才将其提供给所述应用。在该阶段,已经创建了两个密钥对。应当注意,TPM不一定特别地 将第二秘密密钥203A2视为密钥,而是将其仅视为待密封的任意数据。
在步骤205, TPM被给予命令以便加载在加密字段204B中提供的密钥,加密字段 204B对应于加密字段201B,并且其包括利用SRK 200B加密的第一秘密密钥和PCR值。 该加载使用加密字段204B、 PCR值200A和SRK 200B。该加载仅在TPM检测到当前PCR值 200A匹配于加密字段204B中的PCR值的情况下才成功。这意味着该系统必须仍然具有相 同的安全软件配置。步骤205的结果是利用矩形205A所示出的第一秘密密钥SK" —旦已 经加载了第一秘密密钥SK"便可以在TPM中将其用于对第二公共密钥PK2进行签名。
在步骤206, TPM被该应用用来对如矩形203A1所示出的第二公共密钥PK2进行签 名。该签名使用矩形205A所示出的所加载的第一秘密密钥和矩形203A1所示出的第 二公共密钥PK2。该签名的结果是密码变换字段206A,密码变换字段206A包括利用第一秘 密密钥进行密码变换的第二公共密钥PK2。密码变换字段206A也被称为第二证书,也 就是CERT2。该应用或TPM将密码变换字段206A存储到永久贮存器250。
图2B是示出了本发明一个实施例中的远程设备上的引导和消息发送阶段的流程 图。利用椭圆示出了方法步骤,并且利用矩形示出了提供到方法步骤或从方法步骤中获得 的信息。方法步骤沿箭头的方向按从上至下的顺序进行。在本发明的一个实施例中,在类 似于图1中的网络节点100的网络节点中实施所述方法步骤。该设备包括至少操作系统、 TPM和至少一个应用。该设备还包括永久贮存器250。 在步骤207,在该设备中实现可检验的引导。结果是利用矩形207A所示的至少一 个被加载的软件组件。 在步骤208,由TPM实现测量阶段。在该测量阶段中,通过用于所述至少一个被加 载的软件组件的程序代码来计算散列值。所获得的散列值如矩形208A所示。所获得的散 列值也被用于设置如矩形208B所示的TPM的PCR值。由此,实现启封步骤。
在步骤209,从永久贮存器250读取加密字段208C。加密字段208C包括利用存储 根密钥(SRK)208B加密的第二秘密密钥SK2以及在密封步骤时的PCR值。该启封过程使用 PCR值208B、 SRK 208D和加密字段208C。启封过程仅在从加密字段208C解密的PCR值匹 配于当前PCR值208B的情况下才成功。这检验出该设备具有与密封时相同的软件配置并 且因而保持原样。启封的结果是如矩形209B所示的第二秘密密钥SI^。在此之后,可以给
11予TPM扩展命令,以便扩展PCR值208B。扩展的目的是使得第二秘密密钥不可用于其它过 程。当使用基于TPM的被检验的引导时,只有在引导期间加载的安全软件组件会被允许具 有使用的权利或检索SK2的权利。被检验的引导意味着可以引导任何软件,但只有正确 的软件(也就是,匹配于期望的PCR值的软件)会被允许访问像SI^这样的TPM密钥或者像 SK2这样的密封数据。因而,可信协议栈或通信应用是用于解密第二秘密密钥SK2的第一过 程。所述可信协议栈或通信应用被期望保护第二秘密密钥免遭在可信过程存在期间的其它 可能的恶意过程。 在步骤210,该应用利用第二秘密密钥209B对消息209A进行签名。结果是使用第 二秘密密钥SK2利用签名变换算法所处理的消息的散列,如矩形210A所示。
在步骤211,该消息被发送到目标设备,例如,图1中的网络节点120。该消息派送 使用消息209A、签名210A、 PCR值208B、测量208A、第一证书210B和第二证书210C。这些 元素被置于消息,该消息被发送到目标设备。由此,所述方法被视为在远程设备侧(也就 是,发送了该消息的设备)处结束。 接受方可以通过以第一证书210B和第二证书210C来检验所接收到的消息的签 名,从而检验发送方的软件配置。这是可行的,因为第一证书210B通过AIK 200C将第一密 钥对绑定于该软件配置,并且第二证书210C将第二密钥对绑定于第一密钥对。换言之,第 一证书是AIK所声明的PKJ皮绑定于指定的PCR值。因而,从AIK到第二密钥对(其被用 来对所发送的消息进行签名)存在信任链。如果目标设备信任AIK,则该消息中的测量可以 被安全地检验。该目标设备被期望能够检验来自可信第三方的AIK的可信度。
图3是示出了本发明一个实施例中用于远程证实的方法的流程图。
在步骤302,在与第一设备相关联的可信平台模块中创建包括第一公共密钥P&和 第一秘密密钥的第一密钥对。 在步骤304,第一公共密钥被关联于可信平台模块内的PCR值。所述关联可以 例如是PCR值到PI^的级联。利用字符"l"示出了该级联操作。 在步骤306,利用证实身份密钥(AIK)对级联PCRIPI^进行签名,以便产生第一证 书CER1\。在本发明的一个实施例中,第一证书CER1\被存储到永久贮存器。
在步骤308,在应用中(也就是在可信平台模块的外部)创建包括第二公共密钥 PK2和第二秘密密钥SK2的第二密钥对。 在步骤310,利用第一秘密密钥来证明第二公共密钥PK2,以便产生第二证书 CERT2。在本发明的一个实施例中,第二证书CERT2被存储到永久贮存器。
在步骤312,第一设备实现可检验的引导,并且根据第一设备内的至少一部分软件 配置为可信平台模块计算出PCR值。 在步骤314,在第一设备内组成消息数据。可以例如在电子邮件消息中、在即时消 息中或者一般地在数据分组中携带该消息数据。 在步骤316,利用第二秘密密钥SK2来对该消息数据进行签名。这包括,例如,通过 该消息数据计算散列函数。然后利用签名变换算法使用第二秘密密钥S&来处理由该散列 函数返回的结果值,以便为该消息数据产生签名。 在步骤318,该消息数据、用于该消息数据的签名、PCR值、第一证书CER1\和第二 证书CERT2作为消息被发送到第二设备。该消息在到达第二设备之前可以经过多个居间网
12络节点。在本发明的一个实施例中,软件配置测量值也在该消息中被发送到第二设备。
在步骤320,第二设备利用第一证书CER1\和第二证书CERT2来为该消息数据检验 签名。第二证书CERT2证明第二公共密钥PK2,并且第一证书CER1\证明第一公共密钥P&。 基于通过第二设备以可信任方式所获得的证实身份密钥,第一证书是可信的。由此,第二设 备可以将该消息视为是被远程证实的,并且该方法结束。 图4是示出了本发明一个实施例中的电子设备的框图。该电子设备可以例如是移 动台、膝上型计算机、台式计算机或掌上型计算机。移动台可以是移动电话、个人数字助理 (PDA)、寻呼机、数字照相机或可携式摄像机、位置检测设备或上述的任何组合。图4中有电 子设备400。电子设备400包括处理器410和辅助存储器420。辅助存储器可以例如是硬 盘或闪速存储器或光盘。电子设备400还包括主存储器430。当处理器410执行与本发明 相关联的功能时,主存储器430包括例如通信实体432、应用实体434和操作系统实体436。 电子设备400还包括一个或多个网络接口单元,诸如网络接口单元440。通信实体432包 括通信功能,例如,因特网协议功能。网络接口 440可以是无线电接口,包括例如无线局域 网(WLAN)接口、蓝牙接口、 Wimax接口、 UWB(超宽带)、低功率射频接口以及用于移动电信 网络的无线电接口 。电子设备400还包括与操作系统实体436和应用实体434进行通信的 可信平台模块450。在电子设备400内,还可以有负责支持可信平台模块450的功能的软件 实体。 在本发明的一个实施例中,通信实体432被包括在电子设备400的操作系统中。图 4中的电子设备400内的实体,诸如通信实体432、应用实体434和操作系统实体436,可以 通过各种方式来实现。它们可以被实现为在网络节点的本机操作系统下执行的过程。所述 实体可以被实现为分离的过程或线程,或者可以借助于一个过程或线程来实现多个不同的 实体。过程或线程可以是包括多个例程(也就是,例如程序和功能)的程序块的实例。所 述实体可以被实现为分离的计算机程序,或者被实现为包括实现所述实体的若干例程或功 能的单个计算机程序。所述程序块被存储在例如像存储电路、存储卡、磁盘或光盘这样的至 少一个计算机可读介质上。 一些实体可以被实现为链接到另一实体的程序模块。图4中的 所述实体还可以被存储在分离的存储器中,并且由分离的处理器(其例如经由网络节点内 的内部网络或消息总线进行通信)来执行。这样的消息总线的例子是外围组件互连(PCI) 总线。 本发明的示例性实施例可以被包括在任何适当的设备中,例如包括能够实施示例 性实施例的过程并且可以经由一个或多个接口机制(包括例如,因特网接入、任何适当形 式的电信(例如,语音、调制解调器等)、无线通信介质、一个或多个无线通信网络、蜂窝通 信网络、G3通信网络、公共交换电话网络(PSTN)、分组数据网络(PDN)、因特网、内联网及其 组合等)进行通信的任何适当的服务器、工作站、PC、膝上型计算机、PDA、因特网用具、手持 设备、蜂窝电话、无线设备、其它设备等。 要理解,示例性实施例是用于示例性目的,如硬件领域的技术人员可以理解的那 样,用于实现示例性实施例的专用硬件的很多变型都是可行的。例如,示例性实施例的一个 或多个组件的功能可以经由一个或多个硬件设备来实现。 所述示例性实施例可以存储与此处描述的各种过程相关的信息。该信息可以被存 储在诸如硬盘、光盘、磁-光盘、RAM等的一个或多个存储器中。一个或多个数据库可以存储被用来实现本发明示例性实施例的信息。可以使用此处所列出的一个或多个存储器或贮存 设备中包括的数据结构(例如,记录、表格、数组、字段、图、树、列表等)来组织所述数据库。 关于所述示例性实施例所描述的过程可以包括一个或多个数据库中的适当的数据结构,所 述数据结构用于存储通过所述示例性实施例的各种设备和子系统的过程所收集和/或生 成的数据。 如电子领域的技术人员可以理解的那样,全部或部分所述示例性实施例可以通过 制备专用集成电路或通过互连常规组件电路的适当网络来实现。 如上所述,所述示例性实施例的组件可以包括根据本发明的教导用于持有此处所 描述的数据结构、表格、记录和/或其它数据的计算机可读介质或存储器。计算机可读介质 可以包括参与向处理器提供用于执行的指令的任何适当的介质。这样的介质可以采用很多 形式,包括但不限于非易失性介质、易失性介质、传输介质等。非易失性介质可以包括例如 光盘或磁盘、磁-光盘等。易失性介质可以包括动态存储器等。传输介质可以包括同轴电 缆、铜线、光纤等。传输介质还可以采用声、光、电磁波等的形式,诸如在射频(RF)通信、红 外(IR)数据通信等期间所生成的那些。计算机可读介质的常用形式可以包括例如软盘、弹 性盘、硬盘、磁带、任何其它适当的磁介质、CD-ROM、CDRW、DVD、任何其它适当的光介质、穿孔 卡、纸带、光标记表、具有孔或其它光可识别标记的图案的任何其它适当的物理介质、RAM、 PR0M、 EPR0M、 FLASH-EPROM、任何其它适当的存储芯片或磁带盒、载波或计算机可以读取的 任何其它适当的介质。 虽然已经结合多个示例性实施例和实施方式描述了本发明,但是本发明不限于
此,相反地,而是涵盖了落入将生效的权利要求范围内的各种修改和等同布置。 对本领域的技术人员显而易见的是,随着技术的进步,本发明的基本思想可以通
过各种方式来实现。因而,本发明及其实施例不限于以上描述的例子;相反,它们可以在权
利要求的范围内变化。
1权利要求
一种方法,其包括在第一电子设备的可信平台模块中创建第一非对称密钥对,所述第一非对称密钥对包括第一公共密钥和第一秘密密钥;将所述第一公共密钥关联于所述第一电子设备内的软件平台状态信息;利用与所述可信平台模块相关联的证实身份密钥来证明所述第一公共密钥和所述软件平台状态信息,以便产生第一证书;在所述第一电子设备内的应用中创建第二非对称密钥对,所述第二非对称密钥对包括第二公共密钥和第二秘密密钥;利用所述第一秘密密钥来证明所述第二公共密钥,以便产生第二证书;利用所述第二秘密密钥来对消息进行签名,以便提供所述第一电子设备中的消息签名;向第二电子设备提供所述消息和所述消息签名;以及向所述第二电子设备提供所述软件平台状态信息、所述第一证书和所述第二证书。
2. 根据权利要求1的方法,所述方法进一步包括利用所述第二电子设备中的所述第一证书和所述第二证书来检验所述消息签名,从而 检验所述第一电子设备的软件配置,并且检验出所述第一电子设备是被签名的消息的发送 方。
3. 根据权利要求1的方法,所述方法进一步包括 引导所述第一电子设备; 确定当前软件平台状态;以及如果所述软件平台状态匹配于所述软件平台状态信息,则从所述可信平台模块向所述 应用提供所述第二秘密密钥。
4. 根据权利要求1的方法,其中,所述方法进一步包括 将所述第二秘密密钥关联于所述软件平台状态信息;以及 在永久贮存器中存储与所述软件平台状态信息相关联的所述第二秘密密钥。
5. 根据权利要求1的方法,其中,所述方法进一步包括 在永久贮存器中存储所述第一证书和所述第二证书。
6. 根据权利要求1的方法,其中,所述方法进一步包括 使用至少一个软件组件来为至少一个寄存器计算散列值; 使用所述散列值来为所述至少一个寄存器确定新值;以及 利用所述至少一个寄存器的值来表示所述软件平台状态信息。
7. 根据权利要求6的方法,其中,所述至少一个寄存器中的至少一个寄存器被预留用 于操作系统。
8. 根据权利要求6的方法,其中,所述至少一个寄存器中的至少一个寄存器被预留用 于通信应用。
9. 根据权利要求1的方法,其中,所述第一电子设备包括通信网络节点。
10. 根据权利要求1的方法,其中,所述第一电子设备包括移动通信设备。
11. 一种电子设备,其包括应用实体,其被配置以便创建第二非对称密钥对,所述第二非对称密钥对包括第二公共密钥和第二秘密密钥,利用所述第二秘密密钥来对消息进行签名,从而提供所述电子设 备中的消息签名;可信平台模块,其被配置以便创建第一非对称密钥对,所述第一非对称密钥对包括第 一公共密钥和第一秘密密钥,将所述第一公共密钥关联于软件平台状态信息,利用与所述 可信平台模块相关联的证实身份密钥来证明所述第一公共密钥和所述软件平台状态信息, 从而产生第一证书,以及利用所述第一秘密密钥来证明所述第二公共密钥,从而产生第二 证书;通信实体,其被配置以便向第二电子设备提供所述消息和所述消息签名,以及向所述 第二电子设备提供所述软件平台状态信息、所述第一证书和所述第二证书。
12. 根据权利要求11的电子设备,所述电子设备进一步包括 操作系统实体,其被配置以便引导所述电子设备;所述可信平台模块,其被配置以便确定当前软件平台状态,以及如果所述当前软件平 台状态匹配于所述软件平台状态信息,则从所述可信平台模块向所述应用实体提供所述第 二秘密密钥。
13. 根据权利要求11的电子设备,其中,所述电子设备进一步包括所述可信平台模块,其被配置以便将所述第二秘密密钥关联于所述软件平台状态信 息,以及在永久贮存器中存储与所述软件平台状态信息相关联的所述第二秘密密钥;以及 所述永久贮存器。
14. 根据权利要求11的电子设备,其中,所述电子设备进一步包括所述可信平台模块,其被配置以便在永久贮存器中存储所述第一证书和所述第二证 书;以及所述永久贮存器。
15. 根据权利要求11的电子设备,其中,所述电子设备进一步包括所述可信平台模块,其被配置以便利用至少一个软件组件的程序代码来为至少一个 寄存器计算散列值,使用所述散列值来为所述至少一个寄存器确定新值,以及利用所述至 少一个寄存器的值来表示所述软件平台状态信息。
16. 根据权利要求15的电子设备,其中,所述可信平台模块被配置以便在所述至少一 个寄存器中为操作系统预留至少一个寄存器。
17. 根据权利要求15的电子设备,其中,所述可信平台模块被配置以便在所述至少一 个寄存器中为通信应用预留至少一个寄存器。
18. 根据权利要求ll的电子设备,其中,所述电子设备包括通信网络节点。
19. 根据权利要求ll的电子设备,其中,所述电子设备包括移动通信设备。
20. —种电子设备,其包括用于在所述电子设备的可信平台模块中创建第一非对称密钥对的装置,所述第一非对 称密钥对包括第一公共密钥和第一秘密密钥;用于将所述第一公共密钥关联于所述电子设备内的软件平台状态信息的装置;用于利用与所述可信平台模块相关联的证实身份密钥来证明所述第一公共密钥和所 述软件平台状态信息以产生第一证书的装置;用于在所述电子设备内的应用中创建第二非对称密钥对的装置,所述第二非对称密钥对包括第二公共密钥和第二秘密密钥;用于利用所述第一秘密密钥来证明所述第二公共密钥以产生第二证书的装置; 用于利用所述第二秘密密钥来对消息进行签名以便提供所述电子设备中的消息签名的装置;用于向第二电子设备提供所述消息和所述消息签名的装置;以及用于向所述第二电子设备提供所述软件平台状态信息、所述第一证书和所述第二证书 的装置。
21. —种系统,其包括第一电子设备,其被配置以便在第一电子设备的可信平台模块中创建第一非对称密 钥对,所述第一非对称密钥对包括第一公共密钥和第一秘密密钥,将所述第一公共密钥关 联于所述第一电子设备内的软件平台状态信息,利用与所述可信平台模块相关联的证实身 份密钥来证明所述第一公共密钥和所述软件平台状态信息,从而产生第一证书,在所述第 一电子设备内的应用中创建第二非对称密钥对,所述第二非对称密钥对包括第二公共密钥 和第二秘密密钥,利用所述第一秘密密钥来证明所述第二公共密钥,从而产生第二证书,利 用所述第二秘密密钥来对消息进行签名,从而提供所述第一电子设备中的消息签名,向第 二电子设备提供所述消息和所述消息签名,以及向所述第二电子设备提供所述软件平台状 态信息、所述第一证书和所述第二证书;以及第二电子设备,其被配置以便利用所述第一证书和所述第二证书来检验所述消息签 名,从而检验所述第一电子设备的软件配置,并且检验出所述第一电子设备是被签名的消 息的发送方。
22. —种体现在计算机可读介质上的计算机程序,所述计算机程序包括用于控制处理 器来执行方法的代码,所述方法包括创建第一非对称密钥对,所述第一非对称密钥对包括第一公共密钥和第一秘密密钥; 将所述第一公共密钥关联于电子设备内的软件平台状态信息;利用证实身份密钥来证明所述第一公共密钥和所述软件平台状态信息,以便产生第一 证书;创建第二非对称密钥对,所述第二非对称密钥对包括第二公共密钥和第二秘密密钥; 利用所述第一秘密密钥来证明所述第二公共密钥,以便产生第二证书; 利用所述第二秘密密钥来对消息进行签名,以便提供第一电子设备中的消息签名; 向第二电子设备提供所述消息和所述消息签名;以及向所述第二电子设备提供所述软件平台状态信息、所述第一证书和所述第二证书。
23. 根据权利要求22的计算机程序,其中,所述计算机可读介质是可装卸存储卡、全息 存储器、磁盘或光盘。
全文摘要
本发明涉及一种用于远程证实的方法。在所述方法中,在电子设备中的可信平台模块中创建第一非对称密钥对(302)。利用与所述可信平台模块相关联的证实身份密钥来证明(306)第一公共密钥和软件平台状态信息,以便产生第一证书。在所述电子设备内的应用中产生(308)第二非对称密钥对。利用所述第一秘密密钥来证明(310)第二公共密钥,以便产生第二证书。利用第二秘密密钥来对消息进行签名(316),以便提供第一电子设备中的消息签名。所述消息和所述消息签名、软件平台状态信息、所述第一证书和所述第二证书被发送到(318)第二电子设备。
文档编号G06F21/00GK101772771SQ200880101753
公开日2010年7月7日 申请日期2008年6月12日 优先权日2007年6月20日
发明者K·T·J·克斯提埃宁, N·阿索肯 申请人:诺基亚公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1