当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于使用硬件安全引擎通过网络进行安全通信的方法和设备技术

技术编号:10676003 阅读:293 留言:0更新日期:2014-11-26 11:27
一种用于与服务器建立安全通信会话的方法、装置和系统,包括发起对于安全通信会话的请求,所述安全通信会话例如是使用在客户端设备的片上系统(SOC)的安全引擎中生成的临时随机数值的与服务器的安全套接字层(SLL)通信。此外,在客户端和服务器之间执行密码密钥交换,以便生成对称会话密钥,该对称会话密钥被存储在安全性引擎的安全存储设备中。所述密码密钥交换可以例如是Rivest-Shamir-Adleman(RSA)密钥交换或者Diffie-Hellman密钥交换。在所述密码密钥交换期间生成的私有密钥和其它数据可以被所述安全引擎生成和/或存储在所述安全引擎中。

【技术实现步骤摘要】
【国外来华专利技术】用于使用硬件安全引擎通过网络进行安全通信的方法和设备
技术介绍
密码通信协议用于通过不可信的网络或通信链路建立计算设备之间的安全通信会话。一个常用的密码通信协议是安全套接字层(SSL)协议。SSL协议以及相关的传输层安全(TLS)协议被用于许多不同类型的安全通信会话,例如包括在诸如以太网的不可信的网络上的安全网络浏览、电子商务、安全升级以及两个计算设备之间的其它安全通信会话。其它通信协议可以利用SSL/TLS协议以便提供底层安全。例如,超文本传输协议安全(HTTPS)使用SSL/TLS用于设备之间的消息的加密。典型地,由SSL/TLS协议提供的密码安全在带内完成并且在软件应用级别上执行。由于一些计算和电子设备的相对小的封装(footprint),它们利用片上系统(SOC)设计。SOC设备是将电子系统的除了处理核心之外还包括的各种部件结合在单个管芯上的集成电路。例如,SOC可以包括位于单个芯片上的处理器核心、存储器控制器、视频部件、音频部件和/或通信部件。附图说明在附图中通过示例而非限制的方式说明了本文描述的专利技术。为了说明的简单性和清楚性,附图中说明的元件不必按照比例绘制。例如,为了清楚性,一些元件的尺寸可能相对其它元件被放大。进而,在认为适当时,在附图中重复附图标记以便指示相对应或者类似的元件。图1是用于通过网络在具有片上系统(SOC)的客户端设备和服务器之间建立安全通信会话的系统的至少一个实施例的简化框图;图2是用于图1的系统的安全方案的至少一个实施例的框图;图3是用于建立安全通信会话的图1的客户端设备和服务器的通信序列的至少一个实施例的简化序列图;并且图4是用于建立由图1的客户端设备执行的安全通信会话的方法的至少一个实施例的简化流程图。具体实施方式尽管本公开的概念容易具有各种修改和替换形式,但是在附图中通过示例的方式示出了其具体示例性实施例并且在本文将对这些实施例进行详细描述。然而,应当理解的是,并非意在将本公开的概念局限于所公开的具体形式,而是相反,意在涵盖与本公开和所附权利要求一致的所有修改、等同物和替代。在下面的描述中,阐释了诸如逻辑实现、操作码、指定操作数的手段、资源划分/共享/复制实现、系统部件的类型和相互关系以及逻辑划分/集成选择,以便提供对本公开的更加全面的理解。然而,本领域的普通技术人员应当认识到,本公开的实施例可以在没有这些具体细节的情况下实践。在其它实例中,没有详细示出控制结构、门级电路和全软件指令序列,以便不混淆本专利技术。使用所包括的描述,本领域的普通技术人员将能够实现适当的功能而无需过多实验。在本说明书中对“一个实施例”、“实施例”、“示例实施例”等等的引用指示所描述的实施例可以包括特定的特征、结构或特性,但是每一个实施例可以不必都包括该特定的特征、结构或特性。而且,这样的短语不必指代相同的实施例。进而,当结合实施例描述特定的特征、结构或特性时,应当认为结合无论是否被明确描述的其它实施例来实现这样的特征、结构或特性在本领域技术人员的知识范围内。本专利技术的实施例可以被实现在硬件、固件、软件或它们的任意组合中。被实现在计算机系统中的本专利技术的实施例可以包括部件之间的一个或多个基于总线的互连和/或部件之间的一个或多个点对点互连。本专利技术的实施例也可以被实现为由机器可读介质承载或者存储在该机器可读介质上的指令,这些指令可以由一个或多个处理器读取和执行。机器可读介质可以被体现为用于以机器(例如,计算设备)可读的形式存储或传输信息的任何设备、机制或物理结构。例如,机器可读介质可以被体现为只读存储器(ROM);随机存取存储器(RAM);磁盘存储介质;光学存储介质;闪存设备;小型或微型SD卡、记忆棒、电信号等等。在附图中,可以为了便于描述而示出诸如代表设备、模块、指令块和数据元素的那些元件的示意性元件的具体布置或排序。然而,本领域技术人员应当理解的是,附图中示意性元件的具体顺序或布置并不意在暗示要求处理的特定顺序或序列或者处理的分离。进而,附图中包括示意性元件并不意在暗示在所有实施例中都要求这样的元件,或者在一些实施例中由这样的元件代表的特征可能不被包括在其它元件中或者没有与其它元件相结合。通常,用于代表指令块的示意性元件可以使用机器可读指令的任何适当的形式实现,例如软件或固件应用、程序、函数、模块、例程、过程、进程、插件、小应用程序、窗口小部件、代码片段和/或其它,并且每一个这样的指令可以使用任何合适的编程语言、库、应用编程接口(API)和/或其它软件开发工具来实现。例如,一些实施例可以使用Java、C++和/或其它编程语言来实现。类似地,用于代表数据或信息的示意性元件可以使用任何合适的电子布置或结构实现,例如寄存器、数据存储、表、记录、数组、索引、哈希、映射图、树、列表、图、(任何文件类型的)文件、文件夹、目录、数据库和/或其它。进而,在附图中,在使用诸如实线或者虚线或者箭头的连接元件来说明两个或更多个其它示意性元件之间的连接、关系或关联的情况下,不存在任何这样的连接元件并不意味着暗示没有连接、关系或关联能够存在。换句话说,在附图中可能没有示出元件之间的一些连接、关系或关联,以便不混淆本专利技术。此外,为了便于说明,单个连接元件可以用于代表元件之间的多个连接、关系或关联。例如,在连接元件代表信号、数据或指令的传输的情况下,本领域的技术人员应当理解,如果需要,这样的元件可以代表一个或多个信号路径(例如,总线),以便实现通信。现在参照图1,用于建立安全通信会话的系统100包括客户端设备102、服务器104以及网络106。在操作中,客户端设备102通过网络106发起对于与服务器104的安全通信会话的请求。为了建立安全通信会话,客户端设备102和服务器104执行密码密钥交换,例如Diffie-Hellman或Rivest-Shamir-Adleman(RSA)密钥交换,以便生成秘密对称会话密钥。该秘密对称会话密钥可以接着用于加密和解密客户端设备102和服务器104之间的消息。为了确保安全通信会话,在客户端设备102的片上系统(SOC)112的安全引擎110内完成由客户端设备102生成的各种密钥和其它密码功能。客户端设备102将该密钥秘密地维持在安全引擎110的安全存储器114中。例如,如下面讨论的,安全引擎110可以包括安全密钥150,用于签名和/或以其它方式加密其它密钥和消息。按照这种方式,客户端设备102和服务器104可以使用客户端设备102的带外(即,不是应用级)硬件安全功能来贯穿网络106建立安全通信会话。在本文描述的说明性实施例中,安全通信会话是安全套接字层(SSL)通信会话,但是在其它实施例中,本文描述的系统100和特征可以用于建立其它类型的安全通信会话。客户端设备102可以被体现为能够通过网络106与服务器104进行通信的任何类型的计算设备,例如,客户端设备102可以被体现为机顶盒、数字电视、智能电话、平板计算机、膝上型计算机、移动互联网设备(MID)、台式计算机或者能够与服务器104进行通信的其它设备。如上面讨论的,客户端设备102包括SOC112,其可以被体现为具有各种部件和结构的任何类型的片上系统设备。在图1的说明性实施例中,SOC112包括安全引擎110、存储器控制器11本文档来自技高网...
用于使用硬件安全引擎通过网络进行安全通信的方法和设备

