在运行时包签名中使用受信的、基于硬件的身份认证以使移动通信和高价值交易执行安...的制作方法

文档序号:7608515阅读:128来源:国知局
专利名称:在运行时包签名中使用受信的、基于硬件的身份认证以使移动通信和高价值交易执行安 ...的制作方法
技术领域
本发明总地涉及移动通信领域。更具体地,本发明涉及在运行时(runtime)包(package)签名和安全的移动通信中使用受信的(trusted)、基于硬件的认证(credential)的方法。
背景技术
在GSM(全球移动通信系统)网络可用的几个国家(例如日本)中,蜂窝电话使用者可以用他们的蜂窝电话进行小型商业交易。这被称作mCommerce(移动商务)或移动eCommerce(电子商务)。所述商业交易可以包括,但不限于,例如从自动售货机购买瓶装水、碳酸饮料和其他产品,支付停车场费用等。在无线网络上提供这些交易的领先技术被称为iMode,它是由NTT DoCoMo注册为商标的移动互连网(internet)接入系统和/或由NTT DoCoMo拥有的服务商标,NTT DoCoMo是日本主要(incumbent)的电话运营商NTT的补充。iMode在低价格的商业交易中运转良好,但是今天对于蜂窝电话和无线个人数字助理(PDA)需要较高级别的安全性和可信赖性(trustworthiness),以使在无线网络上的高价格商业交易成为可能。
使用此技术来提供更昂贵交易的mCommerce的主要障碍是在使用公钥基础设施的数字签名交换中缺乏安全性和可信赖性。公钥基础设施采用可以从证书授权机构(CertificateAuthority)获得的数字证书(certificate)。数字证书遵守最后修改于2003年4月21日的公钥基础设施(Public-Key Infrastructure)(x.509或pkix),www.ietf.org/html.charters/pkix-charter.html。尽管认证验证各种信息是必要的,但是全性能的x.509导致的文件格式的大小对于在移动设备上的使用来说太大了。移动设备受存储器大小、存储容量和现有移动处理器的速度的限制。
此外,存储能力也不是足够安全。例如,数字证书文件存储在存储器的哪儿是已知的,所以如果所有者将他们的移动设备放错地方,并且所述移动设备最后落入有能力访问所述数字证书的不可信赖的人手中,此不可信赖的人可能有能力通过创建伪造的证书,或者通过使用他们自己的认证(例如姓名)修改现有的证书来使用它们。
此外,现今的证书仅仅与它们的初始版本(origin)以及它们的授权链(delegation chain)一样好。可以用现有的软件工具,例如Java的Keytool(由Sun Microsystems,Inc制造),实时地(on-the-fly)生成自签署(self-signed)的证书,如果证书生成器已经被泄密,则这增加了使用假证书的风险。在其他实例中,恶意替代Java安全管理器(Java SecurityManager)类和相关的安全工具(例如Keytool)已经导致了证书伪造和偷窃。
因此,所需的是提供使用证书格式的数字签名的方法,所述证书格式对于具有有限存储器、存储和处理能力的移动设备来说既安全又更友好(amenable)。还需要的是提供运行时安全可靠的数字签名的方法,以使高价值的mCommerce和受信平台间的移动通信成为可能。


