为终端设备生成安全通信信道的方法和系统与流程

文档序号:12278139阅读:509来源:国知局
为终端设备生成安全通信信道的方法和系统与流程

本发明涉及为终端设备生成安全通信信道的方法和系统。



背景技术:

需要如特别是数字证书、安全令牌(英语Security Token)或者安全票据(英语Security Ticket)之类的安全凭证(英语Security Credentials)来支持确定场景中的安全服务。这样的安全服务可以是例如在两个伙伴之间建立通信信道,或者也可以是在两个或三个参与方之间传输许可票据。安全基础设施通常提供这种安全凭证。

在一种包括三方通信的特殊应用中,需要保证一方面正确加密、但也通过安全通信信道传输安全凭证。



技术实现要素:

本发明的任务在于,提供一种用来传输安全凭证的安全通信信道。

根据第一方面,本发明涉及为终端设备生成安全通信信道的方法。该方法包括利用通信协议在通信伙伴与后端之间建立安全通信信道的方法步骤,其中通过通信协议分别为后端和通信伙伴确定信道连接信息。该方法包括在通信伙伴和终端设备之间生成通信信道的方法步骤。该方法包括通过通信伙伴将关于安全通信信道的信道连接信息传输给终端设备的方法步骤。该方法包括在终端设备上保存信道连接信息的方法步骤。该方法包括通过后端利用第一私钥创建数据结构和关于数据结构的第一数字签名的方法步骤,其中可以利用第一公钥检查第一数字签名。该方法包括将数据结构和第一数字签名从后端发送给终端设备的方法步骤。该方法包括利用校验算法检查数据结构的真实性,以用于通过终端设备和/或者通信伙伴利用第一公钥验证第一数据签名的方法步骤。

“后端”在本发明的上下文中例如可以被理解为任何类型的数据处理单元,尤其是具有客户端功能和/或者服务器功能的数据处理单元。例如与前端相比,后端是计算机系统的一部分(例如作为客户端服务器架构来实现),该部分尤其远离参与方。后端根据观察更靠近系统,而前端则更靠近用户。例如在客户端服务器架构中,后端构成给客户端提供服务的服务器。

“通信信道”在本发明的上下文中例如可以被理解为无线通信连接、有线通信连接、经由光波导的通信和/或者模拟通信(例如信件)形式的通信信道。

“通信伙伴”在本发明的上下文中例如可以被理解为具有编程工具的工作站和/或验配师的计算机和/或者用于终端设备的配置设备。

该方法允许建立终端设备与后端的安全通信信道以及交换数据结构。该方法尤其提供为终端设备建立安全通信信道的优点,所述终端设备本身具有小的运算能力并且只能建立没有加密保护的通信信道。通信伙伴因此作为终端设备与后端的安全桥梁。在此,所述信道连接信息对于后端和通信伙伴来说可以是相同的。但是后端和通信伙伴的信道连接信息也可以是不同的,然而可以通过数学函数相互间具有明确的关系。

在方法的第一种实施方式中,该方法具有通过通信伙伴将安全信息和/或者身份信息从终端设备发送给后端的附加方法步骤,其中通过通信伙伴将安全信息和/或者身份信息从终端设备发送给后端尤其具有以下方法步骤:将安全信息和身份信息从终端发送给通信伙伴的方法步骤,以及通过安全通信信道将终端设备的安全信息和身份信息从通信伙伴发送给后端的方法步骤。

就此能通过通信伙伴的安全通信信道将终端设备的安全关键的信息发送给后端。

在方法的其它实施方式中,数据结构包括后端的信道连接信息和/或者基本信息。

优点在于考虑将信道连接信息形式的明确标识用于后端与通信伙伴之间的安全通信信道。由于已经按照后端的预先给定的安全方针建立了后端与通信伙伴之间的安全通信信道,并且利用信道连接信息将其绑定到与终端设备的通信,因此在后端与终端设备之间有直接的安全关系。由此能够在终端设备侧以及也在后端侧确保通过之前根据后端的安全方针建立的通信信道传输配置信息,例如许可票据。

