用于提供一次性口令的方法和装置的制作方法

文档序号:7884534阅读:276来源:国知局
专利名称:用于提供一次性口令的方法和装置的制作方法
技术领域
本发明涉及用于为用户设备提供一次性口令以用于其在服务器处登录的方法和>J-U ρ α装直。
背景技术
在许多应用情况下,服务器通过不安全的数据网络与服务器连接。为了用户设备或客户端设备能够以受保护的形式与服务器交换数据,因此给用户设备供应相应的安全凭证。该安全凭证(其例如可以为口令或其他安全令牌)在许多情况下由中央组件、例如业务供应商的服务器生成,并且接着被分发给用户设备或这样的用户设备或业务的管理员。 在许多情况下,使用所谓的一次性口令(OTP-One Time Password)。利用这样的一次性口令0ΤΡ,用户设备或客户端可以唯一一次地直接针对相应业务在服务器处登录。为了未来的登录,客户端必须要么设置新口令、要么从服务器获得安全令牌、例如数字证书或所谓的Cookie。此外可能的是,使用例如预先在列表中发出的另--次性口令、例如TAN或散列串。通常将随机字符序列用作一次性口令。在生成一次性口令以后,该一次性口令OTP被存储在数据库中。如果用户设备或客户端在服务器处登录,则该一次性口令(OTP)被表征为已使用或者从数据库中删除。于是,用户设备不再能够用该一次性口令在服务器处第二次登录。可替代地可能的是,根据特定的所确定的方法生成足够量的一次性口令并且仅仅将已经使用过的一次性口令存储在数据库中。如果使用散列串,则例如仅仅将最近使用过的一次性口令OTP存储在服务器中。该一次性口令OTP通常被存储在服务器侧,以便使得能够在用户设备在服务器处登录时进行比较。
常规的一次性口令OTP的其他示例是例如在在线银行业务中使用的所谓的交易号TAN和移动交易号TAN。
但是在常规的一次性口令OTP的情况下不能限制一次性口令OTP的使用或将其与特定条件相关联。但是这在许多情况下是所期望的,例如当用户应当从特定设备在服务器处登录时,或者用户设备在服务器处的登录仅在特定时间允许进行时。发明内容
因此,本发明的任务是提供一种用于为用户设备提供一次性口令的方法,该方法提供了将附加条件与一次性口令相关联的可能性。
根据本发明,该任务通过具有权利要求1中说明的特征的方法来解决。
本发明提供了一种用于为用户设备提供一次性口令(OTP)的方法,所述一次性口令被设置用于用户在服务器处登录,其中 服务器借助于密码操作根据明确的使用标识符生成所述一次性口令(OTP)并且将其传输给用户设备。
在本发明方法的一个可能的实施方式中,明确的使用标识符由用户的用户ID形成。
在另一可能的实施方式中,明确的使用标识符由用户设备的用户设备ID来形成。
在本发明方法的另一可能的实施方式中,明确的使用标识符由用户的用户ID以及用户设备的用户设备ID的组合形成。
在本发明方法的一个可能的实施方式中,服务器通过计算明确的使用标识符的密码函数值来生成所述一次性口令。
在本发明方法的一个可能的实施方式中,服务器借助于秘密的密码密钥来计算使用标识符的密码函数值作为一次性口令(OTP )。
在本发明方法的一个可能的实施方式中,服务器借助于预先给定的密码函数、尤其是散列函数来为秘密的密码密钥的唯一的使用标识符计算密码函数值作为一次性口令 (OTP)0
在本发明方法的一个可能的实施方式中,服务器附加地根据时间戳来计算密码函数值作为一次性口令(0ΤΡ )。
在本发明方法的另一可能的实施方式中,服务器附加地根据随机数计算密码函数值作为一次性口令(0ΤΡ )。
在本发明方法的一个可能的实施方式中,用户设备存储从服务器接收的一次性口令(OTP)并且在用户设备在服务器处登录时将该一次性口令(OTP)与使用标识符一起传输。
在本发明方法的一个可能的实施方式中,服务器在用户设备在服务器处登录时根据在一次性口令(OTP )中隐式地包含的使用标识符验证用户设备。
在本发明方法的一个可能的实施方式中,服务器在将由其所生成的一次性口令 (OTP )传输给相应的用户设备以后删除该生成的一次性口令(OTP )。
在本发明方法的一个可能的实施方式中,所生成的一次性口令(OTP)与用户设备一起被发送给用户以用于该用户的用户设备在服务器处登录。
在本发明方法的一个可能的实施方式中,所生成的一次性口令(OTP)由服务器通过数据网络或者借助于 数据载体被发送给安放在用户处的用户设备以用于该用户设备在服务器处登录。
在本发明方法的一个可能的实施方式中,由服务器生成的一次性口令(OTP)的有效性在预先给定的时长以后失效。
另外,本发明提供了一种用于为用户设备提供一次性口令(OTP)的服务器,所述一次性口令被设置用于用户设备在服务器处登录,其中服务器借助于密码操作根据明确的使用标识符生成所述一次性口令(OTP )并且将其传输给用户设备。
在本发明服务器的一个可能的实施方式中,明确的使用标识符由用户的用户ID 形成。
在本发明服务器的一个可替代的实施方式中,明确的使用标识符由用户设备的用户设备ID形成。
在本发明服务器的一个可能的实施方式中,在用户设备在服务器处登录时用户设备根据从服务器接收的一次性口令中隐式地包含的使用标识符被验证。