本文中所结合并成为说明书一部分的附图示出了本发明的实施方案,并且和说明书一起进一步用来解释本发明的原理,使本领域的技术人员能够实现和使用本发明。在附图中,类似的参考标号一般指示同样的、功能类似的和/或结构类似的要素。一个要素首次出现在其中的附图是由相应参考标号的最左边的数字来指示。
图1是根据本发明的实施方案示出集合签名(assembly-signature)的示例性方法的流程图,所述集合签名使用受信的、基于硬件的认证。
图2是根据本发明的实施方案描述鉴别(authenticate)集合签名的示例性方法的流程图,所述集合签名使用受信的、基于硬件的认证。
图3是根据本发明的实施方案示出示例性标识(identification)认证的图。
图4根据本发明的实施方案示出生成标识认证的示例性方法的流程图。
具体实施例方式
尽管此处参照特定应用的说明性实施方案描述了本发明,但是应该理解本发明不限于此。能够领会此处所提供的教导的相关领域的技术人员将意识到在其范围内的其他修改、应用和实施方案,以及本发明的实施方案在其中将具有显著应用的其他领域。
在说明书中提及本发明的“一个实施方案”、“实施方案”或“另一个实施方案”意味着关于该实施方案描述的具体特征、结构或特性被包括在本发明的至少一个实施方案中。因此,“在一个实施方案中”在说明书中不同地方的出现不一定全是指同一实施方案。
本发明的实施方案涉及在运行时集合签名和安全的移动通信中使用受信的、基于硬件的认证的方法。这是通过在移动设备中采用加密处理器来完成的。加密处理器提供安全性服务,所述安全性服务包括但不限于对称(即用相同的密钥来加密和解密消息)和不对称(即用公钥加密消息,用私钥解密消息)密码(crypto)能力、哈希(hashing)能力、安全的密钥存储以及平台完整性度量(integrity metrics)。受信的、基于硬件的认证被用来生成新的身份类型,被称作标识认证(identification credential)。在无线网络中标识认证仅可以被受信方使用。通过利用受信的、基于硬件的认证扩展运行时的安全性能力,移动通信的可信赖性得到了提高。
本发明的实施方案采用基于受信硬件的认证而不是个人认证的数字签名。今天的数字证书(例如X.509)要求将使用者的认证(例如姓名)与公钥捆绑(binding),而受信的、基于硬件的认证被绑定(bound)到受信硬件平台,例如移动电话,并且因此比基于使用者的认证更难伪造。
受信的、基于硬件的认证格式的实施方案可以被运行时环境(例如但不限于Java的JRE(Java运行时环境)、.NET的CLR(通用语言运行时)等)用来签署各种类型的文档(例如但不限于汇编文件、JAR(JavaTM存档)文件、XML(可扩展标记语言)文件等)。这些文档的数字签名提供机密性(confidentiality)、完整性和不可抵赖性(non-repudiation),以提高在无线网络上的高价值交易的安全性。例如,文档内的信息可以仅仅被发送者和意图的接受者来读取和理解。当文档内的信息在路由时,若所涉及的几方不是都知道对信息的篡改时,信息不能被无意地或故意地篡改。再者,发送者不能拒绝(deny)发送消息或交易,并且接受者不能拒绝接收消息或交易。
尽管本发明的实施方案是关于移动设备进行描述的,但是在运行时集合签名中的受信的、基于硬件的认证可以用于任何包括加密处理器和/或其他受信硬件和软件组件的设备。例如,受信的、基于硬件的认证也可以在有线网络上被受信的、包括安全硬件的桌上型和膝上型计算机使用。
集合(assembly)是一个文件,安全许可(permission)在集合中被请求和授予。集合还指示身份和信任(trust)建立的级别。签署一个集合保证了姓名的唯一性(uniqueness),并且防止用具有相同姓名的另一个集合来替代已经提供的集合。通过使用基于硬件的、受信的标识认证来签署集合,使用该集合的应用具有用公共和/或私人信任层次来核实(verify)所述集合的开发者(developer)的能力。通过以高度的隐私担保确认特定的设备是能够证明(attest)移动设备的各种组件(例如设备内的BIOS(基本输入/输出系统)和其他硬件)和该设备的配置的受信设备,由此保证报告是受信的,从而使基于受信硬件的运行时标识认证(例如加密处理器)有效地增强了运行时集合的身份。在移动设备中提供源自硬件的(hardware-rooted)信任源程序使得高价值的mCommerce能够以可信赖的方式工作。
图1是根据本发明的实施方案的流程图100,示出了使用受信的、基于硬件的认证的集合签名的示例性方法。本发明不限于这里关于流程图100所描述的实施方案。相反,在读了此处所提供的本发明的教导后,对于相关领域的技术人员来说,很清楚其他功能流程图也在本发明的范围内。过程以框102开始,在框102处过程立刻前进到框104。
在框104中,由运行在使用者的移动设备上的软件应用选择要签署的文档或文件。移动设备内的加密处理器在框106确定哈希(hash)。在一个实施方案中,文档被施加到公知的数学哈希函数,所述哈希函数将文档转换为难以复制的独特的数字。
在框108中,用使用者的私钥(也被称为签署密钥)加密哈希,以创建数字签名。
在框110中,原始文档、标识认证和数字签名经由无线网络传输(transmit)到接受者。标识认证是用来将移动设备的公钥加密地捆绑到指定的受信硬件属性(attribute)上的数字文件,所述属性提供到使用者受信移动设备的身份的强捆绑。在一个实施方案中,标识认证还可以包括和使用者的身份相关的信息。因此,标识认证将公钥与关于移动设备中特定的受信硬件(例如但不限于加密处理器)的信息进行捆绑。在一个实施方案中,标识认证还可以将公钥与关于移动设备中特定的受信软件和/或硬件组件的信息进行捆绑。下面将针对图3详细描述标识认证。
图2是根据本发明的实施方案的流程图200,描述鉴别集合签名的示例性方法,所述集合签名使用受信的、基于硬件的认证。本发明不限于此处关于流程图200描述的实施方案。相反,在读了此处所提供的本发明的教导后,对于相关领域的技术人员来说,很清楚,其他功能流程图也在本发明的范围内。过程以框202开始,在框202处过程立刻前进到框204。
在框204中,接受者的设备(例如,但不限于,计算机)接收文档、标识认证和数字签名。然后,文档被标示为已被签署,以通知计算机数字签名必须被核实。
在框206中,计算机使用公钥解密数字签名。在框208中,计算原始文档的哈希。使用者用于生成哈希所采用的数学函数是公知的。
在框210中,计算机将它已经从接收到的文档中计算出的哈希与从文档中接收到的当前解密的哈希进行比较。在决策框212中,确定在传输期间文档是否已经被篡改。如果在传输期间文档已经被篡改,则两个哈希是不同的,然后过程前进到框214,在框214中核实过程被指示为已经失败。
回到决策框212,如果确定在传输期间文档没有被篡改,则两个哈希是相同的,然后过程前进到框216,在框216中核实过程被指示为已被鉴别。
图3是根据本发明一个实施方案示出示例性标识认证300的图。标识认证300是基于硬件的,用于集合签名的安全控制。与根据X.509标准格式化的数字证书相比,标识认证300利用轻型(light-weight)格式(即在尺寸上比数字证书小得多),以适应移动设备中处理器速度、存储器和存储分配等的限制。标识认证300的轻型格式与它被绑定到受信平台(例如使用者的移动设备)的事实的组合,为移动设备上的高价值mCommerce能够进行提供了非常有用的工具。
如图3所示,使用XML(可扩展标记语言)格式示出标识认证300。尽管以XML格式示出,但是标识认证300不限于XML格式。相关领域的技术人员知道也可以使用其他格式,例如(但不限于)SOAP(简单对象访问协议)和SAML(安全断言标记语言)等。
标识认证300包括加密处理器身份(cryptographic processor identity)302。加密处理器身份302包括公钥。加密处理器身份302包括身份标签(label)304和身份密钥306。
标识认证300还包括加密处理器和它的安全性服务的整体描述,所述描述在图3中被标示为<#cryptographic processor>308。<#cryptographic processor>308中的信息是从背书(endorsement)证书(下面参考图4描述所述背书证书)中拷贝的。
标识认证300还包括平台/设备和它的安全性特性310的整体描述,所述描述在图3中被标示为<#P>310的。<#P>310中的信息从平台证书(下面参考图4描述所述平台证书)拷贝。<#P>310还包括用来证明标识认证300的身份的证书授权机构(Certificate Authority,CA)。为受信标识的目的而使用CA是众所周知的。
图4是根据本发明一个实施方案的流程图400,示出生成标识认证300的方法。本发明不限于此处关于流程图400描述的实施方案。相反,在读了此处所提供的本发明的教导后,对于相关领域的技术人员来说,很清楚,其他功能流程图也在本发明的范围内。生成标识认证300的方法主要使用加密处理器和加密处理器内的受信软件栈来执行。过程以框402开始,在框402处所述过程立刻前进到框404。
在框404中,新的基于硬件的身份被建立。在一个实施方案中,使用应用程序接口或API来执行新的身份的建立。新的身份的建立是一个初始化过程,在该过程中受信硬件的制造者或第三方测试实验室提供各种证书,所述证书指示受信硬件符合受信计算平台联盟(Trusted Computing Platform Alliance)或TCPA标准、主说明书版本1.1b(MainSpecification Version 1.1b),www.trustedcomputing.org/docs/main%20vl 1b.pdf(2002)。在一个实施方案中,证书附加在受信硬件上。然后,所有证书与单个身份绑定。
一种这样的证书是公钥证书,也被称为是背书证书。背书证书由签注(endorse)了加密处理器的实体(entity)发布(issue)。背书证书包括,但不限于,NULL主题和加密的公共背书身份的公钥。
另一种证书是平台认证。平台认证包括指向背书证书的指针,所述背书证书唯一地标示平台和模型(即加密处理器的硬件和软件的修订版本(revision))的背书人。
还有另一种证书是遵循(conformance)认证。遵循认证声明(assert)所命名的加密处理器符合TCPA规范。
一旦证书与单个基于硬件的身份绑定,单个身份内的信息包括,但不限于加密处理器的标识、标识密钥、关于加密处理器的信息(例如安全性特性、哈希特性等)。
在框406中,核对(collate)在框404中聚集的所有数据。换句话说,数据被收集和核对。
在框408中,独立的受信第三方,例如证书授权机构(CA),接收已核对的数据并证明其身份。在框410中,进行证明校验以核实单个身份工作正常。
在框412中,单个身份被格式化成图3中显示的标识认证300。标识认证300再次使用基于硬件的、受信的认证来改善移动通信的可信赖性。
本发明的实施方案的某些方面可以用硬件、软件或它们的组合来实现,并且可以在一个或更多个计算机系统或其他处理系统中实现。事实上,在一个实施方案中,所述的方法可以在可编程机器上执行的程序中实现,所述可编程机器例如移动或静止计算机、个人数字助理(PDA)、机顶盒、蜂窝电话、以及其他电子设备,其中每个设备都包括处理器、加密协处理器、该处理器和加密协处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及一个或更多个输出设备。程序代码被应用于使用输入设备而输入的数据上,以完成所描述的功能,并且生成输出信息。输出信息可以应用于一个或多个输出设备。本领域的普通技术人员可以理解,可以利用多种计算机系统配置来实现本发明,所述计算机系统包括多处理器系统、小型计算机、大型计算机等等。本发明的实施方案也可以实践在分布式计算环境中,在该环境中由通过通信网络链接的远程处理设备来执行任务。
每个程序都可以用高级过程性或面向对象的程序设计语言来实现,以与处理系统通信。然而,如果需要的话,也可以用汇编语言或机器语言来实现程序。无论怎样,所述语言都可以被编译或解释。
程序指令可被用来致使以该指令编程的通用或专用处理系统执行这里所描述的操作。可替换地,可以由包含用于执行所述操作的硬连线逻辑的特定硬件组件、或者由已编程的计算机组件和定制硬件组件的组合来执行操作。这里所描述的方法可以作为计算机程序产品而被提供,该产品可以包括其上存储有指令的机器可读介质,所述指令可被用于编程一个处理系统或其他电子设备来实现所述方法。这里所使用的术语“机器可读介质”或“机器可访问介质”应当包括能够存储或编码供机器执行的指令序列,并致使所述机器实现这里所描述的任何一种方法的任何介质。因此,术语“机器可读介质”和“机器可访问介质”应当包括但不限于固态存储器、光盘和磁盘、以及编码数据信号的载波。此外,在本领域中以采取动作或引发结果的一种形式或另一种形式(例如,程序、过程、处理、应用、模块、逻辑等等)提及软件是常见的。这样的表达仅仅是表述处理系统对软件的执行致使处理器完成动作或产生结果的简便方式。
虽然上面描述了本发明的各种实施方案,但是应该理解它们仅仅是以实施例的形式而不是以限制性的形式表达的。本领域的技术人员将理解可以对其形式和细节进行各种修改,而不偏离由所附权利要求书所限定的本发明的精神和范围。因此,本发明的保护范围及其宽窄不应该受任何上面所描述的示例性实施方案的限制,而是根据所附权利要求书及其法定等同物限定。
权利要求
1.一种用于集合签名的方法,包括使能文档的选择,所述文档要被使用者通过受信计算设备电子地签署;计算所述文档的哈希;用所述使用者的私钥加密所述哈希,以创建数字签名;以及向接受者计算设备发送所述文档、标识认证和所述数字签名,其中所述标识认证包括用来将公钥与指定的受信硬件属性加密地进行捆绑的数字文件,所述受信硬件属性与所述受信计算设备的所述身份相关,并且其中所述接受者计算设备驻留在网络上。
2.如权利要求1所述的方法,其中所述受信计算设备包括移动设备。
3.如权利要求2所述的方法,其中所述受信移动设备包括受信移动计算设备,受信蜂窝电话,受信个人数字助理(PDA),和受信膝上型计算机中的至少一种。
4.如权利要求1所述的方法,其中所述标识认证包括具有标识标签和标识密钥的加密处理器身份。
5.如权利要求1所述的方法,其中所述标识认证包括对加密处理器和由所述加密处理器提供的所述安全性服务的整体描述。
6.如权利要求1所述的方法,其中所述标识认证包括对受信平台/设备和所述受信平台/设备的安全性特性的整体描述。
7.如权利要求6所述的方法,其中对所述受信平台/设备和所述安全性特性的所述整体描述包括用来证明所述标识认证的所述身份的证书授权机构的名称。
8.一种制品,包括具有多条机器可访问指令的安全的存储介质,其中当处理器执行所述指令时,所述指令用来使能文档的选择,所述文档要被使用者通过受信计算设备电子地签署;计算所述文档的哈希;用所述使用者的私钥加密所述哈希,以创建数字签名;以及向接受者计算设备发送所述文档、标识认证和所述数字签名,其中所述标识认证包括用来将公钥与指定的受信硬件属性加密地进行捆绑的数字文件,所述受信硬件属性与所述受信计算设备的所述身份相关,并且其中所述接受者计算设备驻留在网络上。
9.如权利要求8所述的制品,其中所述受信计算设备包括受信移动设备。
10.如权利要求9所述的制品,其中所述受信移动设备包括受信移动计算设备,受信蜂窝电话,受信个人数字助理(PDA),和受信膝上型计算机中的至少一种。
11.如权利要求8所述的制品,其中所述标识认证包括具有标识标签和标识密钥的加密处理器身份。
12.如权利要求8所述的制品,其中所述标识认证包括对加密处理器和由所述加密处理器提供的所述安全性服务的整体描述。
13.如权利要求8所述的制品,其中所述标识认证包括对受信平台/设备和所述受信平台/设备的安全性特性的整体描述。
14.如权利要求8所述的制品,其中对所述受信平台/设备和所述安全性特性的所述整体描述包括用来证明所述标识认证的所述身份的证书授权机构的名称。
15.一种生成标识基础设施的方法,包括基于受信硬件组件建立单个新身份,其中所述单个新身份包括绑定在一起的证书,其中所述证书指示所述受信硬件组件符合受信计算平台联盟(TCPA)标准;为所述单个新身份收集和核对所有所述数据;发送所述已核对的数据给证书授权机构,以证明所述数据的所述身份;在所述数据上执行证明校验,以核实所述单个新身份的所述操作;以及将所述单个新身份格式化成标识认证,其中所述标识认证是基于受信硬件的,以改善网络通信的所述可信赖性和安全性。
16.如权利要求15所述的方法,其中所述证书包括背书证书,所述背书证书具有用于加密处理器的加密的公共背书身份的公钥,所述加密处理器是所述受信硬件组件中的一个组件;平台认证证书,所述平台认证证书包括指针,所述指针指向标示平台和所述平台的平台模型的背书人的所述背书证书,其中所述平台包括所述受信硬件组件中的一个组件;以及遵循认证证书,所述遵循认证证书声明所述加密处理器符合受信计算平台联盟(TCPA)规范。
17.如权利要求15所述的方法,其中所述标识认证包括具有标识标签和标识密钥的加密处理器身份;对加密处理器和由所述加密处理器提供的安全性服务的整体描述;对受信平台/设备和所述受信平台/设备的安全性特性的整体描述,其中对所述受信平台/设备和安全性特性的所述整体描述包括用来证明所述数据的所述身份的所述证书授权机构的名称。
18.一种制品,包括具有多条机器可访问指令的安全的存储介质,其中当处理器执行所述指令时,所述指令用来基于受信硬件组件建立单个新身份,其中所述单个新身份包括绑定在一起的证书,其中所述证书指示所述受信硬件组件符合受信计算平台联盟(TCPA)规范;为所述单个新身份收集和核对所有所述数据;发送所述已核对的数据给证书授权机构,以证明所述数据的所述身份;在所述数据上执行证明校验,以核实所述单个新身份的所述操作;以及将所述单个新身份格式化成标识认证,其中所述标识认证是基于受信硬件的,以改善网络通信的所述可信赖性和安全性。
19.如权利要求18所述的制品,其中所述证书包括背书证书,所述背书证书具有用于加密处理器的加密的公共背书身份的公钥,所述加密处理器是所述受信硬件组件中的一个组件;平台认证证书,所述平台认证证书包括指针,所述指针指向标示平台和所述平台的平台模型的背书人的所述背书证书,其中所述平台包括所述受信硬件组件中的一个组件;遵循认证证书,所述遵循认证证书声明所述加密处理器符合受信计算平台联盟(TCPA)规范。
20.如权利要求18所述的制品,其中所述标识认证包括具有标识标签和标识密钥的加密处理器身份;对加密处理器和由所述加密处理器提供的安全性服务的整体描述;对受信平台/设备和所述受信平台/设备的安全性特性的整体描述,其中对所述受信平台/设备和安全性特性的所述整体描述包括用来证明所述数据的所述身份的所述证书授权机构的名称。
21.一种系统包括处理器系统,所述处理器系统包括具有受信软件栈的加密协处理器,所述加密协处理器和所述受信软件栈使得标识认证的生成能够进行,一种生成所述标识认证的方法包括基于受信硬件组件建立单个新身份,其中所述单个新身份包括绑定在一起的证书,其中所述证书指示所述受信硬件组件符合受信计算平台联盟(TCPA)规范;为所述单个新身份收集和核对所有所述数据;发送所述已核对的数据给证书授权机构,以证明所述数据的所述身份;在所述数据上执行证明校验,以核实所述单个新身份的所述操作;以及将所述单个新身份格式化成标识认证,其中所述标识认证是基于受信硬件的,以改善网络通信的所述可信赖性和安全性。
22.如权利要求21所述的系统,其中所述证书包括背书证书,所述背书证书具有用于加密处理器的加密的公共背书身份的公钥,所述加密处理器是所述受信硬件组件中的一个组件;平台认证证书,所述平台认证证书包括指针,所述指针指向标示平台和所述平台的平台模型的背书人的所述背书证书,其中所述平台包括所述受信硬件组件中的一个组件;以及遵循认证证书,所述遵循认证证书声明所述加密处理器符合受信计算平台联盟(TCPA)规范。
23.如权利要求21所述的系统,其中所述标识认证包括具有标识标签和标识密钥的加密处理器身份;对加密处理器和由所述加密处理器提供的安全性服务的整体描述;对受信平台/设备和所述受信平台/设备的安全性特性的整体描述,其中对所述受信平台/设备和安全性特性的所述整体描述包括用来证明所述数据的所述身份的所述证书授权机构的名称。
全文摘要
一种用于受信包数字签名的方法,所述方法基于安全的、与平台绑定的身份认证。对使用者要通过计算设备电子地签署的文档作出选择。确定用于文档的哈希。用使用者的私钥加密所述哈希,以创建数字签名。文档、标识认证和数字签名被发送到驻留在网络上的接受者计算设备。标识认证包括用来将公钥与特定的受信硬件属性加密地进行捆绑的数字文件,所述受信硬件特性证明所述受信计算设备的身份和完整性。所述受信计算设备包括加密处理器。
文档编号H04L29/06GK1868189SQ200480029844
公开日2006年11月22日 申请日期2004年8月4日 优先权日2003年8月12日
发明者塞利姆·艾斯, 戴维·惠勒, 克里舍纳默西·斯利尼瓦桑 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1