在方法的其它实施方式中,如果校验算法确定无效的真实性,则通过终端设备和/或者通过通信伙伴提供信号。

如果确定了无效的真实性,例如就可以通过能够包含控制信息的信号通知用户。用户在这种情况下可以例如结束连接,以便防止传输安全关键的信息。但也可以通过信号故意抑制或者通常故意保持错误消息。

在方法的其它实施方式中,为终端设备提供第一公钥,其中尤其是认证机构或者后端提供第一公钥。

由此以尽可能简单的方式将第一公钥提供给终端设备。

在方法的其它实施方式中,后端的基本信息包括配置信息,其中所述配置信息尤其包括许可信息和/或者用于执行命令的程序代码,通过终端设备在终端设备上执行该命令。

通过该方式例如能够以尽可能受保护的方式将许可信息(例如许可票据)传输到终端设备上,以便例如在终端设备上激活新的设备功能。

在方法的其它实施方式中,终端设备具有第二公钥和第二私钥形式的第二密钥对,利用该密钥对为终端设备的安全信息生成第二数字签名。

以这种方式可以加密保护安全信息。第二密钥对或者所使用的加密方法在此与构成第一密钥对的第一私钥和第一公钥无关。因此可以选择各自不同的强的密钥强度和加密方法。例如运算能力小的终端设备因此尤其可以使用弱的加密方法,并且在通信伙伴与后端之间可以使用明显更强的加密方法。

在方法的其它实施方式中,通信伙伴利用第二公钥和第二数字签名检查安全信息的第二真实性。

由此通信伙伴能够检查第二数字签名的真实性。如果该通信伙伴确定第二数字签名无效,则该通信伙伴例如可以结束与终端设备和/或者后端的连接,以便尤其安全关键的信息不到达未获授权的第三方。

在方法的其它实施方式中,安全信息包括随机数(Nonce)和/或终端设备证书的标识符和/或者仅包括第二公钥的指纹。

安全信息中的附加信息允许终端设备与后端之间的通信更加安全。对此,例如使用随机数(number used once,被使用一次的数)来防止重放攻击。例如可以利用随机数生成器生成随机数,或者生成随机数作为加密通信协议的一部分。

在方法的其它实施方式中,将安全信息和/或信道连接信息和/或者身份信息完全或者部分纳入到第一数字签名之中。

将信道连接信息纳入数字签名之中特别是具有以下优点,终端设备能够检查后端与通信伙伴之间的安全的通信信道的存在。这是可以的,因为通信伙伴已经将其信道连接信息传输给终端设备,并且后端同样已将其信道连接信息存放在第一数字签名中。通过通过第一数字签名加密保护后端的信道连接信息的方式,保证可以识别操纵。终端设备比较信道连接信息,并且在操纵连接(例如Session Hijacking/会话劫持)的情况下拒绝执行配置信息。通过该方法可以的是,运算弱的、只有弱的加密保护机制的终端设备仍然可以利用强加密保护通信信道的优点。

在方法的其它实施方式中,数据结构和/或者第一数字签名包括促使终端设备尤其是启用确定编程的合法性信息。

通过该方法可以的是,运算弱的、只有弱加密保护机制的终端设备仍然可以利用强加密保护通信信道的优点。尤其通过第一数字签名保护合法性信息。

在方法的其它实施方式中,以第一数字签名扩展数据结构。

由此实现,进一步简化数据操作。具体来说,以添加第一数字签名的方式扩展数据结构,并且将其作为一个单元发送。

在方法的其它实施方式中,数据结构还包括终端设备的安全信息和/或者身份信息。

通过例如将身份信息纳入到数据结构之中,尤其可以使得已经识别出通信连接被操纵的终端设备例如进入安全的状态中,以便防止其它操纵。

在方法的其它实施方式中,用来确定真实性的校验算法还检查所保存的信道连接信息和信道连接信息,其中尤其在终端设备上和/或者在通信伙伴上执行校验算法。

将信道连接信息纳入第一数字签名和/或者数据结构之中的优点在于,终端设备能够检查后端与通信伙伴之间的安全的通信信道的存在。这是可以的,因为通信伙伴已经将其信道连接信息传输给终端设备,并且后端同样已将其信道连接信息存放在第一数字签名中。通过通过第一数字签名加密保护后端的信道连接信息的方式,保证可以识别操纵。终端设备比较信道连接信息,并且在操纵连接(例如Session Hijacking/会话劫持)的情况下拒绝执行配置信息。因此通过该方法可以的是,运算弱的、只有弱的加密保护机制的终端设备仍然可以利用强加密保护通信信道的优点。

在方法的其它实施方式中,在将安全信息和身份信息从通信伙伴发送给后端的时候,通信伙伴一并发送附加信息,其中所述附加信息尤其包括用户信息。

通过纳入例如用户信息,想要对终端设备进行编程并且为了在终端设备上激活新功能已经为终端设备请求了基本信息、数据结构和/或者配置信息(例如许可信息)的用户尤其可以被通知关于潜在操纵与后端的通信连接的信息。

在方法的其它实施方式中,在发送数据结构的时候一并发送第一公钥。

就此能以特别简单的方式将第一公钥提供给终端设备。

在另一种实施方式中,将第一公钥转发给终端设备之前通过通信伙伴检查第一公钥,其中所述公钥尤其是证书,其中尤其相对于已知的发布者对该证书进行验证,其中对证书的验证尤其包括有效性和/或者拒绝状态。

在方法的其它实施方式中,在较早的时刻将第一公钥提供给终端设备,其中所述较早的时刻尤其是终端设备的制造时刻,其中保护公钥尤其是以免在终端设备上的改变。

就.此例如可以在制造过程中将第一公钥存放在终端设备的读保护和/或者写保护的存储器中。如果例如已将第一公钥存放在只读存储器中,例如ROM(只读存储器)或者WORM(一次写入读存储器),则特别好地保护该只读存储器以免操纵。

在方法的其它实施方式中,第一私钥是后端已知的秘密,其中尤其只有后端知晓所述秘密。

由此实现高的安全性,因为只有后端能够创建有效的第一数字签名。

在方法的其它实施方式中,终端设备仅仅具有安全非关键的信息。

该方法尤其可以用于没有或者有少的安全功能或加密功能的终端设备。这特别是具有以下优点,这些终端设备仍然可以利用强加密保护的通信信道。

在方法的其它实施方式中,利用对称方法生成安全的通信信道,其中所述对称方法尤其使用利用用户名和密码的认证,或者利用非对称方法生成安全的通信信道,其中所述非对称方法尤其使用数字证书。

由于可以使用不同的加密方法,因此可以将根据本发明的方法例如用于不同的安全基础设施。

在方法的其它实施方式中,由后端或者另一个通信伙伴分析信号。

例如在另一个通信伙伴(例如安全站点)中通过分析信号可以检查,哪些终端设备潜在遭受操纵尝试,并且使这些终端设备例如进入安全状态中。这例如在相关终端设备还在与后端通信的过程中,或者在相关终端设备与后端进行下一次通信的时候进行。

在方法的其它实施方式中,安全通信信道满足后端规定的安全要求,其中终端设备尤其检查第一数字签名,以便确定通信信道是否确实满足后端的安全要求。

就此,例如后端可以确定如密钥强度或者通信协议之类的安全参数,并且因此也可以隐性确定信道连接信息。这所具有的优点在于,后端可以确定用于与终端设备通信的安全要求,而终端设备不必具有加密功能或者加密通信协议。

