CN109792433A - 用于将设备应用绑定到网络服务的方法和装置 - Google Patents

用于将设备应用绑定到网络服务的方法和装置 Download PDF

Info

Publication number
CN109792433A
CN109792433A CN201680089506.1A CN201680089506A CN109792433A CN 109792433 A CN109792433 A CN 109792433A CN 201680089506 A CN201680089506 A CN 201680089506A CN 109792433 A CN109792433 A CN 109792433A
Authority
CN
China
Prior art keywords
fingerprint
equipment application
server
webrtc
certificate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201680089506.1A
Other languages
English (en)
Other versions
CN109792433B (zh
Inventor
斯蒂芬·哈坎森
马格纳斯·威斯特兰德
葛兰·埃里克森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Publication of CN109792433A publication Critical patent/CN109792433A/zh
Application granted granted Critical
Publication of CN109792433B publication Critical patent/CN109792433B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1059End-user terminal functionalities specially adapted for real-time communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1073Registration or de-registration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/53Network services using third party service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/162Implementing security features at a particular protocol layer at the data link layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Power Engineering (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

根据本发明实施例的又一方面,提供了一种被配置为将设备应用绑定到web服务的服务器1020。服务器包含WebRTC功能。服务器被配置为从设备应用接收对web服务的请求,其中服务器和设备应用之间的通信通过https和WebRTC完成,并且设备应用被配置为生成包括私钥、私钥的证书和证书的指纹在内的WebRTC凭证。服务器被配置为:接收证书的指纹和指纹生成算法;存储指纹和指纹生成算法并将指纹与设备应用相关联;以及,使用提供设备应用证书的DTLS并结合所存储的指纹,来识别设备应用以将设备应用绑定到Web服务。

Description

用于将设备应用绑定到网络服务的方法和装置
技术领域
实施例涉及用于将设备应用绑定到服务的方法、设备应用和服务器。
背景技术
实施例的目的在于使服务提供商能够识别通过网络(web)浏览器(也称为浏览器)访问服务的特定设备/用户。从服务提供商的角度来看,这是一个常见的需求,其原因有很多。例如:
·识别返回的用户以提高用户便利性(记住例如尚未结账的购物车,或提供诸如“你最近看过这些物品”之类的信息);
·避免强制返回的用户再次登录。
还有其他原因,诸如DRM(数字版权管理),在DRM中播放内容的许可被绑定到特定设备。例如,一些流媒体提供商会跟踪用于访问服务的设备,并且只允许不超过一定数量的设备。
服务提供商使用不同的技术来跟踪终端用户及其使用的设备。最常见的是使用http cookie,但例如也可以使用web存储。
为了避免在返回浏览器的功能时再次登录,通常存储用户名和密码。
通常需要电子邮件地址作为用户提供的凭证的一部分,并且在向服务提供商进行注册和帐户创建时发送“回复此邮件以确认”类型的邮件以进行验证。
Cookie(也称为HTTP Cookie、Web Cookie、互联网Cookie、浏览器Cookie)是在用户浏览时从网站发送并存储在用户的Web浏览器中的一小段数据。Cookie被设计为使网站记住状态信息(例如在线上商店中的购物车中添加的项目)或记录用户的浏览活动(包括点击特定按钮、登录、或记录之前访问过的页面)的可靠机制。它们还可用于记住用户先前在表单字段(如姓名、地址、密码和信用卡号)中输入的任意信息。
其他类型的cookie在现代web中执行重要功能。也许最重要的是,身份验证cookie是Web服务器用于了解用户是否已登录以及用户登录的帐户是哪个的最常用方法。如果没有这样的机制,网站将不知道是否要发送包含敏感信息的页面,或者要求用户通过登录进行身份验证。身份验证cookie的安全性通常取决于发布网站和用户的Web浏览器的安全性、以及cookie数据是否加密。安全漏洞可能允许黑客读取cookie的数据,以用于访问用户数据,或者用于(使用用户的凭证)访问cookie所属的网站(例如,参见跨站点脚本和交叉网站请求伪造)。
跟踪cookie(尤其是第三方跟踪cookie)通常用作编制个人浏览历史的长期记录的方式-这是一个潜在的隐私问题,促使欧洲和美国的立法者在2011年采取行动。欧洲法律要求所有针对欧盟成员国的网站在将非必要的cookie存储在其设备上之前,必须获得用户的“知情同意”。
Web存储是用于处理Web浏览器中的数据存储的Web应用API。Web存储(WebStorage)支持持久数据存储,类似于cookie,但具有更大的容量,并且HTTP请求报头中不存储任何信息。有两种主要的Web存储类型:本地存储和会话存储,其行为分别与持久性cookie和会话cookie类似。
管理规定要求网站让用户明确接受使用cookie,这是一个障碍。此外,访问每个cookie的确切内容非常简单,这为终端用户欺骗源开辟了道路。cookie也容易受到跨站点请求伪造(CSRF)的攻击。
从用户体验的角度来看,该管理规定要求网站让用户明确接受使用cookie是有问题的。
此外,访问每个cookie的确切内容非常简单,这为终端用户(通过修改cookie)欺骗服务提供商开辟了道路。
cookie也容易受到跨站点请求伪造(CSRF)的攻击。
Web存储容易受到跨站点脚本(XSS)攻击,并且通常被认为比cookie安全得多(但不会遇到必须让用户接受使用cookie的使用性问题)。这就是为什么cookie是当今使用的主要解决方案的一个原因。
许多用户不愿意勾选“在此设备上记住我”框。
必须打开邮箱并回复确认是一件麻烦事。
发明内容
本发明的实施例的目的在于实现用于到web服务的验证和重新连接的改进方案。
根据本发明的第一方面,提供了一种用于将设备应用绑定到web服务的方法。服务器提供有WebRTC功能。在该方法中,从设备应用接收对web服务的请求,其中服务器和设备应用之间的通信是通过https和WebRTC完成的,并且设备应用已生成了包括私钥、私钥的证书和证书的指纹在内的WebRTC凭证。该方法还包括:接收证书的指纹和指纹生成算法,存储指纹和指纹生成算法,将指纹与设备应用相关联,并且使用提供设备应用证书的DTLS并结合所存储的指纹,来识别设备应用以将设备应用绑定到Web服务。
根据本发明实施例的另一方面,提供了一种用于设备应用将设备应用绑定到web服务的方法。该方法包括:向主服务器请求Web服务;接收指示以下操作的逻辑:与具有Web实时控制“WebRTC”的主服务器开始web服务会话,并生成包括私钥、私钥的证书和证书的指纹在内的WebRTC凭证;生成WebRTC凭证;以及存储私钥和证书。该方法还包括以下步骤:向主服务器发送指纹,以及使用所生成的WebRTC凭证与主服务器建立连接。
根据另一方面,提供了一种用于辅服务器将Web服务传送给设备应用的方法。设备应用由主服务器验证,其中主服务器和辅服务器配备有有WebRTC功能。在该方法中,接收生成WebRTC凭证的请求。该WebRTC凭证包括私钥、私钥的证书和证书的指纹。在该方法中,生成WebRTC凭证,经由主服务器与设备应用交换指纹,从主服务器获得帮助以识别设备应用,以及建立设备应用和辅服务器之间的连接。
根据另一方面,提供了一种被配置为将设备应用绑定到web服务的服务器。服务器配备有WebRTC功能,并且服务器被配置为从设备应用接收对web服务的请求,其中服务器和设备应用之间的通信通过https和WebRTC完成,并且设备应用被配置为生成包括私钥、私钥的证书和证书的指纹在内的WebRTC凭证。服务器还被配置为接收证书的指纹和指纹生成算法,存储指纹和指纹生成算法,将指纹与设备应用相关联,并且使用提供设备应用证书的DTLS并结合所存储的指纹,来识别设备应用以将设备应用绑定到Web服务。
根据另一方面,提供了一种将设备应用绑定到web服务的设备应用。设备应用被配置为:向主服务器请求Web服务;接收指示以下操作的逻辑:与具有WebRTC的主服务器开始web服务会话,并生成包括私钥、私钥的证书和证书的指纹在内的WebRTC凭证。设备还被配置为:生成WebRTC凭证;存储私钥和证书;向主服务器发送指纹;以及使用所生成的WebRTC凭证与主服务器建立连接。
根据另一方面,提供了一种被配置为向设备应用传送web服务的辅服务器。设备应用由主服务器验证,其中主服务器和辅服务器配备有有WebRTC功能,辅服务器被配置为:接收生成WebRTC凭证的请求,所述WebRTC凭证包括私钥、私钥的证书和证书的指纹。辅服务器被配置为:生成WebRTC凭证;经由主服务器与设备应用交换指纹;从主服务器获得帮助以识别设备应用;以及建立设备应用和辅服务器之间的连接。
实施例的优点在于:
-对于终端用户的干扰性较小,因为不需要用户批准使用cookie。
-对于服务提供商而言,在识别浏览器/终端用户设备方面具有更高的安全性。
因此,根据实施例,实现了一种用于内容传送的系统,其具有以下特征:
-其建立在web技术上,其中客户端基于web浏览器。
-其完全由网站源控制。与cookie相比,其没有修改(伪造)的可能性。
-其具有加密的客户端绑定标识和可能的诸如CDN服务器之类的其它实体的绑定标识,不需要终端用户接受cookie。
-其是加密通信(通过使用TLS或DTSL)。
-系统通过使用WebRTC进行通信而避免了跨源问题(即,浏览器可能会对接受来自另一源的内容产生犹豫)。
-对于服务提供商而言,存在下述可能性:使用第三方CDN提供商来以安全方式传送内容,而不需要给出任何对加密数据(诸如私人加密密钥)的访问权。
附图说明
图1-图3是根据本发明实施例的方法的序列图。
图4-图9是示出了根据本发明实施例的方法的流程图。
图10-图11示意性地示出了根据本发明实施例的设备应用、主服务器和辅服务器。
具体实施方式
本发明的实施例涉及用于将设备和/或用户绑定到web服务的方法和装置。这是通过以创造性方式使用WebRTC(Web实时通信)凭证和WebRTC通信来实现的。
WebRTC包括:API(应用编程接口),其提供用于数据块以及实时音频和视频的安全通信的手段(数据块基本上可以承载任何内容,包括网页内容和视频)。WebRTC的现有用途是浏览器之间的对等通信。
WebRTC堆栈依赖于DTLS(数据报传输层安全性)来保护通信。对等体(端点、浏览器)使用本地生成的密钥对(私钥+证书/公钥),并且证书/公钥的指纹可用于带外传输,作为确保建立DTLS通信的另一个端点确实是预期端点的手段。在本说明书中,证书是具有元数据的公钥,并且指纹是针对证书运行诸如散列算法(例如SHA-256)之类的算法的结果。
一旦通过私钥和公钥对建立并验证了具有DTLS的WebRTC通信,WebRTC就可以提供浏览器之间的数据通信以及实时音频和视频通信。
在浏览器API方面,WebRTC提供API以(与本发明的实施例相关):
-生成新的私钥+证书组合以与DTLS一起使用。表示证书的Javas cript对象还包含到期字段以及有关指纹生成算法和证书指纹的信息。
-控制(生成的私钥+证书组合)中的哪个私钥+证书组合正在用于通信。
-用于输入和输出证书指纹的API。作为DTLS连接建立的一部分,本地指纹从浏览器输出到应用,同样地,远程指纹必须被提供给浏览器。只有两个指纹匹配时才允许通信。如果它们不匹配,则浏览器将停止在WebRTC信道上发送和接收数据。
还可以注意到,本发明的实施例不限于在浏览器中执行的客户端中的使用。它也可在例如实现WebRTC的本机应用或客户端中使用。此外,在某种程度上,本说明书是在假设WebRTC 1.0的API的情况下撰写的,但不限于此。所有构思都可以转移到WebRTC的将来版本或者旨在以类似方式公开类似功能的API。
本发明的实施例涉及用于将设备应用绑定到web服务的服务器、设备应用及其方法,其中服务器配备有Web实时控制“WebRTC”功能。设备应用是客户端中的应用,并且其示例是网络浏览器(也称为浏览器)或本机应用。设备应用可以预先安装在客户端中,也可以由用户下载到客户端。
根据本发明的实施例,当连接到主服务器200提供的Web服务时,以下步骤由设备应用100(例如,Web浏览器或本机应用)执行,如图1所示:
1a.如果实施例是在浏览器中实现的:设备应用(即浏览器)接收指示与具有WebRTC的主服务器开始初始会话并生成WebRTC凭证的逻辑。WebRTC凭证包括私钥、证书(其基本上是具有至少包括到期日期的一些元数据的公钥)和证书的指纹。密钥生成算法和指纹生成算法也可以被认为包含在WebRTC凭证中。
如果实施例是在本机应用中实现的:下载并安装本机应用(nativeapplication),其中安装可以包括使用如上所述的WebRTC的配置指令。
2a.识别服务器的用户或设备。(可选步骤)
3a.生成WebRTC凭证,即私钥加公钥(证书)和指纹。存储凭证。
4a.向主服务器发送指纹以及用于生成指纹的指纹生成算法的信息。主服务器存储指纹和指纹生成算法以供将来验证。还可以向主服务器发送与指纹相关联的附加数据并由主服务器存储。这种数据的示例是可以从浏览器API访问的证书期满日期。该步骤还可以与下一步骤同时进行。
5a.使用生成的密钥与主服务器建立WebRTC连接,其中建立包括DTLS握手。服务器(使用步骤4中接收的算法)计算设备应用在DTLS握手中使用的设备应用证书的指纹,并将其与步骤4a中接收的指纹进行比较。如果指纹匹配,则识别出设备应用。这可以防止在浏览器API之上的泄密冒充泄密设备,该冒充是在逻辑只报告了设备WebRTC凭证的指纹的情形下会出现的情况。
每当开始新会话时,如图3所示,建立设备应用和服务器之间的WebRTC通信,并且服务器通过计算32DTLS握手中使用的指纹并将其与上述步骤4a中的设备应用发送的指纹进行比较33,来验证在DTLS握手31中设备应用使用的证书是否正确。
当内容是从第三方服务器(也称为辅服务器)传送的时,如图2所示,设备应用(例如,浏览器)执行以下附加步骤示。主服务器向设备应用提供关于用以从辅服务器获取资源以及哪些WebRTC凭证(指纹)要附加到针对辅服务器的获取请求的信息,或者设备应用可以自己知晓这些信息。该信息包括指纹、辅服务器地址和在使用辅服务器(例如回退服务器)的过程中引导设备的元数据、定时、位置等。
设备应用将适当的WebRTC凭证附加到针对辅服务器的请求(例如,HTTP报头),或通过使用安全凭证建立WebRTC对等连接,来交换用于在验证后对请求进行授权的安全令牌或必要信息。
因此,设备应用执行以下步骤以被辅服务器验证。
6a.接收生成新WebRTC凭证的请求。
7a.生成新WebRTC凭证,即私钥/公钥(证书)和证书的指纹。
8a,8b,9b,10a,10b.向主服务器发送新证书的新WebRTC凭证的指纹(以及指纹生成算法和可能的其他元数据)。主服务器如果不担心上述浏览器API的泄密,则可以存储该新指纹以针对该设备应用与辅服务器一起使用。如果主服务器想要防止API之上的泄密,则主服务器需要验证指纹所涉及的新WebRTC凭证是否来自与第一个WebRTC凭证相同的设备应用。可以通过多种方式完成该验证,例如通过使用可信凭证(例如第一个WebRTC凭证)对新凭证签名来加密证明该关系,或使用可信身份提供商来对这些凭证签名,使用HTTP报头来拥有客户端设备的可信部分(例如,浏览器中的HTTP层),将指纹包括在针对主服务器的请求中,或者依赖于使得设备应用首次与主服务器建立WebRTC的指示以及诸如地址之类的配置信息。当建立此绑定并存储新凭证的指纹时,主服务器将指纹数据(指纹和指纹生成算法)从设备应用转发到辅服务器,并将指纹数据从辅服务器转发到设备应用。
11,12.访问辅服务器,辅服务器在主服务器的帮助下验证设备应用。
根据本发明的实施例,主服务器执行以下步骤:
1b.WebRTC功能被添加到主服务器。
2b.识别用户或设备。这是一个可选步骤。
3b.从设备应用接收指纹数据。
4b.存储指纹并将接收到的指纹与设备应用相关联。
5b.与设备应用建立WebRTC连接。
每当建立新会话时(图3):32.计算在DTLS握手31中使用的客户端证书的指纹。33.将计算的指纹与存储的指纹进行比较(即验证是否使用了正确的证书)。
当从第三方服务器(表示为辅服务器)传送内容时,在主服务器处执行附加步骤。主服务器向设备应用提供关于用以从辅服务器获取资源以及哪些WebRTC凭证(指纹)要附加到针对辅服务器的获取请求的信息。该信息包括指纹、辅服务器地址和在使用辅服务器(例如回退服务器)的过程中引导设备的元数据、定时、位置等。
主服务器执行以下步骤以能够访问辅服务器。
6b.请求设备和辅服务器生成新WebRTC凭证,即,私钥和公钥/证书以及证书指纹。在设备和辅服务器处生成新的WebRTC凭证(7a,7b)。
8b.接收新生成的WebRTC凭证的指纹(和指纹生成算法)。
9b.新WebRTC凭证分别与设备和辅服务器相关联,并且设备应用生成的新WebRTC指纹和指纹生成算法由主服务器转发到辅服务器,辅服务器生成的指纹数据由主服务器转发到设备应用。如上所述,主服务器可能需要验证指纹所涉及的新WebRTC凭证来自与第一个WebRTC凭证相同的设备应用。
10b.帮助第三方服务器,以使第三方服务器识别设备。
11b.设置设备和辅服务器之间的WebRTC连接。
根据实施例,服务将通过诸如web浏览器之类的设备应用被传送给终端用户。Web浏览器和提供服务的服务器之间的通信是通过使用TLS(传输层安全性)的http实现的(例如,使用TLS的https(超文本传输协议安全))。
在初次使用该服务时,用户可以某种方式标识她/他自己。可以通过使用有效信用卡进行支付、或者通过创建登录(例如用户名/密码)来执行该标识,可以添加电子邮件确认步骤。此外,在初次使用时,用户的应用(例如,在智能手机或平板电脑上的Web浏览器中运行的Web应用)使用WebRTC API来:a)生成新WebRTC凭证,即包括证书指纹的私钥+证书/公钥组合,以及b)使用这些凭证与服务器建立WebRTC通信。在服务器侧,存储证书的指纹,该指纹由用户的web应用通过https提供给服务器。同时,WebRTC凭证被自动存储在浏览器中关联的安全持久存储器中。指纹将用于识别浏览器。应当注意,当浏览器被验证时,设备也被验证,这是因为另一个浏览器实例将具有其他凭证,无论是在同一设备上还是在另一设备上。
每当再次使用浏览器访问服务时,如果证书仍然有效,则建立使用存储的密钥组合的WebRTC连接;其中具有附加验证,其验证客户端在建立连接时使用的证书的指纹与存储在服务器上的指纹是否匹配。
为了实现上述实施例,需要将以下新组件添加到默认的基于https的服务,其中假设终端用户使用支持WebRTC的浏览器来访问由主服务器提供的服务:
必须将WebRTC功能添加到涉及的服务器。
例如以html和javascript的形式转移到设备应用的应用逻辑必须改变为指示设备应用在第一个会话中使用WebRTC生成WebRTC凭证,并为每个会话(包括第一个会话)建立使用私钥+证书组合的WebRTC连接。设备应用逻辑还必须在第一个会话时向服务器发送指纹和指纹生成算法。
主服务器还必须添加执行以下操作的逻辑:将针对在DTLS握手中终端用户设备使用的证书计算的指纹与存储的指纹进行比较(针对每个会话进行此比较),以确保它是正确的设备。主服务器可以存储指纹列表,例如,以允许用户使用多个设备。
通过这种方式,可以安全地识别设备+浏览器,而无需使用cookie或强制用户提供凭证。由于其是加密绑定的,因此该识别例如比cookie更加安全。还要注意,建立的WebRTC连接可以用于使用WebRTC数据信道将内容传送到服务器和从服务器传送内容,但是也可以使用WebRTC的实时音频+视频以用于例如报道现场体育赛事,甚至是观众参与的电视节目中的反向通信-所有这些都属于相同的安全建立的DTLS连接。
下面描述实施例适用的一些用例。
跟踪不需要登录的服务的返回设备/用户:
该用例适用于许多服务,例如允许用户在没有任何登录的情况下浏览商品并将商品放入购物车的网店。它也适用于能够基于用户之前的行为而调整显示内容的其他网站。如今,这些服务使用cookie来跟踪返回的用户,因此(至少在欧洲)必须显示警告“本网站使用cookie,点击接受”。通过使用本发明的实施例(其中通过使用WebRTC生成凭证),可以避免这种情况。
非常安全,并且对于用户来说,顺利处理服务使用权:
考虑要求用户登录并限制终端用户可用于消费服务的设备的数量的服务提供商(例如,提供流服务的服务提供商)。利用这里描述的实施例,这将比现有技术更安全,并且对终端用户的干扰更小:
·在第一次使用时,用户需要创建帐户并证明他/她控制该标识符,通常这是根据现有技术通过回复电子邮件来执行的。
·每次用户返回并重新连接到Web服务时,操作都会正常工作-无需再次登录并提供用户名和密码,无需让浏览器记住用户名和密码,并且用户无需接受cookie(或服务提供商无需输入信息“本网站使用cookie,单击‘确定’表示您接受”)。
通过使用本发明的实施例,对于终端用户而言重新连接将更平滑且更少干扰,并且已经具有很大的价值,因为众所周知,如果用户必须创建帐户、创造用户名和密码等,许多用户就会离开。然而,本发明还为服务提供商提供了一种更安全的方式,以当用户返回时确保用于访问服务的设备确实是被许可的设备。
安全地使用第三方(诸如CDN(内容分发网络))而无需共享任何密钥
实施例还使得服务提供商能够使用备选的传送服务器(称为辅服务器)(可能是第三方),而不需要共享任何密钥材料(其可能泄漏),且没有跨源麻烦,并且仍然使浏览器向终端用户呈现“绿色挂锁(green padlock)”。
所提出的解决方案建立在下述基础上:利用WebRTC堆栈和浏览器API,以便能够更安全地识别终端用户使用的设备/客户端,并且在终端用户可以安全地与特定传送相关联的情况下还可能更安全地识别该用户本身。
简而言之,这归结为使用API来控制使用哪些密钥/证书来建立安全的WebRTC通信,并通过评估指纹来验证确实使用了正确的证书,然后使用所述通信将内容传输到用于呈现的设备。还可以使用WebRTC身份API来建立用户的身份。
因此,实施例使得能够在访问第三方的服务器(也称为辅服务器)和第三方提供的相关服务时使用WebRTC凭证来认证用户/设备。请注意,第三方CDN是第三方服务的一个示例。
以上描述了第三方服务器的处理的示例。
上述实施例可以应用于HTTP跨源请求。
在一个实施例中,用户将HTML应用下载到浏览器。用户初始化应用,使其执行到主服务器上的服务提供商的初始登录。在此过程中,主服务器请求浏览器为浏览器(或用户)创建一个或多个WebRTC凭证。HTML应用接收指纹并将它们发送到主服务器,在主服务器处指纹与浏览器(或用户)相关联。
主服务器向HTML应用提供关于用以从辅服务器(即,第三方服务器)获取资源以及哪些WebRTC凭证(指纹)要附加到针对辅服务器的获取请求的信息。该信息包括指纹、辅服务器地址和在使用辅服务器(例如回退服务器)的过程中引导设备的元数据、定时、位置等。
浏览器将适当的WebRTC凭证附加到针对辅服务器的请求(例如,HTTP报头),或通过使用安全凭证建立WebRTC对等连接,来交换用于在验证后对请求进行授权的安全令牌或必要信息。
辅服务器通过连接到主服务器或主服务器所指向的服务器、并使用先前从主服务提供商接收的信息来验证浏览器(的身份和权限)。
还可以注意到,如果辅服务器使用除主服务器之外的其他源来访问资源,则使用WebRTC与辅(第三方)服务器进行通信可避免与跨源相关的信令(飞行前消息)和许可,所述信令和许可本是正常http请求的一部分。因此,使用WebRTC与服务器通信可以避免跨源问题。跨源是指资源从与第一资源本身所服务的域不同的域请求资源的情况。许多网页加载来自不同域的图像、脚本等资源。由于安全原因,这些跨源请求中的一些受到限制。
实施例的先决条件是设备应用和主服务器已经建立了信任,并且如上所述使用WebRTC API被加密地绑定。然后,该服务可以唯一地识别每个会话的设备应用,并确保仅传送设备应用(用户)有权使用的内容。
如上所述,主服务器可能更喜欢使用第三方服务器(也称为辅服务器,例如CDN)来传送内容的一部分。这可以如上所述以安全的方式完成。
因此,设备应用(例如浏览器)和主服务器之间以及设备应用(例如浏览器)和辅服务器之间的通信由WebRTC执行。此外,主服务器是设备和辅服务器之间的WebRTC连接的协调器,这意味着包括证书指纹和证书指纹生成算法在内的WebRTC会话描述经由主服务器来交换。
主服务器要求设备应用(浏览器)以及辅服务器为该特定会话生成密钥+证书对,并要求他们提供证书指纹。备选地,辅服务器要使用的密钥+证书对可以由另一个实体提供。
由于根据一些实施例的解决方案基于在设备应用和辅服务器之间也使用直接WebRTC连接,因此它们都需要生成新WebRTC凭证。凭证包括私钥、证书、以及证书的指纹和指纹生成算法。辅服务器可以以不同的方式实现它,这取决于具体实施。
在设备应用侧,主服务器可以提供Web应用(包含使用WebRTC的指令的html/javascript),并且Web应用使用浏览器中的WebRTC API生成WebRTC凭证。
辅服务器和设备应用通过经由主服务器交换WebRTC会话描述,来使用这些凭证建立WebRTC连接。会话描述包括在设备和辅服务器之间建立WebRTC对等连接所需的配置信息。证书指纹和证书指纹生成算法也包括在会话描述中。
主服务器存储指纹数据。在存储指纹之前,如上所述,主服务器可以验证要与辅服务器一起使用的证书来自与主服务器一起使用的证书相同的设备实例。
在每个后续会话中,通过经由主服务器交换WebRTC会话描述来完成设备应用和辅服务器之间的WebRTC通信。在转发会话描述之前,主服务器检查指纹,并且如果它们与存储的指纹不匹配,则不转发会话描述,因此不建立与辅服务器的通信。
因此,通过已经描述的在主服务器和设备应用之间加密绑定标识来引导(bootstrap),可以在主服务器的控制下在辅服务器和设备应用之间建立同样加密绑定的会话,而无需主服务器以任何方式使辅服务器访问在设备和主服务器之间使用的任何源密钥材料。
因此,主服务器可以对通过辅服务器(例如CDN)传送的所有资源加密,以使辅服务器(例如CDN)无法看见。可以直接从主服务器向设备应用传送设备应用对由辅服务器(例如CDN)传送的资源解密所需的密钥(除了WebRTC凭证之外的其他密钥)。
在此设置中,主服务器和辅服务器之间的通信必须是安全的。如何完成上述操作不在本发明的范围内,但是可以以与如何建立主服务器和设备之间的通信类似的方式来实现。请注意,解密内容所需的密钥通常不会与辅服务器共享。还存在其他选择。
应该注意的是,上面的示例包括单个辅服务器,但将解决方案扩展到多个辅服务器是显而易见的。
WebRTC可以仅用于将浏览器/设备/客户端绑定(即,认证)到辅服务器。随后的内容传送可以通过例如https来实现。WebRTC和https之间的绑定可以例如通过Web应用级别的共享密钥、或使用专用响应报头的http协议来完成。
WebRTC还有允许一方(可能是第三方)提供身份的解决方案。这可以与上述方案结合使用。因此,使用WebRTC功能以允许一方在每次需要验证身份时提供身份。例如,在第一次使用服务时(下面进一步扩展),当证书期满时,或者当用户已清除浏览器中的所有数据时。通过这种方式,可以避免创造新的用户名和密码等步骤,同样地,可以避免“回复电子邮件来激活帐户”等步骤。
即使上述实施例依赖于WebRTC,也没有绝对需要使用WebRTC来传送与使用会话服务相关联的数据。WebRTC可用于在会话开始时建立信任,但后续内容传送可以通过例如https进行。授权客户端进一步发送HTTPS和Websocket数据请求的一种方法是服务器通过对等连接为客户端提供授权这些请求的短期会话令牌。
为了避免电子邮件确认,简化服务注册简化了终端用户注册服务订阅。如前所述,对于需要注册的服务,存在初始阶段,其中用户必须提供包括电子邮件地址的一些数据,并且在用户回复电子邮件之前不会传送服务。
除了之前提到的内容之外,WebRTC还具有与允许身份提供商提供用户的身份断言相关的API和功能。通过在第一会话中使用该API和功能,服务提供商可以通过信任第三方身份提供商或通过建立其自身的身份提供商服务,来避免电子邮件确认。
在上文中描述了本发明的不同实施例。根据在图4-图6的流程图中示出的一个方面,提供了一种用于服务器将设备应用绑定到web服务的方法,并且服务器配备有有WebRTC功能。根据一个实施例,该方法包括:
400.从设备应用接收对web服务的请求,其中服务器和设备应用之间的通信是通过https和WebRTC完成的,并且设备应用已生成了包括私钥、私钥的证书和证书的指纹在内的WebRTC凭证。
402.接收证书的指纹和指纹生成算法。
404.存储指纹和指纹生成算法并将指纹与设备应用相关联。
406.使用提供设备应用的证书的DTLS并结合所存储的指纹,来识别设备应用以将设备应用绑定到Web服务。
根据一个实施例,使用DTLS的步骤406还包括:
408.计算由建立新会话的设备应用生成的证书的指纹,其中,在建立新会话时的DTLS握手中提供证书。
410.将所计算的指纹与所存储的指纹进行比较以识别设备应用。
当从辅服务器传送Web服务的内容时,将还执行以下步骤:
412.请求设备应用和辅服务器生成新WebRTC凭证,该新WebRTC凭证包括私钥、私钥的证书和证书的指纹。
414.接收新生成的指纹及其相应的指纹生成算法,并将新生成的指纹分别关联到设备应用和辅服务器,将由设备应用生成的新生成的指纹及其相应的指纹生成算法转发到辅服务器,并将由辅服务器生成的新生成的指纹及其相应的指纹生成算法转发到设备应用。
416.帮助辅服务器识别针对辅服务器的设备应用。
根据实施例的另一方面,提供了一种用于设备应用将设备应用绑定到web服务的方法,如图7-图8的流程图所示。该方法包括:
500.向主服务器请求Web服务。
502.接收指示以下操作的逻辑:与具有WebRTC的主服务器开始web服务会话,并生成包括私钥、私钥的证书和证书的指纹在内的WebRTC凭证。
504.生成WebRTC凭证。
506.存储私钥和证书。
508.向主服务器发送指纹。
510.使用所生成的WebRTC凭证与主服务器建立连接。
每当与所请求的web服务建立新会话时,该方法还包括以下步骤:
512.在建立新会话时的DTLS握手中向主服务器提供证书,使得主服务器能够计算证书的指纹,并将所计算的指纹与所存储的指纹进行比较以识别设备应用。
当从辅服务器传送web服务的内容时,该方法还包括以下步骤:
514.创建新WebRTC凭证,该新WebRTC凭证包括私钥、私钥的证书和证书的指纹。
516.向主服务器发送新证书的指纹及其指纹生成算法,以及经由主服务器向辅服务器发送新证书的指纹及其指纹生成算法。
518.从主服务器接收由辅服务器生成的新证书的指纹及其指纹生成算法。
520.访问辅服务器,其中辅服务器在主服务器的帮助下识别设备应用。
根据本发明实施例的又一方面,根据图9中的流程图提供了用于辅服务器将web服务传送到设备应用的方法。设备应用由主服务器验证,其中主服务器和辅服务器配备有WebRTC功能。该方法包括:
600.接收生成WebRTC凭证的请求,该WebRTC凭证包括私钥、私钥的证书和证书的指纹。
602.生成WebRTC凭证。
604.经由主服务器与设备应用交换指纹。
606.从主服务器获得帮助以识别设备应用。
608.在设备应用和辅服务器之间建立连接。
根据本发明实施例的又一方面,提供了被配置为将设备应用绑定到web服务的服务器1020,如图10-图11所示。该服务器包括WebRTC功能。服务器被配置为从设备应用接收对web服务的请求,其中服务器和设备应用之间的通信通过https和WebRTC完成,并且设备应用被配置为生成包括私钥、私钥的证书和证书的指纹在内的WebRTC凭证。服务器被配置为接收证书的指纹和指纹生成算法,存储指纹和指纹生成算法,将指纹与设备应用相关联,并且使用提供设备应用证书的DTLS并结合所存储的指纹,来识别设备应用以将设备应用绑定到Web服务。
根据实施例,服务器还被配置为计算由建立新会话的设备应用生成的证书的指纹,其中,在建立新会话时的DTLS握手中提供证书;将所计算的指纹与所存储的指纹进行比较以识别设备应用。
服务器还可以被配置为,当从辅服务器传送web服务的内容时:请求设备应用和辅服务器生成包括私钥、私钥的证书和证书的指纹在内的新WebRTC凭证,接收新生成的指纹及其相应的指纹生成算法,并将新生成的指纹分别与设备应用和辅服务器相关联。服务器还被配置为将由设备应用生成的新生成的指纹及其相应的指纹生成算法转发到辅服务器,将由辅服务器生成的新生成的指纹及其相应的指纹生成算法转发到设备应用,并帮助辅服务器识别针对辅服务器的设备应用。
根据一个实施例,服务器1020包括:接收器1022,用于接收对web服务的请求并用于接收证书的指纹和指纹生成算法;存储器1024,用于存储指纹和指纹生成算法,并将指纹与设备应用相关联;处理器1026,用于使用提供设备应用的证书的DTLS并结合所存储的指纹,来识别设备应用以将设备应用绑定到web服务。
处理器1026还可以被配置为:计算由建立新会话的设备应用生成的证书的指纹,其中,在建立新会话时的DTLS握手中提供证书;将所计算的指纹与所存储的指纹进行比较以识别设备应用。
服务器1020还可以包括:发送器1028,用于请求设备应用和辅服务器生成新WebRTC凭证,该新WebRTC凭证包括私钥、私钥的证书和证书的指纹,并且其中,接收器1022还被配置为接收新生成的指纹及其相应的指纹生成算法,并将新生成的指纹分别与设备应用和辅服务器1030相关联。发送器1028还被配置为将由设备应用生成的新生成的指纹及其相应的指纹生成算法转发到辅服务器,将由辅服务器1030生成的新生成的指纹及其相应的指纹生成算法转发到设备应用,并且处理器还被配置为帮助辅服务器1030识别针对辅服务器1030的设备应用。
提供了一种被配置为将设备应用绑定到web服务的设备应用1010。设备应用1010被配置为向主服务器请求web服务,接收指示以下操作的逻辑:与具有WebRTC的主服务器开始web服务会话,并生成包括私钥、私钥的证书和证书的指纹在内的WebRTC凭证;存储私钥和证书;向主服务器发送指纹;以及使用所生成的WebRTC凭证与主服务器建立连接。
设备应用还可以被配置为:每当与所请求的web服务建立新会话时,在建立新会话时的DTLS握手中向主服务器提供证书,使得主服务器能够计算证书的指纹,并将所计算的指纹与所存储的指纹进行比较以识别设备应用。
根据另一实施例的设备应用还被配置为:创建新WebRTC凭证,该新WebRTC凭证包括私钥、私钥的证书和证书的指纹;向主服务器发送新证书的指纹及其指纹生成算法,并经由主服务器向辅服务器发送新证书的指纹及其指纹生成算法;从主服务器接收由辅服务器生成的新证书的指纹及其指纹生成算法;以及访问辅服务器,其中由辅服务器在主服务器的帮助下识别设备应用。
设备应用可以是浏览器或本机应用,并且其中本机应用被配置为在设备应用安装时接收逻辑。
设备应用可以被配置为使用WebRTC身份API并结合身份提供商来建立设备应用的终端用户的身份。
设备应用1010可以包括:请求器1012,用于从主服务器1020请求web服务;接收器1014,用于接收指示与具有WebRT的主服务器开始web服务会话的逻辑;处理器1016,生成包括私钥、私钥的证书、证书的指纹在内的WebRTC凭证的;存储器1018,用于存储私钥和证书;发送器1019,用于向主服务器1020发送指纹;并且处理器1016还被配置为使用生成的WebRTC凭证与主服务器建立连接。
发送器1019还被配置为在建立新会话时的DTLS握手中向主服务器1020提供证书,使得主服务器1020可以计算证书的指纹;并且处理器1016还被配置为将所计算的指纹与所存储的指纹进行比较以识别设备应用1010。
处理器1016可以被配置为创建新WebRTC凭证,该新WebRTC凭证包括私钥、私钥的证书和证书的指纹。发送器1019可以被配置为:向主服务器发送新证书的指纹及其指纹生成算法,并且经由主服务器1020向辅服务器1030发送新证书的指纹及其指纹生成算法;接收器1014可以被配置为从主服务器1020接收由辅服务器1030生成的新证书的指纹及其指纹生成算法;并且处理器1016可以被配置为访问辅服务器1030,其中由辅服务器1030在主服务器1020的帮助下识别设备应用1010。
根据本发明实施例的另一方面,提供了一种辅服务器,例如第三方服务器。
辅服务器1030被配置为将web服务传送到设备应用1010,并且设备应用1010由主服务器验证。主服务器1020和辅服务器1030配备有WebRTC功能。辅服务器被配置为:接收生成WebRTC凭证的请求,该WebRTC凭证包括私钥、私钥的证书和证书的指纹;生成WebRTC凭证;经由主服务器1020与设备应用交换指纹;从主服务器1020获得帮助以识别设备应用1010;以及在设备应用1010和辅服务器1030之间建立连接。
辅服务器1030可以包括:接收器1032,用于接收生成WebRTC凭证的请求,该WebRTC凭证包括私钥、私钥的证书和证书的指纹;处理器1034,用于生成WebRTC凭证;接收器1032和发送器1036被配置为经由主服务器1020与设备应用1010交换指纹;处理器1034还被配置为从主服务器1020获得帮助以识别设备应用1010,并且在设备应用1010和辅服务器1030之间建立连接。
实施例的又一方面涉及一种包括指令的计算机程序,所述指令在由至少一个处理器执行时使所述至少一个处理器执行以下操作:从设备应用接收对web服务的请求,其中服务器和设备应用之间的通信通过https和WebRTC完成,并且设备应用被配置为生成包括私钥、私钥的证书和证书的指纹在内的WebRTC凭证;接收证书的指纹和指纹生成算法;存储指纹和指纹生成算法并将指纹与设备应用相关联;使用提供设备应用证书的DTLS并结合所存储的指纹,来识别设备应用以将设备应用绑定到Web服务。
实施例的另一方面涉及一种包括指令的计算机程序,所述指令在由至少一个处理器执行时使所述至少一个处理器执行以下操作:向主服务器请求web服务;接收指示以下操作的逻辑:与具有WebRTC的主服务器开始web服务会话,并生成包括私钥、私钥的证书和证书的指纹在内的WebRTC凭证;存储私钥和证书;向主服务器发送指纹;以及使用所生成的WebRTC凭证与主服务器建立连接。
实施例的另一方面涉及一种包括指令的计算机程序,所述指令在由至少一个处理器执行时使所述至少一个处理器执行以下操作:接收生成WebRTC凭证的请求,该WebRTC凭证包括私钥、私钥的证书和证书的指纹;生成WebRTC凭证;经由主服务器1020与设备应用交换指纹;从主服务器1020获得帮助以识别设备应用1010;以及在设备应用1010和辅服务器1030之间建立连接。
实施例的另一方面涉及一种包括如上所述的计算机程序的载体。载体是以下之一:电子信号、光信号、电磁信号、磁信号、电信号、无线电信号、微波信号或计算机可读存储介质。