【技术保护点】
一种片上系统装置,包括:片上系统,包括安全引擎,所述安全引擎具有仅能够由所述安全引擎访问的安全存储器,所述安全引擎用于:生成随机的临时随机数,用于使用所述临时随机数发起对于通过网络与服务器的安全通信会话的请求;执行与所述服务器的密码密钥交换,以便生成对称会话密钥来在所述安全通信会话期间对发送到所述服务器的消息进行加密并且对从所述服务器接收的消息进行解密;将所述会话密钥存储在所述安全存储器中,所述片上系统用于使用所述会话密钥建立通过所述网络与所述服务器的所述安全通信会话。

【技术特征摘要】
【国外来华专利技术】1.一种片上系统装置,包括:片上系统,包括安全引擎,所述安全引擎独立于所述片上系统的处理器核心并且具有仅能够由所述安全引擎访问的安全存储器,其中,所述安全存储器包括在所述片上系统的制造过程期间被编码在所述安全存储器中的安全密钥,所述安全引擎用于:生成随机的临时随机数,用于使用所述临时随机数发起对于通过网络与远程服务器的安全通信会话的请求;执行与所述远程服务器的密码密钥交换;基于所述密码密钥交换来生成对称会话密钥,以在所述安全通信会话期间对发送到所述远程服务器的消息进行加密并且对从所述远程服务器接收的消息进行解密;基于所述安全密钥来对所述对称会话密钥进行加密;并且将加密的会话密钥存储在所述安全存储器中,所述片上系统用于使用所述会话密钥建立通过所述网络与所述远程服务器的所述安全通信会话。2.根据权利要求1所述的片上系统装置,其中,所述安全引擎用于在对所述对于所述安全通信会话的请求的响应消息中从所述远程服务器接收服务器临时随机数,所述响应消息包括服务器临时随机数,并且将所述服务器临时随机数存储在所述安全存储器中。3.根据权利要求1所述的片上系统装置,其中,所述安全引擎用于生成预主密钥,使用所述安全引擎的所述安全密钥对所述预主密钥进行加密,并且将被加密的预主密钥发送到所述远程服务器。4.根据权利要求3所述的片上系统装置,其中,所述安全引擎用于使用服务器公共密钥包裹所述预主密钥并且将被包裹的预主密钥存储在所述安全存储器中。5.根据权利要求3所述的片上系统装置,其中,所述安全引擎用于:根据所述预主密钥来生成所述会话密钥;并且根据由所述安全引擎生成的所述随机的临时随机数以及从所述远程服务器接收的临时随机数来计算哈希函数。6.根据权利要求1所述的片上系统装置,其中,所述安全引擎用于生成公共Diffie-Hellman客户端密钥和私有Diffie-Hellman客户端密钥,使用所述安全引擎的所述安全密钥来对所述公共Diffie-Hellman客户端密钥进行签名,并且将被签名的公共Diffie-Hellman密钥发送到所述远程服务器。7.根据权利要求6所述的片上系统装置,其中,所述安全引擎用于从所述远程服务器接收公共Diffie-Hellman服务器密钥并且根据所述私有Diffie-Hellman客户端密钥和所述公共Diffie-Hellman服务器密钥来生成所述会话密钥。8.根据权利要求1所述的片上系统装置,其中,所述安全引擎用于从所述远程服务器接收Diffie-Hellman全局值和公共Diffie-Hellman服务器密钥,并且将所述Diffie-Hellman全局值和所述公共Diffie-Hellman服务器密钥中的至少一个存储在所述安全存储器中。9.一种用于片上系统的方法,包括:在客户端设备的片上系统的安全引擎中生成随机的临时随机数,所述安全引擎独立于所述片上系统的处理器核心;使用所述客户端设备发起对于通过网络与远程服务器的安全通信会话的请求,所述请求包括所述随机的临时随机数;使用所述片上系统的所述安全引擎执行与所述远程服务器的密码密钥交换;基于所述密码密钥交换来生成对称会话密钥,以在所述安全通信会话期间对发送到所述远程服务器的消息进行加密并且对从所述远程服务器接收的消息进行解密;基于在所述片上系统的制造过程期间被编码在所述安全引擎的安全存储器中的安全密钥来对所述会话密钥进行加密;将加密的会话密钥存储在所述片上系统的所述安全引擎的所述安全存储器中;并且使用所述客户端设备,使用所述会话密钥来建立与所述远程服务器的所述安全通信会话。10.根据权利要求9所述的方法,其中,发起对于安全通信会话的请求包括将包括所述临时随机数的ClientHello消息发送到所述远程服务器;并且进一步包括:从所述远程服务器接收ServerHello消息,所述ServerHello消息包括服务器临时随机数;并且将所述服务器临时随机数存储在所述片上系统的所述安全引擎的所述安全存储器中。11.根据权利要求9所述的方法,其中,执行与所述远程服务器的所述密码密钥交换包括:在所述安全引擎中生成预主密钥;使用所述安全引擎的所述安全密钥来对所述预主密钥进行加密;并且将被加密的预主密钥发送到所述远程服务器。12.根据权利要求11所述的方法,进一步包括:使用服务器公共密钥将所述预主密钥包裹在所述片上系统的所述安全引擎中,并且将被包裹的预主密钥存储在所述片上系统的所述安全引擎的所述安全存储器中。13.根据权利要求11所述的方法,其中,执行与所述远程服务器的所述密码密钥交换包括:根据所述预主密钥在所述片上系统的所述安全引擎中生成所述会话密钥。14.根据权利要求13所述的方法,其中,在所述安全引擎中生成所述会话密钥包括:使用所述...

【专利技术属性】
技术研发人员:H·M·科斯拉维E·C·埃普F·卡比尔
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1