根据另一方面,本发明涉及一种系统。该系统具有后端、通信伙伴和终端设备。后端还包括第一加密装置、第一通信装置和生成装置。生成装置利用第一加密装置和第一私钥创建数据结构和数据结构上的第一数字签名,其中可以利用第一公钥检查第一数字签名。利用第一处理器对第一通信装置进行编程,以便将数据结构和数字签名发送给终端设备。附加地,利用第一处理器对第一通信装置进行编程,以便使用第一加密装置利用通信协议建立与通信伙伴的安全通信信道,其中通过通信协议分别为后端和通信伙伴确定信道连接信息。通信伙伴包括第二加密装置和第二通信装置。利用第二处理器对第二通信装置进行编程,以便使用第二加密装置建立与后端的安全通信信道。附加地,利用第二处理器对第二通信装置进行编程,以便建立与终端设备的通信信道。附加地,利用第二处理器对第二通信装置进行编程,以便将信道连接信息发送给终端设备。终端设备包括第三通信装置、校验装置和存储器。利用第三处理器对第三通信装置进行编程,以便建立与通信伙伴的通信信道。附加地,利用第三处理器对第三通信装置进行编程,以便接收信道连接信息和/或数据结构和/或第一数字签名和/或者第一公钥。校验装置利用校验算法使用第一数字签名和第一公钥检查数据结构的真实性。存储器保存信道连接信息和/或数据结构和/或第一数字签名和/或者第一公钥。

在系统的第一种实施方式中,系统完全或者部分是一种虚拟化系统。

由此尤其能以有益的方式实现系统组件,不必使用昂贵的硬件。

此外还要求保护一种具有用来执行所述的根据本发明的方法的程序命令的计算机程序产品。附加地要求保护一种用来保存和/或者提供包括计算机程序产品的数据结构的提供装置。提供装置例如是保存或者提供计算机程序产品的数据载体。替代地,提供装置例如是保存和/或者提供计算机程序产品的计算机系统、服务器系统、网络、基于云的计算机系统和/或者虚拟计算机系统。该提供优选地被实现为完整的计算机程序产品的下载,但例如也可以被实现为部分下载,该部分下载由多个部分构成并且尤其通过对等网络进行下载。这样的计算机程序产品例如在使用数据载体形式的提供装置的情况下在系统中读入,并且执行程序命令,使得根据本发明的方法在计算机上执行。

附图说明

结合实施例的以下描述,本发明的上述特性、特征和优点以及如何实现这些特性、特征和优点的方式和方法变得更清楚和更明白地理解,所述实施例结合附图来详细解释。在此:

图1示出为终端设备生成安全通信信道的方法的实施例的图示;以及

图2示出为终端设备生成安全通信信道的系统的实施例的图示。

如果没有其它说明,附图中功能相同的元件配备相同的附图标记。

具体实施方式

图1示出为终端设备400(例如助听器)生成安全通信信道的方法的实施例的图示。

例如可以通过所谓的性能水平(英语Performance Level)调整助听器的性能质量。也就是说,性能水平越高,助听器的性能就越好,但是助听器的价格也就越高。如果验配师例如要为客户提高助听器的性能水平,则必须例如通过助听器制造商的许可票据在助听器上激活该功能。然后助听器制造商又将较高的性能水平算在验配师的账上,并且验配师相应地向其客户转递较高的成本。以上提及的许可票据在此相当于用来在内部调整助听器性能水平的许可证。在此,通信伙伴300的编程工具一方面承担与终端设备400或助听器的通信。附加地,编程工具建立与助听器制造商的后端的安全通信信道,其中验配师优选地保持订货和结算账户,并且为此必须使用用户名和密码进行认证。

具体来说,在该实施例中在终端设备400(例如助听器)上通过通信伙伴300(例如具有终端设备400的编程工具的工作站)执行所期望的功能,例如提高助听器的性能水平。换句话说,通信伙伴300想要利用编程工具在终端设备400上激活所期望的功能。对此,例如通信伙伴300必须在后端200中请求终端设备400的配置信息,例如激活所期望的功能的许可证。

在第一方法步骤105中在通信伙伴300与终端设备200之间建立安全或安全保护的通信信道形式的安全连接。为此使用通信协议,例如传输层安全协议(英语TLS,Transport Layer Security Protocol)之类的混合加密协议。通信协议分别确定通信伙伴300与后端200之间的安全通信信道的信道连接信息。为了进行认证,在此一方面执行后端200的服务器侧的认证作为通信协议的一部分,另一方面在编程工具侧基于用户名和编程工具用户的密码执行认证。终端设备400不认识该安全通信信道,并且为了与编程工具或通信伙伴300进行通信优选地使用非加密保护的或者较弱加密保护的连接作为通信伙伴300与后端200之间所存在的连接。