Claims (20)

1.一种用于服务器将设备应用绑定到Web服务的方法,其中所述服务器配备有Web实时控制“WebRTC”功能,所述方法包括:
-从所述设备应用接收(400)对所述web服务的请求,其中所述服务器和所述设备应用之间的通信是通过https和WebRTC完成的,并且所述设备应用已生成了包括私钥、所述私钥的证书和所述证书的指纹在内的WebRTC凭证,
-接收(402)所述证书的指纹和指纹生成算法,
-存储(404)所述指纹和指纹生成算法并将所述指纹与所述设备应用相关联,以及
-使用(406)提供所述设备应用的证书的数据报传输层安全性“DTLS”并结合所存储的指纹,来识别所述设备应用以将所述设备应用绑定到所述Web服务。
2.根据权利要求1所述的方法,其中使用DTLS的步骤(406)还包括:
-计算(408)由建立新会话的设备应用生成的证书的指纹,其中,在建立所述新会话时的DTLS握手中提供所述证书,
-将所计算的指纹与所存储的指纹进行比较(410)以识别所述设备应用。
3.根据权利要求1至2中任一项所述的方法,还包括以下步骤:当从辅服务器传送所述web服务的内容时,
-请求(412)所述设备应用和所述辅服务器生成新WebRTC凭证,所述新WebRTC凭证包括私钥、所述私钥的证书和所述证书的指纹,
-接收(414)新生成的指纹及其相应的指纹生成算法,并将新生成的指纹分别关联到所述设备应用和所述辅服务器,将由所述设备应用生成的所述新生成的指纹及其相应的指纹生成算法转发到所述辅服务器,并将由所述辅服务器生成的所述新生成的指纹及其相应的指纹生成算法转发到所述设备应用;以及
-帮助(416)所述辅服务器以由所述辅服务器识别设备应用。
4.一种用于设备应用将所述设备应用绑定到Web服务的方法,所述方法包括:
-向主服务器请求(500)所述Web服务,
-接收(502)指示以下操作的逻辑:与具有Web实时控制“WebRTC”的主服务器开始web服务会话,并生成包括私钥、所述私钥的证书和所述证书的指纹在内的WebRTC凭证,
-生成(504)所述WebRTC凭证,
-存储(506)所述私钥和所述证书,
-向所述主服务器发送(508)所述指纹,
-使用所生成的WebRTC凭证与所述主服务器建立(510)连接。
5.根据权利要求4所述的方法,还包括以下步骤:每当与所请求的web服务建立新会话时,
-在建立所述新会话时的DTLS握手中向所述主服务器提供(512)所述证书,使得所述主服务器能够计算所述证书的指纹,并将所计算的指纹与所存储的指纹进行比较以识别所述设备应用。
6.根据权利要求5所述的方法,还包括以下步骤:当从辅服务器传送所述web服务的内容时,
-创建(514)新WebRTC凭证,所述新WebRTC凭证包括私钥、所述私钥的证书和所述证书的指纹,
-向所述主服务器发送(516)新证书的指纹及其指纹生成算法,以及经由所述主服务器向所述辅服务器发送新证书的指纹及其指纹生成算法,
-从所述主服务器接收(518)由所述辅服务器生成的新证书的指纹及其指纹生成算法,以及
-访问(520)所述辅服务器,其中由所述辅服务器在所述主服务器的帮助下识别所述设备应用。
7.根据权利要求4-6中任一项所述的方法,其中,所述设备应用是浏览器。
8.根据权利要求4-7中任一项所述的方法,其中,结合身份提供商使用WebRTC身份API,以建立所述设备的终端用户的身份。
9.根据权利要求4-8中任一项所述的方法,其中,所述设备应用是本机应用,并且其中所接收的逻辑在所述设备应用被安装时接收。
10.一种用于辅服务器将Web服务传送给设备应用的方法,所述设备应用由主服务器验证,其中所述主服务器和所述辅服务器配备有Web实时控制“WebRTC”功能,所述方法包括:
-接收(600)生成WebRTC凭证的请求,所述WebRTC凭证包括私钥、所述私钥的证书和所述证书的指纹,
-生成(602)所述WebRTC凭证,
-经由所述主服务器与所述设备应用交换(604)指纹,
-从所述主服务器获得(606)帮助以识别所述设备应用,以及
-建立(608)所述设备应用和所述辅服务器之间的连接。
11.一种被配置为将设备应用绑定到web服务的服务器(1020),其中所述服务器(1020)配备有Web实时控制“WebRTC”功能,所述服务器被配置为:从所述设备应用(1010)接收对所述web服务的请求,其中所述服务器(1020)和所述设备应用(1010)之间的通信是通过https和WebRTC完成的;并且所述设备应用(1010)被配置为:生成包括私钥、所述私钥的证书和所述证书的指纹在内的WebRTC凭证;接收所述证书的指纹和指纹生成算法;存储所述指纹和指纹生成算法并将所述指纹与所述设备应用(1010)相关联;以及使用提供所述设备应用(1010)的证书的数据报传输层安全性“DTLS”并结合所存储的指纹,来识别所述设备应用以将所述设备应用绑定到所述Web服务。
12.根据权利要求11所述的服务器(1020),其中,所述服务器(1020)还被配置为:计算由建立新会话的设备应用(1010)生成的证书的指纹,其中,在建立所述新会话时的DTLS握手中提供所述证书;将所计算的指纹与所存储的指纹进行比较以识别所述设备应用(1010)。
13.根据权利要求11-12中任一项所述的服务器(1020),还被配置为:当从辅服务器(1030)传送所述web服务的内容时,
请求所述设备应用(1010)和所述辅服务器(1030)生成新WebRTC凭证,所述新WebRTC凭证包括私钥、所述私钥的证书和所述证书的指纹,
接收新生成的指纹及其相应的指纹生成算法,并将新生成的指纹分别关联到所述设备应用(1010)和所述辅服务器(1030),将由所述设备应用(1010)生成的所述新生成的指纹及其相应的指纹生成算法转发到所述辅服务器(1030),并将由所述辅服务器(1030)生成的所述新生成的指纹及其相应的指纹生成算法转发到所述设备应用(1010);以及帮助所述辅服务器(1030)以由所述辅服务器(1030)识别设备应用。
14.一种被配置为将设备应用(1010)绑定到web服务的设备应用(1010),所述设备应用(1010)被配置为:
向主服务器(1020)请求所述Web服务;
接收指示以下操作的逻辑:
与具有Web实时控制“WebRTC”的主服务器(1020)开始web服务会话,并生成包括私钥、所述私钥的证书和所述证书的指纹在内的WebRTC凭证;存储所述私钥和所述证书;向所述主服务器发送所述指纹;以及使用所生成的WebRTC凭证与所述主服务器(1020)建立连接。
15.根据权利要求14所述的设备应用(1010),还被配置为:每当与所请求的web服务建立新会话时,在建立所述新会话时的DTLS握手中向所述主服务器提供所述证书,使得所述主服务器能够计算所述证书的指纹,并将所计算的指纹与所存储的指纹进行比较以识别所述设备应用。
16.根据权利要求15所述的设备应用(1010),还被配置为:创建新WebRTC凭证,所述新WebRTC凭证包括私钥、所述私钥的证书和所述证书的指纹;向所述主服务器发送新证书的指纹及其指纹生成算法,以及经由所述主服务器向所述辅服务器发送新证书的指纹及其指纹生成算法;从所述主服务器接收由所述辅服务器生成的新证书的指纹及其指纹生成算法;以及访问所述辅服务器,其中由所述辅服务器在所述主服务器的帮助下识别所述设备应用。
17.根据权利要求14-16中任一项所述的设备应用(1010),其中,所述设备应用是浏览器。
18.根据权利要求4-7中任一项所述的设备应用(1010),其中,所述设备应用被配置为结合身份提供商使用WebRTC身份API来建立所述设备应用的终端用户的身份。
19.根据权利要求14-18中任一项所述的设备应用(1010),其中,所述设备应用是本机应用,并且其中所述本机应用被配置为在安装所述设备应用时接收所述逻辑。
20.一种被配置为将web服务传送到设备应用(1010)的辅服务器(1030),所述设备应用(1010)由主服务器验证,其中所述主服务器(1020)和所述辅服务器(1030)配备有Web实时控制“WebRTC”功能,所述辅服务器被配置为:接收生成WebRTC凭证的请求,所述WebRTC凭证包括私钥、所述私钥的证书和所述证书的指纹;生成所述WebRTC凭证;经由所述主服务器(1020)与所述设备应用交换指纹;从所述主服务器(1020)获得帮助以识别所述设备应用(1010);以及建立所述设备应用(1010)和所述辅服务器(1030)之间的连接。
CN201680089506.1A 2016-09-28 2016-09-28 用于将设备应用绑定到网络服务的方法和装置 Active CN109792433B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/SE2016/050917 WO2018063041A1 (en) 2016-09-28 2016-09-28 Methods and arrangements for binding a device application to a web service

