本文描述的实施例总体上涉及数据处理。具体地,本文描述的实施例涉及用于经由物理接触传送数字密钥并使用这类密钥来获得对物理对象的访问或控制的方法和装置。
背景技术:
根据www.merriam-webster.com/dictionary/key的词条之一,钥匙(Key)是“一种锁栓通过其进行转动的通常是金属的器械”。为了本公开的目的,这类钥匙可以被称为物理钥匙。
根据en.wikipedia.org/wiki/Key_(cryptography)的维基百科词条,在密码学领域中,密钥(Key)是“确定密码算法或密码的功能输出的一条信息(参数)”。为了本公开的目的,这类密钥可以被称为数字密钥。
传统上,物理钥匙已被用于控制对有价值的、危险的或保密的财产(例如房屋、汽车和银行帐户报表)的访问。例如,如果一个人想要保护敏感文档免于未经授权查看,那么那个人可以将那些文档保存在上锁的文件柜中。同样,如果一位母亲想让她的儿子使用这位母亲的车,这位母亲可以给儿子这辆车的物理钥匙。
本公开描述了用于经由物理接触传送数字密钥或相关信息并使用这种信息来获得对受保护资源的访问的方法和装置。这种系统可以被称为触摸式密钥系统。
附图说明
图1是示例触摸式密钥系统的框图。
图2是用于配置图1的触摸式密钥系统的示例过程的流程图。
图3是更详细地示出图1的远程服务器的框图。
图4是更详细地示出图1的主设备的框图。
图5是更详细地示出图1的载体设备的框图。
图6是更详细地示出图1的受保护设备的框图。
图7是用于创建和共享触摸式密钥的示例过程的流程图。
图8是由主设备、载体设备或受保护设备检测的示例电状况的曲线图。
图9是用于利用触摸式密钥获得对受保护设备的访问或控制的示例过程的流程图。
图10是用于操作受保护设备的示例过程的流程图。
具体实施方式
根据本公开,分布式数据处理系统可以包括用于经由物理接触传送安全令牌的特征。为了本公开的目的,经由物理接触传送的数字或电子安全令牌可以被称为触摸式密钥。
根据本公开,所述分布式数据处理系统还可以包括用于使用触摸式密钥来获得对物理对象的访问、控制或使用的特征。为了本公开的目的,这种分布式数据处理系统可以被称为触摸式密钥系统。
图1是示例触摸式密钥系统10的框图。在图1的实施例中,触摸式密钥系统10包括主设备20、载体设备40和41、受保护设备60和61以及至少一个远程服务器80。触摸式密钥系统10还可以包括本地数据处理系统90。触摸式密钥系统10内的各种设备和处理系统中的一些或全部可以经由广域网(WAN)12(如因特网)、经由局域网(LAN)、经由个人局域网络(PAN)或经由任何合适的网络组合而彼此通信。
为了说明的目的,本公开讨论了涉及拥有各种受保护设备的名为玛丽的一个人的场景,所述受保护设备包括车辆61以及具有至少一个具有电子锁60的门62的房屋。而且,玛丽有一个名叫德尔的儿子和一个名叫达科塔的女儿。玛丽使用触摸式密钥系统10与德尔和达科塔共享触摸式密钥。德尔和达科塔使用那些触摸式密钥来解锁房门,并可能使用所述车辆。
具体地,主设备20可以是由玛丽佩戴的非常小的(例如超便携的)数据处理系统,并且载体设备40和41可以分别是由德尔和达科塔佩戴的非常小的(例如超便携的)数据处理系统。例如,主设备20和载体设备40和41可以是分别由玛丽、德尔和达科塔佩戴的戒指。如下面更详细描述的,其他类型的对象也可以作为主设备和载体设备来操作。所述受保护设备可以是受到保护防止未经授权的访问或利用的物理对象。特别地,受保护设备60包括可以基于触摸式密钥来判定是否允许访问的控制逻辑。受保护设备61也是如此。
在根据她的偏好配置触摸式密钥系统10之后,玛丽可以使用主设备20来生成所述触摸式密钥并且与德尔和达科塔共享。德尔和达科塔可以使用载体设备40和41来接收所述触摸式密钥并与受保护设备60和61共享。受保护设备60和61然后可以使用远程服务器80来判定所述触摸式密钥是否有效。下面提供关于触摸式密钥系统10的操作的附加细节。
在一个实施例中,载体设备也可以用作主设备,反之亦然。为了本公开的目的,术语“触摸式密钥设备”或“TKD”可以用于指代(a)被设计为服务于主设备的设备、(b)被设计为服务于载体设备的设备或(c)被设计为能够用作主设备和载体设备的设备。例如,玛丽、德尔和达科塔每人可以使用相同种类的TKD,玛丽的TKD作为主设备,德尔和达科塔的TKD作为载体设备。另外,受保护设备也可以被称为TKD。
通常,为了本公开的目的,控制触摸式密钥系统的主设备的人可以被称为主操作者或主用户。所述主操作者还可以控制所述触摸式密钥系统的配置。因此,所述主操作者可以控制系统操作的重要方面,如可以使用哪些载体设备来访问或解锁哪些受保护设备。类似地,将从所述主操作者接收访问或解锁一个或多个受保护设备的能力或授权的人可以被称为被授权人。
远程服务器80和本地数据处理系统90可以用主要是传统的计算硬件来实现。例如,本地数据处理系统90可以被实现为台式个人计算机、膝上型或笔记本式计算机、智能手机等。下面就图3提供了远程服务器80的附加细节。
主设备20和载体设备40和41可以是可穿戴设备,以搁在或附在设备用户的身体上。例如,主设备20和载体设备40和41可以实现为:(a)首饰,例如手链、手表、戒指、项链、护身符,(b)衣服的一部分,或者(c)包括必要的处理和通信资源并可以与用户身体电连通地佩戴的任何其他对象。下面就图4提供主设备20的附加细节。下面就图5提供载体设备40的附加细节。
在图1的实施例中,受保护设备60是门62上的电子锁,并且受保护设备61是具有电子安全系统的车辆,以防止未授权进入和利用。如下面就图6更详细描述的,受保护设备60包括使受保护设备60从载体设备接收触摸式密钥并与远程服务器80通信以验证那些触摸式密钥的处理和通信资源或设施。受保护设备61可以包括与受保护设备60相同或相似的设施。
触摸式密钥系统10可以使用云计算模型。如在http://en.wikipedia.org/wiki/Cloud_computing中所解释的,云计算“涉及通过网络的分布式计算,其中可以在许多连接的计算机上同时运行程序或应用。”在图1的实施例中,触摸式密钥系统10的各种不同方面可以同时在触摸式密钥系统10内的各种设备上运行。
图2是用于配置触摸式密钥系统10的示例过程的流程图。在所示的过程中,玛丽使用本地数据处理系统90上的客户端应用程序98来与远程服务器80上的密钥管理软件82交互。所述过程可以从玛丽登录到由密钥管理软件82为她维护的触摸式密钥帐户14开始,如框108所示。
如图1所示,本地数据处理系统90可以包括与网络端口94和一个或多个存储设备96通信的处理器92。例如,本地数据处理系统90可以包括随机存取存储器(RAM)以及诸如硬盘驱动器(HDD)和/或闪存的非易失性存储设备。另外地或可替代地,本地数据处理系统90可以包括多个处理器、其他输入输出设施(例如键盘、鼠标和显示器)以及任何其他合适的设施或组件。
本地数据处理系统90可以将客户端应用程序98从非易失性存储设备加载到RAM上以由处理器92执行。当被执行时,客户端应用程序98可以使得用户与远程服务器80交互,如下面更详细描述的。
图3是更详细地示出远程服务器80的框图。在图3的实施例中,远程服务器80包括与一个或多个存储设备410和一个或多个通信端口412通信的处理器400。例如,端口412可以是网络端口,并且远程服务器80可以经由端口412与主设备20、受保护设备60和61以及本地数据处理系统90通信。在另一个实施例中,远程服务器80可以在分布式服务器环境(例如服务器群)内实现。另外地或可替代地,远程服务器80可以包括多个处理器,其他输入/输出设施(例如键盘、鼠标和显示器)以及任何其他合适的设施或组件。与远程服务器80的通信也可以被认为是与所述云的通信。
在图3的实施例中,密钥管理软件82驻留在存储设备410(其可以包括诸如RAM的易失性存储设备以及诸如一个或多个HDD的非易失性存储设备等)中。远程服务器80可以在处理器400上执行密钥管理软件82以提供本文描述的功能。例如,密钥管理软件82可以提供上面提到的触摸式密钥帐户14。提供由远程服务器80提供的一些或全部功能(例如触摸式密钥的验证)的数据处理系统也可以被称为触摸式密钥服务器。
如下面更详细描述的,一旦玛丽已经完成配置触摸式密钥帐户14,它可以包括密钥管理参数26。密钥管理参数26可以包括用于对触摸式密钥创建的各个方面进行控制的参数(如定义将要触发所述的触摸式密钥的创建的状况)以及用于对触摸式密钥利用的各个方面进行控制的参数(如定义将要触发密钥传送或共享的状况的参数、定义要由远程服务器80使用的密钥验证规则的参数等)。
而且,根据图3的实施例,一旦玛丽已经使用主设备20与载体设备40共享触摸式密钥,则触摸式密钥帐户14可以包括一个或多个公钥/私钥对30、32和34。例如,密钥对30可以包括私钥30A和相应的公钥30B。如下面更详细描述的,触摸式密钥系统10可以使用所述公钥和私钥来验证用户。然而,在替代性实施例中,触摸式密钥系统可以使用数字签名和/或任何其他合适类型的数字或电子安全令牌作为触摸式密钥或凭证。
在一个实施例中,远程服务器80将其服务中的一些或全部提供为云服务。因此,密钥管理软件82可以包括一个或多个应用程序接口(API)以使得能够与诸如本地数据处理系统90、主设备20和受保护设备60和61的不同种类的设备进行通信。
再次参考图2,在登录到远程服务器80上的她的触摸式密钥帐户之后,玛丽然后可以使用任何合适的技术来向她的触摸式密钥帐户注册主设备20,如框110所示。例如,玛丽可以使用蓝牙(BT)、蓝牙低功耗(BLE)、WiFi或任何其他合适的协议来将主设备20与可信网络上的另一个设备(例如本地数据处理系统90、智能手机等)进行配对。
图4是更详细地示出主设备20的框图。在图4的实施例中,主设备20包括与通信端口51、存储设备52和各种输入设备(如运动传感器54、麦克风56和电传感器58)通信的处理器50。主设备20还可以包括与处理器50通信的其他I/O设备,如按钮、触摸屏、扬声器等。
存储设备52包括密钥生成软件22,所述密钥生成软件在由处理器50执行时至少部分地基于预定的主设备密钥参数28来创建安全令牌。例如,密钥生成软件22可以生成公钥/私钥对30、32和34。主设备密钥参数28可以是来自远程服务器80的密钥管理参数26的子集。如下面更详细描述的,主设备密钥参数28可以控制由主设备20执行的各种触摸式密钥生成和部署操作。例如,主设备密钥参数28可以标识:(a)哪些载体设备要从主设备20接收哪些触摸式密钥,以及(b)哪些受保护设备要从哪些载体设备接收触摸式密钥。
此外,主设备密钥参数28可以将某些动作标识为用于创建某种类型的触摸式密钥的触发器。例如,密钥生成软件22可以使用语音识别技术来检测玛丽已经说出了已被预定义为用于创建用于特定载体设备和特定受保护设备的触摸式密钥的触发器的码字。另外地或可替代地,密钥生成软件22可以使用运动传感器54来检测预定义手势。
密钥生成软件22中的动作检测器24可以响应于检测到玛丽已经使用主设备20执行了所述预定义触发动作而自动创建安全令牌(例如密钥对),如下面更详细描述的。密钥生成软件22还可以与载体设备(例如载体设备40)共享触摸式密钥(例如公钥),如下面更详细描述的。
如图2的框112所示,玛丽然后可以使用任何合适的技术来向她的触摸式密钥帐户注册载体设备40和41。例如,相同种类的技术可以用于注册载体设备和主设备。
图5是更详细地示出载体设备40的框图。载体装置41可以包括相同或相似的特征。如所示出的,载体设备40可以包括与通信端口214、电传感器212和存储设备210通信的处理器200。此外,如上所述,载体设备可以实现为首饰、衣服或其他可佩戴物体。载体设备可以使用与主设备相同或相似的硬件。例如,如上所述,在一个实施例中,TKD可以用作主设备或载体设备。
在图5的实施例中,存储设备210包括密钥利用软件42,所述密钥利用软件在由处理器200执行时使得载体设备40从主设备20接收触摸式密钥并将触摸式密钥传送到受保护设备60和61,如下面更详细描述的。因此,密钥利用软件42可以包括一个或多个API,以使得能够与不同类型的设备(例如主设备20、受保护设备60和61以及远程服务器80)进行通信(例如在注册期间和/或以接收载体设备密钥参数)。
在图5的实施例中,密钥利用软件42包括载体设备密钥参数29。载体设备密钥参数29可以是来自远程服务器80的密钥管理参数26的子集。如下面更详细描述的,载体设备密钥参数29可以指定载体设备40如何处理从主设备20接收的触摸式密钥。例如,载体设备密钥参数29可以通过标识哪些受保护设备要从载体设备40接收哪些触摸式密钥来控制触摸式密钥与受保护设备的通信。
如图2的框114所示,玛丽然后可以使用任何合适的技术来向密钥管理软件82注册受保护设备60和61。例如,用于注册载体设备和/或主设备的相同种类的技术可以用于注册受保护设备。
图6是更详细地示出受保护设备60的框图。如上所述,受保护设备60包括使得受保护设备60从载体设备40接收密钥并与远程服务器80通信以验证这类密钥的处理和通信资源或设施。具体地,受保护设备60包括与存储设备310、电传感器312和端口314通信的处理器300。存储设备310包括密钥验证软件64,所述密钥验证软件在由处理器300执行时使得受保护设备60从载体设备40接收触摸式密钥并使用远程服务器80验证这类触摸式密钥,如下面更详细描述的。受保护设备61可以具有与受保护设备60相同或相似的特征。
在一个实施例中,受保护设备60和61使用它们各自的通信端口经由家庭中的有线或无线路由器连接到远程服务器80。另外地或可替代地,受保护设备60和61可以使用BT、BLE、蜂窝或其他技术来与远程服务器80通信。因此,密钥验证软件64可以包括一个或多个API,以使得能够与诸如(例如用于交换握手并接收触摸式密钥的)载体设备和(例如用于验证接收到的触摸式密钥的)远程服务器的不同种类的设备进行通信。
如图2的框116所示,玛丽然后配置密钥管理软件82中的各种密钥管理参数26。密钥管理参数26控制触摸式密钥生成、触摸式密钥共享或部署以及触摸式密钥验证的许多不同方面。远程服务器90上的密钥管理软件82可以为配置接口设置包含用于设定密钥管理参数26的各种用户接口(UI)对象的各种屏幕。如上所述,玛丽可以使用本地数据处理系统90来访问密钥管理软件82。在一个实施例中,由密钥管理软件82提供的配置接口是有趣的,并且使配置过程像游戏一样简单和愉快。
关于触摸式密钥生成,玛丽可以分别为不同的受保护设备定义触摸式密钥模板。那些触摸式密钥模板可以被存储为密钥管理参数26的一部分,例如作为所述载体设备密钥参数的一部分。例如,玛丽可以定义:(a)房屋触摸式密钥模板,用于创建要与受保护设备60一起使用的触摸式密钥,以及(b)车辆触摸式密钥模板,用于创建要与受保护设备61一起使用的触摸式密钥。此外,玛丽可以定义要包括在或链接到每个模板的触发动作。当主设备20随后检测到这样的触发动作时,主设备20可以通过根据相应的预定义模板自动创建触摸式密钥来进行响应。
这些模板使得玛丽为特定受保护设备生成触摸式密钥,并与特定载体设备共享那些触摸式密钥。例如,玛丽可以定义将使主设备20基于音频输入创建用于受保护设备61(车辆)的触摸式密钥的触发动作。例如,触发动作可以被配置成每当主设备20听到玛丽说出指定的词或短语(例如“abracadabra”)时创建特定类型的触摸式密钥(例如用于受保护设备70的触摸式密钥)。可替代地,所述触发动作可以基于手势。基于家庭及其行为,这种手势可以是大大的拥抱或任何其他指定的手势。例如,玛丽可以定义每当主设备20检测到玛丽已经使用大拥抱手势时使主设备20创建用于受保护设备60(房门)的触摸式密钥的触发动作。可替代地,所述触发动作可以基于UI的显式使用(例如对主设备20上的可选择按钮的选择和/或指定字符串的键入)。另外地或可替代地,触发动作可以基于声音、手势和/或UI选择的任何合适的组合。
另外,玛丽可以配置所述触摸式密钥模板以生成可以与一组受保护设备内的任何受保护设备一起使用的触摸式密钥。例如,这样的组可以包括所述房屋的前门上的锁以及所述房屋的后门上的锁。
关于密钥部署,密钥模板可以指示主设备20,一旦已经生成触摸式密钥,则要与要由主设备20识别的下一个载体设备共享。可替代地,玛丽可以定义将触摸式密钥定向到特定载体设备的触发动作以及定向到特定受保护设备的触发动作。例如,玛丽可以为短语“X,我爱你”定义触发动作,其中“我爱你”表示所述触摸式密钥将用于解锁受保护设备60(用于访问房屋),并且其中“X”可以取为“德尔”或“达科塔”。当主设备20听到玛丽说“德尔,我爱你”时,主设备20可以自动生成用于打开受保护设备60的触摸式密钥,用于传送到载体设备40。并且当主设备20听到玛丽说“达科塔,我爱你”时,主设备20可以自动生成用于打开受保护设备60的触摸式密钥,用于传送到载体设备41。
类似地,玛丽可以与短语“安全驾驶”结合拥抱佩戴载体设备的人来定义触发动作,其中“安全驾驶”表示所述触摸式密钥将用于解锁和使用受保护设备61(车辆),并且其中主设备20将基于对这个人的载体设备的检测而将所述触摸式密钥自动定向到所述被拥抱的人。因此,当主设备20听到玛丽说“安全驾驶”而同时主设备20检测到玛丽正在拥抱德尔时,主设备20可以自动生成用于打开和使用受保护设备61的触摸式密钥,用于传送到德尔的载体设备40。
可替代地,玛丽可以使用诸如主设备20上的按钮或触摸屏的输入设施来选择要传送的触摸式密钥和/或预定接收者。例如,主设备20上的触摸屏可以呈现用于德尔的符号(例如头像或图标)和用于达科塔的符号,并且玛丽可以触摸用于德尔的符号以选择德尔作为触摸式密钥的预定接收者。
关于触摸式密钥的利用和验证,玛丽可以提供设定以控制(a)每个触摸式密钥可以使用多少次和/或多长时间,以及(b)何时应当从主设备20、载体设备40和41和/或远程服务器80上删除触摸式密钥。例如,玛丽可以创建密钥管理参数26,所述密钥管理参数允许被保护设备60(所述房屋的门)的触摸式密钥被使用一周并允许受保护设备61(所述车辆)的触摸式密钥仅使用十二小时。可替代地,玛丽可以将触摸式密钥配置为仅可使用指定次数(例如一次)。密钥管理软件82还可以允许玛丽对允许密钥被使用X次(或使用X时间)的设定进行定义,同时还使密钥管理软件82在密钥已被使用Y次之后(或使用Y时间之后)通知玛丽。例如,玛丽可以将触摸式密钥系统10配置为将受保护设备60的触摸式密钥处理为两周有效,但是如果这种触摸式密钥被使用超过一周,则通知玛丽,以使玛丽知道所述触摸式密钥是过时的并且为了更高的安全性而应所述更改。
如框118所示,远程服务器80然后可以使用任何合适的技术(例如推、拉、WiFi、BT、BLE等)将主设备密钥参数28加载到主设备20中。如框120所示,远程服务器80还可以使用任何合适的技术来将各自的载体设备密钥参数加载到载体设备40和41中。
图2的配置过程然后可以结束。
图7是用于创建和共享触摸式密钥的示例过程的流程图。所述过程中的一些或全部可以由主设备20中的密钥生成软件22执行。用密钥生成软件22使用动作检测器24来判定玛丽是否已执行预定触发动作来启动所述过程,如框410所示。例如,动作检测器24可以根据上述相应的触发动作使用运动传感器54、麦克风56和电传感器58来检测玛丽在拥抱德尔时说“安全驾驶”。如果密钥生成软件22已经检测到触发动作,则密钥生成软件22可以通过基于与所述触发动作相关联的密钥模板自动生成一组相应的安全令牌来进行响应,如框412所示。例如,密钥生成软件22可以自动生成公钥/私钥对30,私钥30A和公钥30B用作安全令牌。
如框414所示,密钥生成软件22然后可以将那些安全令牌(例如私钥30A)中的一个发送到远程服务器80。发送到远程服务器80的安全令牌可以被称为云凭证或服务器凭证。如下面更详细描述的,在所述受保护设备已经从载体设备接收到载体设备凭证之后,远程服务器80可以随后使用所述云凭证来验证可以由远程服务器80从受保护设备接收的相应的载体设备凭证(例如公钥30B)。
在将所述云凭证发送到远程服务器80之后或者如果没有检测到触发动作,则密钥生成软件22可以判定是否已经检测到载体设备,如框420所示。例如,如上所述,密钥生成软件22可以确定玛丽正在拥抱德尔。具体地,当玛丽正在拥抱德尔时,密钥生成软件22可以检测到主设备20与载体设备40电连通。主设备20和载体设备40可以使用任何合适的电子握手来检测并彼此标识。类似地,载体设备和受保护的设备可以使用任何合适的电子握手来彼此检测和识别。这种握手可以在设备检测到某些电状况时开始。
图8是由主设备或受保护设备检测的示例电状况的曲线图。这类状况可以经由主设备20的电传感器58或受保护设备60的电传感器312来检测。在一个实施例中,所述电传感器接触佩戴所述设备的人的皮肤。例如,在主设备20被实现为戒指的实施例中,电传感器58可以位于戒指的内侧,在此它将一直接触其用户的皮肤。在图8的曲线图中,电压的变化是佩戴主设备的人接触佩戴载体设备的人的皮肤的结果,或者是佩戴载体设备的人触摸受保护设备的结果。
所述曲线图示出,最初,所述电传感器获得的电压约为零,如在时间区间810处所示。然后,如在时间区间815处所示,在1秒和1.5秒的时间之间,感测到的电压下降到约-0.05伏。然后,如在区间820处所示,电压刚好在1.5秒的时间之后快速上升到约0.2伏。然后,感测到的电压快速跳跃并在约0.1伏特和0.2伏特之间下降短暂的一段时间,如在区间825处所示。然后,感测到的电压下降到-0.05伏特或低于-0.05伏特,如在区间830处所示。然后,如在区间840处所示,感测到的电压快速跳跃并在约-0.05伏特和0.05伏特之间下降相对较长的一段时间。密钥生成软件22可以监视电压的变化并且响应于感测到的与图8中所示的模式匹配的电状况来确定已经检测到载体设备。例如,响应于区间820处的尖峰,密钥生成软件22可以确定已经检测到载体设备。
响应于确定已经检测到载体设备,主设备20可以尝试与所检测的设备的电子握手。可以使用如下交换短消息的设备继续进行一个示例握手过程:
1.主设备20:我看到电容的变化。我是玛丽的戒指,具有ID 897432。谁在那里?
2.载体设备40:我识别了该ID。我是德尔的戒指,具有ID 123456。
3.主设备20:我知道该ID。这是你可以使用的触摸式密钥:xyzqtr。
4.载体设备40:确认接收。
步骤1和步骤2可以在区间825和/或830期间执行。步骤3和步骤4可以在区间840期间执行。主设备20因此可以检测并与载体设备40和41通信。相同或类似的检测和握手技术可以(a)由受保护设备中的密钥验证软件来使用以检测载体设备,以及(b)由载体设备中的密钥利用软件来使用以检测主设备和受保护设备。
再次参考图7,如果密钥生成软件22检测到载体设备,则密钥生成软件22可以随后判定所述载体设备是否被识别为已经由玛丽注册作为触摸式密钥系统10的一部分,如框430所示。如果密钥生成软件22识别了所述载体设备,则密钥生成软件22可以判定主设备20是否具有对于该载体设备而言未决的触摸式密钥或载体设备凭证。例如,在较早的时间,主设备20可以已经响应于玛丽说“德尔,我爱你”而创建了用于德尔的触摸式密钥。然后主设备20可以保持该触摸式密钥未决,直到德尔的载体设备40连接到主设备20。如果密钥生成软件22确定用于所识别的载体设备的触摸式密钥未决,则密钥生成软件22可以随后与所述载体设备共享该触摸式密钥(例如公钥30B),如框442所示。因此,主设备20使用玛丽和德尔的身体的电导率来将触摸式密钥传输给德尔。因此,允许主设备和载体设备传达触摸式密钥(例如,电传感器58和212以及用于执行握手并共享信息的控制逻辑)的组件可以被称为触摸接口,因为可以是受保护设备中的相同或相似的组件。实际上,任何类型的触摸可足以传送触摸式密钥,从简单的手指触摸到拥抱或亲吻。
一旦所述触摸式密钥或载体设备凭证已经被传送并确认,则所述设备之间的通信可以停止。图8示出了可能需要超过一秒的过程。但是在其他实施例中,整个检测和传输过程可需要少得多的时间(例如小于十分之一秒)。
而且,在一个实施例中,如果一个设备检测到并识别另一个设备,但随后所述触摸式密钥的传输失败,则所述设备然后可以使用替代的通信技术(如称为蓝牙智能的电源友好的无线通信技术或其他无线技术)来完成触摸式密钥的传输。
另外,密钥生成软件22可以通知远程服务器80中的密钥管理软件82,主设备20已经与所述载体设备共享了触摸式密钥,如框444所示。一旦主设备20与可信通信渠道(如WiFi热点、蓝牙热点或任何其他合适的通信手段)接触,密钥生成软件就可以发送这种通知。而且,触摸式密钥的传输可以是事务性的,并且成功或失败结果可以存储在所述设备上,以便防止重传并节电。这样的成功或失败结果还可以由密钥管理软件82存储在远程服务器80中。
然后,所述过程可以返回到框440,主设备20判定对于检测到的载体设备是否有任何附加的触摸式密钥未决。例如,在玛丽已经完成了使得主设备20为德尔生成两个触摸式密钥并为达科塔生成一个触摸式密钥(例如,准许德尔和达科塔访问受保护设备60,并且准许德尔访问受保护设备61)的早晨例程之后,主设备20可以包括三组安全令牌30、32和34。每组可以包括云凭证(例如私钥30A)和相应的载体设备凭证(例如公钥30B)。组30和32可以旨在分别给予德尔对受保护设备60和受保护设备61的访问。并且组34可以旨在给予达科塔对受保护设备60的访问。当主设备20随后检测到并识别出德尔的载体设备时,然后主设备20可以将触摸式密钥30和32(作为载体设备凭证)传送到德尔的载体设备。
在已经传送了用于当前载体设备的所有未决的触摸式密钥之后或者如果没有检测到或识别出载体设备,则所述过程可以返回到框410,主设备20继续检查触发动作和载体设备,如上所述。
另外,密钥利用软件42可以从远程服务器80下载触摸式密钥,例如,如果在生成德尔的触摸式密钥之后玛丽触摸德尔时载体设备40不在线。因此,即使载体设备40在物理接触期间离线,它仍然会在接通时以及在存在可信连接时接收所述密钥。
图9是用于利用触摸式密钥获得对受保护设备的访问或控制的示例过程的流程图。例如,触摸式密钥可以用于获得用于操作受保护设备的访问。所示过程中的一些或全部可以由载体设备中的密钥利用软件来执行。为了说明的目的,在主设备20(a)已经创建密钥对30以提供对受保护设备60的访问、(b)已经与远程服务器80共享私钥30A以及(c)已经与载体装置40共享公钥30B之后,该过程可以启动。如框510所示,载体设备40中的密钥利用软件42然后可以判定密钥利用软件42是否已经检测到与载体设备40通信的受保护设备。例如,如果德尔正在触摸受保护设备60,则载体设备40可以使用类似于上面关于图8描述的技术来检测受保护设备60。如果密钥利用软件42检测到受保护设备,则密钥利用软件42可以随后判定其是否识别所述受保护设备,如框520所示。例如,载体设备40和受保护设备60可以使用类似于上述握手过程的握手过程。
如框530所示,如果密钥利用软件42识别出所述受保护设备,则密钥利用软件42然后可以基于载体设备密钥参数29来判定载体设备40是否具有对于该受保护设备而言未决的触摸式密钥。如果载体设备40具有对于所述受保护设备而言未决的触摸式密钥,则密钥利用软件42可以与所述受保护设备共享所述触摸式密钥,如框532所示。例如,如果载体设备40在上面刚刚描述的情形中检测到受保护设备60,则密钥利用软件42可以与受保护设备60共享公钥30B(作为载体设备凭证)。
然后,所述过程可以返回到框510,载体设备40继续检查受保护设备,如上所述。
图10是用于操作受保护设备的示例过程的流程图。关于玛丽已经使用主设备20(a)创建密钥对30以提供对受保护设备60的访问、(b)与远程服务器80共享私钥30A以及(c)与载体设备40共享公钥30B的场景,对该过程进行描述。如框610所示,受保护设备60中的密钥验证软件64然后可以判定密钥验证软件64是否已经检测到与受保护设备60通信的载体设备。例如,如果德尔在佩戴载体设备40的同时触摸受保护设备60,则密钥验证软件64可以使用类似于上面关于图8描述的技术来检测载体设备40。如果密钥验证软件64检测到载体设备,则密钥验证软件64可以随后判定其是否识别所述载体设备,如框620所示。例如,载体设备40和受保护设备60可以使用类似于上述握手过程的握手过程。
如果受保护设备60识别出所述载体设备,则受保护设备60然后可以从所述载体设备接收触摸式密钥或载体设备凭证,如框622所示。例如,基于指示公钥30B旨在用于受保护设备60的载体设备密钥参数29,载体设备40可以将公钥30B发送到受保护设备60。受保护设备60然后可以判定所接收的触摸式密钥是否有效,如框630所示。例如,受保护设备60可以将所述触摸式密钥发送到远程服务器80,然后远程服务器80可以使用私钥30A来判定公钥30B是否实际上源自主设备20,并且远程服务器80可以向受保护设备60返回指示公钥30B是否有效的结果。
如果远程服务器80报告载体设备凭证有效,则受保护设备60可以(例如通过解锁车门62)允许访问,如框632所示。另一方面,如果载体设备凭证无效,则受保护设备60可以(例如通过保持车门62被锁定)拒绝访问,如框634所示。然后,所述过程可以返回到框610,其中密钥验证软件64继续检查载体设备,如上所述。
因此,触摸式密钥可以用于获得对受保护资源的访问或控制。例如,如果玛丽已经将用于受保护设备61的触摸式密钥传送给德尔,则然后当德尔触摸到车门的把手时,汽车几乎是不可思议地、自动地自己解锁。当德尔触摸车内的开始按钮时,汽车启动。这是可能的,因为玛丽的主设备将云凭证传输到云,以等待验证请求。所述汽车从德尔的载体设备读取相应的载体设备凭证,并且所述汽车基于云凭证将其发送到云以被验证。如果验证操作成功,则汽车中的设备执行其设计要执行的动作:车门打开、汽车启动等。
另外,远程服务器80中的密钥管理软件82可以维护动作日志,用于审计目的并且用于学习用户的行为。例如,密钥管理软件82可以记录密钥验证尝试和结果。密钥管理软件82还可以自动检测可疑活动,并且作为响应,自动撤销触摸式密钥和/或通知用户请求他们采取某些动作。
此外,本地数据处理系统90还可以至少部分地作为受保护设备而操作。例如,玛丽可以将本地数据处理系统90中的资源(例如计算机文件或一组计算机文件)配置为受到触摸式密钥系统10的保护。因此,为了访问或使用所述资源,本地数据处理系统的用户可能需要具有带有适当权限的触摸式密钥的载体设备。
如已经描述的,示例性触摸式密钥系统包含小形状因子(SFF)的、可穿戴的、超移动的计算设备,允许用户基于环境传感器(如麦克风、运动传感器和电传感器)自动生成触摸式密钥并经由触摸自动共享这些密钥。
触摸式密钥系统可以使用身体电容来充当网络,使得能够在两个人之间接触时在个人用户设备之间传输共享秘密。主设备可以动态地生成触摸式密钥并且将触摸式密钥无缝地传递到所需的载体设备。因此,所述触摸式密钥系统在提供强大可信的安全性的同时使得安全性比传统的安全系统更不明显,UI易于理解和利用,从而提供良好的用户体验(UX)。
在一个实施例中,主设备基于由所述主设备检测到的声音生成触摸式密钥。例如,如果触发动作是“秘密的”单词或短语,则主设备可以将检测到的单词或短语转换为加密的密钥或密钥对。
在一个实施例中,公钥被用作触摸式密钥。在另一个实施例中,数字签名被用作触摸式密钥。如上所述,这类公钥、数字签名以及同类型的数据可以被称为令牌。
主设备和载体设备可以记住几个触摸式密钥或令牌,并且可以随时刷新、移除或替换所述触摸式密钥。主设备允许所述主操作者选择将经由触摸传输哪个触摸式密钥。所述主操作者还可以在需要时关闭传输,以防止无意中共享触摸式密钥。
术语“物联网”或“IoT”指的是允许人们与远程对象连接的设备的系统。所述触摸式密钥系统的受保护设备和其他组件可以被认为是IoT的一部分。
本教导可以用于为多种多样的环境提供具有极大灵活性的安全性。例如,触摸式密钥系统可以被配置为控制对计算机资源、电视机、房屋、车辆以及实际上任何其他受保护设备的访问。例如,当家里有具有本文所示的受保护设备的特征的电视机时,所述触摸式密钥系统可以用于限制儿童对所述电视机的使用,以强加关于所述儿童可以使用所述电视机的天数、一天中的时刻以及每天(每周或其他时期)的总时间。
根据本教导,用户(如玛丽)可以使用触摸式密钥系统在家庭和朋友之间共享触摸式密钥。玛丽可能会想到用于解锁共享资源的密码,所述共享资源是计算机资源或是诸如门和汽车等物理对象。所述触摸式密钥系统可以将所述密码转换成将经由身体到身体的身体接触传达给另一个人的触摸式密钥。
例如,玛丽可以选择将要用作密码种子的密码或码字,以便下午在德尔从学校回来时解锁房屋。任何合适的声音都可以用作码字,包括但不限于数字、单词和短语。玛丽一家然后可以实行以下清晨家庭活动。家庭一起早餐。玛丽发出所述预定义码字。附在玛丽身体上的可穿戴主设备将码字转换为公钥或数字签名以用作触摸式密钥。当玛丽拥抱德尔祝他在学校度过美好的一天时,所述主设备通过身体到身体的接触将所述触摸式密钥自动传递给德尔,并且将所述触摸式密钥自动存储在德尔的载体设备上。那天下午晚些时候,当德尔回家时,他只是所述触摸门把手,所述门就自动解锁。
类似的使用情况可以用计算机共享设备和资源来实现。
传递模式可以被认为是秘密的,因为观察者不会看到任何密钥被通过。因此,触摸式密钥也可以被认为是秘密。
本公开描述了用于生成、共享以及使用触摸式密钥的方法和装置。为了说明的目的,本公开描述了一个或多个示例实施例,但是本教导不限于那些特定实施例。可以设想其他配置。根据本文描述和示出的原理和示例实施例,应当认识到,可以在不脱离这些原理的情况下在布置和细节上修改所示的实施例。而且,尽管在本文中使用诸如“一个实施例(an embodiment)”、“一个实施例(one embodiment)”、“另一实施例(another embodiment)”等表达,但是这些短语意味着总体上参考实施例的可能性,并且不旨在将本发明限制于特定实施例配置中。如本文所使用的,这些短语可以引用相同的实施例或不同的实施例,并且那些实施例可以组合到其他实施例中。
任何合适的操作环境和编程语言(或操作环境和编程语言的组合)可以用于实现本文描述的组件。如上所述,本教导可用于在许多不同种类的数据处理系统中发挥优势。示例数据处理系统包括但不限于分布式计算系统、超级计算机、高性能计算系统、计算集群、大型计算机、微型计算机、客户端-服务器系统、个人计算机(PC)、工作站、服务器、便携式计算机、膝上型计算机、平板计算机、个人数字助理(PDA)、电话、智能电话、手持设备、诸如音频设备、视频设备、音频/视频设备(例如电视和机顶盒)的娱乐设备、车辆处理系统以及用于处理或传输信息的其他设备。因此,除非另有明确说明或上下文要求,否则对任何特定类型的数据处理系统(例如移动设备)的引用应当被理解为包括其他类型的数据处理系统。而且,除非另有明确说明,否则被描述为彼此联接、彼此通信、彼此响应等等的组件不需要彼此连续通信,并且不需要彼此直接联接。同样,除非另有明确说明,当一个组件被描述为从另一个组件接收数据或向另一个组件发送数据时,该数据可以通过一个或多个中间组件发送或接收。另外,所述数据处理系统的一些组件可以实现为具有用于与总线通信的接口(例如连接器)的适配器卡。可替代地,设备或组件可以使用诸如可编程或不可编程逻辑器件或阵列、专用集成电路(ASIC)、嵌入式计算机、智能卡等组件来实现为嵌入式控制器。为了本公开的目的,术语“总线”包括可由两个以上的设备共享的路径以及点对点路径。而且,为了本公开的目的,处理器还可以被称为处理单元、处理元件、中央处理单元(CPU)等。
本公开可以指的是指令、功能、过程、数据结构、应用程序、微代码、配置设定以及其他种类的数据。如上所述,当机器或设备访问数据时,机器或设备可以通过执行任务、定义抽象数据类型或低级硬件关联和/或执行其他操作来响应。例如,数据存储设备、RAM和/或闪存可以包括当执行时进行各种操作的各种指令集。这类指令集通常可以称为软件。另外,术语“程序”可以通常用于覆盖范围广泛的软件构造,包括应用、例程、模块、驱动器、子程序、进程以及其他类型的软件组件。而且,上述在一个示例实施例中驻留在特定设备上的应用和/或其他数据可以驻留在一个或多个其他设备上。并且在其他实施例中,上述在一个示例实施例中在一个特定设备上执行的计算操作可以由一个或多个其他设备来执行。
还应当理解,本文所描述的硬件和软件组件代表合理自含式功能元件,使得每个元件可以基本上彼此独立地被设计、构造或更新。在替代性实施例中,许多组件可以被实现为硬件、软件或硬件和软件的组合,用于提供本文描述和示出的功能。例如,替代性实施例包括机器可访问介质,所述机器可访问介质编码用于执行本发明的操作的指令或控制逻辑。这类实施例也可以被称为程序产品。这类机器可访问介质可以包括但不限于有形存储介质,如磁盘、光盘、RAM、只读存储器(ROM)等,以及处理器、控制器以及包括RAM、ROM和/或其他存储设施的其他组件。为了本公开的目的,术语“ROM”可以通常用于指代非易失性存储器设备,如可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存ROM、闪存等。在一些实施例中,用于实现所描述的操作的一些或所有控制逻辑可以在硬件逻辑(例如作为集成电路芯片、可编程门阵列(PGA)、ASIC等的一部分)中实现。在至少一个实施例中,用于所有组件的指令可以存储在一个非瞬态机器可访问介质中。在至少一个其他实施例中,两个或更多个非瞬态机器可访问介质可以用于存储用于所述组件的指令。例如,用于一个组件的指令可以存储在一个介质中,而另一个组件的指令可以存储在另一个介质中。可替代地,用于一个组件的指令的一部分可以存储在一个介质中,并且用于所述组件的其余指令(以及用于其他组件的指令)可以存储在一个或多个其他介质中。指令还可以在分布式环境中使用,并且可以本地和/或远程存储以供单处理器或多处理器机器访问。
而且,虽然已经关于以特定顺序执行的特定操作描述了一个或多个示例过程,但是可以对那些过程应用许多修改以推导出本发明的许多替代性实施例。例如,替代性实施例可以包括使用少于所有公开的操作的过程、使用附加操作的过程以及本文公开的各个操作被组合、细分、重新布置或以其他方式改变的过程。
考虑到可以从本文描述的示例性实施例容易地导出的各种有用的排列,所述详细描述旨在仅是说明性的,并且不应被视为限制所覆盖的范围。
以下示例涉及另外的实施例。
示例A1是一种支持触摸式密钥的数据处理系统。所述数据处理系统包括处理元件、响应于所述处理元件的机器可访问介质以及在所述机器可访问介质中的数据。当该数据由所述处理元件访问时,所述数据使得所述数据处理系统能够用作主设备,所述主设备执行包括以下各项的操作:(a)在所述主设备、受保护设备和载体设备已经被注册作为触摸式密钥系统的部分之后,自动检测预定义触发动作;(b)响应于检测到所述预定义触发动作,自动生成载体设备凭证和相应的云凭证;(c)在自动生成所述云凭证之后,将所述云凭证自动发送到远程服务器以使得能够在控制对所述受保护设备的访问中使用所述云凭证;(d)在自动生成所述载体设备凭证之后,自动检测与所述主设备电连通的设备;(e)响应于自动检测到与所述主设备电连通的所述设备,自动判定所述设备是否是注册到所述触摸式密钥系统的所述载体设备;(f)响应于确定所述检测到的设备是所述载体设备,自动判定所述载体设备凭证是否旨在用于所述载体设备;以及(g)响应于确定所述载体设备凭证旨在用于所述载体设备,将所述载体设备凭证自动传输到所述载体设备。
示例A2包括示例A1的特征,并且所述数据处理系统还包括响应于所述处理元件的电传感器。而且,自动检测与所述主设备电连通的所述设备的所述操作包括:使用所述电传感器来判定所述主设备的用户和所述设备的用户是否正在进行触摸。
示例A3包括示例A1的特征,并且所述操作还包括从所述远程服务器接收主设备密钥参数,所述主设备密钥参数(a)描述所述预定义触发动作,并且(b)将所述预定义触发动作与所述载体设备相关联。而且,在从远程服务器接收主设备密钥参数之后执行检测所述预定义触发动作的所述操作。实施例A3还可以包括实施例A2的特征。
示例A4包括示例A3的特征,并且所述主设备密钥参数将手势和声音中的至少一项定义为所述预定义触发动作的至少一部分。而且,检测所述预定义触发动作的所述操作包括自动判定所述主设备的用户是否已做出所述手势和所述声音中的至少一项。实施例A4还可以包括实施例A2的特征。
示例A5包括示例A1的特征以及示例A1的受保护设备和示例A1的载体设备。示例A5还可以包括示例A2至A4中的任何一项或多项的特征。
示例A6包括示例A5的特征,并且所述云凭证包括私钥。而且,所述载体设备凭证包括对应于所述私钥的公钥。而且,所述载体设备包括控制逻辑,所述控制逻辑使得所述载体设备能够执行包括以下各项的操作:(a)从所述主设备接收所述公钥;以及(b)将所述公钥传送到所述受保护设备。示例A6还可以包括示例A2至A4中的任何一项或多项的特征。
示例A7包括示例A5的特征,并且所述受保护设备包括控制逻辑,所述控制逻辑使得受保护设备能够执行包括以下各项的操作:(a)从所述载体设备接收所述载体设备凭证;(b)响应于从所述载体设备接收所述载体设备凭证,自动联系所述触摸式密钥服务器以判定所述载体设备凭证是否有效;以及(c)响应于确定所述载体设备凭证有效,允许所述载体设备的用户使用所述受保护设备。示例A7还可以包括示例A2至A6中的任何一项或多项的特征。
示例B1是一种用于操作触摸式密钥系统的主设备的方法。所述方法包括:(a)在主设备处自动检测预定义触发动作,所述主设备包括所述主设备、载体设备、触摸式密钥服务器和受保护设备;(b)响应于检测到所述预定义触发动作,在所述主设备处自动生成载体设备凭证和相应的云凭证;(c)在自动生成所述云凭证之后,将所述云凭证从所述主设备自动发送到所述触摸式密钥服务器,以使得能够在控制对所述受保护设备的访问中使用所述云凭证;(d)在自动生成所述载体设备凭证之后,自动检测与所述主设备电连通的所述载体设备;(e)响应于自动检测到所述载体设备,自动判定所述载体设备凭证是否旨在用于所述载体设备;以及(f)响应于确定所述载体设备凭证旨在用于所述载体设备,将所述载体设备凭证自动传输到所述载体设备。
示例B2包括示例B1的特征,并且自动检测与所述主设备电连通的所述载体设备的所述操作包括:使用所述主设备的电传感器来判定所述主设备的用户和所述设备的用户是否正在进行触摸。
示例B3包括示例B1的特征,并且所述方法还包括:从所述触摸式密钥服务器接收主设备密钥参数,所述主设备密钥参数(a)描述所述预定义触发动作,并且(b)将所述预定义触发动作与所述载体设备相关联。而且,在从所述触摸式密钥服务器接收所述主设备密钥参数之后执行检测所述预定义触发动作的所述操作。示例B3还可以包括示例B2的特征。
示例B4包括示例B3的特征,并且所述主设备密钥参数将手势和声音中的至少一项定义为所述触发动作的至少一部分。而且,检测所述预定义触发动作的所述操作包括自动判定所述主设备的用户是否已做出所述手势和所述声音中的至少一项。示例B4还可以包括示例B2的特征。
示例C1是一种用于操作触摸式密钥系统的载体设备的方法。所述方法包括:(a)在触摸式密钥系统的载体设备处,从所述触摸式密钥系统的主设备接收载体设备凭证;(b)在从所述主设备接收到所述载体设备凭证之后,自动检测与所述载体设备电连通的受保护设备;(c)响应于自动检测到与所述主设备电连通的所述受保护设备,自动判定所述载体设备凭证是否旨在用于所述受保护设备;以及(d)响应于确定所述载体设备凭证旨在用于所述受保护设备,将所述载体设备凭证自动传输到所述受保护设备,以证明所述载体设备的用户被授权使用所述受保护设备。
示例C2包括示例C1的特征,并且所述方法还包括:在载体设备处,自动检测所述载体设备的所述用户和所述主设备的用户正在进行触摸。而且,响应于自动检测到所述载体设备的所述用户和所述主设备的用户正在进行触摸而执行从所述主设备接收所述载体设备凭证的所述操作。
示例C3包括示例C1的特征,并且自动检测与所述载体设备电连通的所述受保护设备的所述操作包括:自动检测所述载体设备的所述用户正在触摸所述受保护设备。而且,响应于检测到所述载体设备的所述用户正在触摸所述受保护设备而执行将所述载体设备凭证自动传输到所述受保护设备的所述操作。示例C3还可以包括示例C2的特征。
示例D1是一种用于操作触摸式密钥系统的受保护设备的方法。所述方法包括:(a)在触摸式密钥系统的受保护设备处,自动检测所述触摸式密钥系统的与所述受保护设备电连通的载体设备;(b)响应于自动检测到与所述受保护设备电连通的所述载体设备,向所述载体设备自动发送所述受保护设备的标识符;(c)在向所述载体设备自动发送所述受保护设备的所述标识符之后,从所述载体设备接收载体设备凭证;(d)响应于从所述载体设备接收所述载体设备凭证,向触摸式密钥服务器自动发送所述载体设备凭证,以判定所述载体设备的用户是否被授权使用所述受保护设备;以及(e)响应于确定所述载体设备的所述用户被授权使用所述受保护设备,允许所述载体设备的所述用户使用所述受保护设备。
示例D2包括示例D1的特征,并且自动检测与所述受保护设备电连通的所述载体设备的所述操作包括自动检测所述载体设备的所述用户正在触摸所述受保护设备。
示例D3包括示例D1的特征,并且在所述受保护设备、所述载体设备和主设备已经被注册作为所述触摸式密钥系统的部分之后,执行向所述载体设备自动发送所述受保护设备的所述标识符的所述操作。实施例D3还可以包括实施例D2的特征。
示例D4包括示例D3的特征,并且所述载体设备凭证包括由所述主设备根据预定义主设备密钥参数生成的公钥/私钥对的一部分。那些主设备密钥参数(a)标识预定义触发动作,并且(b)将所述预定义触发动作与所述受保护设备相关联。实施例D4还可以包括实施例D2的特征。
示例E是包括用于支持触摸式密钥的计算机指令的至少一种机器可访问介质。所述计算机指令响应于在数据处理系统上被执行而使所述数据处理系统能够执行根据示例B1至D4中的任何一项或多项的方法。
示例F是一种支持触摸式密钥的数据处理系统。所述数据处理系统包括处理元件、响应于所述处理元件的至少一个机器可访问介质以及至少部分地存储在所述至少一个机器可访问介质中的计算机指令。而且,所述计算机指令响应于被执行而使所述数据处理系统能够执行根据示例B1至D4中的任何一项或多项的方法。
示例G是一种支持触摸式密钥的数据处理系统。所述数据处理系统包括用于执行示例B1至D4中的任何一项或多项的方法的装置。
示例H1是一种用于支持触摸式密钥的装置。所述装置包括非瞬态机器可访问介质以及在所述机器可访问介质中的数据,所述数据在由数据处理系统访问时使得所述数据处理系统能够用作触摸式密钥系统的载体设备,所述触摸式密钥系统包括所述主设备、载体设备、触摸式密钥服务器和受保护设备。具体地,所述数据使得所述主设备能够执行包括以下各项的操作:(a)在所述主设备处自动检测预定义触发动作;(b)响应于检测到所述预定义触发动作,在所述主设备处自动生成载体设备凭证和相应的云凭证;(c)在生成所述云凭证之后,将所述云凭证从所述主设备自动发送到所述触摸式密钥服务器,以使得能够在控制对所述受保护设备的访问中使用所述云凭证;(d)在生成所述载体设备凭证之后,自动检测与所述主设备电连通的所述载体设备;(e)响应于检测到所述载体设备,自动判定所述载体设备凭证是否旨在用于所述载体设备;以及(f)响应于确定所述载体设备凭证旨在用于所述载体设备,将所述载体设备凭证自动传输到所述载体设备。
示例H2包括示例H1的特征,并且自动检测与所述主设备电连通的所述载体设备的所述操作包括:使用所述主设备的电传感器来判定所述主设备的用户和所述设备的用户是否正在进行触摸。
示例H3包括示例H1的特征,并且所述操作还包括从所述触摸式密钥服务器接收主设备密钥参数,所述主设备密钥参数(a)描述所述预定义触发动作,并且(b)将所述预定义触发动作与所述载体设备相关联。而且,在从所述触摸式密钥服务器接收所述主设备密钥参数之后执行检测所述预定义触发动作的所述操作。示例H3还可以包括示例H2的特征。
示例H4包括示例H3的特征,并且所述主设备密钥参数将手势和声音中的至少一项定义为所述触发动作的至少一部分。而且,检测所述预定义触发动作的所述操作包括自动判定所述主设备的用户是否已做出所述手势和所述声音中的至少一项。实施例H4还可以包括实施例H2的特征。
示例I1是一种用于支持触摸式密钥的装置。所述装置包括非瞬态机器可访问介质以及在所述机器可访问介质中的数据,所述数据在由数据处理系统访问时使得所述数据处理系统能够用作触摸式密钥系统的载体设备,所述触摸式密钥系统包含主设备、所述载体设备和受保护设备。具体地,所述数据使得所述载体设备能够执行包括以下各项的操作:(a)从所述触摸式密钥系统的所述主设备接收载体设备凭证;(b)在从所述主设备接收到所述载体设备凭证之后,自动检测与所述载体设备电连通的所述受保护设备;(c)响应于自动检测到与所述主设备电连通的所述受保护设备,自动判定所述载体设备凭证是否旨在用于所述受保护设备;以及(d)响应于确定所述载体设备凭证旨在用于所述受保护设备,将所述载体设备凭证自动传输到所述受保护设备,以证明所述载体设备的用户被授权使用所述受保护设备。
示例I2包括示例I1的特征,并且所述操作还包括自动检测所述载体设备的所述用户和所述主设备的用户正在进行触摸。而且,响应于自动检测到所述载体设备的所述用户和所述主设备的用户正在进行触摸而执行从所述主设备接收所述载体设备凭证的所述操作。
示例I3包括示例I1的特征,并且自动检测与所述载体设备电连通的所述受保护设备的所述操作包括:自动检测所述载体设备的所述用户正在触摸所述受保护设备。而且,响应于检测到所述载体设备的所述用户正在触摸所述受保护设备而执行将所述载体设备凭证自动传输到所述受保护设备的所述操作。实施例I3还可以包括实施例I2的特征。
示例J1是一种用于支持触摸式密钥的装置。所述装置包括非瞬态机器可访问介质以及在所述机器可访问介质中的数据,所述数据在由数据处理系统访问时使得所述数据处理系统能够用作触摸式密钥系统的受保护设备,所述触摸式密钥系统包含载体设备、所述受保护设备和触摸式密钥服务器。具体地,所述数据使得受保护设备能够执行包括以下各项的操作:(a)自动检测所述触摸式密钥系统的与所述受保护设备电连通的载体设备;(b)响应于自动检测到与所述受保护设备电连通的所述载体设备,向所述载体设备自动发送所述受保护设备的标识符;(c)在向所述载体设备自动发送所述受保护设备的所述标识符之后,从所述载体设备接收载体设备凭证;(d)响应于从所述载体设备接收到所述载体设备凭证,向所述触摸式密钥服务器自动发送所述载体设备凭证,以判定所述载体设备的用户是否被授权使用所述受保护设备;以及(e)响应于确定所述载体设备的所述用户被授权使用所述受保护设备,允许所述载体设备的所述用户使用所述受保护设备。
示例J2包括示例J1的特征,并且自动检测与所述受保护设备电连通的所述载体设备的所述操作包括自动检测所述载体设备的所述用户正在触摸所述受保护设备。
示例J3包括示例J1的特征,并且在所述受保护设备、所述载体设备和主设备已经被注册作为所述触摸式密钥系统的部分之后,执行向所述载体设备自动发送所述受保护设备的所述标识符的所述操作。示例J3还可以包括示例J2的特征。
示例J4包括示例J3的特征,并且所述载体设备凭证包括由所述主设备根据预定义主设备密钥参数生成的公钥/私钥对的一部分。那些主设备密钥参数(a)标识预定义触发动作,并且(b)将所述预定义触发动作与所述受保护设备相关联。示例J4还可以包括示例J2的特征。
示例K1是一种支持触摸式密钥的数据处理系统,所述数据处理系统包括处理元件、响应于所述处理元件的机器可访问介质以及所述机器可访问介质中的数据,所述数据在由所述处理元件访问时使得所述数据处理系统能够用作载体设备。具体地,所述数据使得所述载体设备能够执行包括以下各项的操作:(a)在所述载体设备、主设备和受保护设备已经被注册作为触摸式密钥系统的部分之后,自动检测与所述载体设备电连通的所述主设备;(b)在自动检测与所述载体设备电连通的所述主设备之后,从所述主设备接收载体设备凭证;(c)在从所述主设备接收到所述载体设备凭证之后,自动检测与所述载体设备电连通的受保护设备;(d)响应于自动检测到与所述主设备电连通的所述受保护设备,自动判定所述载体设备凭证是否旨在用于所述受保护设备;以及(e)响应于确定所述载体设备凭证旨在用于所述受保护设备,将所述载体设备凭证自动传输到所述受保护设备,以证明所述载体设备的用户被授权使用所述受保护设备。
示例K2包括示例K1的特征,并且自动检测与所述载体设备电连通的所述主设备的所述操作包括:自动检测所述载体设备的所述用户和所述主设备的用户正在进行触摸。
示例K3包括示例K1的特征,并且自动检测与所述载体设备电连通的所述受保护设备的所述操作包括:自动检测所述载体设备的所述用户正在触摸所述受保护设备。而且,响应于检测到所述载体设备的所述用户正在触摸所述受保护设备而执行将所述载体设备凭证自动传输到所述受保护设备的所述操作。示例K3还可以包括示例K2的特征。