在此,信道连接信息对于后端200和通信伙伴300来说可以是相同的。替代地,可以将不同的信道连接信息用于后端200和通信伙伴300。在此需要能够通过变换函数从通信伙伴300的第一信道连接信息计算后端200的第二信道连接信息。但也可以使用相同的变换函数或者其它合适的变换函数从第二信道连接信息计算第一信道连接信息。附加地,终端设备400必须已知这些变换函数,以便该终端设备能够在必要时关于以下检查所接收的信道连接信息,即从后端200通过安全通信信道接收的数据是否被终端设备400或通信伙伴300所请求。由此尤其可以识别对安全通信信道的操纵。

在第二方法步骤110中,为了由通信伙伴300激活终端设备400上的所期望的功能,建立通信伙伴300与终端设备400的通信信道。编程工具现在可以针对安全通信信道确定通信伙伴300的信道连接信息。

在第三方法步骤115中,利用编程工具向终端设备400提出查询,以便生成新的许可查询。除了许可查询之外,该查询还包含通信伙伴300的信道连接信息。终端设备400在方法步骤120中保存该值,直至获得新的许可票据。

终端设备400利用随机数生成器生成例如随机数形式的安全信息,该随机数也称作Nonce(英语number used once),并且在第四方法步骤121中将这些安全信息连同终端设备400的身份信息(例如明确的设备标识符)发送给编程工具。为了激活所期望的功能,终端设备400还将许可请求发送给通信伙伴300或编程工具。在第五方法步骤122中将这些终端设备信息(即许可请求、安全信息和身份信息)与通信伙伴300的附加信息(例如关于编程工具的当前用户的用户信息)一起传输给后端200。

后端200又检查授权并且在第六方法步骤125中利用为应该被激活的所期望的功能而请求的新许可值创建数据结构,例如许可票据。许可票据例如由许可请求、后端200的信道连接信息和关于身份信息、随机数和新许可值的第一数字签名构成。为此,后端200具有为了生成签名所需的第一私钥,并且终端设备400具有为了检查第一数字签名所需的所属的第一公钥。在终端设备400上仅必须保护第一公钥以免修改。也可以说,终端设备400具有后端200的第一公钥的根证书。

后端200在第七方法步骤130中将数据结构和第一数字签名发送给终端设备400。例如可以通过独立的加密保护的信道将这些数据(即第一数字签名和数据结构)发送给终端设备400。替代地,但也可以通过通信伙伴300利用现有的连接进行发送。

因此终端设备400不仅能够在第八方法步骤135中利用校验算法检查许可票据是正确加密的,而且也可检查是否通过安全通信信道提供了许可票据,所述安全通信信道符合后端200的安全要求(英语Security Policy),例如加密方法的强度、认证的强度、完整性保护以及加密。这通过以下方式被确定,即后端200预先规定与通信伙伴300的安全通信信道的安全要求。由于终端设备400利用校验算法检查保存在终端设备400上的信道连接信息与数据结构或第一数字签名的信道连接信息充分一致,因此可以保证在终端设备400上间接遵守后端200的安全要求。前提条件是通过终端设备400中的现有根证书得出终端设备400与后端200的信任关系。

在第九方法步骤140中,如果校验算法确定第一数字签名的真实性无效,或者保存在终端设备400上的信道连接信息与后端发送的信道连接信息缺乏一致性,则通过终端设备400和/或者通过通信伙伴300提供例如包括控制信息的信号。

在一种变型方案中,通信协议利用一种握手方法(例如TLS握手)基于数字证书(例如X.509证书)和对应的私钥进行相互认证,代替在后端200与通信伙伴300之间的单边认证。在此,用户信息在理想情况下可以在通信伙伴300的证书中。因此可以在必要时放弃利用用户名和密码进行认证。

在另一种变型方案中,具有集成保护通信的协议被用于通信伙伴300或编程工具与终端设备400之间的通信。然而其前提条件是在两侧有相应的密钥资料,例如具有第二私钥和第二公钥的第二密钥对。可行的协议又是TLS协议。当然安全要求在此优选地弱于对安全通信信道的安全要求。

在另一种变型方案中,通过以下参数之一形成信道连接信息。但也可以由多个参数形成信道连接信息。

-后端200与通信伙伴300之间的安全通信信道或者会话的标识符。例如当使用TLS协议的时候,可以使用tls唯一的参数。

-安全通信信道发送方的标识符。

-安全通信信道接收方的标识符。

-关于协商的通信安全的信息,例如所使用的认证方法、所使用的完整性保护和/或者所使用的保密水平。

-时间戳,例如生成安全通信信道的时刻。

-随机数(Nonce),例如随机数生成器生成的随机数。

在另一种变型方案中,通信伙伴或编程工具在许可票据被转发给终端设备400之前对其进行检查。如果终端设备400关于存储器和/或者运算能力受限,那么这尤其是合理的。在此,编程工具的可能反应(例如删除数据,处理错误消息,生成报警)取决于后端200、通信伙伴300和终端设备400这些参与方之间的信任关系。

计算机系统500包括例如助听器制造商的许可服务器形式的后端200,优选地具有Linux操作系统的服务器。许可服务器例如利用第一接口225通过互联网连接505与验配师的计算机(优选地Apple iMac)形式的通信伙伴300的第二接口320连接。通信伙伴300例如利用第二接口320通过本地网络连接510(优选地无线网络连接)与终端设备400(优选地助听器)的第三接口425连接。

后端200和通信伙伴300例如分别包括市面上常见的硬件组件,例如优选TFT显示器形式的显示设备、至少一个优选计算机鼠标和/或者键盘形式的输入设备、至少一个优选固态硬盘和/或者DVD读和/或写驱动器形式的数据载体、处理器(优选Intel x86兼容的处理器)、网络接口(优选以太网接口)、工作存储器(优选DDR RAM)和/或者其它专业人士熟悉的硬件或者外围设备。

后端200附加地包括通过第一内部总线220(例如数据总线)相互通信连接的第一加密装置205、生成装置210、第一通信装置215和第一接口225。生成装置210利用第一加密装置205和第一私钥创建数据结构和数据结构上的第一数字签名,其中可以利用第一公钥检查第一数字签名。利用第一处理器对第一通信装置215进行编程,以便将数据结构和第一数字签名发送给终端设备400。附加地利用第一处理器对第一通信装置215进行编程,以便使用第一加密装置205利用通信协议建立与通信伙伴300的安全通信信道,其中通过通信协议分别为后端200和通信伙伴300确定信道连接信息。

通信伙伴300附加地包括通过第二内部总线315(例如数据总线)相互通信连接的第二加密装置305、第二通信装置310和第二接口320。利用第二处理器对第二通信装置310进行编程,以便使用第二加密装置305建立与后端200的安全通信信道。附加地利用第二处理器对第二通信装置310进行编程,以便建立与终端设备400的通信信道。附加地利用第二处理器对第二通信装置310进行编程,以便将信道连接信息发送给终端设备400。

终端设备400包括通过第三内部总线420(例如数据总线)相互通信连接的第三通信装置405、校验装置410、存储器415和第三接口425。除此之外,终端设备400还具有专业人士熟悉的、对于现有技术中的助听器已知的其它组件。

利用第三处理器对第三通信装置405进行编程,以便建立与通信伙伴300的通信信道。附加地利用第三处理器对第三通信装置405进行编程,以便接收信道连接信息和/或数据结构和/或第一数字签名和/或者第一公钥。

校验装置410利用校验算法使用第一数字签名和第一公钥来检查数据结构的真实性。

存储器415保存信道连接信息和/或数据结构和/或第一数字签名和/或者第一公钥。

尽管通过实施例对本发明进行了详细阐述和描述,但是本发明并非局限于所公开的实施例,并且专业人士可以据此得出其它变型方案,而不脱离本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1