用于提供安全认证的网络、模块、方法和计算机可读介质转让专利

申请号 : CN201610466091.7

文献号 : CN106302381B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : L·博莱赛A·奥萨诺E·特里维希

申请人 : 埃森哲环球服务有限公司

摘要 :

本发明的各实施例总体上涉及设备认证。具体地,涉及提供安全认证的计算机网络。计算机网络包括可操作以生成包括身份信息的令牌的服务器;要认证的第一设备,第一设备可操作以接收令牌;与置信标识符相关联的第二设备,第二设备可操作以从第一设备检索令牌并且使得令牌与置信标识符相关联以在服务器处认证第一设备。

权利要求 :

1.一种提供安全认证的计算机网络(100),所述计算机网络(100)包括:服务器(130),可操作以生成包括身份信息的令牌(50);

要认证的第一设备(110),所述第一设备(110)可操作以接收所述令牌(50);

与置信标识符(60)相关联的第二设备(120),所述第二设备(120)可操作以:从所述第一设备(110)检索所述令牌(50);

使得所述令牌(50)与所述置信标识符(60)相关联以在所述服务器(130)处认证所述第一设备(110);

其中所述第二设备(120)还可操作以向所述服务器(130)发送包括相关联的所述令牌(50)和所述置信标识符(60)的认证数据(70),其中所述认证数据(70)使得所述第一设备(110)能够基于被包括在所述令牌(50)中的所述身份信息经由所述置信标识符(60)来被认证,以及所述服务器(130)至少包括第一部件(230)和第二部件(240),所述第一部件(230)可操作以生成所述令牌(50)并且特征在于所述第二部件(240)可操作以向数据库写入所述认证数据(70)并且从所述数据库读取所述认证数据(70)。

2.根据权利要求1所述的计算机网络(100),其中所述第一设备(110)还可操作以生成所述身份信息,并且向所述服务器(130)发送所述身份信息,其中所述身份信息包括随机生成的有效IP地址和随机生成的端口号。

3.根据权利要求1所述的计算机网络(100),其中所述第二设备(120)可操作以向所述第一部件(230)发送所述认证数据(70)并且所述第一部件(230)还可操作以验证由所述第一部件(230)生成的所述令牌(50)并且向所述第二部件(240)转发所述认证数据(70)。

4.根据权利要求1到3中的任一项所述的计算机网络(100),其中所述第一设备(110)还可操作以响应于向所述服务器(130)通信所述身份信息经由所述置信标识符(60)来被认证。

5.根据权利要求1到3中的任一项所述的计算机网络(100),其中所述第二设备(120)是移动电话并且所述置信标识符(60)是MSISDN。

6.根据权利要求1到3中的任一项所述的计算机网络(100),其中所述第一设备(110)还可操作以生成和显示包括所述令牌(50)的QR代码。

7.根据权利要求1到3中的任一项所述的计算机网络(100),其中所述令牌(50)是加密令牌。

8.根据权利要求2所述的计算机网络(100),其中所述第一设备(110)包括可操作以生成所述身份信息的应用软件(210),其中所述身份信息还包括所述应用软件(210)的标识符。

9.一种提供安全认证的计算机模块(220),所述模块(220)可操作以:从要认证的第一设备(110)检索包括身份信息的令牌(50);

从服务器(130)自动检索与第二设备(120)相关联的置信标识符(60);

使得所述令牌(50)与所述置信标识符(60)相关联;

向所述服务器(130)发送包括相关联的所述令牌(50)和所述置信标识符(60)的认证数据(70),其中所述认证数据(70)使得所述第一设备(110)能够基于被包括在所述令牌(50)中的所述身份信息经由所述置信标识符(60)来被认证,并且所述认证数据(70)被配置成向数据库被写入并且从所述数据库被读取。

10.根据权利要求9所述的计算机模块(220),其中所述第二设备(120)是移动电话并且所述置信标识符(60)是MSISDN。

11.根据权利要求9或10所述的计算机模块(220),其中所述令牌(50)被包括在QR代码中并且所述计算机模块(220)还可操作以扫描所述QR代码以检索所述令牌(50)。

12.一种提供安全认证的计算机实现的方法,所述方法包括:

由服务器(130)生成包括身份信息的令牌(50);

由第一设备(110)接收所述令牌(50);

由与置信标识符(60)相关联的第二设备(120)从所述第一设备(110)检索所述令牌(50);

由所述第二设备(120)使得所述令牌(50)与所述置信标识符(60)相关联以通过向所述服务器(130)发送包括相关联的所述令牌(50)和所述置信标识符(60)的认证数据(70)来在所述服务器(130)处认证所述第一设备(110),其中所述认证数据(70)使得所述第一设备(110)能够基于被包括在所述令牌(50)中的所述身份信息经由所述置信标识符(60)来被认证;以及其特征在于由所述服务器(130)向数据库写入所述认证数据(70)以及从所述数据库读取所述认证数据(70)。

13.一种计算机可读介质,包括存储于其上的计算机程序,所述计算机程序包括计算机可读指令,所述计算机可读指令当在合适的系统上被加载和执行时执行根据权利要求12所述的提供安全认证的计算机实现的方法的步骤。

说明书 :

用于提供安全认证的网络、模块、方法和计算机可读介质

技术领域

[0001] 以下描述涉及用于安全地认证设备的网络、模块、方法和产品。

背景技术

[0002] 诸如计算机、移动电话和写字板等电子设备通常需要用户的认证以便防止未授权的访问或者提供个性化的特征。作为示例,认证过程在设备上发生在线金融业务时特别重要。
[0003] 通常,用户的认证包括由用户提供的用户名和密码的组合。然而,基于密码的认证存在很多缺陷。密码需要在每次需要对设备的新的访问时被手动输入。这一繁琐的过程通常制止用户保护对设备的访问。另外,为了确保适当的安全水平,密码应当兼容一些复杂的约束,诸如包含字母数字字符和特殊字符二者,并且每个设备应当有可能具有不同的密码。记忆方面的精力花费也被用户认为是负担,并且因此可能影响安全水平。另外,密码可以被未授权的用户在设备上的输入期间非法获取、攻击或看到。由于用户的身份仅与密码的知晓相关联,所以拥有密码的非认证用户可以很容易捏造真正用户的身份。因此,在不提供用户身份的可靠确认的意义上,密码可以提供身份,但是不一定是认证。

发明内容

[0004] 根据一方面,提供了一种提供安全认证的计算机网络。计算机网络可以包括:
[0005] 可操作以生成包括身份信息的令牌的服务器;
[0006] 要认证的第一设备,该第一设备可操作以接收令牌;
[0007] 与置信标识符相关联的第二设备,该第二设备可操作以:
[0008] 从第一设备检索令牌;
[0009] 使得令牌与置信标识符相关联以在服务器处认证第一设备。
[0010] 令牌特别地是可以在计算机网络中用于识别目的的数据片。其包含的数据包括通常可以是以字母数字串形式出现的身份信息。令牌可以被生成作为表示身份信息的字母数字串的连结。作为示例,令牌可以被加密,诸如加密串(例如,特别地通过非可逆散列函数被散列的)的形式。
[0011] 身份信息根据一个示例可以是IP地址和端口号的组合。IP地址可以由随机生成的数字或者在包括对应于有效IP地址的数的范围内的任意数字来给出,特别是避免提供在因特网中实际使用的任何真实IP地址。对应于IP地址的端口号也可以随机生成或者是任意数字。所生成的IP地址特别地可以根据IETF出版物RFC 791(1981年9月)中描述的因特网协议版本4(IPv4)来规定。
[0012] 第一设备可以需要认证,即,其可以需要使用第一设备的用户的身份的安全确定。
[0013] 要认证的第一设备(例如,便携式设备,诸如写字板)可以从服务器接收包括身份信息的令牌。令牌中所包含的身份信息可以用于在网络内含义明确地识别第一设备。令牌从服务器到第一设备的传输作为示例可以通过因特网来进行。具体地,传输可以通过安全通道(诸如,虚拟专用网vpn)或者使用安全协议(诸如,https)来进行。
[0014] 第二设备可以与置信标识符相关联。置信标识符可以是可信任地链接至或者对应于使用第二设备的用户的身份的信息或数据片。换言之,用户与标识符之间的关联关系已经通过可信赖的源被验证并且不能被很容易地捏造。与置信标识符相关联的第二设备可以指示置信标识符是第二设备的固有特征和/或指示第二设备需要置信标识符用于其作用使得第二设备和置信标识符组合使用。作为示例,第二设备可以是移动电话并且置信标识符可以是移动台国际用户目录号码(MSISDN)或者与其对应,其是在移动网络(例如,GSM或UMTS移动网络)中唯一地识别订阅的号码。替选地或者另外地,置信标识符可以是国际移动用户身份(IMSI)或者与其对应,其可以用于识别蜂窝网络的用户并且特别地表示与所有蜂窝网络相关联的唯一身份。其特别地可以被存储作为64比特字段和/或可以由电话向网络发送。
[0015] 第二设备可以从第一设备检索包括身份信息的令牌。第二设备因此可以例如经由软件应用来获取含义明确地识别第一设备的身份信息。在一个示例中,第一设备可以生成并显示包括令牌的快速响应(QR)代码。第二设备从第一设备对令牌的检索因此作为示例可以通过使用第二设备上的软件应用扫描QR代码来进行。
[0016] 第二设备随后可以使得令牌与置信标识符相关联以在服务器处认证第一设备。使得令牌与置信标识符相关联可以指示能够从一个回溯到另一个,即从令牌开始可以获得置信标识符,反之亦然。其可以另外地或者替选地指示令牌和置信标识符通常联合处理,例如,一起读取、写入、传输和/或存储。根据一个示例,相关联的令牌和置信标识符可以被包括在从第二设备上的软件应用向服务器发送的认证数据中。如所描述的,被包括在令牌中的身份信息可以含义明确地识别第一设备。根据包括身份信息的令牌与置信标识符之间的关联关系,使得第一设备可以含义明确地与置信标识符相关联,并且因此可以经由置信标识符来认证第一设备。因此,提供了安全认证。
[0017] 根据另外的示例,服务器可以包括至少两个部件,第一部件,可操作以生成令牌,以及第二部件,可操作以在数据库中写入认证数据和/或从数据库读取认证数据。比如,第二部件可以将令牌中包含的身份信息和置信标识符存储在例如数据库的表格中。在另一示例中,两个不同的部件可以用于读取和写入。作为示例,服务器的部件可以是应用编程接口(API)。
[0018] 根据又一示例,第二设备可以可操作以向服务器的第一部件发送认证数据和/或第一部件还可以可操作以验证由第一部件生成的令牌并且向服务器的第二部件转发认证数据。第一部件在生成令牌之后可以在认证数据被写入数据库之前接收回令牌。第一部件可以特别地检查没有发生数据外泄,例如识别第一设备的身份信息尚未被识别未授权设备的身份信息取代。换言之,第一部件可以确保置信标识符用于认证第一设备而非另一设备。因此,提供了安全认证。作为示例,可以将时间极限设置为令牌的生成与第一部件对同一令牌的接收之间的时间间隔。如果令牌在规定的(预定的或者可预定的)时间极限内到达,则第一部件可以验证令牌并且继续进行以向第二部件发送认证数据。如果令牌在时间极限超时之后到达,则认为无效。
[0019] 作为另外的示例,可以使用仅第一部件知道的私有密钥来对令牌加密。第一部件随后可以使用私有密钥对令牌解密并且然后验证输出匹配期望的格式。由第三方修改的令牌在解密过程之后将不遵守期望的格式。
[0020] 根据再一示例,可以响应于向服务器通信身份信息经由置信标识符来认证第一设备。向数据库写入的认证数据包括相关联的令牌和置信标识符。因此,第一设备特别地可以响应于通信被包含在令牌中的身份信息来被链接至相关联的置信标识符并且因此经由置信标识符来被认证。作为示例,服务器的第二部件可以接收身份信息,从数据库读取相关联的置信标识符,并且认证第一设备。
[0021] 根据另一示例,第一设备可以生成身份信息并且向服务器发送身份信息。因此,第一设备本身可以生成可以含义明确地识别其的身份信息。身份信息然后可以被发送给服务器以便获取适合由第二设备来检索的令牌。在一个示例中,如所提及的,令牌通过连结构成身份信息的串来创建。另外,令牌可以由服务器来加密并且被第一设备包括在QR代码中。
[0022] 根据另外的示例,第一设备可以包括可操作以生成身份信息的应用软件。比如,应用软件可以是包括生成用于身份信息的(伪)随机或任意数字(诸如,IP地址和端口号)的JavaScript的web浏览器。识别还可以包括应用软件的标识符。如在以上讨论的示例中,令牌因此可以是包括构成IP地址、端口号和应用软件标识符的字母数字串的连结的串。另外地或者替选地,根据先前提出的示例之一,应用软件可以生成和显示包括令牌(或者使得能够从其中提取令牌)的QR代码和/或图形符号。
[0023] 根据本发明的另一方面,提供了一种提供安全认证的计算机模块。该模块可以可操作以:
[0024] 从要认证的第一设备检索包括身份信息的令牌;
[0025] 从服务器自动检索与第二设备相关联的置信标识符;
[0026] 使得令牌与置信标识符相关联;
[0027] 向服务器发送包括相关联的令牌和置信标识符的认证数据。
[0028] 根据一个示例,第二设备可以是移动电话并且置信标识符可以是MSISDN或者与其对应。替选地或者另外地,置信标识符可以是国际移动用户身份(IMSI)或者与其对应,其可以用于识别蜂窝网络的用户并且特别地表示与所有蜂窝网络相关联的唯一的身份。其特别地可以被存储作为64比特字段和/或可以由电话发送给网络。移动网络运营商向移动电话提供因特网服务和移动服务二者。因此,因特网连接数据、诸如IP地址和端口号被固有地链接至移动电话数据,诸如,MSISDN和/或IMSI。计算机模块可以使用移动电话的IP地址和端口号来访问移动网络运营商的服务器,并且自动检索对应的MSISDN,而不需要在用户侧进行任何手动配置。作为示例,计算机模块可以是第二设备的一部分,例如,在第二设备上运行的软件应用。
[0029] 根据另一示例,令牌被包括在QR代码中并且计算机模块还可操作以扫描QR代码从而检索令牌。
[0030] 根据本发明的另一方面,提供了一种提供安全认证的计算机实现的方法。该方法可以包括:
[0031] 由服务器生成包括身份信息的令牌;
[0032] 由第一设备接收所述令牌;
[0033] 由与置信标识符相关联的第二设备从第一设备检索令牌;
[0034] 由第二设备使得令牌与置信标识符相关联以在服务器处认证第一设备。
[0035] 根据本发明的又一方面,提供了一种计算机程序产品。产品可以包括计算机可读指令,这些指令当在合适的系统上被加载和执行时执行根据在前方面的安全认证方法的各步骤。

