受上下文限制的共享密钥的制作方法

文档序号:7636772阅读:110来源:国知局
专利名称:受上下文限制的共享密钥的制作方法
技术领域
本发明大体而言涉及通信,且更具体而言,涉及使用根据受上下文限制的信息所 产生的共享密钥进行安全和秘密通信。
背景技术
共享密钥的使用对于想要安全或秘密的通信而言很常见。在典型的共享密钥方案 中,是共享仅为通信实体已知的共用密钥,其中各通信实体依赖所述密钥来建立信任 关系。不具有共享密钥的一方被排除在信任关系之外。共享密钥可以是永久的或临时的。临时的共享密钥可用于在有限时期内保护通 信。举例而言,临时的共享密钥可仅适用于一次性事务。为提供额外的安全级别,通常自永久密钥导出临时密钥。在这种安排中,临时密 钥被用作建立信任关系的基础。例如,想要与对应方建立信任关系的一方可使用临时 密钥,所述临时密钥作为与对应方进行加密通信的关键资料而与对应方共享。对于有时称作主密钥的永久密钥而言,其极少被无限制地共享。例如,在移动通 信设定中,仅在用户单元和用户的本地运营商之间共享主密钥。当用户单元经由安全 通信自第三方请求服务时,所述用户单元根据主密钥产生临时密钥。同时,用户单元 也发送请求至本地运营商,本地运营商又根据共享的主密钥产生相同的临时密钥。同样,所述临时密钥形成用户与第三方之间的信任关系的基础。例如,除了别的以外, 用户单元和本地运营商二者还可根据所述临时密钥而产生随后可供服务提供者使用的加密密钥。其后,可交换用户单元与服务提供者之间的加密通信。从主密钥导出临时密钥的基本原理是降低暴露主密钥的可能性。可基于用户单元和本地运营商之间的某些预先安排的演算法而从主密钥导出临时密钥。上述安全模型基于下述假设任一可能已访问任何所导出密钥的第三方将愿意保护所导出密钥的机密性。例如,如果第三方将所导出密钥暴露给再一方,则自第三方购买服务的信任度将被严重损害。因此,作为持久性商务实体,第三方将受到不利影
响,更不必说暴露密钥的法律后果。然而,可能存在某些对于将共享密钥保密既没有经济动机也没有伦理考虑的参与 方。例如,如果所导出密钥被传送至自称为用户的欺诈方,则欺诈方可能使用所导出 密钥假扮合法用户,并能够访问其本来不能访问的服务。更复杂的是,从所述非法访 问中可能进一步暴露其他敏感信息。如果欺诈方将其自身设定为服务提供者,则会导 致同样或更严重的后果。因此,需要提供一种更安全的通信方案以避免暴露和误用所导出密钥。发明内容在其中两个通信实体想要进行秘密或机密通信对话的通信系统中,需要首先建立 信任关系。信任关系是基于对共享密钥的确定,而共享密钥是根据主密钥和所选的上 下文信息而产生。上下文信息可根据所述通信对话周围的环境导出。共享密钥可由每 一通信实体自身产生。或者,在其中所述实体并无足够信息以直接导出共享密钥的情 形中,可自第三方导出共享密钥。所述共享密钥可用作加密协议的关键资料,用于验 证和建立各通信实体之间的安全通信。在一实例性实施例中,作为一个通信实体的用户单元从作为另一通信实体的服务 提供者处寻求服务。用户单元基于预存储的主密钥和预定的上下文信息而独立地产生 共享密钥,上下文信息可包括(但不限于)拓扑信息、基于时间的信息和事务信息。 不具有主密钥的服务提供者自再一方获得共享密钥。随后,服务提供者和用户单元使 用其对共享密钥的共有知识建立信任关系。在这一实例中,所述另一实体是用户单元的本地运营商。在将共享密钥发送至服务提供者之前,本地运营商以与用户单元大致相同的方式产生共享密钥。将共享密钥从本地运营商发送至服务提供者也可以经由预先商定的保护机制来保护。因此,通过以上述方式操作,所产生的共享密钥不太可能被非法复制和误用。 结合附图阅读下文详细说明,所属技术领域的技术人员将易于了解这些和其他特征及优点,其中相同的参考符号表示相同的部件。