接下来参考附图来描述用于提供一次性口令(OTP)的本发明方法和本发明系统的可能的实施方式。
图1示出了用于说明用于提供一次性口令的本发明方法和本发明服务器的信号流程图。
具体实施方式
从图1中可以认识到,用户设备I和服务器2通过数据网络通信并交换消息。用户设备I可以是任意的用户设备,其例如安放在用户处、例如家庭中。用户设备I可以是移动或固定安装的用户设备。数据网络可以是无线或有线的数据网络以及不同数据网络的联网、例如因特网。
用户设备I的示例是用于智能供电网罗的能量网关。其他示例是医疗设备,所述医疗设备为了与相应的业务服务器交换患者数据而被安放在患者的房间中。其他可能的示例是火警报警器 或警报器,其向执勤人员、例如消防队提供警报。此外,用户设备I可以是通信设备、例如付费电视盒(Pay-TV-Box),其使得用户能够从服务器2接收电影。服务器2 例如可以位于业务供应商或服务提供者处。服务提供者可以自己或根据委托制造使用设备 1,并且将其供应给可能的顾客。可替代地,用户设备I可以通过自由贸易购得。用户设备I 可分别通过序列号等等被明确地标识。此外,每个顾客或用户可以拥有明确的顾客号。如果已经从服务提供者或在自由贸易中获得用户设备I的顾客希望将该用户设备I在业务供应商处登录,则该顾客如图1所示通过数据网络将要求消息或请求发送给业务供应商的服务器2。接着,利用在服务器2中设置的生成器根据明确的使用标识符在密码操作中生成一次性口令0ΤΡ。该使用标识符例如可以是用户的用户ID、尤其是顾客号。可替换地,使用标识符可以是用户设备ID、例如用户设备I的序列号。此外可能的是,使用标识符是明确的地址、例如MAC地址。如图1所示,服务器2通过数据网络将通过密码操作所形成的一次性口令OTP传输给要登录的用户设备I。
如图1所示,所生成的OTP可以通过数据网络或者也可替代地通过另一通信信道被传输到用户设备I。另外可能的是,借助于数据载体以离线方式将所生成的一次性口令 OTP从服务器2传输到用户设备I。该数据载体例如可以由USB棒形成。在一个可能的实施方式中,该数据载体与要安放的用户设备I一起在包裹中通过邮寄从服务提供者发送给用户。然后,用户将附带的数据载体、例如USB棒连接到用户设备I以读出一次性口令0ΤΡ, 使得用户设备I可以借助于所读出的一次性口令OTP在服务器2处登录以释放业务。
此外可能的是,将传送所生成的一次性口令OTP的数据载体、例如USB棒同用户设备I分开地在另一包裹中发送给用户。在另一可能的实施方式中,数据载体是集成在用户设备I中的数据存储器。该数据存储器例如可以受访问保护并且可以借助于口令被释放, 由此用户获得对其中存储的一次性口令OTP的访问。一旦用户或用户设备I已经在线地或离线地获得由服务器2形成的一次性口令0ΤΡ,则用户设备I就可以通过登录消息N在服务器2处登录已获得相应的业务。在由服务器2生成并由用户设备I接收到一次性口令OTP 的情况下,使用标识符、例如用户账户或顾客号或者相应的设备标识符、例如序列号被隐式地包含或编码在一次性口令OTP中。由此防止了另一用户或另一设备能够利用该一次性口令OTP在服务器2处登录。如果服务器2例如借助于散列函数从已知设备ID以及设备ID 的秘密的密码密钥中形成用于用户设备I的一次性口令0ΤΡ,则所形成的一次性口令OTP是明确的OTP=H(KPriv,设备ID)。在这种情况下,用户设备I的设备ID在登录时、即在发送登录消息N时作为消息N的一部分被一并发送给服务器2。然后,服务器2可以在使用秘密的密码密钥(Kphv)的情况下有效地检查一次性口令OTP的正确性,而不必将一次性口令 OTP中心地存放在服务器2中以用于检查。因此,在根据本发明的方法中存在的可能性是, 服务器2将由其生成的一次性口令OTP在传输给用户设备I以后从其数据存储器中删除或移除。由此可以在服务器2或业务供应商侧显著减少维护成本。此外,这所提供的特别的优点是,在服务器2侧的数据存储器发生故障的情况下,甚至在丢失这样的一次性口令OTP 的情况下仍然可以在服务器2侧对所获得的一次性口令OTP成功地进行验证。
在另一可能的实施方式中,由服务器2生成的一次性口令OTP的有效性在预先给定的可配置的时长以后、例如在几分钟或小时以后失效。如果用户设备I的登录成功,则这可以由服务器2利用OK消息通知给用户设备I。
在一个可能的实施方式中,在从用户设备I向服务器2传输登录消息N时,一次性口令OTP不是以明文、而是以受密码保护的方式被传输。在另一可能的实施方式中,用于将用户设备I在服务器2处登录的消息N的传输 通过受密码保护的连接、例如TLS或SSL连接来进行。在此可能的是,根据校验和来验证所传输的登录消息N。
在另一优选的实施方式中,在使用附加信息或数据的情况下借助于秘密的密码密钥针对明确的使用标识符利用预先给定的密码函数、例如散列函数来计算形成一次性口令 OTP的密码函数值。在此,在一个可能的实施方式中,服务器2附加地根据时间戳来计算密码函数值作为一次性口令0ΤΡ。时间说明或时间戳、例如〈月年>或〈日月年 >或〈自 01. 01. 2010起的日期〉,使得可以为用户的每账户和月或日生成另一一次性口令0ΤΡ。该实施方式尤其是适用于一次性口令OTP仅仅短时间有效并且极少需要新的一次性口令的情况。此外可能的是在此处使用所谓的UTC时间值。在此,Unix时间例如描述自01.01. 1970 起所流逝的秒数。由此可能的是,为特定的使用标识符生成非常快变化的一次性口令,例如=OTP=Hash(K, ID, < 日月年 >)。
该实施方式可以使用时间说明来生成或检查一次性口令OTP,其中必须有同步的时间说明可用。在一个可能的实施方式中,时间同步通过协议、例如NTP (Network Time Protocol,网络时间协议)或IEEE 1588来进行。
在另一可能的实施方式中,服务器附加地根据随机数将密码函数值作为一次性口令OTP发送。该随机数例如可以通过随机生成器来生成。例如,按照下列方式计算一次性口令 OTP OTP=Hash (K,< 随机数 >,ID) | | < 随机数 >因此可以在相应长的随机数的情况下生成任意多个一次性口令OTP。
在一个特殊的变型方案中,可以替代于将密钥K直接与消息N联系起来的散列方法使用所谓的键控散列方法。在一个可能的实施方式中,如在标准RFC 2104中那样计算键控散列值HMAC(K, m) =H((K XOR opad) |H((K XOR ipad) | m))其中m是消息、例如登录消息,并且其中 opad和ipad是预定义的串或字符串,并且其中K是一次性口令OTP或依赖于一次性口令OTP的值、例如K = H (OTP)0
在另一可能的变型方案中,替代于散列方法还可以使用对称加密算法、例如 CBCMAC模式(Cipher Block Chaining Message Authentication Code,密码块连接的消息认证码)中的 AES (Advanced Encryption Standard,高级加密标准)。
根据本发明的方法提供了几个优点。利用根据本发明的方法可能的是,在使用密码操作的情况下根据固定定义的规则生成一次性口令0ΤΡ,使得该一次性口令OTP可以连接到特定的使用标识符、例如用户ID或用户顾客号。另外不需要所形成的一次性口令OTP 在其使用以前被存储到服务器2的数据存储器上,使得总体上显著地使对所述数据的管理变得容易。
在一个可能的实施方式中可能的是,将一次性口令OTP绑定到用户(例如供电企业的顾客)的顾客名。此外,利用根据本发明的方法可能的是,在需要时为相同的用户或相同的顾客名生成另外的一次性口令0ΤΡ。所形成的一次性口令OTP在密码学上与纯随机数一样安全。一次性口令OTP的生成器或服务器2不必存储所形成的一次性口令0ΤΡ。仅须在服务器2侧存储哪些账户或设备已经使用了其一次性口令OTP或者哪些账户或设备还允许使用其一次性口令0ΤΡ。这将要保护的数据减小到用于生成一次性口令OTP的密码密钥 K。此外可以在时间上限制一次性口令OTP的有效性。根据本发明的方法和系统由此向业务供应商或服务提供者开放的可能性是,将一次性口令OTP与特定条件相关联并且因此允 许提高业务供应商的灵活性并提高对抗操纵的安全性。
权利要求
1.一种用于为用户的用户设备(I)提供一次性口令(OTP)的方法,所述一次性口令(OTP )被设置用于用户设备(I)在服务器(2 )处登录, 其中服务器(2)借助于密码操作根据明确的使用标识符生成一次性口令(OTP)并且将其传输给用户设备(I ), 其中用户设备(I)存储从服务器(2)接收的一次性口令(OTP)并且在用户设备(I)在服务器(2)处登录时将所述一次性口令(OTP)与使用标识符一起传输, 其中服务器(2)在用户设备(I)在服务器(2)处登录时根据在所接收的一次性口令(OTP )中隐式地包含的使用标识符验证用户设备(I)。
2.根据权利要求1所述的方法, 其中所述明确的使用标识符由用户的用户ID或由用户设备(I)的用户设备ID形成。
3.根据权利要求1或2所述的方法, 其中服务器(2)通过计算所述明确的使用标识符的密码函数值生成一次性口令(OTP)0
4.根据权利要求3所述的方法, 其中服务器(2)借助于秘密的密码密钥(Kphv)计算使用标识符的密码函数值作为一次性口令(0ΤΡ)。
5.根据权利要求4所述的方法, 其中服务器(2)借助于预先给定的密码函数、尤其是散列函数借助于所述秘密的密码密钥为明确的使用标识符计算密码函数值作为一次性口令(OTP )。
6.根据权利要求3- 5所述的方法, 其中服务器(2)附加地根据时间戳或随机数计算密码函数值作为一次性口令(0ΤΡ)。
7.根据权利要求1一 6所述的方法, 其中服务器(2)在将由其生成的一次性口令(OTP)传输给用户设备(I)以后删除所述一次性口令(0ΤΡ )。
8.根据权利要求1一 7所述的方法, 其中所生成的一次性口令(OTP)与用户设备(I) 一起被发送给用户以用于所述用户的用户设备(I)在服务器(2 )处登录。
9.根据权利要求1一 7所述的方法, 其中所生成的一次性口令(OTP)由服务器(2)通过数据网络或者借助于数据载体被发送给安放在用户处的用户设备(I)以用于所述用户设备(I)在服务器(2)处登录。
10.根据权利要求1一 9所述的方法, 其中由服务器生(2)生成的一次性口令(OTP)的有效性在预先给定的时长以后失效。
11.一种用于为用户的用户设备(I)提供一次性口令(OTP)的服务器(2),所述一次性口令(OTP )被设置用于用户设备(I)在服务器(2 )处登录,其中服务器(2 )借助于密码操作根据明确的使用标识符生成所述一次性口令(OTP)并且将其传输给用户设备(1), 其中用户设备(I)为了其在服务器(2)处登录将从服务器(2)获得的一次性口令(OTP)与使用标识符一起发送给服务器(2 ),所述服务器(2 )根据在一次性口令(OTP )中隐式地包含的使用标识符和所接收的使用标识符来验证用户设备(I)并且允许所述用户设备(I)使用业务。
12.根据权利要求11所述的服务器(2),其中所述明确的使用标识符由用户的用户ID或者由用户设备(I)的用户设备ID形成。
全文摘要
一种用于为用户的用户设备(1)提供一次性口令(OTP)的方法,所述一次性口令(OTP)被设置用于用户设备(1)在服务器(2)处登录,其中服务器(2)借助于密码操作根据明确的使用标识符生成所述一次性口令(OTP)并且将其传输给用户设备(1)。该方法向业务供应商提供了将针对登录的附加条件与一次性口令(OTP)相关联的可能性,并且因此提高了业务供应商在构造业务时的灵活性并且提高了对抗操纵的安全性。
文档编号H04L9/08GK103026686SQ201180037981
公开日2013年4月3日 申请日期2011年7月22日 优先权日2010年8月3日
发明者J-U.布泽, S.弗里斯 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1