附图说明

[0036] 下面参考示例性附图给出示例性实施例的细节。其他特征根据描述、附图并且根据权利要求将会变得很清楚。然而,应当理解,虽然单独描述实施例,但是不同实施例的单个特征可以组合以得到另外的实施例。
[0037] 图1示出了根据实施例的提供安全认证的计算机网络的示例;
[0038] 图2示出了提供安全认证的计算机网络的操作的示例;以及
[0039] 图3示出了计算设备和移动计算设备的示例。

具体实施方式

[0040] 下面,参考附图给出示例的详细描述。应当理解,可以对示例做出各种修改。除非另外明确指出,否则一个示例的元素可以在其他示例中组合或使用以形成新的示例。
[0041] 图1示出了根据实施例的提供安全认证的计算机网络的示例。计算机网络100可以包括至少一个第一设备110(例如,移动设备,诸如写字板),该第一设备110在其与之交互的服务器130处需要认证。第二设备120可以固有地借助于其与置信标识符60的关联关系来被认证。应当理解,虽然本实施例关于单个第一设备110(诸如写字板)来描述,然而可以根据本概念或过程用安全的方式认证多个第一设备110。作为示例,第二设备120特别地可以是移动电话并且置信标识符可以是移动台国际用户目录号码(MSISDN)或者与其对应,其是在移动网络(例如,GSM或UMTS移动网络)中唯一地识别订阅的号码。另外地或者替选地,置信标识符可以是国际移动用户身份(IMSI)或者与其对应,其可以用于识别蜂窝网络的用户并且特别地表示与所有蜂窝网络相关联的唯一身份。其特别地可以被存储作为64比特字段和/或可以由移动电话120发送给网络。服务器130可以连接至移动网络和/或可以能够检索移动电话120的MSISDN和/或IMSI。因此,第二设备120可以用于实现第一设备110的无缝认证,即没有第一设备110和第二设备120的用户对诸如用户名和密码等任何数据的输入,如下文中所描述的。
[0042] 服务器130可以生成包括第一设备110的身份信息的至少一个令牌50,并且特别地以加密方式向第一设备110发送令牌50。第二设备120可以从第一设备110检索令牌50并且使得令牌50与其置信标识符60相关联。换言之,第二设备120可以在识别第一设备110的身份信息与置信标识符60之间建立链接,使得第一设备110可以基于置信标识符60被认证。根据一个示例,第二设备120可以向服务器130发送包括相关联的令牌50(或与其对应的信息)和置信标识符60(或与其对应的信息)的认证数据70。
[0043] 计算机网络100以高效且安全的方式完成第一设备110的认证过程。特别地,认证是高效的,因为其不需要耗时、容易出错的人工输入来验证使用第一设备110的用户的身份。另外,没有人工输入具体地使得更加难以通过例如窃取证书来捏造身份。特别地通过依赖于置信标识符60来使得认证很安全,置信标识符60提供第二设备120的用户的可信赖的身份。根据一个示例,第二设备120可以是移动电话并且置信标识符60可以是MSISDN和/或IMSI。MSISDN特别地对应于存储在移动电话中的用户身份模块(SIM)卡中的电话号码并且含义明确地识别移动电话用户,即用户。比如,MSISDN提供对归属位置寄存器(HLR)的访问。HLR是包含被授权使用全球移动通信系统(GSM)网络的每个移动电话用户的细节的中心数据库。当用户从移动网络运营商获取(例如,购买)其移动电话的SIM卡时,他需要提供身份文档,诸如密码。因此,SIM卡的MSISDN是用户身份的可靠标识符,这与可以很容易被捏造的例如Facebook或Twitter用户名相反。移动电话需要SIM卡来操作,因为SIM卡和其上的数据、诸如MSISDN用作访问GSM或UMTS网络的登录证书。移动网络运营商因此拥有SIM卡与用户的证明身份之间的关联关系,并且可以特别地用作在认证过程中提供置信标识符和/或验证标识符的可信赖的源(或者信任权利)。
[0044] 因此,由于移动电话120包含可信赖的源的身份数据,因此可以通过从“被关在设备”120中向“可移植到任何设备(诸如第一设备110(例如,写字板))”平移置信标识符60(例如,MSISDN和/或IMSI)来实现安全且容易的(特别地无缝的)认证。这样的平移或过渡可以由计算机模块、诸如安装在移动电话120上的软件应用来实现,其被配置成检索识别另一设备(或者第一设备110)的置信标识符60和令牌50并且使得彼此相关联。通过这一关联关系,置信标识符60不再仅用于认证移动电话120(如特定的第二设备120)而是也可以用于认证其他设备(如特定的第一设备110),诸如写字板。置信标识符60因此可以被调节用于除了移动电话120的多个设备110。另外,应当强调,软件应用不需要移动电话用户(即,用户)输入的任何手动数据。作为示例,在应用在移动电话上被下载之后被首次打开时,其可以凭借其到移动网络的连接(例如,作为对由移动网络运营商分配给移动电话120特别地用作可信赖的权威的IP地址和端口的响应)来自动检索MSISDN和/或IMSI。网络自动提供具体地确保了应用检索置信标识符60,以避免可以从手动配置得到的任何欺骗。
[0045] 图2示出了提供安全认证的计算机网络的操作的示例。图2所示的计算机网络可以是计算机网络100的示例性实施例,其中第二设备120包括软件应用(或简称应用)。应用220可以被配置成如以上讨论地操作以使得置信标识符60与一个或多个其他设备110相关联。服务器130可以包括具有不同功能的至少两个部件,作为示例是两个API 230和240,如下面所解释的。第一设备110可以包括与服务器130通信的应用、诸如浏览器210。
[0046] 下面,将参考图2描述操作301到314的示例性集合。
[0047] 在步骤301,用户可以打开第一设备110(例如,计算机或写字板)上的浏览器210以经由服务器130访问网页入口。在另一示例中,可以经由不同于服务器130的服务器来访问网页入口,其中服务器130可以仅专用于生成/验证令牌并且存储涉及用户身份的信息。网页入口可以需要用户的认证以便例如提供对用户的个人数据的访问。
[0048] 在步骤302,浏览器210可以生成身份信息以识别第一设备110。例如,身份信息可以包括或包含对应于IP地址、端口号和入口ID的3个串,后者识别浏览器210。身份信息可以随机生成。浏览器210可以用于实现JavaScript以执行随机生成。IP地址可以是IPv4格式(即所生成的IP地址可以特别地根据1981年9月的IETF出版物RFC 791中描述的因特网协议版本4(IPv4)来规定)。PIv4地址可以用表示32比特整数值的任何符号来书写,但是它们最常用点十进制符号来书写,其包含以十进制单独表示并且以周期分离的地址的4个八位字节。IP地址因此可以包括4个十进制数字,每个八位字节一个数字。前两个数字可以是在240到254之间的随机或任意整数,并且第三和第四数字可以是在1到254之间的随机或任意整数。在生成用于身份信息的IP地址时,应当避免由移动和固定网络运营商实际使用的真实IP地址。将前两个数字限制在240到254的范围内实现了这一目的,因为这样的地址通常没有被分配或者被预留用于专用IP地址。实际上,根据由因特网编号分配机构(IANA)建立的IPv4地址的分配,以上范围被预留用于未来使用并且因此当前没有被分配(参见http://www.iana.org/assignments/ipv4-address-space/ipv4-address-space.xhtml)。IP地址可以表示身份信息的良好候选,因为现有的应用可以被配置成从事IP地址。因此,本文中描述的操作可以被平滑地集成到现有系统中。
[0049] 具体地,端口号可以是具有4或5个数字的(伪)随机或任意整数。端口ID可以随机地生成作为32字符字母数字串,包括数字字符和特殊字符。
[0050] 在步骤303,可以从浏览器210向第一API 230发送身份信息,以请求令牌50。
[0051] 在步骤304,第一API 230可以通过根据IP地址、端口号和入口ID的连结产生串来生成令牌50。在示例中,第一API 230可以基于非对称密码学对串加密并且将私有密钥存储在服务器130中。第一API 230可以向浏览器210发送响应并且提供包含具有IP地址、端口号和入口ID的加密串的令牌50。
[0052] 在步骤305,浏览器210可以基于所接收的加密令牌50生成快速响应(QR)代码或矩阵条码或二维条码(例如,经由JavaScript)和/或在第一设备110的屏幕上显示QR代码。QR代码特别地可以根据标准ISO/IEC 18004:2015(其具体地定义了被称为QR代码的符号的要求)来生成。其特别地规定了QR代码符号特性、数据字符编码方法、符号格式、维度特性、纠错规则、参考解码算法、产生质量要求和/或用户可选择的应用参数。应当理解,根据本示例,可以使用除了QR代码的任何符号和/或图像元素(诸如条码),只要符号和/或图像元素可以由第二设备120来检测并且包括对应于加密令牌50的信息,使得第二设备120可以经由所显示的QR代码、符号和/或图像元素从第一设备110检索包括身份信息的令牌50。
[0053] 在步骤306,用户可以使用在第二设备120上的应用220捕获(例如,扫描)QR代码,例如经由第二设备120上的成像设备(诸如相机),例如使用相符应用。特别地可以使用Reed-Solomon纠错来在第二设备120处处理QR代码,直到可以正确地解释图像。所需要的数据特别地可以从存在于QR代码的捕获图像的水平和竖直分量二者中的图案来提取。
[0054] 在307,应用220可以使得从捕获(扫描)的QR代码检索的令牌50与和第二设备120相关联的置信标识符60相关联。在一个示例中,应用220还可以关联识别应用220的app标识符。App标识符的添加可以特别地减小数据伪造的可能性。
[0055] 在步骤308,应用220可以向第一API 230发送包括相关联的令牌50和置信标识符60(以及可选地app标识符)的认证数据70用于验证。
[0056] 在步骤309,已经生成令牌50的第一API 230可以特别地验证没有发生认证数据70的篡改。例如,攻击者可以尝试使用另一令牌取代识别第一设备110的令牌50以开发与置信标识符60的关联关系并且使用用户的证书来认证例如攻击者的(不同)设备。第一API 230可以检查从应用220接收的令牌实际上是否是令牌50。例如,可以将时间极限(或者有效性时间窗口)设置为令牌50的生成与第一API 230对同一令牌的接收之间的时间间隔。如果令牌50在时间极限内到达,则第一API 230验证令牌50。如果令牌在时间极限超时之后到达,则其被认为是无效的。如果令牌50已经被验证,则第一API 230可以向第二API 240转发认证数据70。作为另外的示例,可以使用仅第一API 230已知的私有密钥来对令牌50加密。第一API 230随后可以使用私有密钥解密令牌50并且然后验证输出匹配期望格式。由第三方修改的令牌50在解密过程之后将不遵守期望的格式。
[0057] 在步骤310,第二API 240可以向服务器130的数据库写入或通信认证数据70。虽然图2中未示出,但是第二API 240可以向第一API 230发送存储操作的确认,第一API 230进而可以向应用220通信认证的成功结果。应用220然后可以在第二设备120上显示(示出例如弹出窗口)以向用户告知第一设备110的认证已经实现。
[0058] 接着,在步骤311,用户可以尝试访问其在网页入口上的个人区域。因此,在步骤312,可以向第二API 240发送第一设备110的身份信息。
[0059] 第二API 240可以从数据库读取认证数据70,并且基于包括第一设备110的身份信息的令牌50与置信标识符60之间的关联关系,第二API可以在步骤313在网页入口上认证第一设备110。
[0060] 在另一示例中,可以使用两个不同的API来写入认证数据和读取认证数据。因此,第二API 240可以仅在步骤309和310中被涉及到。第三API可以在步骤312接收第一设备110的身份信息,读取认证数据70,并且在步骤313认证第一设备110。
[0061] 在步骤314,网页入口可以在已经认证的第一设备110上向用户示出其在浏览器210中的个人区域。
[0062] 计算机网络100内图示的操作集合使得用户能够在第一设备110处被安全地认证而不必手动地提供证书。计算机网络100调节与第二设备120相关联的置信标识符60的存在并且产生置信标识符60与第一设备110之间的第二安全关联关系。计算机网络100在来自用户的最小数据的情况下操作,以减小错误识别的风险,并且另外地提供避免未授权方对置信标识符的错误使用的内部措施。
[0063] 图3示出了可以用于实现本公开中描述的技术的计算设备600和移动计算设备650的示例。作为示例,第一设备110、第二设备120和服务器130中的一个或多个可以被实现为计算设备600和/或移动计算设备650。计算设备600意图表示各种形式的数字计算机,诸如笔记本、台式机、工作站、个人数字助理、服务器、刀片服务器、主机和其他适当的计算机。移动计算设备650意图表示各种形式的移动设备,诸如个人数字助理、蜂窝电话、智能电话和其他类似的计算设备。这里所示的部件、其连接和关系、以及其功能仅表示示例,而非意味着限制。
[0064] 计算设备600包括处理器602、存储器604、存储设备606、连接至存储器604和多个高速扩展端口610的高速接口608、以及连接至低速扩展端口614和存储设备606的低速接口612。处理器602、存储器604、存储设备606、高速接口608、高速扩展端口610和低速接口612中的每个使用各种总线互连,并且可以安装在公共的模板上或者用其他合适的方式安装。
处理器602可以处理用于在计算设备600内执行的指令,包括存储在存储器604中或者存储设备606上以在外部输入/输出设备(诸如,耦合至高速接口608的显示器616)上显示GUI的图形信息的指令。在其他实现中,可以适当地使用多个处理器和/或多个总线连同多个存储器和多个类型的存储器。另外,多个计算设备可以连接,其中每个设备提供部分必要操作(例如,作为服务器组、一组刀片服务器或多处理器系统)。
[0065] 存储器604存储计算设备600内的信息。在一些实现中,存储器604是易失性存储器单元。在一些实现中,存储器604是非易失性存储器单元。存储器604也可以是另一形式的计算机可读介质,诸如磁盘或光盘。
[0066] 存储设备606能够向计算设备600提供海量存储。在一些实现中,存储设备606可以是或者包含计算机可读介质,诸如软盘设备、硬盘设备、光盘设备或带设备、闪存存储器或者其他类似的固态存储器设备、或者设备的阵列,包括存储区域网中或者其他配置中的设备。指令可以存储在信息载体中。指令在由一个或多个处理设备(例如,处理器602)执行时执行一个或多个方法,诸如以上描述的方法。指令也可以由一个或多个存储设备来存储,诸如计算机或机器可读介质(例如,存储器604、存储设备606或处理器602上的存储器)。
[0067] 高速接口608管理计算设备600的带宽密集型操作,而低速接口612管理较低的带宽密集型操作。这样的功能分配仅是示例。在一些实现中,高速接口608耦合至存储器604、显示器616(例如,通过图形处理器或加速器)和高速扩展端口610,高速扩展端口610可以接受各种扩展卡(未示出)。在实现中,低速接口612耦合至存储设备606和低速扩展端口614。可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口614可以例如通过网络适配器耦合至一个或多个输入/输出设备,诸如键盘、指示设备、扫描仪或连网设备(诸如,交换机或路由器)。
[0068] 计算设备600可以用各种不同形式来实现,如附图中所示。例如,其可以实现为标准的服务器620或者在这样的服务器的组中多次实现。另外,其可以在个人计算机中实现,诸如膝上型计算机622。其还可以实现为机架服务器系统624的部分。替选地,来自计算设备600的部件可以与移动设备(未示出)(诸如,移动计算设备650)中的其他部件组合。这样的设备中的每个可以包含计算设备600和移动计算设备650中的一个或多个,并且整个系统可以包括彼此通信的多个计算设备。
[0069] 移动计算设备650包括处理器652、存储器664、输入/输出设备(诸如,显示器654)、通信接口666和收发器668等部件。移动计算设备650还可以设置有存储设备,诸如微驱动或其他设备,以提供附加存储。处理器652、存储器664、显示器654、通信接口666和收发器668中的每个使用各种总线互连,并且其中的若干部件可以安装在公共的母版上或者用其他合适的方式安装。
[0070] 处理器652可以执行移动计算设备650内的指令,包括存储在存储器664上的指令。处理器652可以实现为包括单独的和多个模拟和数字处理器的芯片的芯片集。处理器652可以提供例如移动计算设备650的其他部件的协作,诸如对用户接口、由移动计算设备650运行的应用、和移动计算设备650的无线通信的控制。
[0071] 处理器652可以通过耦合至显示器的控制接口658和显示接口656与用户通信。显示器654例如可以是TFT(薄膜晶体管液晶显示器)显示器或OLED(有机发光二极管)显示器或者其他合适的显示技术。显示接口656可以包括用于驱动显示器654向用户呈现图形和其他信息的适当的电路系统。控制接口658可以从用户接收命令并且变换命令用于向处理器652提交。另外,外部接口662可以提供与处理器652的通信,以实现移动计算设备650与其他设备的附近区域通信。外部接口662在一些实现中可以提供例如有线通信,或者在其他实现中可以提供无线通信,并且也可以使用多个接口。
[0072] 存储器664存储移动计算设备650内的信息。存储器664可以实现为计算机可读介质、易失性存储器单元或非易失性存储器单元中的一个或多个。扩展存储器674也可以被设置并且通过扩展接口672连接至移动计算设备650,扩展接口672可以包括例如SIMM(单线内存模块)卡接口。扩展存储器674可以向移动计算设备650提供额外的存储空间,或者还可以存储移动计算设备650的应用或其他信息。具体地,扩展存储器674可以包括执行或实现以上描述的处理的指令,并且还可以包括安全信息。因此,例如,扩展存储器674可以被提供作为移动计算设备650的安全模块,并且可以用允许移动设备650的安全使用的指令来被编程。另外,可以经由SIMM卡(连同另外的信息,诸如SIMM卡上的放置识别信息)来以非可篡改方式提供安全应用。
[0073] 存储器可以包括例如闪存存储器和/或NVRAM存储器(非易失性随机存取存储器),如以下讨论的。在一些实现中,指令存储在信息载体上。指令在由一个或多个处理设备(例如处理器652)处理时执行诸如以上描述的一个或多个方法。指令也可以由一个或多个存储设备来存储,诸如一个或多个计算机或机器可读介质(例如存储器664、扩展存储器674或处理器652上的存储器)。在一些实现中,指令可以在传播信号中来接收,例如通过收发器668或外部接口662。
[0074] 移动计算设备650可以通过通信接口666无线地通信,通信接口666可以根据需要包括数字信号处理电路系统。通信接口666可以在各种模式或协议下提供通信,诸如GSM语音呼叫(全球移动通信系统)、SMS(短消息服务)、EMS(先进的消息服务)或MMS消息(多媒体消息服务)、CDMA(码分多址)、TDMA(时分多址)、PDC(个人数字蜂窝)、WCDMA(宽带码分多址)、CDMA2000或GPRS(通用分组无线电业务)等。这样的通信可以例如通过收发器668使用射频来实现。另外,可以实现近距离通信,诸如使用蓝牙、WiFi或其他这样的收发器(未示出)。另外,GPS(全球定位系统)接收器模块670可以提供向移动计算设备650另外的与导航和位置相关的无线数据,其可以通过在移动计算设备650上运行的应用被适当地使用。
[0075] 移动计算设备650还可以使用音频编解码器660在听觉上通信,音频编解码器660可以从用户接收所讲信息并且将其变换成合适的数字信息。音频编解码器660同样可以向用户生成听觉声音,诸如通过扬声器,例如在移动计算设备650的耳机中。这样的声音可以包括来自语音电话呼叫的声音,可以包括所记录的声音(例如语音消息、音乐文件等),并且还可以包括由在移动计算设备650上运行的应用生成的声音。
[0076] 移动计算设备650可以用各种不同形式来实现,如附图中所示。例如,其可以实现为蜂窝电话680。其还可以实现为智能电话682、个人数字助理或其他类似移动设备的部分。
[0077] 这里描述的系统和技术的各种实现可以在数字电子电路系统、集成电路系统、特别地设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合中来实现。这些各种实现可以包括在包括至少一个可编程处理器(其可以是专用的或者通用的)的可编程系统上可执行和/或可解释的一个或多个计算机程序中的实现,至少一个可编程处理器被耦合以从存储系统、至少一个输入设备和至少一个输出设备接收数据和指令并且向存储系统、至少一个输入设备和至少一个输出设备传输数据和指令。
[0078] 这些计算机程序(也称为程序、软件、软件应用或代码)包括可编程处理器的机器指令,并且可以用高层程序和/或面向对象的编程语言和/或用汇编/机器语言来实现。如本文中所使用的,术语机器可读介质和计算机可读介质指代用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、装置和/或设备(例如磁盘、光盘、存储器、可编程逻辑器件(PLD)),包括接收机器指令作为机器可读信号的机器可读介质。术语机器可读信号指代用于向可编程处理器提供机器指令和/或数据的任何信号。
[0079] 为了提供与用户的交互,这里描述的系统和技术可以在具有用于向用户显示信息的显示设备(例如CRT(阴极射线管)或LCD(液晶显示器)显示器)以及用户可以通过其来向计算机提供输入的键盘和指示设备(例如鼠标或跟踪球)的计算机上实现。也可以使用其他种类的设备来提供与用户的交互;例如向用户提供的反馈可以是任何形式的传感器反馈(例如视觉反馈、听觉反馈或触觉反馈);并且来自用户的输入可以用任何形式来接收,包括听觉、语言或触觉输入。
[0080] 这里所描述的系统和技术可以在包括后端部件(例如数据服务器)或者包括中间件部件(例如应用服务器)或者包括前端部件(例如具有图形用户界面或网络浏览器的客户端计算机,用户通过图形用户界面或网络浏览器能够与这里所描述的系统和技术的实现交互)或者包括这样的后端、中间件或前端部件的任意组合的计算系统中实现。系统的部件可以通过任何形式或介质的数字数据通信(例如通信网络)被互连。通信网络的示例包括局域网(LAN)、广域网(WAN)、和因特网。
[0081] 计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离并且通常通过通信网络交互。客户端和服务器的关系凭借在相应计算机上运行并且彼此具有客户端服务器关系的计算机程序来体现。
[0082] 虽然以上已经详细描述了几个实现,然而其他修改是可能的。例如,虽然将客户端应用描述为访问授权,但是在其他实现中,授权可以由通过一个或多个处理器实现的其他应用(诸如在一个或多个服务器上执行的应用)来采用。另外,附图中描绘的逻辑流不需要所示的特定顺序、或者依次顺序来实现期望的结果。另外,可以向所描述的流程提供其他动作,或者可以从所描述的流程删除动作,并且可以向所描述的系统添加其他部件,或者从所描述的系统去除其他部件。