图1是显示本发明的一般实施例的简化示意图;图2A是根据一实施例的流程图,其显示通信实体在为进行通信对话而首先想要 建立信任关系时所涉及的步骤;图2B是根据图2A所示实施例的流程图,其显示中间实体促进建立所述信任关 系所涉及的步骤;图3A是根据另一实施例的流程图,其显示通信实体在为进行通信对话而首先想 要建立信任关系时所涉及的步骤;
图3B是根据图3A所示实施例的流程图,其显示中间实体促进建立所述信任关 系所涉及的步骤;及图4是显示用于实施本发明实施例的硬件实施方案的一部分的示意图。
具体实施方式
提供下述说明旨在使所属技术领域的技术人员均能够制作及利用本发明。出于解 释的目的,在下文说明中列举若干细节。应了解,所属技术领域的技术人员将认识到, 不使用这些具体细节也可以实施本发明。在其他实例中,为避免因不必要的细节而淡 化本发明的说明,未详细阐述熟知的结构和过程。因此,本发明并不打算受限于所示 实施例,而是欲赋予其与本文所揭示原理及特征相一致的最宽广范畴。图1显示本发明的一般实施例的简化示意图。通信系统总体上由参考数字30表 示,且可以是载送语音、数据、多媒体或其组合的系统。此外,系统30可按各种标准 和协议操作,其实例包括cdma2000 (码分多工存取2000)、 GSM (全球移动通信系统)、 WCDMA (宽频码分多址存取)和IP (因特网协议)。出于清晰和简练说明的目的,图1中仅显示3个实体,也就是第一通信实体31、 第二通信实体33和第三通信实体35。在这一实例性实施例中,第一实体31是通信装 置32。第二实体33是本地运营商34。第三实施例35是服务提供者36。在这一实例中,假设通信装置32是本地运营商34的用户。通信装置32可以是 有线装置,例如,装置32可以是连线至与本地运营商34处于相同网络的操作站。另 一选择为,通信装置32可以是无线装置。例如,装置32可以是移动电话、移动计算 机或个人数字助理(PDA)。因此,通信装置32可以与本地运营商34位于相同的网络 中。另外,通信装置32也可以定位于本地运营商34所处的网络之外。例如,通信装 置32可以自本地运营商34所处的网络漫游至其他网络,且可与其他网络中的其他实 体通信。现在返回参看图1。在这一实例中,假设通信装置32向服务提供者36请求服务。 当通信装置32位于本地运营商34的网络中时,所请求的服务可以是向本地运营商34 正常请求的服务。作为另一实例,所请求的服务也可以是仅由服务提供者36而非本地 运营商34提供的服务。服务提供者36可以在本地运营商34的网络内部或外部。出于安全和秘密的原因,通信装置32可能首先想要确保服务提供者36经授权以 提供这种服务。同样地,服务提供者36本身也可能(例如)出于收费的目的而需要了 解通信装置32是合法的。换句话说,在任何通信之前,需要首先在通信装置32和服 务提供者36之间建立信任关系。根据这一实施例,通信装置32和本地运营商34共享由图1中的参考数字38象 征性地标识的主密钥。为开始所述过程,通信装置32首先将服务请求发送至服务提供者36 (以通信路径40表示)。其后,遵循建立信任关系的过程。对于通信装置32而言,其首先通过伪随机函数(PRF)产生共享密钥/T。除了别 的以外,PRF的输入还可包括主密钥38和上下文信息。PRF的实例可以是基于散列的消息验证代码(HMAC)、安全散列演算法1(SHA-1) 或其组合。HMAC和SHA-1 二者均可以在由因特网工程任务组(IETF)发布的征求 评论(RFC)中找到。具体而言,HMAC列举于1997年2月的RFC 2104中,其名称 为"HMAC :用于消息验证的密钥散列(HMAC:Keyed-Hashing for Message Authentication)"。 SHA-1演算法界定于2001年9月的RFC 3174中,其名称为"美国 安全散列演算法1 (U.S. Secure Hash Algorithm 1)"。根据本发明的这一实施例,可自通信对话周围的环境中导出上下文信息。上下文信息可以是基于拓扑的。例如,在根据IP操作时,拓扑信息可包括图1 所示各实体31、 33和35的源地址和目的地址。另外,前述地址可另外包括为获得额 外安全等级而指定地址块的网络掩码。对于根据传输控制协议(TCP)和用户数据报 协议(UDP)的通信而言,也可以包括源端口和目的端口。'上'下文信息也可以和时间相关。换句话说,通信对话的环境周围的某些时间参数 可以用于上下文信息。例如,上下文信息可以包括特定通信对话(例如,通信装置32 发送至服务提供者36的服务请求40的对话)的开始时间、结束时间、持续时间。上下文信息也可以是针对具体事务的。在各种通信系统中,通常以一标识符唯一 地标识每一通信对话, 一般将所述标识符称作现时或事务标识符。也可以使用及包含 这种标识信息作为上下文信息。如先前提及,为产生共享密钥《,对PRF的输入可包括主密钥和上下文信息。其 以算术方式可表达如下上n/家彦) (A) 其中主麥敦是(例如)前述密钥38,且J:7^"信,息可进一步表达如下 J:70t底息^u (赝多器邀见赝多器潘仏微霸,練聰,嚴教凍好) (B) 其中U将一组参数标示为包含于方程式(B)的括号内。在这一特定实例中,j《 务器邀迎是服务提供者36的网络地址,赝夯器凝口是服务提供者36的端口编号,^ /#>^/每是通信装置32将服务请求40发送至服务提供者36的时间的起点,^^^/^/承是前述服务请求结束时的终点时间。就服务提供者36而言,在从通信装置32接收到服务请求时,如图l所示通信路 径42所标识,服务提供者36通知本地运营商34进行验证。同时,如通信路径44所 标识,通信装置32出于自身主动、或根据来自本地运营商34的请求而将上下文信息 发送至本地运营商34。借助上下文信息和预存储的主密钥38,本地运营商34又根据 方程式(A)和(B)、以与先前所述由通信装置32产生共享密钥K的相同方式产生共 享密钥K。 共享密钥《为服务提供者36和通信装置32之间的后续安全通信提供支持基础。 例如,对于安全和秘密通信而言,可稍后在服务提供者36和通信装置32之间使 用各种加密协议。每一加密协议可要求一加密密钥Ke以对安全通信数据加密。所述 加密密钥」&可根据共享密钥K产生。作为另一实例,如果可行,可使用共享密钥K产生在服务提供者36和通信装置 32之间交换的询问数据。询问数据可包括询问消息和所期望回应。所期望回应可仅根 据所述询问消息及使用关于共享密钥K的所知信息而产生。例如,参看图l,如果服 务提供者36已自本地运营商34接收到共享密钥AT,则服务提供者36可通过将询问消 息发送至通信装置32来询问通信装置32的可靠性。通信装置32具有共享密钥K。通 信装置32可随后基于共享密钥K产生所期望消息,并将所期望消息发送至服务提供 者36进行验证。随后,服务提供者36可基于先前自本地运营商34接收的共享密钥 通过比较从通信装置32接收的所期望消息和其自身产生的期望消息来确定通信装置 32的可靠性。现在继续参看图l。如通信路径46所标识,回应于验证请求32且根据随后要使 用的加密协议,本'地运营商33将验证数据(其在这一实例中包括共享密钥《)发送至 服务提供者36。经由通信路径46传输验证数据可由预先安排的安全机制来保护。一旦通信装置32和服务提供者36拥有共享密钥K,则其可使用密钥^作为建立 加密安全通信的关键资料。通信装置32和服务提供者36之间的加密通信的通信路径 由图1所示的参考数字48标示。上述过程概述于图2A及图2B所示的流程中。图2A显示由通信装置32执行的 过程步骤。图2B显示由本地运营商34执行的对应过程步骤。通过以上述方式进行操作,如果共享密钥^被不正确地泄露至未授权方,则由于 必须复制最初为之产生共享密钥K的确切上下文信息才能成功,因而会大大降低未授 权方未经授权地使用密钥K冒充合法密钥持有者的可能性。另一选择为,除了使通信装置32将上下文信息发送至本地运营商38之外,也可 相反地进行。也就是说,在接收到来自服务提供者36的验证请求时,本地运营商38 可将上下文信息发送至通信装置32。举例而言,方程式(B)中的预定参数^^^^/眾 和惠,jT;^/^可分别设定于图1所示验证请求42的开始和结束时间处。随后,通信装置 32可使用所接收的上下文信息产生共享密钥L再次,共享密钥^可再次用作适用于 任一要用于通信装置32和服务提供者36之间的加密通信的加密协议的关键资料。所 述过程与上述过程大致类似,且概述于图3A及3B所示流程图中。图3A显示由通信 装置32执行的过程步骤。图3B显示由本地运营商34执行的对应过程步骤。图4示意性地显示根据本发明的实例性实施例由参考数字60表示的设备(例如, 图1所示通信实体31和33)的硬件实施方案的一部分。设备60可以各种形式建立和 合并,例如固定式计算机、网络硬件的一部分、膝上型计算机、PDA或蜂窝式电话(文 中仅列举少量)。
设备60包括将数个电路链接在一起的中央数据总线62。所述电路包括CPU (中 央处理单元)或控制器64、接收电路66、发射电路68和存储器电路70。如果设备60是无线装置的一部分,则接收电路66和发射电路68可连接至RF(射 频)电路,但未显示于图式中。接收电路66在将所接收信号发送出至数据总线62之 前对其进行处理和缓冲。另一方面,发射电路68在将来自数据总线62的数据发送出 装置60之前对其进行处理和缓冲。CPU/控制器64执行数据总线62的数据管理功能, 并进一步执行一般数据处理功能,包括执行存储器单元70的指令内容。或者,发射电路68和接收电路66可以是CPU/控制器64的一部分,而非如图4 中所示单独放置。存储器单元70包括一组总体上由参考数字72表示的指令。在这一实施例中,除 了别的以外,相依于设备60所起的作用,所述指令还包括图2A、 2B、 3A和3B所示 流程图所显示及阐述的过程步骤,所述步骤笼统地由参考数字74指定为图4所示"共 享密钥产生及处理功能"。函数74中可包含前述PRF。存储器单元70中还包含用于实施任何所选加密协议的加密通信功能76。此外, 除了别的以外,同一存储器单元70中还存储有主密钥38。例如,在设备60的加电期 间,可将函数74、 76和主密钥38从一不同的存储器单元(未显示)传递至存储器单 元70。在这一实施例中,存储器单元70是RAM (随机访问存储器)电路。实例性指令 部分72是软件例程或模块。如上文提及,存储器单元70可连接至另一易失性或非易 失性类型的存储器电路(未显示)。或者,存储器单元70可由其他电路类型制成,例 如EEPROM (电可擦除可编程只读存储器)、EPROM (电可编程只读存储器)、ROM (只读存储器)、ASIC (应用专用集成电路)、磁盘、光盘和所属技术领域中熟知的其 他电路。进一步应了解,上文中图2A、 2B、 3A和3B所阐述及显示的过程也可以编码为 承载于所属技术领域中熟知的任何计算机可读媒体上的计算机可读指令。在本说明书 及随附权利要求书中,术语"计算机可读媒体"是指任何参与将指令提供至任一处理 器(例如,图4所示及所述CPU/控制器64)以供用于执行的媒体。这种媒体可以是 任一存储器类型,且可以采取先前阐述(例如,在图4所示存储器单元70的说明中所 述)的易失性或非易失性存储媒体的形式。这种媒体也可以是传输型的,且可包括同 轴电缆、铜导线、光纤和携载能够携载机器或计算机可读信号的声波或电磁波的无线 接口。最后,如所述实施例中阐述,第一、第二和第三通信实体31、 33和35分别被阐 述为通信装置32、本地运营商34和服务提供者36。本发明中可存在不同安排。例如, 第一实体31除装置外还可呈现不同形式,例如路由器、网络或运营商的一部分。同样 地,第二和第三实体33和35也可以呈现与先前所提及不同的形式。在所述实例性实 施例中,共享密钥被阐述为根据主密钥以及上下文信息而产生。可想象共享密钥也可 以使用不同于上述方程式(A)中所列的其他信息而产生。例如,诸如来自全球定位系统(GPS)的坐标或通信实体的电子标识等非上下文信息当然可充当方程式(A)的 额外输入。对于可包括不同于所述的其他上下文信息的方程式(B)而言,同样如此。 另一方面,并非必需包含在实例性实施例中所阐述的所有上下文信息才能产生共享密 钥。可仅使用部分或所选信息。例如,可并非如上文所述使用各种拓扑、时间相关和 事务信息来产生所述共享密钥,而是可仅将所选的拓扑信息输入至PRF以得出共享密 钥。此外,在实例性实施例中,通信装置32和本地运营商34被阐述为收集所述上下 文信息的实体。使服务提供者36执行上下文信息收集职能并将所收集信息直接或间接 地发送至其他方也是确实可行的。此外,结合所述实施例阐述的任何逻辑块、电路和 算法步骤均可实施于硬件、软件、固件或其组合中。所属技术领域中的技术人员将了 解,可在不背离本发明的精神及范畴的情况下对其中在形式和细节上作出这些和其他 改变。
权利要求
1、一种用于建立与通信实体的信任关系的方法,其包括提供主密钥;基于预定的上下文信息和所述主密钥产生共享密钥;及基于所述共享密钥建立所述信任关系。
2、 如权利要求l所述的方法,其进一步包括在所述上下文信息中提供拓扑信息。
3、 如权利要求1所述的方法,其进一步包括在所述上下文信息中提供基于时间 的信息。
4、 如权利要求l所述的方法,其进一步包括在所述上下文信息中提供事务信息。
5、 如权利要求1所述的方法,其进一步包括自另一通信实体接收所述上下文信息。
6、 如权利要求1所述的方法,其进一步包括使用所述共享密钥作为关键资料来以加密方式与所述通信实体通信。
7、 一种用于调解至少两个通信实体的信任关系的方法,其包括-提供主密钥;基于预定的上下文信息和所述主密钥产生共享密钥;及基于所述共享密钥将验证信息提供至所述通信实体中的一者。
8、 如权利要求7所述的方法,其进一步包括在所述上下文信息中提供拓扑信息。
9、 如权利要求7所述的方法,其进一步包括在所述上下文信息中提供基于时间 的信息。
10、 如权利要求7所述的方法,其进一步包括在所述上下文信息中提供事务信息。
11、 如权利要求7所述的方法,其进一步包括从所述通信实体中的另一者接收所 述上下文信息。
12、 如权利要求7所述的方法,其进一步包括将所述验证信息中的所述共享密钥 提供至所述通信实体中的一者。
13、 一种用于与通信实体建立信任关系的设备,其包括 用于提供主密钥的装置;用于基于预定的上下文信息和所述主密钥产生共享密钥的装置;及 用于基于所述共享密钥建立所述信任关系的装置。
14、 如权利要求13所述的设备,其进一步包括用于在所述上下文信息中提供拓 扑信息的装置。
15、 如权利要求13所述的设备,其进一步包括用于在所述上下文信息中提供基 于时间的信息的装置。
16、 如权利要求13所述的设备,其进一步包括用于在所述上下文信息中提供事 务信息的装置。
17、 如权利要求13所述的设备,其进一步包括用于从另一通信实体接收所述上 下文信息的装置。
18、 如权利要求13所述的设备,其进一步包括用于使用所述共享密钥作为关键 资料而以加密方式与所述通信实体通信的装置。
19、 一种用于调解与至少两个通信实体的信任关系的设备,其包括 用于提供主密钥的装置;用于基于预定的上下文信息和所述主密钥产生共享密钥的装置;及 用于基于所述共享密钥将验证信息提供至所述通信实体中的一者的装置。
20、 如权利要求19所述的设备,其进一步包括用于在所述上下文信息中提供拓扑信息的装置。
21、 如权利要求19所述的设备,其进一步包括用于在所述上下文信息中提供基 于时间的信息的装置。
22、 如权利要求19所述的方法,其进一步包括用于在所述上下文信息中提#^事 务信'息的装置。
23、 如权利要求19所述的设备,其进一步包括用于从所述通信实体中的另一者 接收所述上下文信息的装置。
24、 如权利要求19所述的设备,其进一步包括用于将所述验证信息中的所述共 享密钥提供至所述通信实体中的一者的装置。
25、 一种用于建立与通信实体的信任关系的设备,其包括-存储器单元,其包括用于下列步骤的计算机可读指令提供主密钥,基于预定的 上下文信息和所述主密钥产生共享密钥,及基于所述共享密钥建立所述信任关系;及 处理器电路,其耦合至所述存储器单元以处理所述计算机可读指令。
26、 如权利要求25所述的设备,其中所述存储器单元进一步包括用于在所述上 下文信息中提供拓扑信息的计算机可读指令。
27、 如权利要求25所述的设备,其中所述存储器单元进一步包括用于在所述上 下文信息中提供基于时间的信息的计算机可读指令。
28、 如权利要求25所述的设备,其中所述存储器单元进一步包括用于在所述上 下文信息中提供事务信息的计算机可读指令。
29、 如权利要求25所述的设备,其中所述存储器单元进一步包括用于从另一通 信实体接收所述上下文信息的计算机可读指令。
30、 如权利要求25所述的设备,其中所述存储器单元进一步包括用于使用所述 共享密钥与所述通信实体进行加密通信的计算机可读指令。
31、 一种用于调解与至少两个通信实体的信任关系的设备方法,其包括 存储器单元,其包括用于下列步骤的计算机可读指令提供主密钥,基于预定的上下文信息和所述主密钥产生共享密钥,及基于所述共享密钥将验证信息提供至所述通信实体中的一者;及处理器电路,其耦合至所述存储器单元以处理所述计算机可读指令。
32、 如权利要求31所述的设备,其中所述存储器单元进一步包括用于在所述上 下文信息中提供拓扑信息的计算机可读指令。
33、 如权利要求31所述的设备,其中所述存储器单元进一歩包括用于在戶;f述上下文信息中提供基于时间的信息的计算机可读指令。
34、 如权利要求31所述的设备,其中所述存储器单元进一步包括用于在所述上 下文信息中提供事务信息的计算机可读指令。
35、 如权利要求31所述的设备,其中所述存储器单元进一步包括用于从所述通 信实体中的另一者接收所述上下文信息的计算机可读指令。
36、 如权利要求31所述的设备,其中所述存储器单元进一步包括用于将^f述验 证信息中的所述共享密钥提供至所述通信实体中的一者的计算机可读指令。
37、 一种计算机可读媒体,其包括用于下列步骤的计算机可读指令 提供主密钥;基于预定^]上下文信息和所述主密钥产生共享密钥;及 基于所述共享密钥建立所述信任关系。
38、 如权利要求38所述的计算机可读媒体,其中所述上下文信息包括在由下列组成的群组中选出的信息拓扑信息、基于时间的信息和事务信息。
39、 一种计算机可读媒体,其包括用于下列步骤的计算机可读指令 提供主密钥;基于预定的上下文信息和所述主密钥产生共享密钥;及 基于所述共享密钥将验证信息提供至所述通信实体中的一者。
40、 如权利要求39所述的计算机可读媒体,其中所述上下文信息包括在由下列 组成的群组中选出的信息拓扑信息、基于时间的信息和事务信息。
全文摘要
在其中两个通信实体想要进行秘密或机密通信对话的通信系统中,需要首先建立信任关系。信任关系是基于对共享密钥的确定,而共享密钥又是根据上下文信息产生的。所述上下文信息可自通信对话周围的环境中导出。例如,上下文信息可包括拓扑信息、基于时间的信息和事务信息。共享密钥可以是自身产生的或自第三方接收的。在任一情形中,可将共享密钥用作在通信实体之间所使用的任一加密协议的关键资料。
文档编号H04L9/08GK101156346SQ200680011542
公开日2008年4月2日 申请日期2006年2月10日 优先权日2005年2月11日
发明者格雷戈里·戈登·罗斯, 菲利普·迈克尔·霍克斯, 詹姆斯·森普尔, 迈克尔·帕登 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1