Publications (2)

Publication Number Publication Date
CN109792433A true CN109792433A (zh) 2019-05-21
CN109792433B CN109792433B (zh) 2022-07-12

Family

ID=61759868

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680089506.1A Active CN109792433B (zh) 2016-09-28 2016-09-28 用于将设备应用绑定到网络服务的方法和装置

Country Status (4)

Country Link
US (1) US11374999B2 (zh)
EP (1) EP3520348A4 (zh)
CN (1) CN109792433B (zh)
WO (1) WO2018063041A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022033278A1 (zh) * 2020-08-11 2022-02-17 华为技术有限公司 一种基于ims数据通道的通信方法及设备
CN114401097A (zh) * 2022-01-25 2022-04-26 北京浩瀚深度信息技术股份有限公司 一种基于ssl证书指纹的https业务流量识别的方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10812468B2 (en) * 2017-12-07 2020-10-20 Sonicwall Inc. Dynamic bypass
US11694093B2 (en) * 2018-03-14 2023-07-04 Adobe Inc. Generation of training data to train a classifier to identify distinct physical user devices in a cross-device context
FI128537B (en) * 2018-04-03 2020-07-31 Telia Co Ab Solution for establishing a communication session
US11347879B2 (en) * 2018-09-07 2022-05-31 Truist Bank Determining the relative risk for using an originating IP address as an identifying factor
WO2024035907A1 (en) * 2022-08-11 2024-02-15 Qualcomm Incorporated Method and apparatus for a secure application server
US20240056489A1 (en) * 2022-08-11 2024-02-15 Qualcomm Incorporated Method And Apparatus For A Secure Application Server

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103546442A (zh) * 2012-07-17 2014-01-29 中兴通讯股份有限公司 浏览器的通讯监听方法及装置
CN104067591A (zh) * 2012-01-17 2014-09-24 伊帕莱夫股份公司 用于全球实时远程通信的设备、软件模块、系统或商业方法
CN104065717A (zh) * 2014-06-18 2014-09-24 中国联合网络通信集团有限公司 基于移动终端的浏览器通信方法、系统和sim卡
CN104301107A (zh) * 2013-07-17 2015-01-21 阿瓦亚公司 经由相应WebRTC数据信道验证WebRTC媒体信道私密性的方法、系统
CN104348710A (zh) * 2013-07-31 2015-02-11 阿瓦亚公司 用于获取和关联web实时通信交互流特性的方法和系统
US20150341312A1 (en) * 2014-05-20 2015-11-26 Avaya, Inc. Firewall traversal for web real-time communications
CN105516070A (zh) * 2014-09-30 2016-04-20 华为技术有限公司 一种认证凭证更替的方法及装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9414225B2 (en) * 2013-07-23 2016-08-09 Broadcom Corporation User equipment having web real time communication architecture
US20150082021A1 (en) 2013-09-13 2015-03-19 Qualcomm Incorporated Mobile proxy for webrtc interoperability
US9294337B2 (en) * 2014-03-26 2016-03-22 Sonus Networks, Inc. Methods and systems for integrating independent IMS and WebRTC networks
US10033720B2 (en) * 2014-05-28 2018-07-24 Futurewei Technologies, Inc. Method and system for creating a certificate to authenticate a user identity
KR102309744B1 (ko) * 2014-11-21 2021-10-07 삼성전자 주식회사 세션 기반 웹 서비스를 제공하는 방법 및 장치
US9705864B2 (en) * 2014-12-10 2017-07-11 Futurewei Technologies, Inc. Media session resumption in web session restoration
KR102475020B1 (ko) * 2015-05-05 2022-12-07 아이피얼라이브 아베 실시간 통신의 미디어 경로 설정

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104067591A (zh) * 2012-01-17 2014-09-24 伊帕莱夫股份公司 用于全球实时远程通信的设备、软件模块、系统或商业方法
CN103546442A (zh) * 2012-07-17 2014-01-29 中兴通讯股份有限公司 浏览器的通讯监听方法及装置
CN104301107A (zh) * 2013-07-17 2015-01-21 阿瓦亚公司 经由相应WebRTC数据信道验证WebRTC媒体信道私密性的方法、系统
CN104348710A (zh) * 2013-07-31 2015-02-11 阿瓦亚公司 用于获取和关联web实时通信交互流特性的方法和系统
US20150341312A1 (en) * 2014-05-20 2015-11-26 Avaya, Inc. Firewall traversal for web real-time communications
CN104065717A (zh) * 2014-06-18 2014-09-24 中国联合网络通信集团有限公司 基于移动终端的浏览器通信方法、系统和sim卡
CN105516070A (zh) * 2014-09-30 2016-04-20 华为技术有限公司 一种认证凭证更替的方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022033278A1 (zh) * 2020-08-11 2022-02-17 华为技术有限公司 一种基于ims数据通道的通信方法及设备
CN114401097A (zh) * 2022-01-25 2022-04-26 北京浩瀚深度信息技术股份有限公司 一种基于ssl证书指纹的https业务流量识别的方法
CN114401097B (zh) * 2022-01-25 2023-10-20 北京浩瀚深度信息技术股份有限公司 一种基于ssl证书指纹的https业务流量识别的方法

