CN105917342B - 基于地理位置分发许可的方法 - Google Patents
基于地理位置分发许可的方法 Download PDFInfo
- Publication number
- CN105917342B CN105917342B CN201380076948.9A CN201380076948A CN105917342B CN 105917342 B CN105917342 B CN 105917342B CN 201380076948 A CN201380076948 A CN 201380076948A CN 105917342 B CN105917342 B CN 105917342B
- Authority
- CN
- China
- Prior art keywords
- local interface
- user equipment
- equipment
- license
- permit server
- 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.)
- Active
Links
- 238000009826 distribution Methods 0.000 title claims abstract description 9
- 238000000034 method Methods 0.000 title claims description 42
- 230000007246 mechanism Effects 0.000 claims abstract description 12
- 238000004891 communication Methods 0.000 claims description 54
- 230000005540 biological transmission Effects 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 13
- 230000002093 peripheral effect Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 6
- 238000012423 maintenance Methods 0.000 claims description 5
- 230000006399 behavior Effects 0.000 claims description 3
- 238000012790 confirmation Methods 0.000 claims description 3
- 239000003795 chemical substances by application Substances 0.000 description 45
- 238000010586 diagram Methods 0.000 description 11
- 238000006467 substitution reaction Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 4
- 239000003999 initiator Substances 0.000 description 4
- 238000007689 inspection Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 238000013475 authorization Methods 0.000 description 3
- 235000013399 edible fruits Nutrition 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/105—Arrangements for software license management or administration, e.g. for managing licenses at corporate level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/107—Network architectures or network communication protocols for network security for controlling access to devices or network resources wherein the security policies are location-dependent, e.g. entities privileges depend on current location or allowing specific operations only from locally connected terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/021—Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Computing Systems (AREA)
- Information Transfer Between Computers (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Telephonic Communication Services (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
描述了一种许可提供方用来为软件应用分发许可的系统。许可服务器(102)由所述许可提供方操作以分发许可给用户设备(110)。提供了在已知地理位置的至少一个本地接口设备例如NFC平板(104),被配置为与所述许可服务器通信,并且当用户设备(110)位于距所述本地接口设备小于预定最大距离处时,还被配置为与所述用户设备(110)通信。本地接口设备被配置为被所述许可服务器认证通过并且提供了用于用户设备(110)与所述本地接口设备(104)通信以使用所述本地接口设备的认证来从所述许可服务器(102)获得许可的机制。
Description
技术领域
本发明涉及基于地理位置的软件许可分发。
背景技术
许可策略是最终用户用以获得软件的访问权所经常使用的机制。这样的策略各不相同。常见的许可类型包括“节点锁定”、“浮动”“站点”和“计量”。在节点锁定模式中,只允许特定的设备使用该软件。在浮动模式中,可以在任何时候使用附有许可的固定数量的软件副本。在站点模式中,授权软件的使用被限制在某个区域内(例如,企业域内)。在计量模式中,许可被建模为即用即付(例如,按小时收费)模型。每个许可包括许可策略,其定义了使用策略、执行策略、以及该许可的有关信息。许可服务器通常维护空闲许可的数目以及当前分配了该许可的设备/人员的记录。
在基本的许可共享模型中,每个许可可以被认为是具有1到n个属性的资源。属性定义了许可的基本信息,例如许可的类型、有效期、副本编号等。属性的数目可以在应用和许可服务器的执行模型方面有所不同。
将固定的许可提供给用户是很常见的。这些许可通常有效地将应用捆绑到安装其的机器。这样的许可则仅能用于单个设备。
作为示例,在企业网络中操作的机器经常使用该企业网络内部的许可/更新服务器。另一个示例是图书馆和大学校园;它们与由所有学生使用的机器具有共同区域。为了使用可用的软件(例如,文字处理软件、电子表格、图形软件等),学生登录到这些机器中的一个。然而,在这两种场景中,由用户生成的任何文档或数据被存储在本地机器上,并且如果用户想要保存它们以供日后使用,他或她需要找到一些方法以将数据传输到他/她自己的设备上。
这些限制创建了僵化的许可制度,使得给最终用户带来了不必要的复杂性。移动设备的能力已经在最近几年中显著地增加。一些最新的手机具有多核处理器并且非常高端,带有更多的RAM、更多的存储空间、更快的GPU和CPU。这样的硬件特性使它们能够运行桌面级别的操作系统和软件。因此,需要提供灵活的许可制度,其将使得用户能够在这样的许可的所有者的控制之下,使用他们自已的设备来访问软件和文档。
发明内容
根据本发明的一个方面提供了一种许可提供方使用来为软件应用分发许可的系统。所述系统包括许可服务器,所述许可服务器由所述许可提供方操作以用于向用户设备分发许可。所述系统还包括至少一个本地接口设备,所述至少一个本地接口设备在已知地理位置处,所述至少一个本地接口设备被配置为与所述许可服务器通信,并且所述至少一个本地接口设备还被配置为:当所述用户设备距所述本地接口设备小于预定最大距离时与所述用户设备进行通信。所述本地接口设备被配置为向所述许可服务器进行认证,以及所述本地接口设备提供使所述用户设备与所述本地接口设备通信以使用所述本地接口设备的所述认证来从所述许可服务器获得许可的机制。
假如用户设备的地理位置能够固定(例如在拥有许可的组织处),本发明因而使得授权软件能够在任何用户设备上共享。位置的固定可以通过指定仅当用户设备距本地接口设备小于预定最大距离时才能获得所述许可来实现,同样任选地,所述本地接口设备的位置在许可提供方处本身是固定的。
所述本地接口设备可以被配置为使用短距离无线通信系统与所述用户设备通信,从而所述预定最大距离由所述短距离无线通信系统的信号范围确定。在一个实施例中,所述短距离无线通信系统是近场通信(NFC),在这种情况下,所述本地接口设备可以是NFC平板。
所述用户设备可以包括DRM代理,所述DRM代理用于与所述许可服务器协商所述许可的提供并且根据所述许可来控制软件应用的操作。所述DRM代理可被预加载到所述用户设备上或可以经由所述本地接口设备获得。
所述DRM代理可以被配置为当所述用户设备从所述本地接口设备离开超出所述预定距离时,终止所述应用的使用。替代地(或附加地),所述许可可以具有生命期并且所述DRM代理被配置为当所述生命期期满时终止所述应用的使用。
根据本发明的另一方面提供了一种用户设备,所述用户设备用于根据从许可服务器获得的许可来操作软件应用。所述用户设备包括处理器和存储器,所述存储器包含能够由所述处理器执行以使所述处理器执行以下各项的指令:当所述用户设备距在固定地理位置处的本地接口设备小于预定最大距离时,经由能够操作地连接到所述处理器的输入/输出单元,与所述本地接口设备交换数据。还使所述处理器执行:通过与所述本地接口设备交换数据以利用所述本地接口设备向所述许可服务器的认证,协商来自由所述许可提供方维护的许可服务器的许可提供。然后在DRM代理的控制下根据所述许可执行所述软件应用。
所述输入/输出单元可以是短距离无线通信系统发送/接收单元(例如NFC单元)并且所述本地接口设备可以是NFC平板,从而所述预定最大距离由所述用户设备和所述NFC平板之间的NFC信号的范围来确定。
所述DRM代理可以被配置为使所述处理器:向本地接口设备发送旨在针对所述许可服务器的许可请求消息,以从所述本地接口设备接收所述许可,并且在接收到所述许可后启动所述应用。
所述DRM代理可以被配置为:如果所述用户设备离开所述本地接口设备远于所述预定距离,则使所述处理器终止所述应用的操作。
替代地,所述DRM代理可以被配置为使所述处理器:从所述本地接口设备接收令牌,向所述许可服务器发送许可请求消息,所述许可请求消息包括所述令牌,从所述许可服务器接收所述许可,以及启动所述应用。所述许可可以具有生命期,所述DRM代理被配置为当所述生命期期满时使所述处理器终止所述应用的使用。
所述DRM代理还可以被配置为:如果所述应用被所述用户关闭,使所述处理器向所述许可服务器发送应用关闭消息,所述应用关闭消息包括所述许可的标识。
所述DRM代理可被预加载到所述设备上,或可以经由所述本地接口设备下载(或在其他地方下载)所述DRM代理。
所述用户设备可以被配置为根据请求将所获得的许可委托给另一用户设备,如果所述许可允许这样的话。
根据本发明的另一方面提供了一种网络中的本地接口设备,所述网络用于分发软件应用的许可。所述本地接口设备包括:处理器和存储器,所述存储器包含指令,所述指令能够由所述处理器执行以使所述处理器:当用户设备距所述本地接口设备小于预定最大距离时,经由输入/输出单元与所述用户设备交换数据,经由接收/发送单元与所述网络中的许可服务器通信。所述存储器还包含指令,所述指令能够由所述处理器执行以使所述处理器:向所述许可服务器认证所述本地接口设备以用于许可的接收,并且提供使用所述认证来使所述用户设备能够获得许可的机制。
所述输入/输出单元可以是短距离无线通信系统发送/接收单元,从而所述预定最大距离由所述短距离无线通信系统的信号范围来确定,所述短距离无线通信系统可以是NFC。
所述本地接口设备可以被配置为使得:从所述用户设备接收形成许可请求消息的数据分组,对每个分组签名以向所述许可服务器确认所述每个分组已经经过所述本地接口设备,通过所述网络向所述许可服务器发送经签名的分组,从所述许可服务器接收形成许可的经签名的数据分组,以及向所述用户设备发送形成的所述许可的所述分组。
替代地,所述本地接口设备可以被配置使得:从所述用户设备接收许可请求消息,对所述许可请求消息签名以向所述许可服务器确认所述许可请求消息已经经过所述本地接口设备,通过所述网络向所述许可服务器发送经签名的许可请求消息,从所述许可服务器接收许可,以及向所述用户设备发送所述许可。
所述处理器可以基于所述许可请求消息中包含的信息,选择是阻塞还是转发所述许可请求消息。
所述本地接口设备可以被配置为:如果所述应用在所述用户设备上被关闭或者如果所述用户设备离开所述本地接口设备远于所述预定距离,则向所述许可服务器发送应用关闭消息,所述应用关闭消息包括所述许可的标识。
所述本地接口设备可以被配置为:生成能够由所述许可服务器验证并且能够由所述用户设备使用的令牌,以将所述令牌包括在去往所述许可服务器的许可请求消息中,以及向所述用户设备发送所述令牌。所述令牌可以以加密形式绑定到所述本地接口设备的私钥。
当后续的用户设备连接到所述本地接口设备时,所述设备可以生成新令牌并且向所述许可服务器发送使先前令牌无效的令牌作废消息。
所述本地接口设备可以被配置使所述处理器在向所述许可服务器转发所述经签名的分组或许可请求或者向所述用户设备转发所述令牌之前,执行距离边界检查以确认所述用户设备在所述预定最大距离内。
所述本地接口设备还可以包括外围接口单元,所述外围接口单元用于当所述用户设备连接到所述本地接口设备时连接到用户使用的外围用户接口设备。
根据本发明的另一方面提供了一种许可服务器,所述许可服务器用于向用户设备分发软件应用的许可。所述许可服务器包括处理器和存储器,所述存储器包含指令,所述指令能够由所述处理器执行以使所述处理器:经由接收/发送单元与在已知地理位置处的至少一个本地接口设备通信和/或与至少一个用户设备通信。所述存储器还包含指令,所述指令能够由所述处理器执行以使所述处理器:认证所述本地接口设备,接收许可请求消息,所述许可请求消息包括经认证的本地接口设备的标识符或签名,以及向所述用户设备发布许可。
所述许可服务器可以被配置为从所述用户设备或本地接口设备接收应用关闭消息,所述应用关闭消息标识所述许可不再被使用,以及因为所述许可不再被使用而增加可用许可的计数。
根据本发明的另一方面提供了一种在用户设备上根据从许可提供方获得的许可操作软件应用的方法。所述方法包括:当所述用户设备距所述本地接口设备小于预定最大距离时,与在已知地理位置处的本地接口设备建立通信,通过使用与所述本地接口设备的通信以及所述本地接口设备向所述许可服务器的认证,协商来自由所述许可提供方维护的许可服务器的许可提供。
可以从所述用户设备向所述本地接口设备发送许可请求消息,所述许可请求消息要使用所述本地接口设备在所述许可服务器处的认证来向所述许可服务器转发。然后可以从所述本地接口设备接收所述许可。如果所述用户设备离开所述本地接口设备大于所述预定最大距离,则在所述用户设备处终止所述应用。
替代地,包含所述本地接口设备的标识符的令牌可以被接收。包括所述令牌的许可请求消息可以被生成并向所述许可服务器发送。所述许可可以是有时间限制的。
根据本发明的另一方面提供了一种在网络中分发软件应用的许可时使用本地接口设备的方法。所述方法包括:使所述本地接口设备位于已知地理位置处,以及与许可服务器协商证书,从而向所述许可服务器认证所述本地接口设备。当所述用户设备距所述本地接口设备小于预定最大距离时,所述本地接口设备与用户设备建立通信。所述本地接口设备从所述用户设备接收许可请求消息,对所述许可请求消息或形成所述许可请求消息的数据分组签名,以及向所述网络中的许可服务器转发所述经签名的许可请求消息。所述本地接口设备然后从所述许可服务器接收经签名的许可,以及向所述用户设备发送所述许可。
根据本发明的另一方面提供了一种在网络中分发软件应用的许可时使用本地接口设备(104)的方法。所述方法包括:使所述本地接口设备位于已知地理位置处,以及与许可服务器协商证书,从而向所述许可服务器认证所述本地接口设备。当所述用户设备距所述本地接口设备小于预定最大距离时,与用户设备(100)建立通信,生成能够由所述网络中的许可服务器验证并且能够由所述用户设备使用的令牌,以将所述令牌包括在向所述许可服务器发送的许可请求中,以及向所述用户设备发送所述令牌。
在建立与后续用户设备的通信时,所述本地接口设备可以生成新令牌,向所述后续用户设备发送所述新令牌,以及向所述许可服务器发送使先前令牌无效的令牌作废消息。
所述本地接口设备可以在向所述许可服务器转发经签名的许可请求消息或者向所述用户设备转发所述令牌之前,执行距离边界检查以确认所述用户设备在所述预定最大距离内。
根据本发明的另一方面提供了一种从许可服务器分发软件应用的许可的方法。所述方法包括:认证已知地理位置处的本地接口单元,接收许可请求消息,所述许可请求消息包括经认证的本地接口设备的标识符,以及向距所述本地接口设备小于预定距离的用户设备发布许可。
所述许可服务器可以维护许可数据库,并且仅在不是所有的所述许可都被其他用户设备使用时才发布所述许可。
根据本发明的另一方面提供了一种分发软件应用的许可的方法。所述方法包括:向许可服务器认证至少一个本地接口设备,所述本地接口设备在已知地理位置处。当所述用户设备距所述本地接口设备小于预定最大距离时,在所述本地接口设备和用户设备之间建立通信。基于所述本地接口设备的所述认证,在所述许可服务器处接受许可请求消息。如果所述认证是正确的(并且如果存在空闲许可),则从所述许可服务器向所述用户设备发送许可。在所述用户设备处接收所述许可,所述用户设备根据所述接收到的许可来操作应用。
本发明还提供了一种计算机程序,所述计算机程序包括计算机可读代码,当在设备上运行时,所述计算机可读代码使所述设备表现为上面描述的任一种设备。还提供了用于在网络中分发许可的计算机程序,所述计算机程序包括可读代码,当在设备上运行时,所述可读代码使所述设备执行上面描述的任一种方法。
本发明还提供了一种存储器,所述存储器包括上面所描述的计算机程序和其上存储有所述计算机程序的计算机可读装置。所述存储器可以以计算机程序产品的形式布置。
附图说明
现在将仅通过示例的方式并参考附图来描述本发明的一些优选实施例,其中:
图1是由例如大学或图书馆之类的组织操作的网络101的要素的示意图;
图2A是启用NFC的用户设备的示意图;
图2B是启用NFC的用户设备的替代实现的示意图;
图3A、3B和3C是示出了启用NFC的用户设备如何获得操作软件应用的使用权的信令图;
图4是示出了向更多启用NFC的用户设备分发许可的示意图;
图5A至5D是示出了NFC平板的一些替代实现结构的示意图;
图6A和6B是示出了许可服务器的一些替代实现结构的示意图;
图7示出了可以由用户设备、本地接口设备和许可服务器执行的步骤的流程图;以及
图8示出了可以由用户设备、本地接口设备和许可服务器执行的步骤的另一流程图。
具体实施方式
IP功能嵌入式设备数量的迅速增长引发了“物联网”以及机器对机器(M2M)技术的广泛采用。其中的一个可能无处不在的技术是近场通信(NFC)。
NFC是一套标准,使智能手机和类似设备通过触碰在一起或使它们靠近(一般为几厘米)来彼此建立无线电通信。如果设备试图启动近场通信,NFC通信器可以作为启动者来操作,或者如果该NFC通信器易于启动则可以作为目标来操作。NFC最初由射频识别(RFID)系统发展而来,并且利用点对点连接(两个通电设备之间的连接)的添加以及无源感应RF[D标签的仿真改进了这些系统。
现在已经有很多具有NFC功能的移动电话,其能够与其他启用NFC的手机或RFID标签进行通信。用户能够使用电话的NFC接口来交换信息,为此用户设备彼此之间需要非常靠近(大约5cm)。在未来,很有可能更多的设备将启用NFC功能。
数字版权管理(DRM)和各种许可机制已经在娱乐行业中实践了数十年。这些机制有助于保护终端设备上所使用的一些内容的内容生产商的权利。通常的方法是内容所有者使用加密系统来锁定他们的内容,除非最终用户获得密钥来解锁它;这样的密钥从授权许可方购买。与这些密钥相关联的许可可以包括其他形式的限制,例如时间戳、内容的复制品的数目、能够访问该内容的最终用户数目。
这些方法可以结合起来,使得能够根据移动设备的用户的地理位置向其提供临时许可。例如,仅当用户实际上位于拥有许可的服务提供方(例如图书馆)处时,用户才能够操作特定的软件。地理位置可以受限于在服务提供方处的NFC通信器的使用。
图1是由例如大学或图书馆之类的组织操作的网络101的要素的示意图。与许可数据库(LDB)103相关联的许可服务器(LS)102被连接到该网络。LS 102和LDB 103可以形成该基础设施的一部分或者可以作为第三方服务连接到该基础设施。LDB 103包含许多由组织购买的用于在其处使用的软件应用的许可。
该组织还维护工作区域,本地接口设备(例如NFC平板(NFC通信器)104-107)以及(可选地)外部输入/输出设备(例如键盘108和屏幕109)已经放置在该工作区域中。NFC平板连接到网络101以及I/O设备(如果存在的话)。NFC平板被设计成与启用NFC的用户设备110进行通信。NFC平板可以作为启用NFC的用户设备的对接站,提供从屏幕109和键盘108到用户设备110的连接,或者作为无连接器的NFC平板。
图2A显示了启用NFC的用户设备110的示意图。用户设备110包括能够操作地连接到处理器202的输入/输出单元(NFC发射器/接收器)201。处理器连接到存储器203,存储器203中能够加载软件应用204和DRM代理205。应当理解的是,在一些实现中,DRM代理可以被存储在受信任的存储器中并且在受信任的环境中执行。为了使必要的数据能够被存储和恢复,存储器203可以包括合适的硬件,例如ROM、RAM、闪速存储器等。存储器203可以包括能够由处理器执行的指令以使所述处理器控制输入/输出单元201和用户界面206的操作。存储器可以包括通信发起模块220,通信发起模块220包括能够由处理器执行的指令,当设备进入到NFC平板104的差预定最大距离内时所述指令可由处理器执行以与该NFC平板建立通信。存储器还可以包括许可协商模块221,其包括能够由所述处理器执行的指令,用于使用NFC平板向许可服务器的认证来协商应用的许可,如将在下面更详细地描述。用户设备可以是移动设备,在这种情况下,其可以包括额外的接收/发送单元207,用于使用另一种机制例如电信网络或Wi-Fi网络来交换数据。
图2B示出了该用户设备的替代实现。在这个实现中,处理器202包括硬件通信发起器220B,当用户设备进入到该NFC平板的预定最大距离内时,硬件通信发起器220B与NFC平板104建立通信。一旦已经建立通信,许可协商器221B使用NFC平板向许可服务器的认证来协商许可。DRM代理205也可以作为硬件模块来提供或保存在受信任的存储器中。
当用户希望在他启用了NFC的用户设备110上使用要求许可的软件应用204时,他将该设备靠近组织处的一个NFC平板104放置,并且通过经由用户界面206或经由屏幕109和键盘108(图1中示出)与设备110直接进行交互,选择将要运行的应用。首先在用户设备上验证是否存在有效的许可。这种验证可以由软件应用204自身或由DRM代理205来进行。DRM代理205可能已经存在于用户设备上,或者可以从NFC平板104下载。在大多数情况下,在这个阶段不太可能存在有效的许可,在这种情况下,用户设备110通过NFC连接向网络101发送许可请求消息,以请求在用户设备110与NFC平板连接(即,在通信范围内)期间所要使用的许可。许可请求消息包含应用ID,该ID标识了所启动的应用。许可请求被路由到LS 102,LS102检查LDB 103以确定是否有用于特定应用204的空闲许可,并且如果找到这样的空闲许可,为用户设备110预留该许可并且向用户设备110发送确认消息。DRM代理205中包括的指令然后将启用处理器202以启动该已获许可的应用204。
要将许可释放回池中供其他用户使用,用户只需关闭该应用。在关闭阶段,用户设备(通常是DRM代理)向LS 102发送通知消息以通知它该许可可以从预留中释放。为了防止恶意用户,用户设备(通常是DRM代理)也可以监测与NFC平板104的连接,并且当NFC连接丢失时自动关闭该应用。事实上,这可以是许可的约束属性,其可以通过DRM代理被强制执行。在这种情况下,LS 102可能意识不到该应用已经被关闭。有许多替代方案可用来解决这一问题:
1.当LS 102接收到应用的许可请求消息但所有的许可都已经被预留时,它可以轮询每个被记录为当前正在操作许可的用户以查看它们是否仍然能够到达(即,仍然附着到NFC平板104-107并且该应用204进行响应)。如果用户/应用不能够到达,意味着该用户设备110已经从NFC连接中断开,这意味着该应用已经在该用户设备上通过DRM代理205终止。该用户预留的许可因而可以被释放给其他用户。
2.其上正在运行应用204的用户设备110可以通过规律的时间间隔轮询LS 102以通知其该应用仍然在运行并且该许可应当保持预留。一旦LS 102发现不再有来自该应用的更新消息,它同样可以从预定中释放该许可。
应当理解的是,可以设想出许多不同的布置以使这成为可能。在一个实施例中,可以假设LS 102是受信任的实体。NFC平板104-107可以具有防篡改的硬件来保护密钥。可以存在受信任的机制以在LS 102和NFC平板104-107之间共享密钥。用户设备110中的任何DRM代理205应当具有防篡改机制来保护密钥。
在一个可能的设置中,各NFC平板104-107具有标识(例如,证书的散列、公共密钥、公共密钥的散列)和证明该标识的所属权的方法,例如由LS 102发布的证书:如在前面的段落中所建议的,这需要存在安全方式以在LS 102和NFC平板104-107之间共享证书或已共享的密钥。这使得能够对来自NFC平板104-107的许可请求消息进行认证,并且仅对来自持有有效密钥的实体的请求进行授权(即,对于LS 102而言未知的NFC平板不能连接到LS 102)。应当采用物理安全来保护NFC平板104-107避免例如将平板移至其他一些位置、试图提取密钥等的篡改。
许可服务器102存储与其自身和NFC平板104-107之间商定的密钥(对称密钥或证书)相关的信息。除了在数据库中存储授权的NFC平板的标识外,还存储平板特定的限制(例如,一些平板可能基于例如它们的位置而比其他平板具有更多软件的访问权限),这对许可服务器102也可能是有益的。
可以考虑至少三种替代方案用于该平板的使用:
1)在第一布置中,NFC平板104通过对分组添加数字签名或键控校验和(keyedchecksum)(例如,IPSec验证报头)来主动修改经过其向LS 102发送的每个分组。有效地,NFC平板104将从用户设备110接收的净荷转发给LS 102并添加数字签名,例如由平板的私钥签名的消息摘要。NFC平板104还在向用户设备110转发从LS 102接收到的分组之前检查该分组的签名是否有效。
2)在第二布置中,NFC平板104使用密钥对每个消息签名。这可能是私钥或是在NFC平板104和许可服务器102之间共享的密钥。与第一布置中的分组级别签名相比,该签名发生在应用级别。这使得NFC平板104基于消息中包含的信息来决定是传递还是阻塞该消息。例如,平板可以在用户设备110上阻塞DRM代理205的某个版本的消息,或阻塞针对特定许可软件请求的消息。这要求在用户设备110中的DRM代理205与LS 102之间的通信量中的至少部分数据是未加密的。
3)在第三布置中,NFC平板104不在分组级别或应用级别修改许可请求消息。相反,它向用户设备110发布安全令牌。用户设备110上操作的DRM代理205确保由用户设备110包括此令牌以用于向LS 102的所有后续通信,以证明请求经过了合法的NFC平板的认证。为了实现这一目标,在NFC平板104和用户设备110之间执行短协议交换。在此交换期间,NFC平板104向用户设备110提供其标识以及令牌和该令牌有效时间的指示(该令牌应当具有短生命期)。令牌应当以加密形式绑定到NFC平板104的私钥上,并应当能够由许可服务器102验证。可能的实现可以作为基于散列链的解决方案来操作,其中通过先前的散列值计算散列并通过使用该平板的私钥对散列值与其生命期的结合进行签名来将该散列值绑定到其生命期(其对应于令牌的生命期)上。通过这种方式,可以证明NFC平板104曾生成该令牌。这是使用该平板的证书能够验证的:使用散列链和生命期令牌确保了新鲜度
使用该第三种方法的潜在问题是,没有直接的方法证明该通信量产生于该NFC平板104,因为它不以任何方式修改该通信量。因此,以下方式可能是可行的:有人试图将用户设备110附着到包含许可服务器102的网络,尝试假装位于NFC平板104之一的后面并请求许可。当然,这将仅在以下情形下有效:在令牌的生命期内,并且只要没有其他人通过同一平板进行连接更新当前令牌。每当用户设备向NFC平板进行新的连接,该平板就在该散列链中生成下一个值并且将其绑定到该令牌的生命期上。这意味着,一旦新的用户设备附着到平板上,提供给先前附着到该平板的用户设备的令牌就被无效(一旦新的用户设备向许可服务器发送新令牌)。在这种情况下,许可服务器需要撤销任何先前发布并且仍然有效的许可(如果有的话)。
对于上面描述的任何布置,可以在用户设备110和NFC平板104之间执行距离边界检查。执行距离边界检查以验证进行附着的设备110实际上直接附着在NFC平板104上。合适的方法(例如在格哈德·P·汉克和马库斯·G·库恩的《一种RFID距离边界协议》中描述的方法,
http://www.c1.cam.ac.uk/~mgk25/sc2005-distance.pdf)涉及到测量两个端点(平板104和NFC用户设备110)的距离并且将其结果与一些给定的阈值进行比较。通过响应时间来测量距离,该响应时间以及已知的链路延迟可以给出对用户设备实际在NFC链路上的概率估计。可以通过测量从发送请求(例如回声请求)到接收响应所花的时间来确定路径延迟。如果NFC链路的预期路径延迟是已知的,可以将其与测量出的路径延迟对比,以确认它落入给定的、可接受的预期延迟的阈值内。如果该延迟是不能接受的则分组将不会被修改(布置1),消息将被阻塞(布置2)或不发布令牌(布置3)。
LS 102的行为将取决于对上述布置的选择。
1)在第一布置中,NFC平板104对向许可服务器102传递的所有消息的分组进行签名。在这种情况下,许可服务器102可以检查每个到来的分组以寻找由经授权的平板进行的签名。这有效地消除了攻击者的连接尝试,所以只有来自有效来源的连接到达许可服务器。
2)第二布置类似于第一布置:LS 102验证每个请求消息的签名。
3)在第三布置中,许可服务器102需要知道每个NFC平板104-107的最新令牌。当接收到连接尝试时它将验证该平板的标识、令牌的生命期、以及令牌的新鲜度。LS 102可以检查令牌的签名,以验证它来自有效的平板,并且通过使用先前已知的散列(令牌)值并对其进行散列来尝试重新计算散列值。这也许是因为服务器需要计算来自散列链的多个新的散列值,因为一些散列值可能对许可服务器已经不可见(例如,如果用户设备110已经从NFC平板104获得令牌但尚未使用它)。LS 102应当存储最新的已知散列值。如果签名匹配并且该令牌是新鲜的,请求可以被处理,因为它看上去来自具有有效的令牌的有效平板。
在每个场景中,LS 102还可以执行距离边界检查以验证该NFC平板104-107处于其假设位置的范围内。换句话说,LS 102可以通过确认其距LS 102的物理距离以及确认这个距离在预期范围内来检查NFC平板104-107尚未从该处移动到另一个位置。这个距离边界检查可以和与每个NFC平板104-107相关联的应当防止其被盗的物理安全联合起来操作。
如先前所讨论的,用户设备110具有(或下载)DRM代理205来处理DRM功能。取决于NFC平板104-107和许可服务器102使用上面描述的三种布置中的哪一个,用户设备110可以经由NFC平板104与许可服务器通信,但是无需直接与NFC平板进行交互(在第一布置中,平板104简单地对所有的通信量签名,并且在第二布置中DRM代理205通过NFC平板与许可服务器通信)。替代地(在第三布置中),用户设备110与平板104执行登记交换,在此期间,它从平板接收经签名的令牌,然后将该令牌包括在其与许可服务器的通信中。
图3A、3B和3C是示出了针对上面描述的三种布置,用户设备110如何获得操作软件应用204的使用权的信令图。在每种情况下存在初始引导阶段301,在此期间,使用密钥和证书配置平板104-107,并且在LS 102中或许可服务器可以访问的一些其他服务器/服务中存储与这些相关的信息。平板104-107与许可服务器102建立安全连接。这可以是对用户设备110通过NFC进行连接的反应,或它们可以将安全会话始终保持打开。这可以使用例如IKE/IPsec来完成。
在步骤302中,在用户设备110和NFC平板104之间建立连接。用户设备110(目标)被向NFC平板104就近放置,导致NFC平板104充当启动者,该连接可以因此而建立。用户设备110的DRM代理205识别该NFC连接,并且可以执行服务发现303以在网络中定位许可服务器服务。许可服务器的服务发现可以是任何种类的服务发现协议,例如广播消息,并且不必经过NFC平板来路由,尽管在许多实现中,服务发现将会经过NFC平板,尽管该平板可以仅转发或路由该分组。应当理解的是,服务发现可以并不总是必要的:可用的许可服务器相关的信息可以通过NFC平板104按照步骤302向用户设备110传送。
现在考虑在图3A中所显示的第一种场景,在步骤304中DRM代理205与许可服务器102建立安全通信信道。例如,这可以使用OMA DRM(ROAP)4-pass注册协议来完成,如在
http://xml.coverpages.org/OMADRMv204-20040420.pdf中所描述的。
在图3A中第一种场景的其余时刻,在步骤305中,用户在用户设备110上发起软件应用204的启动。DRM代理205被提醒处理应用204的许可。在步骤306中DRM代理205请求许可(在OMA DRM中称为版权对象)。如果使用了OMA DRM,这可以使用2-pass版权对象获得协议来完成。NFC平板104执行距离边界检查307,并且如果该检查通过,许可请求的分组然后被签名308并且由NFC平板104向LS 102传递309。替代地,如果执行距离边界检查的话,距离边界检查可以在用户设备110开始与许可服务器102进行协商时立刻进行。在向LS 102发送许可请求309的同一时间,可以向LS传达已经执行距离边界检查的事实。
在验证分组310后,在步骤312中,许可服务器102为选定的软件分配空闲许可(如果可用,否则返回错误代码指示没有空闲许可)并且向NFC平板104返回许可。首先可以执行进一步的距离边界检查311。与第一距离边界检查307检查用户设备110确实靠近NFC平板104相比,进一步的距离边界检查311是确保NFC平板104没有从它的期望位置移动(例如,到用户家中)的方法。NFC平板104检查从LS 102返回的分组的签名(步骤313)并且在步骤314中向用户设备110转发许可。许可条款以规则集(例如,什么时候、谁能使用该许可)的形式定义。DRM代理205将遵守许可服务器102定义的规则集。
DRM代理205然后安装接收到的许可,并且允许应用启动315。
图3B示出了当使用第二种布置时涉及到的步骤。这与第一种场景所使用的布置类似,但在这种情况下,在用户设备110和LS 102之间协商证书的步骤304B涉及由NFC平板104截取协商消息。这是因为,在这种布置中,用户设备只知道NFC平板。NFC平板充当路由用户请求的应用级别的代理。作为应用级别的代理,NFC平板可以基于应用级别的内容决定通过哪个请求以及阻塞哪个请求。
一旦已经建立证书,在步骤305中以与第一场景中相同的方式发起软件应用204的启动。在步骤306中DRM代理205请求许可。该消息由NFC平板104接收,NFC平板104可以执行距离边界检查307。如果这个检查被接受,并且如果符合其他所有要求的标准(例如,DRM代理205的正确版本正在用户设备110上工作),则NFC平板104对许可请求消息签名308B并向LS 102转发经签名的消息309。
LS 102检查该签名是正确的310B,执行距离边界检查311并且在步骤312中返回许可给NFC平板104。NFC平板检查许可的签名313B,并且在步骤314中向用户设备110传递该许可。在步骤315中安装许可并且启动应用。
在第三布置中,如图3C中所显示的,该过程以与前两个布置相同的方式开始于引导阶段301和用户设备110到NFC平板104的连接302。用户设备110然后向该连接到的NFC平板104登记并且从该平板接收303C已签名的令牌。NFC平板可以可选地执行距离边界检查307,以确保NFC平板和用户设备之间的距离:在一个替代方案中,这可以在向用户设备110提供令牌之前完成。
令牌及其签名也应当传送给许可服务器304C,尽管这可以替代地在引导阶段301期间进行。一旦用户已经发起了应用的启动305,用户设备110从LS 102直接请求许可306C。这可以通过经由NFC平板104(即平板简单地向LS 102转发来自用户设备110的分组)或经由单独的通信机制(例如电信网络)的通信来进行。
在步骤310C中由LS 102验证令牌,并且可以执行到NFC平板的距离边界检查。如果每个执行的测试都通过,则在步骤312C中许可被返回给用户设备110并且在步骤315中安装。
DRM代理205的行为值得进一步讨论。DRM代理对NFC附着消息做出反应,可能通过查询NFC平板104以寻找许可服务器服务信息(例如IP地址),或通过执行其他形式的服务发现来做出反应。一旦DRM代理知道许可服务器,它还可以向许可服务器102执行登记。否则,在启动需要来自许可服务器的许可的应用时立刻这样做。此外,在上面描述的前两个替代方案中,当DRM代理注意到与NFC平板104的NFC连接丢失后,它使通过该NFC连接安装的所有许可无效。替代地,许可可以被给予短的生命期,在这种情况下,DRM可以允许它们在NFC连接断开后再运行一段时间。在这种情况下,一旦达到所分配的生命期并且用户设备没有对该许可续期(renew),在许可服务器中释放该许可。如果应用被关闭,而NFC连接仍然可用,DRM代理205向许可服务器发信号通知该许可已经被释放回许可服务器102。另外,许可服务器102可以通过规律的时间间隔来“ping”DRM代理,以确保它仍然连接(或执行距离边界检查),并且一旦连接丢失,可以释放提供给DRM代理的(多个)许可,因为一旦NFC连接中断,用户设备中的许可不会保持有效。替代地,DRM代理可以是向许可服务器发送保活消息的那一个。
也可以扩展通常的方法以使用户能够在脱机状态下委托其许可。如上所述,假设用户设备110已经获得用于特定的软件应用的许可。该许可然后可以被共享给(或委托给)另外的启用NFC的设备,而无需到许可服务器的活跃通信。这种方法是适当的,如果许可服务器脱机或两个接触的设备没有与许可服务器连接。这种场景在没有任何LS的设置中也是有效的;可能是应用具有在一个用户设备上运行的许可,但是该许可规定可以在使用NFC的设备(通常属于同一个用户)之间移动该许可。由DRM代理控制可用的选项。此外,许可条款应当包括委托权限。在图4中显示了能够实现这些的合适的通用方法,其中第二用户设备410请求将第一NFC许可传递给它。
我们假设第一用户设备110已经具有不同应用的一个或几个软件许可。这些应用对第二用户设备410是等同应用,并且因此适用相同的许可。在这种情况下,设备执行握手程序以相互认证。然后,第二设备410从第一用户设备查询可用的许可411,第一用户设备110公布其持有的许可412,第二设备410请求这些许可之一413,并且第一用户设备110向第二用户设备410交付其所请求的许可414。
可以扩展这种场景用于第一用户设备110充当存储有一系列许可的许可数据库的情况。作为示例,第一设备110可以充当提供工具来向使用NFC的n个其他设备分发许可。在提供之后,许可信息的原始记录可以由第一设备110或其他设备之一向LS 102发送。
在这种方法中,许可提供设备自身可以设置位置。这使得当连接到NFC平板104时,第一设备110能够下载多于一个的许可。这些许可然后可以向连接到该第一设备的其他设备分发,这意味着这些其他设备不需要处于指定的位置来接收它们的许可。为了维护位置的一致性,向LS的登记请求必须包括由进行提供的用户设备提供的签名。一旦许可过期(时间依赖许可)可以注销设备,或进行提供解除的用户设备可以显式地注销该许可。
这可以被用于在远程位置或在传感器设备中提供许可。例如,如果传感器在远程位置中并且与授权服务器缺乏连接,可以使用用户设备1的形式的临时许可存储器从LS102获得许可,并然后向其他设备(传感器)提供所述许可。类似的方法可用于在延迟容忍网络(DTN)中向设备提供许可。
图5A是示出了本地接口设备(NFC平板)104的一个实现的一些结构的示意图。平板104包括用于与用户设备110通信的NFC输入/输出单元501、用于与外围设备(例如键盘108和显示器109)通信的外围接口单元506、以及用于与LS 102通信的接收/发送单元507。所有的这些单元由与存储器503连接的处理器502来控制。存储器包含指令,所述指令能够由处理器执行以使所述处理器控制输入/输出单元、接收/发送单元和外围接口单元的操作。特别地,存储器包括:认证模块530,所述认证模块530包括用于与许可服务器102协商证书的指令;通信发起模块531,所述通信模块531用于当用户设备被放置在靠近本地接口设备104时发起与用户设备110的通信;许可请求接收模块532,所述许可请求接收模块532用于从用户设备接收许可请求;许可签名模块533,所述许可签名模块533用于使用向许可服务器的认证来对许可请求签名;许可请求转发模块534,所述许可请求转发模块534用于向许可服务器发送经签名的许可请求;许可接收模块535,所述许可接收模块535用于从许可服务器接收许可;以及许可发送模块536,所述许可发送模块536用于向用户设备110发送许可。
在图5B中显示了替代实现,其中图5A的软件模块被替换为处理器502中的硬件单元,包括认证器530B、通信发起器531B、许可请求接收器532B、许可签名单元533B、许可请求发送器534B、许可接收器535B以及许可发送器536B。
图5C显示了用户设备104的另一替代实现,其中存储器503包括模块540、541,所述模块540、541包含指令,所述指令用于生成令牌并向用户设备110转发令牌,而不是代表用户设备处理许可请求消息。
图5D示出了类似于图5C实现的实现,其中处理器包括用于生成和转发令牌的硬件模块540D、541D。
图6A是示出了许可服务器102的一个实现的一些结构的示意图。LS 102包括处理器602、存储器603和用于与NFC平板104-107和许可数据库103通信的接收/发送单元607。存储器603包括指令,所述指令能够由处理器执行以操作接收/发送单元607,并且还包括认证模块650,其具有使处理器与在已知位置的NFC平板104进行协商以认证该NFC平板的指令,以及用于接收许可请求消息的许可请求接收模块651,所述许可请求消息包括一些指示其已经获得经过认证的NFC平板104授权的指示。这个指示可以包括由NFC平板104发布的令牌,或者该许可请求消息已经由NFC平板签名这一事实。如果该许可请求消息是可以接受的(且存在可用的许可),许可发布模块652包含用于向用户设备发布许可的指令。
图6B示出了许可服务器102的替代实现,其中上面描述的软件模块已经被替换为硬件模块650B、651B、652B。
图7包括三个示出了可以由上面所描述的前两个实现中的用户设备110、本地接口设备(NFC平板)104和LS 102执行的步骤的流程图。在步骤701、702中,LS 102认证本地接口设备104。当用户设备110被带到靠近703本地接口设备104时,在704、705两者之间建立通信。这可以使用用户设备110的输入/输出单元201与本地接口设备104的输入/输出单元501进行通信来进行。许可请求消息706经由输入/输出模块201从用户设备110发送并且经由输入/输出单元501由本地接口设备104接收707。许可请求消息由本地接口设备104的处理器502签名708并且使用接收/发送单元507向LS 102发送700。LS 102经由接收/发送单元607接收许可请求消息710。处理器602确定存在可用的许可并且经由接收/发送单元607向用户设备110发送该许可。本地接口设备104使用接收/发送单元507和输入/输出单元501接收712并且向用户设备104发送该许可。用户设备经由输入/输出单元201接收许可714并且处理器启动应用715。如果用户设备110移动到本地接口设备104的范围之外716,则处理器202可以终止该应用。在替代实现中,处理器(或DRM代理)可以让应用运行,直到达到该许可的生命期为止。
图8示出了涉及到上面所描述的第三种实现中的用户设备110、本地接口设备104和LS 102的步骤。许多步骤与图7的步骤相同并且以相同的标号显示。图8与图7的不同处在于,一旦已经在用户设备110和本地接口设备104之间建立了通信,本地接口设备104的处理器502生成令牌821,并且将其经由输入/输出单元501向用户设备110发送。用户设备经由输入/输出单元201接收令牌822并且处理器202使用令牌822来生成许可请求823。在步骤824中经由接收/发送单元207向许可服务器102发送许可请求。许可服务器接收包括令牌的请求825并且向用户设备110发送许可826。用户设备接收许可827,并且处理器202在DRM代理的控制下启动应用715。
上面描述的布置使用户能够利用他们自己的设备访问授权软件,其中该软件的许可由一些服务提供方提供。许可可以在有限的时间内有效。在用户使用完该应用后,许可可以被释放给其他用户。许可的使用被绑定到用户的物理位置。用户仅可以在由服务提供方定义的区域内使用该许可。因此这个区域是由NFC平板所在的位置定义的。
Claims (48)
1.一种许可提供方用来为软件应用分发许可的系统,包括:
许可服务器(102),所述许可服务器(102)由所述许可提供方操作,以向用户设备(110)分发许可;以及
已知地理位置处的至少一个本地接口设备(104),所述至少一个本地接口设备(104)被配置为与所述许可服务器通信,并且所述至少一个本地接口设备(104)还被配置为:当所述用户设备(110)距所述本地接口设备小于预定最大距离时,与所述用户设备(110)通信;
其中,所述本地接口设备被配置为向所述许可服务器进行认证;
以及所述本地接口设备提供使所述用户设备(110)与所述本地接口设备(104)通信以使用所述本地接口设备的所述认证来从所述许可服务器(102)获得许可的机制。
2.如权利要求1所述的系统,其中,所述本地接口设备(104)被配置为使用短距离无线通信系统与所述用户设备(110)通信,从而所述预定最大距离由所述短距离无线通信系统的信号范围确定。
3.如权利要求2所述的系统,其中,所述短距离无线通信系统是近场通信NFC。
4.如权利要求1、2或3所述的系统,其中,所述用户设备(110)包括DRM代理(205),所述DRM代理(205)用于与所述许可服务器协商所述许可的提供并且根据所述许可来控制软件应用(204)的操作。
5.如权利要求4所述的系统,其中,所述DRM代理(205)被配置为当所述用户设备从所述本地接口设备离开超出所述预定距离时,终止所述应用的使用。
6.如权利要求4所述的系统,其中,所述许可具有生命期,并且所述DRM代理(205)被配置为当所述生命期期满时终止所述应用的使用。
7.一种用户设备(110),所述用户设备(110)用于根据从许可服务器(102)获得的许可来操作软件应用(204),所述用户设备(110)包括:
处理器(202)和存储器(203),所述存储器包含能够由所述处理器执行以使所述处理器执行以下各项的指令:
当所述用户设备距在固定地理位置处的本地接口设备小于预定最大距离时,经由能够操作地连接到所述处理器的输入/输出单元(201)与所述本地接口设备(104)交换数据;
通过与所述本地接口设备交换数据以利用所述本地接口设备向所述许可服务器的认证,协商来自由所述许可提供方维护的许可服务器(102)的许可提供;以及
在DRM代理(205)的控制下根据所述许可执行所述软件应用。
8.如权利要求7所述的用户设备,其中,所述输入/输出单元是短距离无线通信系统发送/接收单元。
9.如权利要求8所述的用户设备,其中,所述短距离无线通信系统发送/接收单元是近场通信NFC单元(201)并且所述本地接口设备是NFC平板(104),从而所述预定最大距离由所述用户设备和所述NFC平板之间的NFC信号的范围来确定。
10.如权利要求7、8或9所述的用户设备,其中,所述DRM代理(205)被配置为使所述处理器:向所述本地接口设备(104)发送旨在针对所述许可服务器(102)的许可请求消息;从所述本地接口设备接收所述许可;以及,在接收到所述许可后启动所述应用(204)。
11.如权利要求10所述的用户设备,其中,所述DRM代理(205)被配置为:如果所述用户设备离开所述本地接口设备远于所述预定距离,则使所述处理器终止所述应用(204)的操作。
12.如权利要求8或9所述的用户设备,其中,所述DRM代理(205)被配置为使所述处理器:
从所述本地接口设备(104)接收令牌;
向所述许可服务器(102)发送许可请求消息,所述许可请求消息包括所述令牌;
从所述许可服务器接收所述许可;以及
启动所述应用(204)。
13.如权利要求12所述的用户设备,其中,所述许可具有生命期,并且所述DRM代理(205)被配置为当所述生命期期满时使所述处理器终止所述应用的使用。
14.如权利要求8或9所述的用户设备,其中,所述DRM代理(205)还被配置为:如果所述应用被用户关闭,使所述处理器向所述许可服务器发送应用关闭消息,所述应用关闭消息包括所述许可的标识。
15.如权利要求8或9所述的用户设备,其中,所述DRM代理被预加载到所述设备上。
16.如权利要求8或9所述的用户设备,被配置为经由所述本地接口设备下载所述DRM代理。
17.如权利要求8或9所述的用户设备,被配置为根据请求将所获得的许可委托给另一用户设备。
18.一种网络中的本地接口设备,所述网络用于分发软件应用的许可,所述本地接口设备包括:
处理器(502)和存储器(503),所述存储器包含指令,所述指令能够由所述处理器执行以使所述处理器:
当用户设备距所述本地接口设备小于预定最大距离时,经由输入/输出单元(501)与所述用户设备交换数据;
经由接收/发送单元(507)与所述网络中的许可服务器(102)通信;以及
向所述许可服务器认证所述本地接口设备以用于许可的接收,并且
提供使用所述认证来使所述用户设备能够获得许可的机制。
19.如权利要求18所述的本地接口设备,其中,所述输入/输出单元是短距离无线通信系统发送/接收单元,从而所述预定最大距离由所述短距离无线通信系统的信号范围来确定。
20.如权利要求19所述的本地接口设备,其中,所述短距离无线通信系统是近场通信NFC。
21.如权利要求18、19或20所述的本地接口设备,被配置为使所述处理器:
经由所述输入/输出单元(501)从所述用户设备(110)接收形成许可请求消息的数据分组;
对每个分组签名以向所述许可服务器确认所述每个分组已经经过所述本地接口设备;
经由所述接收/发送单元(507),通过所述网络向所述许可服务器(102)发送经签名的分组;
经由所述接收/发送单元从所述许可服务器接收形成许可的经签名的数据分组;以及
经由所述输入/输出单元向所述用户设备发送形成所述许可的所述分组。
22.如权利要求18、19或20所述的本地接口设备,被配置为使所述处理器:
经由所述输入/输出单元(501)从所述用户设备(110)接收许可请求消息;
对所述许可请求消息签名以向所述许可服务器确认所述许可请求消息已经经过所述本地接口设备;
经由所述接收/发送单元(507),通过所述网络向所述许可服务器(102)发送经签名的许可请求消息;
经由所述接收/发送单元从所述许可服务器接收许可;以及
经由所述输入/输出单元向所述用户设备发送所述许可。
23.如权利要求22所述的本地接口设备,被配置为使所述处理器基于所述许可请求消息中包含的信息,选择是阻塞还是转发所述许可请求消息。
24.如权利要求18、19或20所述的本地接口设备,被配置为:如果所述应用在所述用户设备上被关闭或者如果所述用户设备离开所述本地接口设备远于所述预定距离,则向所述许可服务器发送应用关闭消息,所述应用关闭消息包括所述许可的标识。
25.如权利要求18、19或20所述的本地接口设备,被配置为使所述处理器:
生成能够由所述许可服务器验证并且能够由所述用户设备使用的令牌,以将所述令牌包括在去往所述许可服务器的许可请求消息中;以及
经由所述输入/输出设备向所述用户设备发送所述令牌。
26.如权利要求25所述的本地接口设备,其中,所述令牌以加密形式绑定到所述本地接口设备的私钥。
27.如权利要求25所述的本地接口设备,其中,当后续的用户设备连接到所述本地接口设备时,所述处理器生成新令牌并且向所述许可服务器发送使先前令牌无效的令牌作废消息。
28.如权利要求21所述的本地接口设备,被配置为使所述处理器在向所述许可服务器转发所述经签名的分组或许可请求消息之前,执行距离边界检查以确认所述用户设备在所述预定最大距离内。
29.如权利要求25所述的本地接口设备,被配置为使所述处理器在向所述用户设备转发所述令牌之前,执行距离边界检查以确认所述用户设备在所述预定最大距离内。
30.如权利要求21所述的本地接口设备,还包括外围接口单元(506),所述外围接口单元(506)用于当所述用户设备连接到所述本地接口设备时连接到供用户使用的外围用户接口设备。
31.一种许可服务器(102),所述许可服务器(102)用于向用户设备分发软件应用的许可,所述许可服务器(102)包括:
处理器(602)和存储器(603),所述存储器包含指令,所述指令能够由所述处理器执行以使所述处理器:
经由接收/发送单元(607)与在已知地理位置处的至少一个本地接口设备(104)通信和/或与至少一个用户设备(110)通信;
认证所述本地接口设备;
接收许可请求消息,所述许可请求消息包括经认证的本地接口设备的标识符或签名;以及
基于对所述本地接口设备的认证来向距所述本地接口设备小于预定最大距离的用户设备发布许可。
32.如权利要求31所述的许可服务器,还被配置为:
从所述用户设备或本地接口设备接收应用关闭消息,所述应用关闭消息标识所述许可不再被使用;以及
因为所述许可不再被使用而增加可用许可的计数。
33.一种在用户设备(110)上根据从许可提供方(102)获得的许可操作软件应用(204)的方法,所述方法包括:
当所述用户设备距已知地理位置处的本地接口设备(703)小于预定最大距离时,与所述本地接口设备(104)建立通信(302、704);
通过使用与所述本地接口设备的通信以及所述本地接口设备向由所述许可提供方维护的许可服务器的认证,协商来自所述许可服务器(102)的许可提供(306、303C)。
34.如权利要求33所述的方法,还包括:
从所述用户设备(110)向所述本地接口设备(104)发送许可请求消息(306、706),所述许可请求消息(306、706)要使用所述本地接口设备在所述许可服务器处的认证来向所述许可服务器转发;以及
从所述本地接口设备接收所述许可(714)。
35.如权利要求34所述的方法,还包括:如果所述用户设备(110)离开所述本地接口设备(104)大于所述预定最大距离(716),则在所述用户设备处终止所述应用(717)。
36.如权利要求33所述的方法,还包括:
从所述本地接口设备(104)接收包含所述本地接口设备(104)的标识符的令牌(303C、822);
生成包括所述令牌的许可请求消息(823);以及
从所述用户设备向所述许可服务器发送所述许可请求消息(306C、824)。
37.如权利要求36所述的方法,其中,所述许可是有时间限制的。
38.如权利要求33-37中任一项所述的方法,其中,所述用户设备使用近场通信NFC与所述本地接口设备通信,从而所述预定最大距离由所述NFC信号的范围来确定。
39.一种在网络中分发软件应用的许可时使用本地接口设备(104)的方法,包括:
使所述本地接口设备位于已知地理位置处;
与许可服务器(102)协商证书(301、702),从而向所述许可服务器认证所述本地接口设备;
当用户设备距所述本地接口设备小于预定最大距离时,与所述用户设备(110)建立通信(302、705);
从所述用户设备接收许可请求消息(306、707);
对所述许可请求消息(308B、708)或形成所述许可请求消息(308)的数据分组签名;
向所述网络中的许可服务器(102)转发经签名的许可请求消息(309、709);
从所述许可服务器接收经签名的许可(312、712);以及
向所述用户设备(314、713)发送所述许可。
40.如权利要求39所述的方法,还包括:在向所述许可服务器转发经签名的许可请求消息之前,执行距离边界检查以确认所述用户设备在所述预定最大距离内。
41.一种在网络中分发软件应用的许可时使用本地接口设备(104)的方法,所述方法包括:
使所述本地接口设备位于已知地理位置处;
与许可服务器(102、702)协商证书,从而向所述许可服务器认证所述本地接口设备;
当用户设备距所述本地接口设备小于预定最大距离时,与所述用户设备(110)建立通信(705);
生成能够由所述网络中的许可服务器验证并且能够由所述用户设备使用的令牌(820),以将所述令牌包括在向所述许可服务器发送的许可请求中;以及
向所述用户设备(821)发送所述令牌。
42.如权利要求41所述的方法,还包括,在建立与后续用户设备的通信时:
生成新令牌;
向所述后续用户设备发送所述新令牌;以及
向所述许可服务器发送使先前令牌无效的令牌作废消息。
43.如权利要求41-42中任一项所述的方法,还包括:在向所述用户设备转发所述令牌之前,执行距离边界检查以确认所述用户设备在所述预定最大距离内。
44.一种从许可服务器(102)分发软件应用的许可的方法,所述方法包括:
认证(701)已知地理位置处的本地接口单元(104);
接收许可请求消息(710、825),所述许可请求消息包括经认证的本地接口设备的标识符;以及
基于对所述本地接口设备的认证来向距所述本地接口设备小于预定距离的用户设备发布许可(711、826)。
45.如权利要求44所述的方法,还包括:维护许可数据库(103),并且仅在不是所有的所述许可都被其他用户设备使用时才发布所述许可。
46.一种分发软件应用的许可的方法,包括:
向许可服务器(102)认证(301)至少一个本地接口设备(104),所述本地接口设备在已知地理位置处;
当用户设备距所述本地接口设备小于预定最大距离时,在所述本地接口设备和所述用户设备(110)之间建立通信(302);
基于所述本地接口设备的所述认证,在所述许可服务器处接收许可请求消息(309、306C);以及
如果所述认证是正确的,则从所述许可服务器向所述用户设备发送许可(312、312C);
在所述用户设备处接收所述许可,并且根据接收到的许可来操作应用(315)。
47.一种存储器,所述存储器包括计算机程序和其上存储有所述计算机程序的计算机可读装置,
其中,所述计算机程序包括计算机可读代码,当在设备上运行时,所述计算机可读代码使所述设备表现为根据权利要求7至32中任一项所述的设备;或者
其中,所述计算机程序是用于在网络中分发许可的计算机程序,包括可读代码,当在设备上运行时,所述可读代码使所述设备执行根据权利要求33至46中任一项所述的方法。
48.如权利要求47所述的存储器,其中,所述存储器以计算机程序产品的形式布置。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/SE2013/050600 WO2014193274A1 (en) | 2013-05-27 | 2013-05-27 | Method for distribution of licenses based on geographical location |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105917342A CN105917342A (zh) | 2016-08-31 |
CN105917342B true CN105917342B (zh) | 2019-10-15 |
Family
ID=51989176
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380076948.9A Active CN105917342B (zh) | 2013-05-27 | 2013-05-27 | 基于地理位置分发许可的方法 |
Country Status (4)
Country | Link |
---|---|
US (2) | US9811644B1 (zh) |
EP (1) | EP3005205B1 (zh) |
CN (1) | CN105917342B (zh) |
WO (1) | WO2014193274A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102013012339A1 (de) * | 2013-07-25 | 2015-01-29 | Giesecke & Devrient Gmbh | Externe sichere Einheit |
AU2014200318B2 (en) * | 2014-01-17 | 2020-07-02 | Vsk Electronics Nv | Threat-monitoring systems and related methods |
DE102015209714A1 (de) | 2015-05-27 | 2016-12-01 | Siemens Aktiengesellschaft | Vorrichtung und Verfahren zum Anpassen einer Nutzung eines Geräts |
JP6519411B2 (ja) * | 2015-08-31 | 2019-05-29 | 富士通株式会社 | ライセンス管理装置及びライセンス管理プログラム |
US11151225B2 (en) * | 2016-02-17 | 2021-10-19 | Dell Products, L.P. | License management in pre-boot environments |
US10277283B2 (en) * | 2016-09-14 | 2019-04-30 | Sony Corporation | NFC device, reader/writer device and methods for authorizing and performing an update |
US10581941B2 (en) * | 2017-04-04 | 2020-03-03 | Roku, Inc. | Time and content restrictions based on user-identification |
US11113366B2 (en) * | 2017-06-06 | 2021-09-07 | Infosys Limited | Cryptographic mechanisms for software setup using token-based two-factor authentication |
WO2019003794A1 (ja) * | 2017-06-26 | 2019-01-03 | 日本電気株式会社 | アンテナ方向調整装置、アンテナ方向調整システム、及びその方法 |
US10831868B2 (en) * | 2018-04-02 | 2020-11-10 | International Business Machines Corporation | Global license spanning multiple timezones in a rate-based system |
EP3671498B1 (fr) * | 2018-12-20 | 2023-08-09 | EM Microelectronic-Marin SA | Procede d'authentification securisee d'un transpondeur en communication avec un serveur |
GB201901391D0 (en) * | 2019-02-01 | 2019-03-20 | Nchain Holdings Ltd | Computer-implemented system and method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101065768A (zh) * | 2004-06-10 | 2007-10-31 | 阿卡麦科技公司 | 分布网络中的数字权利管理 |
CN101340278A (zh) * | 2007-07-03 | 2009-01-07 | 三星电子株式会社 | 许可证管理系统和方法 |
US7603318B1 (en) * | 2006-10-24 | 2009-10-13 | Adobe Systems Incorporated | License distribution |
WO2012058457A1 (en) * | 2010-10-29 | 2012-05-03 | Qualcomm Incorporated | Methods and systems for accessing licensable items in a geographic area |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5204897A (en) | 1991-06-28 | 1993-04-20 | Digital Equipment Corporation | Management interface for license management system |
US20050108096A1 (en) * | 1999-09-28 | 2005-05-19 | Chameleon Network Inc. | Portable electronic authorization system and method |
JP2002288375A (ja) * | 2001-03-26 | 2002-10-04 | Sanyo Electric Co Ltd | コンテンツ提供装置、コンテンツ提供方法およびライセンスサーバ |
US20020176579A1 (en) * | 2001-05-24 | 2002-11-28 | Deshpande Nikhil M. | Location-based services using wireless hotspot technology |
US7734549B2 (en) * | 2002-12-31 | 2010-06-08 | Motorola, Inc. | Methods and apparatus for managing secured software for a wireless device |
KR100763193B1 (ko) | 2005-10-13 | 2007-10-04 | 삼성전자주식회사 | Drm 라이센스 제공 방법 및 시스템 |
KR101215343B1 (ko) * | 2006-03-29 | 2012-12-26 | 삼성전자주식회사 | 지역 도메인 관리 모듈을 가진 장치를 이용하여 도메인을 지역적으로 관리하는 장치 및 방법 |
EP2008483B1 (fr) * | 2006-04-19 | 2020-03-04 | Orange | Procédé de sécurisation de l'accès à un module de communication de proximité dans un terminal mobile |
US7620386B2 (en) * | 2006-06-08 | 2009-11-17 | At&T Intellectual Property I, Lp | Establishing a collaborative domain among communication terminals responsive to authentication |
US20080141378A1 (en) * | 2006-12-12 | 2008-06-12 | Mclean Ivan Hugh | Method and apparatus for creating licenses in a mobile digital rights management network |
US20090006261A1 (en) * | 2007-06-28 | 2009-01-01 | Microsoft Corporation | Portable device for carrying licenses |
US8935945B2 (en) | 2008-11-19 | 2015-01-20 | Toshiba Mitsubishi-Electic Industrial Systems Corporation | Control system |
US9251334B1 (en) * | 2014-01-30 | 2016-02-02 | Amazon Technologies, Inc. | Enabling playback of media content |
-
2013
- 2013-05-27 EP EP13885732.1A patent/EP3005205B1/en active Active
- 2013-05-27 CN CN201380076948.9A patent/CN105917342B/zh active Active
- 2013-05-27 US US14/786,785 patent/US9811644B1/en active Active
- 2013-05-27 WO PCT/SE2013/050600 patent/WO2014193274A1/en active Application Filing
-
2017
- 2017-10-30 US US15/797,109 patent/US10140435B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101065768A (zh) * | 2004-06-10 | 2007-10-31 | 阿卡麦科技公司 | 分布网络中的数字权利管理 |
US7603318B1 (en) * | 2006-10-24 | 2009-10-13 | Adobe Systems Incorporated | License distribution |
CN101340278A (zh) * | 2007-07-03 | 2009-01-07 | 三星电子株式会社 | 许可证管理系统和方法 |
WO2012058457A1 (en) * | 2010-10-29 | 2012-05-03 | Qualcomm Incorporated | Methods and systems for accessing licensable items in a geographic area |
Also Published As
Publication number | Publication date |
---|---|
US9811644B1 (en) | 2017-11-07 |
US20180052980A1 (en) | 2018-02-22 |
WO2014193274A9 (en) | 2015-11-19 |
WO2014193274A1 (en) | 2014-12-04 |
CN105917342A (zh) | 2016-08-31 |
EP3005205A4 (en) | 2016-09-14 |
US10140435B2 (en) | 2018-11-27 |
EP3005205A1 (en) | 2016-04-13 |
EP3005205B1 (en) | 2019-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105917342B (zh) | 基于地理位置分发许可的方法 | |
CN1714529B (zh) | 具有便利和安全设备注册的基于域的数字权利管理系统 | |
JP4712871B2 (ja) | サービス提供者、端末機及びユーザー識別モジュールの包括的な認証と管理のための方法及びその方法を用いるシステムと端末装置 | |
CN106471514B (zh) | 安全无线充电 | |
JP5414898B2 (ja) | 有線lanのセキュリティアクセス制御方法及びそのシステム | |
CN109479049B (zh) | 用于密钥供应委托的系统、设备和方法 | |
CN109729523B (zh) | 一种终端联网认证的方法和装置 | |
KR101215343B1 (ko) | 지역 도메인 관리 모듈을 가진 장치를 이용하여 도메인을 지역적으로 관리하는 장치 및 방법 | |
CN109561066A (zh) | 数据处理方法、装置、终端及接入点计算机 | |
KR102177794B1 (ko) | 사물인터넷 블록체인 환경에서의 디바이스 분산 인증 방법 및 이를 이용한 디바이스 분산 인증 시스템 | |
CN111049660A (zh) | 证书分发方法、系统、装置及设备、存储介质 | |
US20090199009A1 (en) | Systems, methods and computer program products for authorising ad-hoc access | |
TW201012166A (en) | Virtual subscriber identity module | |
WO2012151351A1 (en) | Wireless authentication using beacon messages | |
RU2007138849A (ru) | Сетевые коммерческие транзакции | |
JP7135569B2 (ja) | 端末登録システムおよび端末登録方法 | |
JP6894160B1 (ja) | スマートコントラクトに基づいた利用権情報処理装置、利用権情報処理システム、および利用権情報処理方法 | |
EP1843274B1 (en) | Digital rights management system | |
JP2011502295A (ja) | 様々な電子装置間の、特に電子サービスプロバイダの電子装置と電子サービスのユーザの電子装置との間の保護された電子通信を確立する方法 | |
WO2018011267A1 (en) | Method for providing secure digital signatures | |
JP4499575B2 (ja) | ネットワークセキュリティ方法およびネットワークセキュリティシステム | |
Kasper et al. | Rights management with NFC smartphones and electronic ID cards: A proof of concept for modern car sharing | |
US20220407843A1 (en) | Communication system and communication method | |
KR101942615B1 (ko) | 웹 기반 구조를 이용하는 스마트 포스터 인증 방법 및 이를 수행하는 장치 | |
Kou et al. | An efficient Authentication Scheme Using Token Distribution for Cloud-based Smart Home |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |