1.本发明涉及即使在设备无法与认证服务器进行通信时也能够实现在该设备上进行对用户的可靠认证的系统和方法。
背景技术:2.iot(物联网(internet of things))设备通常经由因特网与服务器连接。iot设备的用户(例如服务技术人员)可以在该iot设备上进行认证,其中对真实性的检查在此大多在认证服务器的参与下进行。例如,可能需要进行认证,以便阻止在该iot设备上的未经授权的干预。
3.如果iot设备的因特网连接被中断或者不存在,则大多无法进行可靠且安全的认证(因为无法访问认证服务器)。本文档涉及如下技术任务:即使在设备并未通过通信连接与认证服务器连接时,也能够实现在该设备上的安全且可靠的认证。
技术实现要素:4.该任务分别通过专利独立权利要求的主题来被解决。有利的实施方式尤其是在专利从属权利要求中被限定、在随后的描述中被描述或者在随附的附图中被示出。
5.按照本发明的一个方面,描述了一种用于在设备上进行(用户和/或计算机单元的)认证的方法。设备、尤其是iot设备,优选地是家用电器,尤其是洗衣机、烘干机、厨房多功能机、炉灶、烤箱、冰箱和/或洗碗机。
6.该方法包括:提供和/或接收证书。在此,该证书可以由(证书)服务器提供,该(证书)服务器负责管理对设备的访问。该服务器例如可以由设备的制造商提供。在此,除了证书之外,可以由服务器提供关于设备的(当前)信息(例如与该设备的当前状态有关)。通过所提供的信息,可以提高对设备的后续访问的质量。
7.为了取得证书,首先可以在服务器上执行服务器认证过程,以便对想要从服务器取得证书的单元(例如计算机单元和/或用户)进行认证。证书可以(必要时仅)在服务器认证过程成功之后由服务器提供。
8.(由服务器提供的)证书能够实现n个有限数目的认证过程。在此,证书的可能的认证过程的数目n在由服务器提供该证书时优选地在2到10之间。通过限制能够由证书实现的认证过程,可以确保高度的安全性(即使在证书丢失的情况下也如此)。附加地,证书也可以限于一定的时长。
9.该方法还包括:(在使用证书的情况下)在设备上执行认证过程。在该认证过程的框架内,可由想要在设备上进行认证的单元接收该设备所发送的质询(challenge)(例如随机数)。此外,可以由该单元产生对质询的应答,其中该应答取决于质询和证书。接着,可以将应答发送给设备,并且该设备可以基于该应答来对单元进行认证或者拒绝认证请求。
10.该方法还包括:减少证书的仍然可能的认证过程的数目n。尤其可以在其中使用该证书的每个认证过程的情况下都减少该数目n(每次减少一个)。这样,可以安全地阻止在设
备上的不可靠的认证(即使在该设备与认证服务器之间不存在通信连接时也如此)。
11.证书可以被构造为:使证书的用户能够在认证过程成功之后访问该设备。在此,证书可以被构造为:将该访问限于访问权限总集中的访问权限子集。在此,访问权限子集可取决于用户的用户类型(例如设备的使用者或者设备的服务人员和/或设备的开发者)。
12.该方法可包括:从多个不同的用户类型中确定一个用户类型。然后可以提供和/或接收证书,该证书能够实现对设备的一个或多个取决于该所确定的用户类型的访问权限。这样,可以进一步提高对设备的访问的安全性。
13.该方法可包括:在该认证过程的框架内,检查仍然可能的认证过程的数目n是否大于零。如果确定仍然可能的认证过程的数目n不大于零,则可以(自动)拒绝在设备上的认证过程。这样,可以可靠地限制证书的有效性。
14.证书可以在硬件安全模块上(也就是说在hardware security module(硬件安全模块)、即hsm上)被提供。这样可以实现对证书的可靠的保管。
15.在此,仍然可能的认证过程的数目n可以借助于硬件安全模块的计数器来被减少,以便能够特别可靠地限制证书的有效性。
16.该方法尤其可以被设计用于在设备上对计算机单元进行认证。接着,可以通过在计算机单元与硬件安全模块之间的通信接口(例如通过usb接口)来实现对(用于认证过程的)证书的访问。这样,可以可靠且方便地使证书可用。
17.按照本发明的另一方面,描述了一种用于在设备上进行(用户和/或计算机单元的)认证的系统。该系统被构造为提供证书,其中证书能够实现n个有限数目的认证过程。该系统还被构造为:(在使用证书的情况下)在设备上执行认证过程并且减少证书的仍然可能的认证过程的数目n。
18.应注意:在本文档中所描述的系统和/或方法的任何方面都可以以各种方式来彼此组合。专利权利要求书的特征尤其可以以各种方式来彼此组合。
附图说明
19.在下面,本发明依据在随附的附图中所示出的实施例详细地予以描述。在此:图1示出了用于在设备上进行对用户的认证的系统的框图;图2示出了在设备上的认证过程的示例性流程;以及图3示出了用于在设备上进行认证的示例性方法的流程图。
具体实施方式
20.如开头所述,本文档涉及在设备上对用户或用户的计算机单元的高效且安全的认证。就这方面来说,图1示出了用于在设备105上、尤其是在家用电器上进行认证的系统100。该系统100包括硬件安全模块(hsm)103,该硬件安全模块被构造为从认证服务器101接收证书102(图1中的步骤111)。在此,证书102可以实现对特定设备105和/或对设备105的特定组的访问。证书102还可以限定在对设备105的访问的框架内可执行的活动的范围。
21.证书102包括特定的(最大)使用次数,其中该使用次数表明证书102可以和/或允许被用于在设备105上进行认证的频率或次数是多少。
22.证书102可以被存储在hsm 103中。hsm 103可以由用户通过接口108(例如通过
usb)连接到计算机单元104上(例如连接到智能电话上或者连接到笔记本电脑上)。为了能够访问设备105,可以在计算机单元104与设备105之间建立通信连接112(例如蓝牙和/或wlan)。
23.设备105可以通过通信连接112将质询113发送给计算机单元104。质询113例如可包括随机数。然后,计算机单元104可以依据证书(例如借助于包含在证书中的密码)来对质询113进行补充或签名。接着,基于被签名的质询113,可以将应答114(也就是说response(应答))从计算机单元104发送给设备105。例如,可以对被签名的质询113进行加密和/或可以形成被签名的质询113的哈希函数并且将其作为应答114来发送。基于应答114,设备105可以对计算机单元104进行认证或者拒绝认证。还可以向计算机单元104通知认证结果115。在认证成功之后,可以实现对设备105的访问117。
24.设备105可包括通信单元107,经由该通信单元来进行与计算机单元104的通信。设备105还可包括控制单元106,该控制单元被设立为对应答114进行评估,以便对计算机单元104进行认证。
25.hsm 103被构造为:针对每个认证过程,减少证书102的剩余使用次数(步骤116)。hsm 103还可以被设立为:如果证书102的剩余使用次数为零,则阻止为了认证目的而继续使用证书102。替代地或补充地,设备105可以被设计为:对证书102的使用次数进行更新。设备105还可以被设立为:在认证过程中检查剩余使用次数。
26.在下面,在不限制一般性的情况下,描述了客户服务使用,作为访问设备105的示例。然而,在本文档中所描述的用于在设备105上、尤其是在家用电器上进行认证的方法原则上可以被每个任意的人员使用。
27.想要在设备105上或在设备105的系统主控smm 205上进行认证的用户202(参见图2)使用hsm(硬件安全模块)103,可能作为唯一需要的硬件。借助于(可能可免费提供的)网络服务,用户202例如可以使用pc或者智能电话,以便向后台服务器101进行认证。在此,通过指定和证实特定的信息,必要时可以在不同的用户组之间进行区分(例如最终用户、客户服务、设备开发者等等)。用户可以根据其授权来请求数字证书102(步骤211),例如以便在特殊设备105上或者在设备105的所限定的组上执行客户服务使用。在此,访问权限的粒度可取决于设备105的实现和/或特性。
28.后台服务器101可以根据用户202和/或设备105或设备组的特性来创建数字证书102(步骤212)。数字证书102可以借助于由hsm 103提供的一项或多项技术(例如“pki即服务(pki-as-a-service)”、“设备颁发者ca(device issuer ca)”、“内置pki(build-in pki)”和/或安全通道(secure channel))安全地被存放在hsm 103中(步骤213)。在此,pki代表公钥基础设施(public key infrastructure),并且ca代表证书颁发机构(certification authority)。
29.对证书102的不被认为合理的请求可以被后台服务器101拒绝(例如在一天对访问或证书的请求太多)。必要时,也可以拒绝已知的无效用户的请求,这例如能够有效地撤销(revoken)证书102。利用没有hsm 103的实现方案通常无法模拟该功能性。
30.如果应该进行对设备105的访问,则用户将hsm 103插入计算机单元104(例如插入具有usb otg接口的智能电话)。在计算机单元104上的软件app可以实现在hsm 103与设备105之间的端到端通信112(步骤214)。
31.现在,用户利用证书102通过质询-应答方法(步骤215、216、217、219)来证实其授权,其中由处在hsm 103中的证书102的私钥来对设备105的随机数(例如以认证令牌的形式)203进行签名(步骤218)。访问可以通过hsm特征“密钥使用计数器(key use counter)”和/或“密钥限制(key restriction)”来被限制。在此,在每次使用时都对内部计数器进行倒计数(步骤116)。一旦计数器的值达到了0,就不再能够利用安装过的证书102来继续使用。也就是说,hsm 103的丢失仅对安全性具有有限影响。
32.可选地,通过使用pin管理,可以进一步提高安全性。
33.通过在本文档中所描述的措施,可以改善可操作性并且提高安全性。此外,由于必须在访问之前及时地分别从后台服务器101取得新的证书102,可以提供关于设备105的当前信息,以便改善对设备105的访问。例如,可以传送关于先前的访问和/或关于设备105的当前的sw或固件版本的信息。替代于hsm 103,可以使用具有hsm相关的特征的兼容javacard的nfc智能卡。
34.图3示出了用于在设备105上进行(对单元104和/或用户202的)认证的示例性方法300的流程图。可以通过系统100和/或通过计算机单元104来执行该方法300。该方法300包括:提供301证书102,其中证书102能够实现n个有限数目的认证过程(在交付证书102时,例如n》1和/或n《5)。
35.该方法300还包括:在使用证书102的情况下在设备105上执行302认证过程。该方法300还包括:减少303证书102的仍然可能的认证过程的数目n。因此,利用每个认证过程都可以减少证书102的仍然可能的认证过程的数目n(每次减少一个)。这样,可以高效且安全地实现和/或控制对设备105(或对设备组)的访问。
36.本发明并不限于所示出的实施例。尤其应注意:说明书和附图应只是阐明所提出的系统和/或所提出的方法的原理。