Also Published As

Publication number Publication date
WO2018063041A1 (en) 2018-04-05
US11374999B2 (en) 2022-06-28
US20200036703A1 (en) 2020-01-30
CN109792433B (zh) 2022-07-12
EP3520348A1 (en) 2019-08-07
EP3520348A4 (en) 2019-10-09

Similar Documents

Publication Publication Date Title
CN109792433A (zh) 用于将设备应用绑定到网络服务的方法和装置
US9961072B2 (en) Delegating authorizations
JP6012125B2 (ja) 問い合わせ型トランザクションによる強化された2chk認証セキュリティ
JP6105721B2 (ja) 企業トリガ式2chk関連付けの起動
US11501294B2 (en) Method and device for providing and obtaining graphic code information, and terminal
US9998448B2 (en) Delegating authorizations
KR101508360B1 (ko) 데이터 전송 장치 및 방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체
US8245030B2 (en) Method for authenticating online transactions using a browser
US10547602B2 (en) Communications methods and apparatus related to web initiated sessions
US9313257B2 (en) Method for starting a client program
CN104883367B (zh) 一种辅助验证登陆的方法、系统和应用客户端
CN107918731A (zh) 用于控制对开放接口进行访问的权限的方法和装置
Beltran et al. User identity for WebRTC services: A matter of trust
KR101879758B1 (ko) 사용자 단말기별 사용자 디지털 인증서 발급 방법 및 그 인증서에 의한 인증 방법
CN102457509A (zh) 云计算资源安全访问方法、装置及系统
CN102404337A (zh) 数据加密方法和装置
US8615787B2 (en) Secure internet transaction method and apparatus
US9553863B2 (en) Computer implemented method and system for an anonymous communication and computer program thereof
US20110307939A1 (en) Account issuance system, account server, service server, and account issuance method
CN112927026A (zh) 优惠券的处理方法、装置、电子设备及计算机存储介质
CN104113511B (zh) 一种接入ims网络的方法、系统及相关装置
KR101962349B1 (ko) 인증서 기반 통합 인증 방법
WO2010070456A2 (en) Method and apparatus for authenticating online transactions using a browser
KR20070076575A (ko) 고객 인증처리 방법
Sabouri A cloud-based model to facilitate mobility of privacy-preserving attribute-based credential users

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant