用于认证系统的电子装置的制作方法

文档序号:15817486发布日期:2018-11-02 22:47阅读:156来源:国知局
用于认证系统的电子装置的制作方法

本申请要求于2017年4月24日在韩国知识产权局提交的韩国专利申请no.10-2017-0052509的优先权,该申请的公开以引用方式全文并入本文中。

根据本文公开的发明构思的示例性实施例的设备和方法涉及电子装置,更具体地说,涉及认证系统。

背景技术

随着信息技术的发展,个人信息可通过电子装置等存储和处理。因此,认证系统已发展为保护用户的个人信息免于恶意攻击。认证系统可基于编码技术。编码技术是一种用于防止具有特定知识的除用户之外的人获得特定信息的技术。因此,编码技术包括用于利用复杂算法转换指示特定信息的数据值的技术。

编码技术包括基于对称密钥的编码技术和基于非对称密钥的编码技术。在基于对称密钥的编码技术中,在编码数据和解码编码的数据的处理中使用相同密钥。因此,用于基于对称密钥的编码技术中的对称密钥是不应该暴露于第三方的秘密密钥。相比之下,在基于非对称密钥的编码技术中使用两种不同类型的密钥(公钥和私钥)。公钥暴露于第三方是没关系的。公钥用于编码消息。私钥不应该暴露于第三方。私钥用于解码编码的消息。

随着物联网(iot)系统应用于日常生活,编码技术变得更加重要。iot系统可执行信息交换和处理交换的信息,而不用人的介入。在iot系统中包括低功率终端装置。因此,在iot系统中使用的认证系统使用不需要高运算能力的基于对称密钥的编码技术。然而,如果对称密钥暴露,则严重威胁基于对称密钥的编码技术的安全性。



技术实现要素:

本发明构思的示例性实施例提供了一种用于认证终端装置的认证系统。

根据示例性实施例的一方面,提供了一种电子装置,诸如包括处理器和存储器的集线器。处理器可被构造为接收在终端装置产生的认证消息、基于数据和认证消息获得认证密钥以及基于认证密钥验证认证消息。这里,可利用与基于数据和认证消息获得的认证密钥相对应的对应认证密钥在终端装置产生认证消息。

根据示例性实施例的一方面,提供了一种电子装置,其为一种终端装置,该终端装置包括:安全模块,其被构造为基于认证密钥生成认证消息;存储器,其被构造为存储与认证消息关联的数据;以及发送器,其被构造为将认证消息发送至集线器,以验证。这里,安全模块可通过以下步骤生成认证消息:对与集线器共享的验证标识符和指示产生形成认证消息的消息的时间的时间戳中的至少一个进行编码;以及利用认证密钥生成消息认证码。

附图说明

以上及其它方面和特点将从以下参照附图的描述中变得清楚,其中,除非另有说明,否则相同标号在各个附图中始终指代相同部件,附图中:

图1是示出根据本发明构思的示例性实施例的认证系统的示例的示意图;

图2是示出根据本发明构思的示例性实施例的认证系统的示例的框图;

图3是示出用于产生认证密钥的协议的示例的框图;

图4是示出在图1的终端装置中产生认证消息的协议的示例的框图;

图5是示出从认证消息获得数据的方法的示例的框图;

图6是示出在图1的集线器中用于验证认证消息的协议的示例的框图;

图7是示出根据本发明构思的示例性实施例的通过认证系统验证认证消息的方法的示例的流程图;

图8是示出根据本发明构思的示例性实施例的用于实施图1的终端装置和集线器的电子装置的示例的框图;以及

图9是示出根据本发明构思的示例性实施例的用于实施认证系统的物联网系统的示例的概念示意图。

具体实施方式

下面,详细和清楚地描述本发明构思的示例性实施例,以使得本领域普通技术人员可容易地实施本发明构思。

图1是示出根据本发明构思的示例性实施例的认证系统的示例的示意图。参照图1,认证系统100可包括密钥管理系统(kms)110、终端装置120和集线器130。终端装置120可基于安全元件(se)121提供安全功能。集线器130可基于可信执行环境(tee)131提供安全功能。

密钥管理系统110可生成盐值(salt)、装置标识符(id)、标识符和秘密密钥。密钥管理系统110可基于盐值、装置id、标识符和秘密密钥生成认证密钥。将参照图3描述用于生成认证密钥的详细协议。

例如,密钥管理系统110可随机生成指定位数的数据,并且可使用生成的数据作为标识符。可替换地,密钥管理系统110可生成指示与终端装置120关联的信息(例如,与终端装置120所属的产品组关联的信息)的数据,并且可使用生成的数据作为标识符。

例如,密钥管理系统110可随机生成指定位数的数据,并且可使用生成的数据作为盐值。当利用哈希(hash)函数从特定数据计算哈希值时可使用盐值。可通过不同的盐值从相同的数据和相同的哈希函数中计算出彼此不同的哈希值。

例如,密钥管理系统110可生成与和终端装置120关联的信息(例如,终端装置120的制造商名称)关联的数据,并且可使用生成的数据作为装置id。可替换地,密钥管理系统110可生成与和包括在终端装置120中的安全模块关联的信息(例如,安全模块的型号名称)关联的数据,并且可使用生成的数据作为装置id。

例如,秘密密钥可为能够用于执行基于对称密钥的编码操作的对称密钥。秘密密钥可用于基于承诺协议转换特定数据的编码操作。

在制造终端装置120时(即,在用户使用终端装置120之前),密钥管理系统110可将盐值、装置id和认证密钥发送至终端装置120。从密钥管理系统110接收的盐值、装置id和认证密钥可存储在终端装置120中。通过基于se121提供的安全功能,可将认证密钥存储在终端装置120中。另外,在制造集线器130时(即,在用户使用集线器130之前),密钥管理系统110可将标识符和秘密密钥发送至集线器130。通过基于tee131提供的安全功能,可将从密钥管理系统110接收到的标识符和秘密密钥存储在集线器130中。

例如,密钥管理系统110可包括用于生成和管理将用于认证系统100中的数据的一组计算装置。因此,密钥管理系统110可包括一个或多个处理器、一个或多个存储器、一个或多个贮存器等。将参照图8描述密钥管理系统110的示例实施方式。

终端装置120可从密钥管理系统110接收盐值、装置id和认证密钥。终端装置120可基于接收到的盐值、装置id和认证密钥生成认证消息。将参照图4描述用于生成认证消息的详细协议。

终端装置120可将生成的认证消息发送至集线器130。例如,终端装置120可通过安全信道将生成的认证消息发送至集线器130。可替换地,终端装置120可通过正常信道将生成的认证消息发送至集线器130。

例如,终端装置120可包括基于se121提供安全功能的安全模块。例如,安全模块可包括贮存器。基于se121提供的安全功能可仅允许被验证了的用户访问安全模块。将参照图8描述基于se121在安全模式下操作的安全模块。

集线器130可从密钥管理系统110接收标识符和秘密密钥。集线器130可基于标识符和秘密密钥获得认证密钥。将参照图3描述用于获得认证密钥的详细协议。

集线器130可从终端装置120接收认证消息。集线器130可从接收到的认证消息中获得认证所需的数据。集线器130可基于获得的数据和认证密钥验证接收到的认证消息。将参照图6描述用于认证接收到的认证消息的详细协议。

例如,集线器130可包括基于tee131提供安全功能的处理器。例如,处理器可包括存储器。基于tee131提供的安全功能可仅允许被验证了的用户访问处理器。将参照图8描述基于tee131在安全模式下操作的处理器。

当通过集线器130验证在终端装置120中生成的认证消息时,终端装置120可获取与集线器130交换数据的权限。例如,在终端装置120和集线器130被包括在iot系统中的情况下,终端装置120和集线器130需要交换与使用iot系统的用户关联的数据。在与用户关联的数据要求高安全等级的情况下,集线器130可对终端装置120作出认证请求。例如,集线器130可将用于请求认证的认证请求消息发送至终端装置120。终端装置120可响应于集线器130的请求生成认证消息。在通过集线器130验证生成的认证消息之后,集线器130可与终端装置120交换关于用户的数据。

图2是示出根据本发明构思的示例性实施例的认证系统的示例的框图。参照图2,认证系统100a可包括密钥管理系统110、集线器130以及第一终端装置120_1至第n终端装置120_n。第一终端装置120_1至第n终端装置120_n可分别基于第一se121_1至第nse121_n提供安全功能。

密钥管理系统110可生成第一盐值至第n盐值、第一装置id至第n装置id、标识符和秘密密钥。密钥管理系统110可基于第一盐值至第n盐值、第一装置id至第n装置id、标识符和秘密密钥生成第一认证密钥至第n认证密钥。用于生成第一认证密钥至第n认证密钥的协议可与用于生成图1的认证密钥的协议相似。

第一盐值至第n盐值可彼此相同。可替换地,第一盐值至第n盐值中的至少一个可与其余盐值不同。第一装置id至第n装置id可彼此相同。可替换地,第一装置id至第n装置id中的至少一个可与其余装置id不同。

例如,在第一盐值与第二盐值彼此相同的情况下,第一装置id和第二装置id可彼此不同。可替换地,在第一盐值和第二盐值彼此不同的情况下,第一装置id和第二装置id可彼此相同。可替换地,第一盐值和第二盐值可彼此不同,第一装置id和第二装置id可彼此不同。因此,基于第一盐值和第一装置id生成的第一认证密钥可与基于第二盐值和第二装置id生成的第二认证密钥不同。如以上描述中,第一认证密钥至第n认证密钥可彼此不同。

密钥管理系统110可将第一盐值至第n盐值、第一装置id至第n装置id和第一认证密钥至第n认证密钥分别发送至第一终端装置120_1至第n终端装置120_n。当制造第一终端装置120_1至第n终端装置120_n时,可将第一盐值至第n盐值、第一装置id至第n装置id和第一认证密钥至第n认证密钥分别发送至第一终端装置120_1至第n终端装置120_n。从密钥管理系统110接收到的第一盐值至第n盐值、第一装置id至第n装置id和第一认证密钥至第n认证密钥可分别存储在第一终端装置120_1至第n终端装置120_n中。这些第一认证密钥至第n认证密钥可分别存储在基于第一se121_1至第nse121_n提供安全功能的第一终端装置120_1至第n终端装置120_n中。

第一终端装置120_1至第n终端装置120_n可分别从密钥管理系统110接收第一盐值至第n盐值、第一装置id至第n装置id和第一认证密钥至第n认证密钥。第一终端装置120_1至第n终端装置120_n可基于接收到的第一盐值至第n盐值、第一装置id至第n装置id和第一认证密钥至第n认证密钥分别生成第一认证消息至第n认证消息。用于生成第一认证消息至第n认证消息的协议可与用于生成图1的认证消息的协议相似。由于基于不同认证密钥生成认证消息,因此认证消息可彼此不同。

第一终端装置120_1至第n终端装置120_n可将第一认证消息至第n认证消息发送至集线器130。例如,第一终端装置120_1至第n终端装置120_n可通过安全信道将第一认证消息至第n认证消息发送至集线器130。可替换地,第一终端装置120_1至第n终端装置120_n可通过正常信道将第一认证消息至第n认证消息提供至集线器130。

图3是示出用于产生认证密钥的协议110a的示例的框图。密钥管理系统110可根据协议110a产生认证密钥。集线器130可根据协议110a获得认证密钥。

例如,可通过一个或多个计算装置执行将在下面描述的图3的哈希函数111、哈希函数112、xor操作113和编码操作114。可替换地,可通过集线器130执行图3的操作。更具体地说,可通过基于图2所示的tee131在安全模式下操作的处理器执行图3的操作。

在图3的示例中,哈希函数111和哈希函数112可包括用于将第一位数的数据转换为第二位数的数据的操作。例如,哈希函数可为诸如sha-128、sha-256和sha-512的函数中的任一种。

在图3的示例中,xor操作113可为逻辑操作。例如,下表1示出了当通过利用1位数据执行xor操作113时获得的结果。

[表1]

在表1的示例中,“a”和“b”可为输入值。参照表1,在“a”和“b”具有相同的值的情况下,xor操作113的值可为“0”。在“a”和“b”具有不同值的情况下,xor操作113的值可为“1”。

xor操作113可用作编码操作和解码操作。例如,在对“1010”(待编码的数据)和“1111”(用于编码和解码的密钥)执行xor操作113的情况下,xor操作113的值可为“0101”(编码的数据)。在对“0101”(编码的数据)和“1111”(用于编码和解码的密钥)执行xor操作113的情况下,xor操作113的值可为“1010”(解码了的数据)。因此,xor操作113可用作用于数据遮蔽的操作。下面,将参照图3描述xor操作113用作用于数据遮蔽的操作的示例。

xor操作113可用作用于数据认证的操作。在两个输入值相同的情况下,不管输入值如何,xor操作113的值可为特定值(例如,“0”)。例如,在对“1110”(待验证的数据)和“1111”(参考值)执行xor操作113的情况下,xor操作113的值可为“0001”。由于xor操作值的最低有效位为“1”,可以理解,待验证的值的最低有效位和参考值的最低有效位彼此不一致。在待验证的值和参考值彼此不一致的情况下,可拒绝认证。将参照图6描述xor操作113用作用于数据认证的操作的示例。

在图3的示例中,编码操作114可包括通过利用对称密钥(例如,图3的秘密密钥)转换特定数据的操作。可通过使用与在编码操作114中使用的对称密钥相同的对称密钥解码通过编码操作114转换的数据。

如参照图1的描述,密钥管理系统110可生成标识符、盐值“salt_1”和装置id“deviceid_1”。集线器130可从密钥管理系统110接收标识符、盐值“salt_1”和装置id“deviceid_1”。

另外,密钥管理系统110可生成第一标签“tag#1”和第二标签“tag#2”。第一标签“tag#1”和第二标签“tag#2”中的每一个可为具有给定比特数量的任何数据。第一标签“tag#1”和第二标签“tag#2”可用于指示数据块的位置。例如,第一标签“tag#1”和第二标签“tag#2”可用于解析协议110a的处理中。

集线器130可生成第三标签“tag#3”和第四标签“tag#4”。第三标签“tag#3”和第四标签“tag#4”的特征与第一标签“tag#1”和第二标签“tag#2”的相似,因此省略其描述。下面,将参照图3描述利用第一标签“tag#1”和第二标签“tag#2”的协议110a。下面,将逐步描述协议110a。

参照图3,密钥管理系统110可利用哈希函数111从标识符中计算哈希值“ihash”。

密钥管理系统110可生成包括第一标签“tag#1”、哈希值“ihash”和盐值“salt_1”的第一数据块“datablock_1”。密钥管理系统110可利用哈希函数112从第一数据块“datablock_1”中计算哈希值“h”。

密钥管理系统110可生成包括第二标签“tag#2”和盐值“salt_2”的第二数据块“datablock_2”。密钥管理系统110可利用xor操作113从第二数据块“datablock_2”和哈希值“h”中计算遮蔽的数据库“maskeddb”。xor操作113可用作用于数据遮蔽的操作。因此,遮蔽的数据库“maskeddb”可为通过xor操作113遮蔽的数据(或遮蔽的数据)。

密钥管理系统110可生成包括遮蔽的数据库“maskeddb”、哈希值“h”和装置id“deviceid_1”的编码的消息“encodedmessage_1”。密钥管理系统110可利用秘密密钥执行编码操作114。密钥管理系统110可利用编码操作114从编码的消息中生成认证密钥。可将生成的认证密钥发送至终端装置120。

图3所示的第一数据块“datablock_1”、第二数据块“datablock_2”和编码的消息“encodedmessage_1”的构造是示例,并且本发明构思的示例性实施例不限于此。第一数据块“datablock_1”可包括按照与图3所示的次序不同的次序排列的第一标签“tag#1”、哈希值“ihash”和盐值“salt_1”。例如,第一数据块“datablock_1”可包括按照第一标签“tag#1”、盐值“salt_1”和哈希值“ihash”的次序构造的数据块“tag#1|salt_1|ihash”。第二数据块“datablock_2”和编码的消息“encodedmessage_1”与第一数据块“datablock_1”按照相似的方式构造,因此省略对其的描述。

如参照图2的描述,根据本发明构思的示例性实施例的认证系统可包括多个终端装置。将被发送至所述多个终端装置中的至少一个的盐值可与将被发送至其余终端装置的盐值不同。可替换地,将被发送至所述多个终端装置中的至少一个的装置id可与将被发送至其余终端装置的装置id不同。可替换地,将被发送至所述多个终端装置中的至少一个的装置id和盐值可与将被发送至其余终端装置的装置id和盐值不同。

因此,基于盐值和装置id生成的认证密钥中的至少一个可与其余认证密钥不同。将要通过密钥管理系统110发送至所述多个终端装置中的至少一个的认证密钥可与将被发送至其余终端装置的认证密钥不同。

与其它认证密钥不同的认证密钥可能被攻击者泄露出去。由于泄露出去的认证密钥与其它认证密钥不同,因此攻击者不能从泄露出去的认证密钥中获得其它认证密钥。因此,使用与其它认证密钥不同的认证密钥的认证系统可比利用相同的认证密钥的认证系统具有更高的安全等级。

图4是示出在图1的终端装置中产生认证消息的协议120a的示例的框图。

可在包括在图1的终端装置120中的安全模块中执行将在下面描述的图4的编码操作121_1和消息认证码操作121_2。安全模块可利用基于se121的安全功能执行图4的操作。因此,可安全地保护图4的处理免受外部攻击。

在图4的示例中,编码操作121_1可包括利用对称密钥(例如,图4的编码密钥“enckey_1”)转换特定数据的操作。可通过利用与在编码操作121_1中使用的对称密钥相同的对称密钥解码通过编码操作121_1转换的数据。

在图4的示例中,消息认证码操作121_2可包括通过利用消息认证密钥“mackey_1”转换特定数据的操作。消息认证码操作121_2可包括包含哈希函数的操作。

终端装置120可从密钥管理系统110接收认证密钥“authenticationkey_1”、盐值“salt_1”和装置id“deviceid_1”。如参照图1的描述,终端装置120可包括安全模块。接收到的认证密钥“authenticationkey_1”可存储在基于se121提供安全功能的安全模块中。编码操作121_1和消息认证码操作121_2可通过基于se121在安全模式下操作的安全模块执行。

认证密钥“authenticationkey_1”可包括编码密钥“enckey_1”和消息认证密钥“mackey_1”。例如,编码密钥“enckey_1”可包括认证密钥“authenticationkey_1”的最低有效位(lsb),并且消息认证密钥“mackey_1”可包括认证密钥“authenticationkey_1”的最高有效位(msb)。可替换地,编码密钥“enckey_1”可包括认证密钥“authenticationkey_1”的msb,并且消息认证密钥“mackey_1”可包括认证密钥“authenticationkey_1”的lsb。下面,将逐步描述协议120a。

终端装置120可从自密钥管理系统110接收到的认证密钥“authenticationkey_1”中获得编码密钥“enckey_1”和消息认证密钥“mackey_1”。

终端装置120可生成验证id“verifyid_1”和时间戳“timestamp_1”。例如,验证id“verifyid_1”可包括用于验证的随机产生的数据。在根据协议120a生成认证消息“authenticationmessage_1”之前,集线器130和终端装置120可共享验证id“verifyid_1”。例如,时间戳“timestamp_1”可包括与用于认证的时间(例如,生成加密的消息“encryptedmessage_1”的时间)关联的数据。将参照图6描述通过利用验证id“verifyid_1”和时间戳“timestamp_1”执行的认证。

终端装置120可生成包括验证id“verifyid_1”和时间戳“timestamp_1”的第三数据块“datablock_3”。终端装置120可利用编码密钥“enckey_1”执行编码操作121_1。终端装置120可通过编码操作121_1从第三数据块“datablock_3”中生成加密的消息“encryptedmessage_1”。

因此,加密的消息“encryptedmessage_1”可包括从验证id“verifyid_1”和时间戳“timestamp_1”转换的数据。由于通过基于se121的安全功能执行编码操作121_1,攻击者不能从加密的消息“encryptedmessage_1”中获得与验证id“verifyid_1”和时间戳“timestamp_1”关联的数据。

如参照图3的描述,当集线器130获得认证密钥“authenticationkey_1”时可使用盐值“salt_1”和装置id“deviceid_1”。另外,加密的消息“encryptedmessage_1”可用于将参照图6描述的在集线器130中执行的认证。因此,终端装置120可生成编码的消息“encodedmessage_2”,以将盐值“salt_1”、装置id“deviceid_1”和加密的消息“encryptedmessage_1”发送至集线器130。

终端装置120可通过基于se121在安全模式下操作的安全模块执行消息认证码操作。终端装置120可利用消息认证密钥“mackey_1”执行消息认证码操作121_2。终端装置120可通过消息认证码操作121_2从编码的消息“encodedmessage_2”中生成哈希消息认证码“hmac_1”。

因此,哈希消息认证码“hmac_1”可包括从编码的消息“encodedmessage_2”转换的数据。由于通过基于se121的安全功能执行消息认证码操作121_2,因此攻击者不能从编码的哈希消息认证码“hmac_1”中获得与编码的消息“encodedmessage_2”关联的数据。哈希消息认证码“hmac_1”可用于验证编码的消息“encodedmessage_2”是否被篡改。将参照图6描述利用哈希消息认证码“hmac_1”的认证。

终端装置120可生成包括编码的消息“encodedmessage_2”和哈希消息认证码“hmac_1”的认证消息“authenticationmessage_1”。参照图1的描述,生成的认证消息“authenticationmessage_1”可响应于集线器130的请求被发送至集线器130。

图4所示的第三数据块“datablock_3”、编码的消息“encodedmessage_2”和认证消息“authenticationmessage_1”的构造是示例,并且本发明构思的示例性实施例不限于此。第三数据块“datablock_3”可包括按照与图4所示的次序不同的次序排列的验证id“verifyid_1”和时间戳“timestamp_1”。例如,第三数据块“datablock_3”可包括按照时间戳“timestamp_1”和验证id“verifyid_1”的次序构造的数据块“timestamp_1|verifyid_1”。编码的消息“encodedmessage_2”和认证消息“authenticationmessage_1”也与第三数据块“datablock_3”按照相似方式构造,因此省略对其的描述。

认证消息“authenticationmessage_1”可能被攻击者泄露出去。由于认证消息“authenticationmessage_1”包括通过编码操作121_1和消息认证码操作121_2加密的数据,因此攻击者不能从认证消息“authenticationmessage_1”中获得认证密钥“authenticationkey_1”。因此,发送认证消息“authenticationmessage_1”的认证系统可比直接发送认证密钥“authenticationkey_1”的认证系统具有更高的安全等级。

如参照图2和图3的描述,根据本发明构思的示例性实施例的认证系统可包括多个终端装置。通过密钥管理系统110生成的认证密钥中的至少一个可与其余认证密钥不同。因此,在通过图4的协议120a生成多个认证消息的情况下,基于不同认证密钥生成的认证消息可彼此不同。

与其它认证消息不同的认证消息可能被攻击者泄露出去。由于泄露出去的认证消息与其它认证消息不同,因此攻击者不能从泄露出去的认证消息中获得其它认证消息。因此,使用与其它认证消息不同的认证消息的认证系统可比利用相同认证消息的认证系统具有更高的安全等级。

图5是示出从认证消息中获得数据的方法的示例的框图。

集线器130可从任何源接收认证消息“authenticationmessage_2”。认证消息“authenticationmessage_2”可包括与图4的认证消息“authenticationmessage_1”相似的数据。

因此,认证消息“authenticationmessage_2”可包括编码的消息“encodedmessage_3”和哈希消息认证码“hmac_2”。另外,编码的消息“encodedmessage_3”可包括加密的消息“encryptedmessage_2”、盐值“salt_2”和装置id“deviceid_2”。

因此,集线器130可从认证消息“authenticationmessage_2”获得编码的消息“encodedmessage_3”、哈希消息认证码“hmac_2”、盐值“salt_2”、装置id“deviceid_2”和加密的消息“encryptedmessage_2”。

如参照图1的描述,集线器130可从密钥管理系统110接收标识符和秘密密钥。集线器130基于接收到的标识符和秘密密钥以及获得的盐值“salt_2”和获得的装置id“deviceid_2”获得认证密钥“authenticationkey_2”。更具体地说,集线器130可根据图3的协议110a获得认证密钥“authenticationkey_2”。

图6是示出在参照图1的集线器中验证认证消息的协议131a的示例的框图。

可在包括在图1的集线器130中的处理器中执行将在下面描述的图6的解码操作131_1和验证操作131_3至131_5。可通过基于tee131在安全模式下操作的处理器执行图6的操作。因此,可安全地保护图6的处理免于外部攻击。

在图6的示例中,解码操作131_1可通过利用对称密钥(例如,图6的编码密钥“enckey_2”)解码通过编码操作121_1编码的数据。图4的编码密钥“enckey_1”可与编码密钥“enckey_2”相同。

在图6的示例中,验证操作131_3至131_5可包括将接收到的数据与参考数据进行比较的操作。如参照图3的描述,验证操作131_3至131_5可包括xor操作。

在图6的示例中,消息认证码操作131_2与图4的消息认证码操作121_2按照相似方式生成数据,因此省略对其的描述。

如参照图5的描述,集线器130可获得编码的消息“encodedmessage_3”、哈希消息认证码“hmac_2”和加密的消息“encryptedmessage_2”。

集线器130可从认证密钥“authenticationkey_2”中获得编码密钥“enckey_2”和消息认证密钥“mackey_2”。编码密钥“enckey_2”、消息认证密钥“mackey_2”与认证密钥“authenticationkey_2”之间的关系可与参照图4提供的描述相似,因此省略对其的描述。

图6的认证密钥“authenticationkey_2”可对应于图4的认证密钥“authenticationkey_1”。例如,认证密钥“authenticationkey_2”可与图4的认证密钥“authenticationkey_1”成对称密钥关系。图6的消息认证密钥“mackey_2”可对应于图4的消息认证密钥“mackey_1”。图6的编码密钥“enckey_2”可对应于图4的编码密钥“enckey_1”。

集线器130可利用编码密钥“enckey_2”执行解码操作131_1。集线器130可通过解码操作131_1从加密的消息“encryptedmessage_2”获得第四数据块“datablock_4”。

集线器130可利用编码密钥“enckey_2”执行消息认证码操作131_2。集线器130可通过消息认证码操作131_2从编码的消息“encodedmessage_3”中生成哈希消息认证码“hmac_3”。

第四数据块“datablock_4”可包括验证id“verifyid_2”和时间戳“timestamp_2”。因此,集线器130可从第四数据块“datablock_4”中获得验证id“verifyid_2”和时间戳“timestamp_2”。

集线器130可通过验证操作131_3认证验证id“verifyid_2”。如参照图4的描述,在终端装置120生成认证消息“authenticationmessage_1”之前,集线器130和终端装置120可共享验证id“verifyid_1”。集线器130可将从第四数据块“datablock_4”获得的验证id“verifyid_2”与验证id“verifyid_1”进行比较。验证id“verifyid_1”可用作参考数据。例如,集线器130可通过包括在验证操作131_3中的xor操作确定验证id“verifyid_1”和验证id“verifyid_2”是否彼此一致。在验证id“verifyid_1”和验证id“verifyid_2”彼此一致的情况下,集线器130可生成第一认证值。

验证id“verifyid_1”和验证id“verifyid_2”彼此一致可意味着认证消息“authenticationmessage_2”的源是终端装置120。

集线器130可通过验证操作131_4验证时间戳“timestamp_2”。如参照图4的描述,时间戳“timestamp_1”可包括与生成加密的消息“encryptedmessage_1”的时间关联的数据。可以理解,在相似的上下文中,时间戳“timestamp_2”包括与生成加密的消息“encryptedmessage_2”的时间关联的数据。因此,集线器130可基于时间戳“timestamp_2”获得与时间(生成加密的消息“encryptedmessage_2”的时间)关联的数据。另外,集线器130可从内置时钟装置中获得与接收到认证消息“authenticationmessage_2”的时间关联的数据。

基于获得的数据,集线器130可将生成加密的消息“encryptedmessage_2”的时间与接收到认证消息“authenticationmessage_2”的时间进行比较。如果生成加密的消息“encryptedmessage_2”的时间与接收到认证消息“authenticationmessage_2”的时间之间的差小于参考时长,则集线器130可生成第二认证值。

生成加密的消息“encryptedmessage_2”的时间与接收到认证消息“authenticationmessage_2”的时间之间的差小于参考时长可意味着认证消息“authenticationmessage_2”的源是终端装置120。

另外,利用时间戳的认证可防止攻击者的应答攻击。例如,终端装置120可将认证消息发送至集线器130。发送的认证消息可能被攻击者泄露出去。攻击者可能将泄露的认证消息一次或多次地发送至集线器130。因此,集线器130可接收一个或多个相似的认证消息。集线器130可从包括在接收到的认证消息中的时间戳中获得与时间关联的数据。集线器130可将与时间关联的数据进行比较,并且确定在最早时间生成的认证消息。集线器130可仅相对于确定为在最早时间生成的认证消息生成第二认证值。

确定为在最早时间生成的认证消息可意味着认证消息的源是终端装置120。

集线器130可通过验证操作131_5验证哈希消息认证码“hmac_3”。如参照图5的描述,集线器130可获得哈希消息认证码“hmac_2”。集线器130可将哈希消息认证码“hmac_2”与哈希消息认证码“hmac_3”进行比较。将哈希消息认证码“hmac_2”与哈希消息认证码“hmac_3”进行比较的方法可与将验证id“verifyid_1”与“verifyid_2”进行比较的方法相似。在哈希消息认证码“hmac_2”和哈希消息认证码“hmac_3”彼此一致的情况下,集线器130可生成第三认证值。

哈希消息认证码“hmac_2”和哈希消息认证码“hmac_3”彼此一致可意味着认证消息“authenticationmessage_2”在传输处理中未被篡改。

在生成了第一认证值至第三认证值的情况下,集线器130可生成指示认证消息“authenticationmessage_2”被验证的第四认证值。

图7是示出根据本发明构思的示例性实施例的通过参照图1、图3和图4的认证系统验证认证消息的方法的示例的流程图。

在操作s105中,终端装置120和集线器130可共享验证id。就操作s105而言,参考标号s105可不与操作次序关联。可在执行操作s140之前执行操作s105。

在操作s110中,如参照图1的描述,密钥管理系统110可生成标识符和秘密密钥。

在操作s115中,密钥管理系统110可生成装置id和盐值。如参照图1的描述,可使用盐值以允许从相同的数据和相同的哈希函数中计算不同的哈希值。装置id可包括与终端装置120关联的数据。

在操作s120中,密钥管理系统110可根据参照图3描述的协议110a产生认证密钥。

在操作s125中,密钥管理系统110可将在操作s110中生成的标识符和秘密密钥发送至集线器130。例如,可在制造集线器130的时间发送标识符和秘密密钥。发送的标识符和秘密密钥可存储在集线器130中。发送的标识符和秘密密钥可存储在基于tee131(参照图8)提供安全功能的处理器中。

在操作s130中,密钥管理系统110可将在操作s115和操作s120中生成的认证密钥、盐值和装置id发送至终端装置120。例如,可在制造终端装置120的时间发送认证密钥、盐值和装置id。从密钥管理系统110接收到的认证密钥、盐值和装置id可存储在终端装置120中。从密钥管理系统110接收到的认证密钥可存储在基于se121(参照图8)提供安全功能的安全模块中。

在操作s135中,如参照图1的描述,当需要终端装置120的认证时,集线器130可对终端装置120作出请求,以认证。例如,集线器130可将用于请求认证的认证请求消息发送至终端装置120。

在操作s140中,终端装置120可响应于集线器130的请求生成认证消息。终端装置120可根据参照图4描述的协议120a生成认证消息。操作s140可在基于se121(图8)提供安全功能的安全模块中执行。

在操作s145中,终端装置120可将在操作s140中生成的认证消息发送至集线器130。终端装置120可通过安全信道或正常信道发送认证消息。

在操作s150中,集线器130可基于在操作s145中接收到的认证消息和在操作s125中接收到的标识符和秘密密钥生成认证密钥。集线器130可根据参照图3描述的协议110a获得认证密钥。操作s150可在基于tee131(图8)提供安全功能的处理器中执行。

在操作s155中,集线器130可根据图6的协议131a验证在操作s145中接收到的认证消息。集线器130可基于在操作s150中生成的认证密钥分别验证获得的验证id、时间戳和哈希消息认证码。集线器130可在验证验证id时使用在操作s105中共享的验证id。操作s155可在基于tee131(图8)提供安全功能的处理器中执行。

图8是示出实施参照图1的终端装置和集线器的电子装置的示例的框图。

参照图8,电子装置200可包括处理器210、存储器220、贮存器230、安全模块240、通信装置250、用户接口260和总线270。电子装置200还可包括图8中未示出的其它元件(例如,传感器和电源)。作为选择,电子装置200可不包括图8所示的一个或多个元件。

处理器210可控制电子装置200的整体操作。例如,为了方便用户,处理器210可执行应用等。例如,图1的集线器130可包括处理器210。处理器210可基于tee131在安全模式下操作。处理器210可基于tee131在安全模式下根据图3的协议110a获得认证密钥。处理器210可基于tee131在安全模式下根据图6的协议131a验证认证消息。因此,集线器130可防止处理被攻击者泄露出去。

例如,处理器210可为通用处理器、工作站处理器、应用处理器等之一。处理器210可包括单核或者可包括多核。例如,处理器210可包括诸如双核、四核或六核的多核。

另外,处理器210还可包括位于处理器210内或外的存储器211。存储器211可为基于tee提供安全功能的贮存器装置。存储器211可在基于tee131提供安全模式的位置存储需要高安全等级的数据。例如,存储器211可在基于tee131提供安全模式的位置存储图3、图5和图6所示的数据等。

存储器220可存储由或将由处理器210处理的数据。由或将由处理器210处理的数据可包括与根据本发明构思的示例性实施例的认证系统关联的数据中的需要相对低的安全等级的数据。例如,存储器220可存储与图4的第三数据块、编码的消息、认证消息等关联的数据。

例如,存储器220可包括易失性存储器(诸如静态随机存取存储器(sram)、动态ram(dram)或同步dram(sdram))或者非易失性存储器(诸如闪速存储器、相变ram(pram)、磁阻ram(mram)、电阻ram(reram)或者铁电ram(fram))。可替换地,存储器220可包括异构存储器。

贮存器230不管电源如何都可存储数据。例如,贮存器230可存储与根据本发明构思的示例性实施例的认证系统关联的数据中的需要相对低的安全等级的数据。例如,贮存器230可存储与图4的第三数据块、编码的消息、认证消息等关联的数据。

例如,贮存器230可为贮存介质,其包括非易失性存储器,诸如硬盘驱动(hdd)、固态盘驱动(ssd)、安全数字(sd)卡或者通用串行总线(usb)存储器装置。

安全模块240可处理或存储要求高安全等级的数据。例如,图1的终端装置120可包括安全模块240。安全模块240可在基于se121的安全模式下操作。安全模块240可在基于se的安全模式下执行图4的操作。因此,终端装置120可防止处理被攻击者泄露出去。

通信装置250可包括发送器和接收器。电子装置200可通过通信装置250与另一电子装置通信,以发送和/或接收数据。例如,电子装置200可通过通信装置250与密钥管理系统、终端装置和集线器中的至少一个交换数据。例如,通过通信装置250交换的数据可包括与认证消息和认证密钥中的至少一个关联的数据。

用户接口260可在用户与电子装置200之间传递命令或数据的输入/输出。例如,用户接口260可包括诸如输入装置和/或输出装置的物理装置。输入装置可包括键盘、鼠标、触摸屏、扫描仪、操纵杆、语音识别装置、运动识别装置或眼球识别装置,输出装置可包括监视器、显示装置、投影仪、扬声器或绘图机。

总线270可提供电子装置200的元件之间的通信路径。例如,处理器210、存储器220、贮存器230、安全模块240、通信装置250和用户接口260可通过总线270彼此交换数据。总线270可被构造为支持在电子装置200中使用的各种通信格式。

图8的电子装置200可作为计算装置操作。例如,图1的密钥管理系统110可包括一个或多个电子装置200。密钥管理系统110可通过一个或多个电子装置200产生多个认证密钥。

图9是示出根据本发明构思的示例性实施例的用于实施认证系统的iot系统的示例的概念示意图。

根据本发明构思的示例性实施例的iot系统可通过家庭网络系统、军用网络系统、企业网络系统等中的至少一个来实施。根据本发明构思的示例性实施例的iot系统可为ad-hoc网络或者基础设施网络。将描述家庭网络系统300作为参照图9的iot系统的示例。

参照图9,家庭网络系统300可包括集线器310和多个终端装置320至360。例如,家庭网络系统300可包括诸如家用电器320(诸如冰箱、洗衣机或空调)、安全装置330(诸如门锁、闭路电视(cctv)、内部通话系统、窗传感器、火焰传感器或电插头)、娱乐装置340(诸如电视、音频、游戏机或计算机)、办公机器350(诸如打印机、投影仪或影印机)以及任何其它类型的计算装置360的终端装置中的至少一个。另外,家庭网络系统300可包括各种电子装置或感测装置。

图9的集线器310可包括图1的集线器130和图8的处理器210。图9的所述多个终端装置320至360可包括图1的终端装置120或者对应的图2的终端装置120_1至120_n以及图8的安全模块240。

家庭网络系统300可通过有线/无线网络控制建筑物(例如,房子、公寓或大楼)中的各种终端装置。终端装置可经集线器310发送和/或接收数据。

家庭网络系统300可包括各种有线/无线通信网络。例如,家庭网络系统300可包括传感器网络、m2m网络、基于互联网协议(ip)的网络、非ip的网络等。更具体地说,家庭网络系统300可包括有线通信网络(诸如家庭pna(家庭电话线网络联盟)、ieee1394、usb(通用串行总线)、plc(电力线通信)或以太网)、无线通信网络(诸如irda(红外数据协会)、蓝牙、wi-fi(无线保真)、wlan(无线lan)、uwb(超宽带)、zigbee、无线1394、无线usb、nfc(近场通信)或rfid(射频识别))和移动通信网络(诸如3g(第3代)、4g(第4代)或lte(长期演进))中的至少一个。

例如,家庭网络系统300可通过有线/无线通信网络发送和/或接收与根据本发明构思的示例性实施例的认证系统关联的数据。例如,集线器310可通过有线/无线通信网络将认证请求消息发送至终端装置320至360。终端装置320至360可通过有线/无线通信网络发送认证消息。集线器310可通过有线/无线通信网络从终端装置320至360接收认证消息。有线/无线通信网络可包括安全信道和正常信道中的至少一个。

可通过参照图7描述的验证方法验证终端装置320至360。集线器310可与所述多个终端装置320至360中的被验证的终端装置交换数据。因此,集线器310与终端装置320至360交换的数据可被安全地保护以防止被外部攻击。

根据本发明构思的示例性实施例,可提供用于执行安全认证的认证系统。

虽然已经参照示例性实施例描述了本发明构思,但是本领域技术人员应该理解,可在不脱离本发明构思的精神和范围的情况下作出各种改变和修改。因此,应该理解,以上示例性实施例并非限制性的而是示出性的。

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