CN103001923B - 用于控制对在计算机系统上的电子内容片段的访问的方法和系统 - Google Patents
用于控制对在计算机系统上的电子内容片段的访问的方法和系统 Download PDFInfo
- Publication number
- CN103001923B CN103001923B CN201110260513.2A CN201110260513A CN103001923B CN 103001923 B CN103001923 B CN 103001923B CN 201110260513 A CN201110260513 A CN 201110260513A CN 103001923 B CN103001923 B CN 103001923B
- Authority
- CN
- China
- Prior art keywords
- service
- key
- node
- content
- nemo
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 159
- 239000012634 fragment Substances 0.000 title claims description 31
- 230000009471 action Effects 0.000 claims description 15
- 230000001012 protector Effects 0.000 claims description 10
- 230000001276 controlling effect Effects 0.000 claims description 5
- 230000002596 correlated effect Effects 0.000 claims description 4
- 230000027455 binding Effects 0.000 abstract description 84
- 238000009739 binding Methods 0.000 abstract description 84
- 230000006854 communication Effects 0.000 abstract description 39
- 238000004891 communication Methods 0.000 abstract description 38
- 230000005540 biological transmission Effects 0.000 abstract description 22
- 238000009826 distribution Methods 0.000 abstract description 15
- 239000000344 soap Substances 0.000 abstract description 7
- 102100022219 NF-kappa-B essential modulator Human genes 0.000 description 195
- 101710090077 NF-kappa-B essential modulator Proteins 0.000 description 195
- 230000004044 response Effects 0.000 description 97
- 230000008569 process Effects 0.000 description 95
- 230000006870 function Effects 0.000 description 81
- 238000007726 management method Methods 0.000 description 73
- 238000013475 authorization Methods 0.000 description 47
- 230000007246 mechanism Effects 0.000 description 31
- 238000012545 processing Methods 0.000 description 23
- 230000002452 interceptive effect Effects 0.000 description 18
- 230000006978 adaptation Effects 0.000 description 17
- 238000012856 packing Methods 0.000 description 14
- 230000000875 corresponding effect Effects 0.000 description 13
- 239000003795 chemical substances by application Substances 0.000 description 9
- 230000003993 interaction Effects 0.000 description 9
- 238000013507 mapping Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 7
- 238000009795 derivation Methods 0.000 description 7
- 238000013461 design Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000007613 environmental effect Effects 0.000 description 7
- 238000004806 packaging method and process Methods 0.000 description 7
- 230000001360 synchronised effect Effects 0.000 description 7
- 101000873111 Homo sapiens Vesicle transport protein SEC20 Proteins 0.000 description 6
- 102100035030 Vesicle transport protein SEC20 Human genes 0.000 description 6
- 230000008878 coupling Effects 0.000 description 6
- 238000010168 coupling process Methods 0.000 description 6
- 238000005859 coupling reaction Methods 0.000 description 6
- 239000000203 mixture Substances 0.000 description 6
- 238000003860 storage Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 239000002131 composite material Substances 0.000 description 5
- 238000005538 encapsulation Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 241001125671 Eretmochelys imbricata Species 0.000 description 3
- 238000006116 polymerization reaction Methods 0.000 description 3
- 230000001681 protective effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000003319 supportive effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000001427 coherent effect Effects 0.000 description 2
- 238000005314 correlation function Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009870 specific binding Effects 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- LMDZBCPBFSXMTL-UHFFFAOYSA-N 1-ethyl-3-(3-dimethylaminopropyl)carbodiimide Chemical compound CCN=C=NCCCN(C)C LMDZBCPBFSXMTL-UHFFFAOYSA-N 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 208000001613 Gambling Diseases 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000003339 best practice Methods 0.000 description 1
- 230000008275 binding mechanism Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000013506 data mapping Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000005111 flow chemistry technique Methods 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000035800 maturation Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000035807 sensation Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 230000008838 symmetric binding Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/12—Payment architectures specially adapted for electronic shopping systems
- G06Q20/123—Shopping for digital content
- G06Q20/1235—Shopping for digital content with control of digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- 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/107—License processing; Key processing
- G06F21/1073—Conversion
-
- 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/108—Transfer of content, software, digital rights or licenses
- G06F21/1084—Transfer of content, software, digital rights or licenses via third party
-
- 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/108—Transfer of content, software, digital rights or licenses
- G06F21/1085—Content sharing, e.g. peer-to-peer [P2P]
-
- 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/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0281—Proxies
-
- 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
-
- 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/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q2220/00—Business processing using cryptography
- G06Q2220/10—Usage protection of distributed data files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q2220/00—Business processing using cryptography
- G06Q2220/10—Usage protection of distributed data files
- G06Q2220/18—Licensing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
- H04L2209/603—Digital right managament [DRM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/101—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/102—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measure for e-commerce
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/061—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Accounting & Taxation (AREA)
- Data Mining & Analysis (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Finance (AREA)
- Computer And Data Communications (AREA)
- Storage Device Security (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本说明书描述用于以某种方式执行由策略管理的对等服务编排的系统和方法,采用这种方式,可以支持构建能够带给用户丰富媒体体验的自组织服务网络。在一个实施例中,服务分布在多个对等通信节点上,每个节点都利用消息泵和工作流整理器来提供消息路由和消息编排。服务接口的分布式策略管理有助于提供信任和安全,从而支持商业价值交换。通过对等消息传递和工作流整理,可以从一组异类原语服务动态创建服务。共享资源是一些不同类型的服务,它们使用不同于基于UDDI、SOAP和WSDL的Web服务部署中通常支持的那些服务接口绑定。在一个优选实施例中,提供了一种媒体服务框架,它支持节点在从WAN到PAN的网络层之间相互查找、交互、交换价值和协作。
Description
本发明是下述申请的分案申请:
发明名称:用于对等服务编排的可互操作系统和方法
申请号:200480021795.9
国际申请号:PCT/US2004/018120
国际申请申请日:2004年6月7日
最早的优先权日:2003年6月5日
相关专利申请
本专利申请要求共同所有的美国临时专利申请第60/476,357号和第60/504,524号的优先权,前者的发明名称为“用于对等服务编排的系统和方法”,申请人为WilliamBradley和DavidMaher,于2003年6月5日提交,后者的发明名称为“数字权限管理引擎系统和方法”,申请人为GillesBoccon-Gibod,于2003年9月15日提交,这两项专利申请均以全文引用的方式在本文中使用;这两个美国临时专利申请构成了当前说明书/详细说明的一部分,并且附加在此分别作为附录A和B。
版权授权
本专利文档的公开部分包含受版权保护的内容。版权所有人并不反对任何人将本专利文档或专利公开部分复制到专利商标局的专利文件或记录中,但保留其他所有版权。
技术背景
诸如Internet之类的网络已经成为传递数字内容和媒体相关服务的主要媒介。标准Web服务协议的出现有望加速这一趋势,使公司能够通过标准化机制可以提供跨多个软件平台进行互操作并支持业务服务和用户之间协作的服务。
但是,要实现建立一个互操作和安全的媒体相关服务环境的目标,还存在许多障碍。例如,多个事实上相互重叠的正式标准实际上会限制直接互操作性,由于其迫使不同的实现在基本标准但是另外不兼容的可选技术方法之间进行选择以便解决相同的基本互操作性或互连问题。在某些情况下,这些不兼容性是由于试图集成不同代的技术引起的问题所造成的,在另外一些情况下,这些问题是由于同时运营但处于不同地点、具有不同需求的各方作出的市场选择的结果。因此,尽管存在标准化,但定位和连接提供所需服务的设备并与之交互经常会很困难。而且在不同的信任和保护模型之间经常存在不兼容问题。
尽管诸如WSDL(Web服务描述语言)之类的新兴Web服务标准正在着手为面向Internet的系统解决一些此类问题,但这些方法并不完善。它们不能跨个人和局域网、家用、企业和部门网关以及广域网等多个网络层解决此类问题。而且,这些标准也不能通过利用各种服务接口绑定(例如,CORBA、WS-I、JavaRMI、DCOM、C函数调用和.Net等等)对简单和复杂服务进行动态编排,完全满足互操作性的需要,从而限制了集成许多传统应用的能力。被广泛部署和采用的对等(P2P)应用与网络的出现,进一步增加了创建可互操作的媒体相关服务的困难,其部分原因在于,没有关于如何体现和执行数字内容使用权的统一概念。
发明内容
这里描述的系统和方法的实施例可用于解决上述部分或全部问题。在一个实施例中,提供了一种服务框架,该框架使得用户或企业媒体空间中的多个参与者(例如,用户、内容提供者、设备制造商、服务提供者)能够通过公开的服务接口以丰富的动态方式相互查找、建立信任关系并交换价值。此框架的实施例一般被称为“媒体编排网络环境(NEMO)”,它可以提供一个平台,来支持异类消费设备、媒体格式、通信协议和安全机制环境下媒体相关的可互操作的安全的电子商务。服务接口的分布式策略管理可用于帮助提供信任和安全,从而帮助实现商业价值交换。
新兴的Web服务标准正在着手为面向Internet的服务解决互操作性问题,而NEMO的实施例可用于解决跨个人和局域网、家用、企业和部门网关以及广域网等多个网络层的互操作性问题。例如,NEMO可以在一个使用移动电话、游戏平台、PDA、PC、基于web的内容服务、发现服务、通知服务和更新服务的互连系统中提供互操作性。NEMO的实施例可进一步用于通过各种本地和远程接口绑定(例如,WS-I[1]、JavaRMI、DCOM、C、.Net,等等)来提供对简单和复杂服务的动态对等编排,从而支持传统应用的集成。
在媒体环境中,主要参与者群体(例如内容发布者、分发者、零售商、消费设备提供商和用户)所需要或喜欢的系统和接口常常有很大的不同。因此,最好是将这些实体所提供的功能统一到能够迅速发展为最佳配置的集成服务中,以满足参与实体的需要。
例如,各种服务发现协议和注册中心(例如蓝牙、UPnP、Rendezvous、JINI、UDDI和LDAP等等)可共存于同一服务中,这样每个节点都能使用对承载该节点的设备最合适的发现服务。而另一服务可能会支持基于IP和无线SMS通知或各种媒体格式(MP4和WMF等等)。
NEMO的实施例利用对等(P2P)服务编排来实现这些目标。现在人们已经看到P2P框架在音乐和视频分发等方面的优势,P2P技术的应用可以更加广泛。
Web服务中的大多数活动都集中于具有相对静态网络配置的机器到机器交互和客户端服务交互。NEMO还能处理以下情况,即一个人携带其个人局域网(PAN)设备靠近LAN或另一个PAN,希望立即重新配置服务访问并在对等基础上连接许多其他服务。
在媒体和各种其他企业服务中,也存在很多应用机会,尤其是两个或多个企业之间的交互。企业大多是按照一定的层次结构进行组织的,其信息系统通常反映了这种组织结构,来自不同企业的人员常常可以通过对等接口更为有效地进行交互。例如,A公司中的收货人员/服务可以通过与B公司的发货人员进行对话来更直接地解决问题或获得有用的信息。交叉层次或不必要的接口一般是没有用的。一些送货公司(例如FedEx和UPS)认识到这一点,因此他们允许客户直接看到其处理,直接对事件进行监视。公司和市政当局通过企业门户来组织其服务,从而形成自然的自助服务。
但是,现有对等框架并不允许一个企业向其用户和提供者公开自己的各种服务接口,让这些实体在自然的对等级别上进行交互,这样这些实体就不能以最适合自己的方式编排该企业的服务。这将要求对那些对等接口的实行某种信任管理机制。利用本发明的优选实施例,不仅允许而且可以促进以P2P方式公开服务接口。
对于诸如DRM(数字权限管理)等特定应用,NEMO的实施例可用于提供面向服务的体系结构,以便解决封闭的同类DRM系统的缺陷与局限性问题。优选实施例可用于为不同的消费设备、媒体格式和安全机制提供媒体相关的可互操作安全商务与操作。
许多传统的DRM系统需要相对复杂的重量级客户端引擎来处理受保护内容,本发明的优选实施例与此不同,它允许客户端DRM引擎相对简单,能够执行由在服务级运行的、功能更强大的策略管理系统设定的管理策略。本发明的优选实施例还可以在媒体格式和加密协议的选择方面提供更大的灵活性,并且可以促进DRM系统之间的互操作性。
可以使用一种简单、开放且灵活的客户端DRM引擎来构建功能强大的、支持DRM的应用。在一个实施例中,DRM引擎被设计为可以很容易地集成到Web服务环境和几乎任何宿主环境或软件体系结构中。
可利用服务编排来克服互操作性障碍。例如,在出现内容查询请求时,可协调各种服务(例如,发现、搜索、匹配、更新、权限交换和通知)来满足请求。使用具有编排功能的优选实施例,用户可以在动态多层网络的任何一点、从任何设备中查看所有家用和基于Internet的内容缓存。可以扩展这一功能以促进流和播放列表的共享,使临时广播与小范围广播易于通过许多不同的设备发现和连接,同时确保权限不受侵犯。NEMO的优选实施例提供了一种端到端的可互操作媒体分发系统,该系统不依赖于单一的一组媒体格式、权限管理和实现协议标准。
在包括内容制作者、分发者、零售商、服务提供者、设备制造商和用户的价值链中,每一环节通常都有许多局部需要。这在权限管理方面尤其如此,在权限管理中,内容制作者可以明确使用权,即对不同的下游价值链元素在各种环境下赋予不同的使用权。用户网关所关注的范围一般要窄得多,最终用户设备关注的范围可能还要窄一些,具体来说就是仅播放内容。利用自动化程度足够高的动态自配置分发服务的系统,内容制作者可以制作和打包内容,明确权限,并放心地依靠其他服务提供者所提供的增值服务,向感兴趣的用户快速提供内容,而不用考虑用户位于何处,也不用考虑他们使用的是哪种设备。
NEMO的优选实施例通过为多个服务提供者提供创新和引入新服务的途径来实现这一目标,这些新服务让用户和服务提供者均可获益,而不必等待或依赖于单一的一组端到端标准。策略管理可以限制盗版者利用这些合法服务的范围。NEMO所产生的网络效应将鼓励大量合法服务的发展,合法服务提供的价值比盗版者提供的价值更高。
下面讨论一些在许多NEMO实施例中常见的“最佳实践”技巧,其中包括以下内容:
·将复杂的面向设备的策略和面向服务的策略分开
·将比较简单的服务组合成复杂服务
·动态配置和广告服务
·动态发现和调用异类环境中的各种服务
·利用来自简单设备的网关服务
此外,还将介绍一种可以用于NEMO框架的新颖DRM引擎和体系结构。此DRM系统可用于实现以下部分或全部目标:
简单。在一个实施例中,提供了一种DRM引擎,它使用最低要求的基于栈的虚拟机(VM)来执行控制程序(例如,执行管理策略的程序)。例如,此VM可以仅由几页代码组成。
模块化。在一个实施例中,我们把DRM引擎设计成一个单一的模块,它集成在一个支持DRM的更大型应用内。现在,我们可以从宿主环境中请求许多以前由单个DRM内核执行的功能(例如加密服务),该宿主环境可以向其他代码模块提供这些服务。这使得设计人员能够相对容易地整合标准或专用技术。
灵活性。由于采用模块化设计,DRM引擎的优选实施例可用于从嵌入式设备到通用PC的各种软件环境。
开放。DRM引擎的实施例适合作为参考软件,这样,用户就可以使用几乎任何编程语言和在他们能够完全控制的系统中实现代码模块和API。在一个实施例中,系统并不强制要求用户采用特定的内容格式或限定内容编码。
无关乎语义。在一个实施例中,DRM引擎的基础是一种简单的基于图的模型,该模型将授权请求转换为对图结构的查询。图中的顶点表示系统中的实体,有向边表示这些实体之间的关系。但是,DRM引擎并不需要知道这些顶点和边在任何特定的应用中表示什么。
与Web服务无缝集成。DRM客户端引擎可以采用多种方式使用Web服务。例如,可以通过服务来动态发现图中的顶点和边。也可以通过高级Web服务来发现内容和内容许可,并将其传递给DRM引擎。尽管一个DRM引擎的具体实施例可以配置在许多地方用于支持Web服务,但是其体系结构与Web服务无关,可以用作一个独立的客户端DRM内核。
简化的密钥管理。在一个实施例中,可以重新使用图拓扑来简化内容保护密钥的派生,而不需要加密重定位。这种密钥派生方法是DRM引擎一个可选特性,但其功能非常强大——系统也可以或者能够与其他密钥管理系统集成。
管理、加密与内容的分离。在一个实施例中,管理内容的控制在逻辑上与用于执行管理的加密信息不同。同样,控制和加密信息在逻辑上也与内容和内容格式不同。可以采用分离的方式或一个统一数据包传递每个元素,这样就可以在设计内容传递系统时具有高度的灵活性。
下面描述NEMO框架的实施例及其应用和组成部分。应该认识到,此框架本身是新颖的,其许多组件和应用也是新颖的。还应该认识到,我们可以采用多种方式来实施本发明,其中包括流程、设备、系统、装置、方法、计算机可读媒介或这些元素的组合。下面的具体说明和附图将详细介绍这些特点与优势以及其他特点与优势,并且以示例的方式阐释本发明有效主体的原理。
附图简要说明
参照以下结合附图的具体说明,可以很容易地理解本发明的有效主体的实施例,在附图中,类似的参考编号表示类似的结构元素,其中:
图1所示为系统框架的示例实施例。
图2a所示为系统节点的概念性网络。
图2b所示为P2P网络中的系统节点。
图2c所示为在Internet运行的系统节点。
图2d所示为系统网关节点。
图2e所示为系统代理节点。
图2f所示为系统设备适配器节点。
图3所示为DRM设备的概念性网络。
图4所示为概念性DRM节点授权图。
图5a所示为系统节点体系结构的概念性视图。
图5b所示为由一个系统节点的服务适配层支持的多个服务接口绑定。
图6a所示为提供服务的系统节点和使用服务的系统节点之间的基本交互。
图6b为提供服务的系统节点和使用服务的系统节点之间的基本交互的另一示例。
图7a所示为客户端WSDL交互中所涉及的服务接入点。
图7b所示为客户端本地交互中所涉及的服务接入点。
图7c所示为服务端点对点交互模式中所涉及的服务接入点。
图7d所示为服务端点对多点交互模式中所涉及的服务接入点。
图7e所示为服务端点对中介体交互模式中所涉及的服务接入点。
图8所示为服务适配层的体系结构的一个实施例。
图9a所示为依赖外部服务提供者的工作流整理器的交互模式。
图9b所示为与客户端节点进行的直接多阶段通信中所涉及的工作流整理器的交互模式。
图9c所示为工作流整理器的基本节点内交互模式。
图9d所示为工作流整理器的相对复杂的交互模式。
图10所示为DRM引擎的系统集成。
图11所示为DRM引擎的体系结构的一个实施例。
图12a所示为客户端系统节点内的DRM引擎和相关元素。
图12b所示为服务端系统节点内的DRM引擎和相关元素。
图13所示为内容保护和管理DRM对象的一个实施例。
图14所示为节点和链接DRM对象的一个实施例。
图15所示为DRM加密密钥元素的一个实施例。
图16所示为客户端和服务提供系统节点之间的基本交互模式。
图17a所示为一组通知处理节点,它发现支持通知处理程序服务的节点。
图17b所示为传递通知的过程。
图18a所示为一种客户端驱动的服务发现情形,其中,请求节点向目标服务提供节点发出服务发现请求。
图18b所示为一种对等体注册服务发现情形,其中,请求节点寻求通过服务提供节点注册其说明。
图18c所示为一种基于事件的服务发现情形,其中感兴趣的节点接收一个关于服务可用性变化的通知(例如,服务提供节点中存在一个服务)。
图19a所示为通过与隐式可信信道的服务绑定建立信任的过程。
图19b所示为基于请求/响应模型建立信任的过程。
图19c所示为基于显式安全凭证交换建立信任的过程。
图20所示为由策略管理的服务访问。
图21所示为具有成员身份和密钥访问链接的示例DRM节点图。
图22所示为DRMVM代码模块的格式的一个实施例。
图23所示为系统功能概要的层次结构。
图24所示为DRM音乐播放器的应用情形。
具体实施方式
下面详细说明本发明的有效主体。尽管在进行说明时结合了若干实施例,但应该认识到,本发明的有效主体并不局限于任一实施例,而是包括各种替代、修改和等效体。举例来说,尽管一些实施例是在面向用户的内容和应用的环境下描述的,但熟悉本领域的技术人员会认识到,所公开的系统和方法可以很容易地应用到更广泛的应用中。例如,这些实施例可以很容易地应用于企业内容和应用环境,而没有任何限制。另外,尽管为了帮助全面理解本发明的有效主体而在以下说明中列出了各种具体细节,但是不具备部分或全部此类细节的一些实施例也可以实施。此外,为了清晰起见,对于本领域的技术人员所熟知的某些技术资料没有进行详细说明,以避免不必要地模糊对本发明的有效主体的理解。
1.概念
1.1.Web服务
Web服务体系结构(WSA)是面向服务的体系结构(SOA)的一个具体实例。SOA本身是一种由松散耦合的协作软件代理组成的分布式系统。SOA中的代理可以提供服务、请求(使用)服务或执行这两种操作。我们可以将服务看作一组定义良好的独立(self-contained)操作,它们由充当服务提供商角色的代理管理。在一些网络可寻址的位置(称为端点),可以使用标准协议和数据格式通过网络调用这些操作。“独立”的意思是指,该服务并不直接依赖于另一服务或所涵盖应用的状态或环境。
支持SOA概念的现有技术的例子包括CORBA、DCOM和J2EE。WSA非常有吸引力,因为它并不局限于特定的平台、编程语言、应用协议栈或数据格式约定。WSA使用基于XML的标准格式来描述服务和交换消息,这促进了提供者与用户之间的松散耦合和互操作性;并且支持多种标准Internet协议(特别是HTTP),这方便了潜在全局分布式系统中的部署和参与。
一种新出现的趋势是在“即插即用”服务总线环境中查看SOA。服务总线方法通过利用描述、消息传递和传输标准来提供服务编排。此基础结构还可融入用于发现、转换、安全和其他可能目的的标准。由于其中融入的通用标准的本质特性,因此WSA具有灵活性、可扩展性和可伸缩性,这就为构建编排服务总线模型提供了适当的基础。在这种模型中,基本工作单元(服务)被称为Web服务。
Web服务有很多种定义。以下定义来自万维网联盟(W3C)Web服务体系结构工作草案(2003年8月8日,请参阅www.w3.org/TR/ws-arch):
Web服务是一种软件系统,用于支持通过网络进行的可互操作的机器到机器交互。它具有一种用机器可处理的格式(具体为WSDL)描述的接口。其他系统使用SOAP消息并以其描述中规定的方式与Web服务进行交互,这些SOAP消息通常通过具有XML序列化的HTTP协议并结合其他Web相关标准进行传送。
尽管W3C定义提供了一个有用的起点,但应该认识到,这里所使用的术语“Web服务”具有更广泛的意义,而不存在例如使用特定标准、格式和协议(例如WSDL、SOAP、XML和HTTP等等)的限制。
可以将一个特定Web服务描述为用于一组逻辑上相干的操作的抽象接口,它为服务提供者和服务请求者之间的关系(可能是临时关系)提供基础。
当然,实际的Web服务具有具体的实现。提供者的具体实现有时被称为服务(以与Web服务相区别)。实际上实现服务提供者的功能的软件称为提供者代理,实际上实现服务请求者的功能的软件称为请求者代理。拥有该代理的个人或组织相应地称为提供者实体或请求者实体。当单独使用时,根据上下文,请求者或提供者可以指相应的实体或代理。
Web服务的存在是为了达到一个目的,如何实现这一目的是由特定的Web服务消息交换的技术细节和语义指定的。技术细节是指机器可处理的准确技术规范,其允许通过网络进行消息交换。虽然技术细节具有准确的定义,但语义可能并非如此。语义是指管理请求者实体和提供者实体对于Web服务的理解和总体期望的显式或隐式“契约”,它可以是任意形式的。
通常利用三个角色的交互来建立Web服务的模型:(i)服务提供者;(ii)服务请求者;以及(iii)服务注册中心。在这一模型中,服务提供者向服务注册中心“发布”描述其Web服务的信息。服务请求者通过某种发现机制“找到”这一信息,然后利用这一信息“绑定”到服务提供者,以利用此服务。绑定只是表示请求者将通过利用由提供者在发布的服务描述中指定的消息格式化、数据映射和传输协议约定来调用提供者提供的操作。用于描述这一信息的基于XML的语言称为Web服务描述语言(WSDL)。
服务提供者提供对用于某种特定的目的一些操作集合的访问,这些操作通过WSDL服务描述进行说明;此服务描述被发布到一个注册中心(发布方法多种多样,任一种方法均可),这样,该服务就能够被发现。注册中心可以是公共的,也可以是在一个特定域内专有的。
服务注册中心是一种通过返回预先发布的服务描述来响应服务搜索请求的软件。服务请求者是一种软件,它根据从注册中心获得的WSDL中所指定的绑定信息来调用提供者所提供的各种操作。
服务注册中心可以仅在概念上存在,也可以作为实际软件真实存在,提供用于查询、定位和绑定到特定服务的服务描述的数据库。但是,无论是请求者对一个服务实际进行主动搜索,还是静态或动态地提供服务描述,注册中心都是Web服务模型的一个逻辑上独立的方面。注意到这一点非常重要:在实际实现中,服务注册中心可以是服务请求者平台和服务提供者平台的一部分,也可以驻留在另一位置,这一位置完全由某一已知地址或通过一些其他方式提供的地址进行标识。
WSDL服务描述支持松散耦合,而松散耦合是SOA的主旨所在。尽管服务请求者最终将理解服务接口的语义,但是要获得某种期望的结果还是比较耗时的,服务描述将服务接口与特定服务绑定信息隔离开来,并支持高动态的Web服务模型。
面向服务的体系结构可以构建在许多可能的技术层之上。根据目前的实际应用,Web服务通常包括或涉及以下技术层面:
HTTP——一种用于大多数Web服务通信的标准应用协议。尽管可以通过各种网络协议(例如,SMTP和FTP等等)部署Web服务,但HTTP是目前使用的最为常见、最容易为防火墙接受的传输协议。对于某些应用,特别是内部网中的一些应用,根据具体要求,其他网络协议可能更为适合;但在当今构建的几乎所有Web服务平台中,都有HTTP的身影。
XML——一种用于格式化和访问结构化信息的内容(以及关于该内容的信息)的标准。XML是一种基于文本、用于在Web服务代理之间传递信息的标准。请注意,使用XML并不意味着Web服务的消息有效载荷不能包含任何二进制数据;但它确实意味着将根据XML约定设计这些数据的格式。大多数Web服务体系结构不一定要求将消息和数据序列化为字符流——可以仅将它们序列化为有意义的二进制流——但如果使用XML,这些流将代表XML文档。也就是说,在传输机制层次上,通常使用XML文档进行Web服务消息传递。
对于许多Web服务都特别重要的两个XML技术子集是“XML命名空间”和“XML架构”。XML命名空间用于解决命名冲突和声明XML文档中所包含元素的特定含义。XML架构用于定义和约束XML文档中所包含的各种信息项。尽管有可能(可选)通过其他方式实现这些目标,但使用XML可能是目前最常用的技术。用于Web服务文档本身的XML文档格式描述由XML架构定义,大多数实际Web服务操作和消息本身是结合XML架构进一步定义的。
SOAP——一种基于XML的标准,用于将指令和信息封装在一个具有特定格式的数据包中,以传送给其他接收者并由其进行处理。SOAP(简单对象访问协议)是一种标准机制,用于对Web服务消息进行打包,以在代理之间进行传输。SOAP的命名多少有些用词不当,它的原意是作为一种调用分布式对象的方法,在这方面,它确实比其他替代方式“更简单”;但是近来有一种趋势,就是将SOAP看作一种基于XML的有线通信协议,因为它已经超越了该缩写词的原始含义。
SOAP定义了一个相对轻量级的约定,用于结构化消息,并提供关于内容的信息。每个SOAP文档都包括一个封套,封套分为报头和正文两部分。尽管在结构上有些类似,但报头通常用于元信息或指令,以便相关接收者处理正文中所包含的内容。
SOAP还指定了一种方法,用于识别要素和完成所述要素的功能所需的处理。消息交换模式(MEP)是一个为如何在节点之间交换消息定义模式的要素。一种常见的MEP是请求-响应,它在请求节点和响应节点之间建立单一完整的消息事务(请参见http://www.w3.org/TR/2003/REC-soapl2-part2-20030624/#soapsupmep)。
WSDL——一种基于XML的标准,用于描述如何使用Web服务。从WSDL的角度来看,服务涉及一组在服务请求者和服务提供者之间交换的消息。消息是采用一种可以映射到特定协议的抽象方式来描述的。调用某些功能的消息交换称为操作。一组特定操作定义一个接口。接口通过命名绑定与具体的消息格式和协议相关联。绑定(接口到具体协议的映射)与一个适合该协议的URI相关联,从而得到一个端点。一个或多个相关端点(在特定URI上将接口映射到具体协议)的集合构成一个服务。
这些定义映射到特定的WSDL元素:
类型用于类型定义的容器元素
消息正在发送的数据的类型的抽象定义
操作基于输入、输出和默认消息的组合对一个动作的
抽象说明
portType操作的抽象集合——接口
绑定指定接口(portType)的具体协议和数据格式
端口绑定和实际网络地址的组合——端点
服务一组相关端口(端点)
WSDL定义了一种通用绑定机制,并相应地定义了对SOAP、HTTPGET/POST和MIME的特定绑定扩展。因此,绑定并不一定意味着直接绑定到一种传输协议,而是绑定到一种特定的有线格式。最常见的Web服务绑定是SOAP,不过实际的SOAP消息交换通常是通过HTTP在端口80上进行的(通过http://URI)。但是,可以将接口直接绑定到HTTP;或者(举例来说),SOAP的绑定可以使用SMTP(通过mailto://URI))。实现甚至可以定义自己的有线格式,并使用自定义的绑定扩展。
WSDL通过对<import>元素提供支持来促进可维护性和可重用性。通过导入,可以采用适合一个组织的方式将WSDL文档分为若干单独的部分。对于一个希望在接口定义和实现定义之间有一定隔离的内聚Web服务环境而言,将WSDL文档分为以下三个文档是比较合理的:
架构(.xsd)文档——根节点为<schema>,命名空间为“http://www.w3.org/2001/XMLSchema”。
服务接口描述,包含被认为是可重用部分的内容
<message>
<portType>
<binding>
服务实现定义,包含特定服务端点
<service>
WSDL接口与Java(或IDL,或某些其他编程语言)接口不完全一致。例如,Java接口声明指定一组方法,这组方法必须与声明实现该接口的类的至少一个方法子集相匹配。可以实现接口的类不止一个,而且每个实现可以各不相同;但方法签名(方法名称和任何输入或输出类型)通常必须相同。这是该语言所要求的,并在编译时、运行时或这两个时间执行。
WSDL接口是不同的,它更类似于单独使用时并不非常有用的实际抽象类。一个Web服务的各种WSDL接口或portType在逻辑上是相关的,也就是说,这组操作名称应该是相同的(就像portType事实上确实实现了在其他某一位置定义的特定契约,但实际上并不存在这一元素,并且不存在用于执行portType对称性的机制)。通常对每个portType都进行命名以标识其支持的绑定类型(即使portType本身并不创建绑定)。尽管相关portType的portType操作的名称相同,但是输入、输出和默认消息(如果存在)映射到特定的消息,该消息中包含对于支持特定绑定所必需的命名部分。这样就得出一个结论:消息本身并不是完全抽象的。Web服务可以且经常需要为各种所需绑定定义类似但不同的消息。
如下所述,通过利用新出现的Web服务和相关标准,可以开发一种系统体系结构来促进网络化的可互操作媒体相关服务的创建,这些服务利用跨各种各样的硬件和软件平台以及操作环境的多种不同协议和接口。
1.2.角色
本发明的优选实施例旨在实现、促进和/或积极支持对等环境,在此环境中,对等方可以通过公开服务自发地提供各种功能。该框架的一个实施例不鼓励将对等方看作具有一组固定的功能,相反,鼓励这样一种模型,即其中对等方在任何时刻都是一个或多个角色的参与者。
角色可由给定对等方结合特定行为模式公开的一组服务定义。在任意给定时刻,一个支持NEMO的节点可以根据以下多种因素扮演多个角色:它的实际实现工作(提供用于支持一组给定服务的功能)、管理配置、声明该对等方能够公开的服务的信息,以及服务接口上的载荷和运行时策略。
可以根据各种不同类型的服务定义一组显式角色。随着时间的推移,在确定公共参与模型以及引入新服务之后,就可以定义一个更为正式的角色分类方案。可以随着时间的推移而正式确定的一组主要角色可能包括:
客户端——一个相对简单的角色,其中没有公开服务,此对等方只使用其他对等方的服务。
授权者——此角色代表一个充当策略决定点(PDP)的对等方,确定请求委托者是否可以访问具有一组给定前置条件和后置条件的指定资源。
网关——在某些情况下,对等方也许不能直接发现其他服务提供者或者不能与之交互,其原因包括:传输协议不兼容、不能协商信任环境,或者不具备创建和处理与某个给定服务相关的必要消息的处理能力。网关是一个对等方,它用作通往另一对等方的桥梁,以便该允许对等方与服务提供者进行交互。从身份和建立操作的授权及信任环境的角度来看,请求对等方可以将其身份实际委托给网关对等方,并让该对等方代表自己进行协商并作出决定。或者,网关对等方可以充当一个简单的中继点,转发或路由请求和响应。
编排器——当与一组服务提供者的交互涉及重要的服务协调时(可能包括事务、分布式状态管理等等),一个对等方的能力可能不足以参与。编排器是网关角色的具体化。对等方可以请求编排器作为其代表,参与提供一个或多个服务。编排对等方可以使用特定的附加NEMO组件(如适当配置的工作流整理器),以满足编排需要。
考虑到“通过在符合任何一组适合的使用规则的任何设备上、在任何时间、在任何位置满足来自任何来源、对任何媒体的任何格式的请求,做到即时满意”的目标,以下非正式模型阐释了如何利用NEMO框架的实施例来实现这一目标。从该模型的最高层中可以清楚看到NEMO如何支持将来自模型中各层的较低层服务组合成更丰富的端到端媒体服务(没有一一列举NEMO如何支持人们可以想到的所有媒体服务的各个方面)。
在该模型的一个实施例中,有四个服务组件层:1)内容创制、组合和打包服务;2)基于Web的内容收集和发布服务;3)家用网关服务;4)消费电子设备。
这四个层中的每一层在安全、权限管理、服务发现、服务编排、用户界面复杂性和其他服务特性方面通常都有不同的要求。前两层大体适合于我们在“传统”Web服务中看到的模型,而后两层更适合可称为“个人逻辑网络模型”的模型,家用网关的某些服务处于这两种类型的模型之间。但是,消费电子设备的服务有时可以出现在任一层中。
这里存在一种两难选择,即一方面希望框架的组成部分专门化,以提高实现效率,另一方面又希望其通用化程度足够高,以包括端对端解决方案。例如,UDDI目录和发现方法对于相对静态和集中的Web服务可以正常工作,但对于更为动态的个人网络的瞬时组合,象UPnP和Rendezvous中使用的发现模型可能更合适。因此,在一些实施例中,在框架中提供了多个发现标准。
与此类似,在将权限管理应用于通过批发、聚合、零售分发子层进行的媒体分发时,就可能有许多不同类型的复杂权限和责任需要表达和跟踪,这就需要一种具有丰富表达能力的复杂权限语言、高级内容管理和清除服务以及全局信任模型。但是,用于家用网关和消费电子设备层的权限管理和内容管理可能需要一种不同的信任模型来强调合理使用权,从用户的角度来看,它们较为简单。个人逻辑网络中的对等设备可能希望使用该网络中比较简单的信任模型进行交互,并且能够利用全局信任模型通过广域网与对等方进行交互(可能通过代理网关服务)。在用户端,跨设备对内容可用性进行自动管理会带来复杂性,这些设备中的一部分是可移动的,并且有时会跨多个网络。因此,在支持端对端分发的同时进行有效权限管理的方法也可能是异类的,支持各种权限管理服务,其中包含的一些服务可以解释分发权的表达式,并根据上下文将它们转换为与销售事务编排在一起的事务(或者可能执行预定权的另一事件)中各个用户的使用权。
1.3.逻辑模型
在一个实施例中,系统框架由一组在逻辑上连接在一起的节点的集合组成,这些节点以对等(P2P)方式进行交互。对等计算通常定义为计算机和其他智能设备之间的资源(如硬盘和处理周期)共享。请参见http://www.intel.com/cure/peer.htm。在这里,P2P可看作是一种通信模型,它允许网络节点对称地使用和提供各种类型的服务。通过对等消息传递和工作流整理,可以从一组更基础的异构服务动态创建多种服务。这样在共享资源为许多不同类型的服务时,甚至在使用不同服务绑定时,可以检查P2P计算的可能性。
不同实施例可以提供媒体服务框架,使参与者(例如,用户、内容提供者、设备制造商和服务提供者)能够相互查找、交互、交换价值和以丰富的动态方式进行协作。这些不同类型的服务的范围包括从基本服务(发现、通知、搜索和文件共享)到更复杂更高级的服务(例如保险箱、许可、匹配、授权、支付交易和更新)以及这些服务的部分或全部的组合。
服务可以分布在多个对等通信节点上,每个节点都利用为此框架设计的消息泵和工作流整理器(在下文中将进行更详细的说明)来提供消息路由和消息编排。
节点之间通过发出服务调用请求和接收响应来进行交互。请求和响应消息的格式和有效载荷最好采用基于标准XML架构的Web服务描述语言(例如WSDL)定义,所述语言包括一组可扩展的数据类型,支持对服务及其相关接口绑定进行描述和组合。WSDL中的许多对象类型是多态的,可以对其进行扩展以支持新功能。此系统框架支持构建各种通信模式,其中既有与单一服务提供者的直接交互,也有将来自多个服务提供者的服务重新编排所得到的复杂聚合。在一个实施例中,该框架支持使用现有服务编排标准(WSCI和BPEL等)的基本机制,此外,还允许服务提供者使用自己的约定。
与服务调用相关的消息语法最好采用一种相对灵活和可移植的方式来描述,与系统框架中所使用的核心数据类型一样。在一个实施例中,使用WSDL提供相对简单的方式来引用与所描述服务相关的语义描述,从而完成对消息语法的描述。
一个服务接口可以具有一个或多个服务绑定。在这样一个实施例中,只要节点的接口绑定可以用(举例来说)WSDL表示,并且请求节点可以支持与该绑定相关的约定和协议,请求节点就可以调用所述另一节点的接口。例如,如果一个节点支持Web服务接口,则可能会要求一个请求节点支持SOAP、HTTP和WS-Security等等。
可以通过直接提供权限管理要素的标准化方式来控制(例如通过权限管理)任何服务接口。节点之间的交互可以看作受控操作。
实际上,可以将任何类型的设备(实际的或虚拟的)看作是潜在支持NEMO的,并能够实现NEMO框架的关键方面。例如,设备类型包括消费电子设备、网络服务和软件客户端。在一个优选实施例中,支持NEMO的设备(节点)通常包括以下部分或全部逻辑模块(在下文中将进行更详细的讨论):
本地服务API——设备实现的一个或多个服务的集合。不需要NEMO节点直接或间接地在NEMO框架中公开任何服务。
本地服务实现——本地服务API的相应实现集。
服务适配层——一种逻辑层,通过该逻辑层,可以使用一个或多个用(举例来说)WSDL描述的可发现绑定来访问实体的本地服务中的公开子集。
框架支持库——为使用NEMO框架提供支持功能的组件,包括对调用服务接口、消息处理和服务编排等的支持。
1.4.术语
在一个实施例中,一个基本WSDL概要定义了最小的一组“核心”数据类型和消息,用于支持交互模式和基础结构功能。用户既可以基于这一核心采用特殊方式直接定义或通过某种形式的标准化过程来定义其他概要,添加新的数据和服务类型以及扩展现有的数据和类型。在一个实施例中,这一核心概要包括对以下部分或全部主要基本数据类型的定义:
节点——代表系统框架中的一个参与者。一个节点可以扮演包括服务用户和/或服务提供者在内的多种角色。节点可以采用多种形式实现,其中包括消费电子设备、软件代理(如媒体播放器)、虚拟服务提供者(如内容搜索引擎)、DRM许可证提供商或内容保险箱。
设备——封装对虚拟或物理设备的表示。
用户——封装对客户端用户的表示。
请求——封装对一组目标节点的服务请求。
请求输入——封装请求的输入。
响应——封装与请求相关的响应。
请求结果——封装与某请求相关的响应中的结果。
服务——封装对一组定义良好的功能的表示,这些功能由提供者节点公开或提供。例如,它可以是在移动电话之类的设备中提供的低级功能(例如语音识别服务),也可以是通过万维网提供的复合功能(例如购物服务)。服务可以涵盖各种各样的应用,其中包括与DRM相关的服务,例如客户端个性化和许可证获取。
服务提供者——公开某组服务的实体(例如节点或设备)。潜在的服务提供者包括消费电子设备(如移动电话、PDA、便携式媒体播放器和家用网关)以及网络运营商(如有线电视运营商)、移动网络提供商、基于Web的零售商和内容许可证提供商。
服务接口——与一个或多个服务交互的定义良好的方式。
服务绑定——封装与服务进行通信的特定方式,包括用于调用服务接口的约定和协议。它们可以通过各种定义良好的方式进行表示,例如WS-I标准XML协议、基于WSDL定义的RPC或者来自DLL的函数调用。
服务接入点(SAP)——封装使得节点可以对一组目标服务提供节点发出服务调用请求并接收一组响应的必要功能。
工作流整理器(WFC)——一种服务编排机制,它提供一个公共接口,通过该接口,节点可以管理和处理与服务调用相关的请求与响应集合。此接口提供一些基本构造块,用于通过管理与服务相关的消息来编排服务。
对于特定的应用(如数字权限管理[DRM]),典型概要可能包括用于下列内容保护和管理对象的各种DRM相关服务(在下文中将进行说明),这些对象表示系统中的实体,保护内容,将使用规则与内容相关联,并在接收到请求时确定是否准予访问:
内容引用——封装对内容项的引用或指针的表示。此类引用通常利用其他标准化方式来描述内容格式和位置等。
DRM引用——封装对数字权限管理格式的说明的引用或指针的表示。
链接——实体(如节点)之间的链接。
内容——表示媒体或其他内容。
内容密钥——表示用于加密内容的加密密钥。
控制——表示控制与内容的交互的使用规则或其他规则。
控制器——表示控制与内容密钥对象之间的关联。
投射器——表示内容与内容密钥对象之间的关联。
在一个实施例中,核心概要包括对以下部分或全部基本服务的定义:
授权——授权某参与者访问一个服务的请求或响应。
管理——对某项(例如,音乐文件、文档或服务操作)执行授权或控制影响的过程,例如下载或安装软件升级版本的功能。管理通常与提供如信任管理、策略管理和内容保护的功能的服务进行交互。
消息路由——提供消息路由功能的请求或响应,消息路由功能包括使服务提供节点转发消息或收集和组合消息的功能。
节点注册——为节点执行注册操作从而使该节点可以通过中间节点被发现的请求或响应。
节点发现(查询)——与发现节点相关的请求或响应。
通知——将目标通知消息发送或传递到一组给定节点的请求或响应。
安全凭证交换——与允许节点交换安全相关信息(如密钥对和证书等)有关的请求或响应。
服务发现(查询)——与发现由某组节点(包含一个或多个节点)提供的服务相关的请求或响应。
服务编排——根据服务提供者指定的规则,将服务组合成可管理的粗粒度服务、可重用的组件或完整的应用。这样的例子包括基于提供者身份的规则、服务类型、访问服务的方法、组合服务的顺序,等等。
信任管理——提供一组通用的约定和协议,用于为节点之间的交互创建授权和信任环境。在某些实施例中,NEMO信任管理可利用和/或扩展现有的安全规范与机制,包括Web服务领域中的WS-Security和WS-Policy。
升级——表示有关接收功能升级的请求或响应。在一个实施例中,完全抽象此服务以及提供具体表示的其他概要。
1.5.节点之间的交互情况说明
如下文中更为详细的讨论所述,两个系统节点(服务请求者和服务提供者)之间的基本逻辑交互通常包括以下事件序列。从服务请求节点的角度来看:
服务请求节点发出服务发现请求,以定位支持NEMO的节点,这些节点能够利用所指定的服务绑定来提供必要服务。节点可以选择缓存关于被发现的服务的信息。节点之间用于服务发现的接口/机制可以恰恰是NEMO节点选择实现的另一服务。
在发现候选服务提供节点之后,请求节点可以向基于特定服务绑定的一个或多个服务提供节点发送请求。
在一个实施例中,希望相互安全通信的两个节点将建立信任关系,以便交换WSDL消息。例如,它们可以协商一组兼容的信任凭证(例如X.500证书和设备密钥等),这些凭证可用于确定身份、验证授权和建立安全通道,等等。在某些情况下,这些凭证的协商可能是服务接口绑定(例如WS-Security(在使用WS-IXML协议的情况下)或两个已知节点之间的SSL请求)的一个隐式属性。在其他情况下,对信任凭证的协商可能是一个显式的单独步骤。在一个实施例中,由一个给定节点负责确定哪些凭证足以与另一节点交互,并决定它是否可以信任一个给定节点。
请求节点生成与请求的服务相对应的适当WSDL请求消息。
在生成消息后,即将其发送到目标服务提供节点。根据服务绑定,请求的通信方式可以是例如同步或异步RPC方式,也可以是面向消息的。服务请求的发送和响应的接收可以由设备直接完成,也可以通过NEMO服务代理完成。服务代理(将在下文中进行描述)提供了用于向其他参与者发送消息的抽象和接口,并可以隐藏某些服务绑定问题,例如兼容消息格式、传输机制和消息路由问题,等等。
在发送请求之后,请求节点通常会接收到一个或多个响应。根据服务接口绑定的细节和请求节点的首选设置,可以采用多种方式返回响应,其中包括(举例来说)RPC方式的响应或通知消息。所述响应在到目标节点的途中可以通过其他中间节点,这些中间节点可以提供许多相关服务,其中包括(举例来说)路由、信任协商、整理和关联功能,等等。
请求节点对响应进行验证,以确保响应符合它与服务请求节点之间已协商好的信任语义。
然后根据消息载荷类型和内容进行适当处理。
从服务提供节点的角度来看,事件序列通常包括以下内容:
确定是否支持请求的服务。在一个实施例中,NEMO框架并没有规定服务接口如何映射为服务的入口点的方式和粒度。在最简单的情况下,服务接口可以明确地映射到给定服务,而绑定服务和调用服务的动作可以构成对服务的支持。但是,在一些实施例中,单个服务接口可以处理多种类型的请求;给定服务类型可能会包含其他属性,在确定节点支持特别期望的功能之前,需要对这些属性进行检查。
在一些情况下,服务提供者需要确定它是否相信请求节点,并协商一组兼容的信任凭证。在一个实施例中,无论服务提供者是否确定信任请求节点,都将应用与服务接口相关的策略。
服务提供者确定授权请求,并将其发送给负责授权对接口的访问的节点,以确定请求节点是否具有访问权限。在许多情况下,授权节点和服务提供节点是相同的实体,授权请求的发送与处理是本地操作,可以通过一种轻量级服务接口绑定(例如C函数入口点)调用这些操作。
接收到授权响应后,如果请求节点获得授权,服务提供者将满足该请求。如果未获得授权,则生成一个适当的响应消息。
根据服务接口绑定和请求节点的首选设置返回该响应消息。在路由到请求节点的过程中,消息可以通过其他中间节点,这些中间节点可以提供必要的服务或“增值”服务。例如,中间节点可能提供路由和信任协商,或向可以采用请求节点可接受的方式来传递消息的通知处理节点传递消息。“增值”服务的一个例子是赠券服务,如果该服务了解到请求节点的意向,就会将赠券追加到消息中。
2.系统体系结构
请看NEMO系统框架的一个示例实施例,如图1所示,它实现了一个DRM应用。
如上所述,NEMO节点可以通过发出服务调用请求和接收响应进行交互。NEMO框架支持构建多种不同的通信模式,既有与单个服务提供者的简单点对点交互,也有将来自多个服务提供者的服务编排成一组服务的复杂聚合。
在图1中,NEMO节点与另一节点进行交互,以提供各种服务,这些服务聚合起来实现一个音乐许可系统。Web音乐零售商120可以提取存储在用户音乐保险箱110中的音乐,并通过娱乐家用网关130将其提供给在家中的终端用户。来自用户音乐保险箱110的音乐可能包括一些管理规则,在规则允许范围内,可以向Web音乐零售商120提供此类音乐,然后由他们将其提供给其他用户,进一步使用和分发。娱乐家用网关130是一种可以用来播放此类音乐(及其视频和其他内容)的工具,例如,在用户的家用PC上(例如,通过PC软件视频播放器140),或者在用户的便携式播放设备上(例如,便携式音乐播放器150)。例如,用户可以带着便携式音乐播放器150旅行,通过无线Internet连接(例如连接到数字权限许可服务160)获得许可,以购买其他歌曲,或者增加重新播放现有的歌曲次数,甚至通过软件升级服务170给便携式音乐播放器150增加新功能。
NEMO节点可以采用多种不同的方式相互交互和与其他设备交互。如图2a所示,NEMO主机是承载至少一个NEMO节点的某种型号的机器或设备。主机可以位于个人局域网210内,或者位于可以通过Internet访问的远程位置220。例如,主机可能是服务器230、桌面PC240、便携式计算机250或个人数字助理260。
NEMO节点是一种软件代理,它可以向其他节点(例如提供第三方Web服务的主机235)提供服务,也可以调用NEMO管理的框架中其他节点的服务。一些节点270通过专用通信信道(如蓝牙)系留到另一主机。这些主机240和250具有网络连接性,并具有足够的处理能力向其他参与的NEMO节点提供一个虚拟节点。
如图2b所示,NEMO节点可以是本地或个人局域网210中的一个完整对等方。节点共享公开和调用服务的对称功能;但是,每个节点提供的服务集合通常并不完全相同。节点可以广告自己的服务,也可以接收对它们提供的服务的查询。
如果存在Internet连接,如图2c所示,则本地NEMO节点(例如位于个人局域网210中)也可以访问远程节点220的服务。取决于本地网络配置和策略,本地节点和远程节点(例如支持Internet的NEMO主机280)也可以作为NMEO对等方进行互操作。
如图2d所示,并不是所有的NEMO节点都可以位于能够与其他主机通信的主机上,无论本地节点还是远程节点,情况均是如此。NEMO主机280可以提供一种网关服务,通过这种网关服务,一个节点可以调用另一节点(例如系留节点285或个人局域网210中的节点)的服务。
如图2e所示,系留设备上的节点295可以通过网关访问其他节点的服务,如上文中所讨论的。其他节点也可以通过另一主机290上的代理服务对节点295进行访问。代理服务创建一个运行于NEMO主机上的虚拟节点。这些代理节点可以是完整的NEMO对等方。
如图2f所示,NEMO主机可以通过NEMO节点适配器为系留设备提供专门支持。专用通信信道296用于主机/NEMO设备适配器297和系留节点298之间的通信,可以使用任何适合的协议。系留节点298并不能看到其他NEMO对等节点,其他NEMO对等节点也看不到它。
接下来请看数字权限管理(DRM)的功能示例,DRM可以由某些实施例中支持NEMO的设备提供,也可以用于NEMO环境之外。如上所述,NEMO系统框架的优选实施例的主要目的之一就是,支持开发跨商业网络层和面向用户的媒体网络层的媒体相关服务之间的可互操作安全互连。除了服务连接性之外,媒体相关服务之间的互操作性经常需要对通过这些服务施加到可用内容上的使用权进行协调管理。NEMO服务和这里描述的示例DRM引擎可以组合起来使用,以实现互操作性,所述互操作性允许基于NEMO框架的设备就可以为用户提供无缝呈现的感觉和使用体验,甚至在面对异类的DRM和媒体格式基础结构时同样如此。
对于DRM应用程序,如图3所示,支持NEMO的DRM设备的网络可以包括内容提供者/服务器310(为其他DRM设备打包内容)以及用户PC播放器330和用户PC包装器/播放器320(不仅可以播放受保护的内容,而且还可以打包内容,以便将其传递到便携式设备340)。
在每个DRM设备中,DRM引擎都执行特定的DRM功能(例如,执行许可条款和向主机应用提供密钥等等),并依赖于主机能够最有效地提供的服务(例如,加密、解密和文件管理)的主机应用。
如下文中更为详细的讨论所述,在一个实施例中,DRM引擎包括一个虚拟机(VM),用于决定是否允许对受保护内容进行某些特定操作。我们可以利用最小限度的一组指令将这一控制VM实现为一个简单的基于栈的机器。在一个实施例中,它能够执行逻辑和算术计算,并从主机环境中查询状态信息,以便检查诸如系统时间和计数器状态等参数。
在一个实施例中,DRM引擎利用一个基于图的算法来验证DRM价值链中两个实体之间的关系。图4说明了此类图的概念性实施例。该图包括一组由链接连接的节点或顶点。系统中的每个实体都可以由顶点对象表示。只有当实体需要由链接对象引用或者作为加密目标信息的接收方时,才需要具有对应的顶点对象。在一个实施例中,顶点通常代表用户、设备或组。顶点对象也具有相关属性,这些属性表示与该顶点相关的实体的某些特定属性。
例如,图4显示了两个用户(Xan和Knox)、两台设备(Mac和便携式设备)和若干代表组的实体(Carey家庭的成员、公共图书馆的成员、特定音乐服务的订户、RIAA认可的设备,以及由特定公司生产的设备)。其中每个都具有与之相关的顶点对象。
链接的语义可能会随应用特定的方式发生变化。例如,从Mac顶点到Knox顶点的有向边可能表示Knox是Mac的所有者。从Knox到公共图书馆的边可能表示Knox是该公共图书馆的一名成员。在一个实施例中,DRM引擎并不强加或解释这些语义,它只是确定图中是否存在路径。可以将此顶点图看作一个“授权”图,因为两个顶点之间存在路径或(直接或间接)关系可以解释为授权一个顶点访问另一顶点。
例如,因为Knox链接到Carey家,并且Carey家链接到音乐服务,所以在Knox和音乐服务之间存在路径。当存在从另一个顶点到音乐服务的路径时,就认为可以从该顶点访问音乐服务顶点。从而可以编写一个控制,该控制允许基于以下条件访问受保护内容,即可以从其中正在执行请求访问的应用(例如,DRM客户端主机应用)的便携式设备访问音乐服务。
例如,内容所有者可以创建一个由控制VM解释的控制程序,如果使用设备归公共图书馆的成员所有并被RIAA认可,则允许播放特定的音乐片断。当运行于该设备的控制VM评估此控制程序时,DRM引擎确定在便携式设备和公共图书馆之间以及便携式设备和RIAA认可之间是否存在链接。图中的边与顶点可以是静态的,内置在设备之中,也可以是动态的,通过与主机应用通信的服务被发现。
由于没有对顶点和链接强加语义,因此DRM引擎可以支持更大的灵活性。该系统可适用于从传统的基于委托的策略系统到授权域和个人局域网的许多使用模型。
在一个实施例中,DRM客户端还可以重用授权图来派生内容保护密钥。系统设计人员可能会选择允许链接的存在也表示某些加密信息的共享。在这些情况下,授权图可用于派生内容密钥,而无需显式加密重定位到使用设备。
3.节点体系结构
3.1.概述
任何类型的设备(物理的或虚拟的),包括消费电子设备、网络服务或软件代理,都可以潜在支持NEMO,这意味着可以采用某种方式扩展设备的功能,使其能够参与到NEMO系统中。在一个实施例中,支持NEMO的设备(节点)在概念上由某些特定的标准模块组成,如图5a所示。
本地服务API510表示设备实现的一个或多个服务的逻辑组合。不需要NEMO节点直接或间接公开任何服务。本地服务实现520表示本机服务API对应的一组实现。
服务接入点530提供对调用公开服务接口的支持。它封装了必要的功能,使用这些功能,NEMO节点可以向一组目标服务提供NEMO节点发出服务调用请求,并接收一组响应。支持NEMO的节点可能会使用各种发现、名称解析和传输协议,因此有必要创建一种灵活且可扩展的通信API。服务接入点可以采用适合特定执行环境和应用框架样式的各种方法来实现。用于其接口的一个通用模型将是一个能够以某种形式接收XML消息和返回XML消息的接口。也可以支持具有多个本地接口的其他模型。
NEMO服务适配层540表示一个可选层,通过该层,可以利用一个或多个可发现绑定来访问一个实体的本地服务的公开子集。它提供了一个高于本地服务API的抽象级别,从而使服务提供者能够更容易地支持多种类型的服务接口绑定。在服务适配层不存在的情况下,如果它支持必要的通信协议,那么它仍然有可能通过服务接入点530直接与服务交互。
服务适配层540为服务提供者提供了一种通用的方法,用于公开服务、处理请求和响应,以及在NMEO框架中编排服务。它是发布服务的一个逻辑点,并且为实现其他特定服务接口绑定提供了基础。
除了提供一种通用方法来向其他支持NEMO的节点公开服务提供者的本地服务之外,服务适配层540还提供一个自然位置,在这个位置上对组件进行分层,以支持附加的服务接口绑定560,如图5b所示。通过支持附加的服务接口绑定,服务提供者增加了通过服务接入点或某一其他本地API协商和使用兼容绑定的可能性。
在图5a中,工作流整理器550提供对服务消息管理和服务编排的支持。它提供一个公共接口,允许节点管理和处理请求集合以及响应消息。此接口反过来还提供了一些基本构造块,用于通过管理与这些服务相关的消息来编排服务。此接口通常由支持消息路由功能以及中间消息队列和消息整理的节点来实现。
在一些实施例中,NEMO框架包括一组可选支持服务,这些服务便于实体参与到网络中。可以根据各种功能类型以及需要此类服务(例如支持客户端应用的服务,与服务提供者所需要的服务相对)的实体类型对这些服务进行分类。典型的支持服务包括:
WSDL格式化和处理例程——提供创建和处理基于WSDL的服务消息的功能。
服务缓存——提供一个公共接口,通过该接口,节点可以管理发现的节点及其所支持的服务之间的一组映射。
通知处理器接口——提供一个通用服务提供者接口,用于将支持通知处理的NEMO节点扩展到某些定义良好的通知处理引擎。
其他支持功能——包括消息ID生成、时间戳等例程。
3.2.基本的节点交互
在更具体地讨论NEMO节点的单个体系结构元素之前,理解这些节点之间的交互和通信的方式是十分有益的。NEMO节点支持多种通信方式,包括同步RPC通信、异步RPC通信以及单向接口调用和客户端回调等通信方式。
异步RPC传递方式——如果请求需要在较长的时间内才能处理完成,而客户端又不想等待,则特别适合使用此模型。客户端提交一个请求,希望服务提供节点以异步方式处理请求。在这种情况下,服务提供端点可能做出响应,表明它不支持这种模型,或者,如果服务提供节点支持此模型,它返回的响应将携带一个标签,在其后的请求中可以将这个凭证提交给指定的服务提供节点,以确定该指定节点有一个对该客户端的请求的响应。
在一个实施例中,支持此模型的任何服务提供端点都必须根据内部策略缓存对未决的客户端请求的响应。如果客户端想要收回与此类请求相关的标签,但是得不到任何响应,或者响应被服务提供节点丢弃,那么将会返回一个相应的出错响应。在这一实施例中,将由客户端确定何时做出此类后续请求,以尝试收回响应标签。
同步RPC传递方式——客户端提交请求,然后等待返回一个或多个响应。支持NEMO的服务提供端点可能做出响应,表明它不支持此模型。
基于消息的传递方式——客户端提交一个请求,表明它想要通过与其一个或多个通知处理服务接口相关联的消息通知来接收任何响应。支持NEMO的服务提供端点可能做出响应,表明它不支持此模型。
从客户端应用的角度看,使用上述任何一种交互模式都不需要必需阻塞和等待响应或显式轮询的体系结构。采用以上传递方式机制,我们可以使用线程或其他与平台有关的机制来模拟拥塞和无拥塞语义。另外,以上任何一种方式都不是为了解决特定通信信道的延迟问题——只有在实际处理请求时才有可能产生延迟。通信信道的延迟问题应该在组件(例如服务接入点)具体实现时或直接在客户端的实现中解决。
3.3.服务接入点
如上所述,服务接入点(SAP)可作为通用的可重复使用API,供服务调用。它可以封装协商结果(negotiation),并可使用传输信道。例如,一些传输信道可能要求通过TCP/IP建立的SSL会话,而另外一些信道可能仅支持UDP/IP上的相对不可靠通信,还有一些信道则可能根本不是基于IP的。
SAP可以封装对一组初始NEMO节点的发现,以进行消息路由。例如,一个有线机顶盒可能会有一个专用网络连接,而且要求所有消息都必须通过特定的路径和中间转发设备。家庭网络中的便携式媒体播放器可以使用UpnP发现来查找多个可直接访问的节点。客户端可能不能够或不选择通过交换XML消息来直接与其他NEMO节点进行会话。在这种情况下,可以使用公开和使用所支持的本地接口的SAP版本。
在优选实施例中,SAP模式支持以下两种常见的通信模型(当然也支持结合了这两种模型的混合模型以及其他一些通信模型):(i)基于消息的通信模型(如上所述)——SAP生成XML请求消息,并通过一些接口绑定直接与服务提供者交换NEMO消息。(iI)本地通信模型——SAP可以通过一些本地通信协议与服务提供者进行交互。SAP可以在内部转换为XML消息,也可以将在框架内其他地方定义的XML消息转换为SAP。
图6a是两个NEMO对等节点之间的交互示例。客户端节点610通过使用NEMO服务接入点(SAP)620与服务提供节点660进行交互。在本例中,使用了Web服务协议和标准来公开服务和进行传输。服务提供节点660使用其Web服务层670(例如,使用基于WSDL和SOAP的消息传递机制)向节点610等客户端公开其服务。在映射层640(将SOAP消息映射到SAP接口620,并反向映射)和信任管理处理层650(例如,通过在SOAP报头内传送的凭证,该层可以利用WS-Security)的帮助下,客户端节点610的Web服务层630创建并解释SOAP消息。
图6b是另外一个NEMO节点之间的交互示例。服务提供节点682使用SAP686与客户端节点684进行交互。在本例中,与客户端684相比,服务提供节点682包括一个不同的、但可互操作的信任管理层。具体地说,服务提供节点682包括信任引擎688和授权引擎690。在本例中,信任引擎688一般负责加密和解密SOAP消息、验证数字证书和进行其他基本的加密运算,而授权引擎690则负责进行高级别的策略制定。在图6b的示例中,客户端节点684包括一个信任引擎692,但不包括授权引擎。因此,在本例中,客户端节点684能够进行基本的加密运算,并执行一些相对简单的策略(例如,与消息验证级别、机密级别相关的策略等),但是可能需要依靠节点682评估和执行更高级别的策略,即管理客户端对服务提供节点682所提供的服务和/或内容的使用以及与之的交互。应该注意到,图6b是一个是为了举例说明,而不是为了限制,在其他实施例中,客户端节点684也可能包含一个授权引擎,如果客户端需要遵守一组与指定策略有关的约束,可能就会这样。因此,我们可以看出,根据节点的要求,不同的NEMO对等端可能包含信任管理框架的不同部分。图6b还表明,节点之间的通信链路对传输可以是不可知的。即使在SOAP处理模型中,也可以使用合适的数据编码和/或处理规则。例如,可以用另一种支持不同编码方案的安全模型替代XML安全模型。
服务接入点有多种实现形式,例如在客户端边界内实现(以共享库的形式)和在客户端边界外实现(以在不同进程中运行的代理的形式)。根据特定平台类型或客户端的需要,可以自定义服务接入点的具体实现形式。从客户端的角度看,服务接入点的使用是可选的,尽管一般来说它具有通用性。下面将进行详细的阐述。
可以将服务接入点实现为静态组件,仅支持一组固定的服务协议绑定,也可以动态地支持新的协议绑定。
我们至少可以从两个角度来表征涉及服务接入点的交互,即请求参与者所使用的客户端和与其他支持NEMO的端点(节点)交互的服务端。
在一个客户端实施例(如图7a所示)中,服务接入点710直接与客户端720交换XML消息。客户端720直接生成请求消息740,并将它们提交到服务接入点710,服务接入点710生成一个或多个响应消息750,并将它们发送给客户端720,由客户端720收集、分析并处理这些消息。另外,客户端720(提出请求时)还可能会提交显式服务绑定集730,用于确定请求传递的方向。这些服务绑定可以通过多种方法来获得。例如,客户端720可以执行服务发现操作,然后选择合适的服务绑定,或者可以使用从先前的响应中获得的信息。
在另一个客户端实施例(如图7b所示)中,服务接入点760直接支持客户端780的本地协议770。服务接入点760在内部进行XML和本地协议770之间的消息转换,从而使客户端780能够参与NEMO系统。要想使此支持生效,本地协议770(或本地协议770与运行环境的组合)必须以某种形式向服务接入点760提供必要的信息,服务接入点760将生成适当的请求,并确定合适的目标服务绑定(如果必要)。
在服务端,可以支持在客户的服务接入点与支持NEMO的服务提供端点之间的多种交互模式。对于客户端,这些交互模式可以定制,并且可以根据不同条件而变化,这些条件包括请求的性质、基础通信网络、应用的性质和/或与选定的服务绑定相关的传输协议等。
图7c描述了一种相对简单的服务端交互模式,其中服务接入点711以点对点的方式直接与目标服务提供节点712进行通信。
现在我们转到图7d,服务接入点721可能开始与多个可能的服务提供者725的进行直接通信(也可能直接接收725发出的响应)。通过从客户端转发多个服务绑定,可以实现这种交互模式,供服务接入点721使用;或者,服务接入点721也可以利用广播网络或多播网络来转发消息。根据在请求中指定的首选设置,服务接入点721可以选择收集和整理响应,或者简单地返回第一个可接受的响应。
在图7e中,服务接入点731并不直接与任何选定的服务提供端点735直接通信。相反,请求要通过中间节点733进行路由,由中间节点733转发请求,接收任何响应,并将它们转发回服务接入点731。
如果服务接入点731不能够或者不希望直接支持任何与服务提供端点735相关的服务绑定,但是却可以与中间节点733建立关系(中间节点733愿意作为网关),那么这种交互模式可能就比较理想。另一方面,客户端可能无法发现任何适当的服务提供节点或为服务提供节点确定服务绑定,但是可能愿意让中间节点733尝试发现适当的服务提供者。最后,服务接入点731可能想要利用中间节点733的作用,因为它支持更强大的收集和整理功能,而反过来,这允许在服务接入点731与服务提供者(例如端点节点735)之间使用更加灵活的通信模型。
除了以上的基本服务端交互模式,还可以在服务接入点内实现这些模式的组合或新模式。尽管服务接入点的目的是为了提供一个通用接口,但是其实现一般与通信模型的特性密切相关,而且与给定的支持的NEMO的端点所使用的相关协议也密切相关。
在实际运用中,服务接入点可用于封装处理IO相关数据的列集和散集的逻辑,例如将对象序列化为适当的表示(例如WSDL格式的XML表示),或者以适当的格式封装XML编码对象的逻辑。
在优先的实施例中,SAP还封装用于通过一个或多个支持的应用、会话和/传输协议进行通信的逻辑,例如使用SOAP封装进行HTTP上的服务调用。
最后,在某些实施例中,SAP可能会封装提供消息完整性和机密性的逻辑,例如支持建立SSL/TLS会话和/或通过XML签名和XML加密等标准支持签名/验证。服务接口的具体地址未知或者没有指定时(例如,根据搜索条件跨多个节点调用服务时),SAP可以通过封装逻辑建立至一组默认/初始NEMO节点的初始连接,这些节点能够发现或处理服务。
下面是一个示例,它是由一个SAP实施例导出的高级API描述的无限制实施例。
ServiceAccessPoint::Create(Environrnent[])
->ServiceAccessPoint——这是一个singleton接口,它返回一个初始化的SAP实例。可以根据一组可选的环境参数对SAP进行初始化。
ServiceAccessPoint::InvokeService(ServiceRequestMessage,Boolean)->ServiceResponseMessage——支持同步服务调用API,其中客户端(使用WSDL)生成一个XML服务请求消息,并接收响应的XML消息。这个API还接受Boolean标识,这个标识表明客户端是否应该等待响应。通常情况下,这个标识应该为true,除非消息没有相关的响应,或者消息的响应将通过另一个信道(例如通过通知信道)异步发送回来。产生的消息还可能传送结果出错情况。
ServiceAccessPoint::ApplyIntegrityProtection(Boolean,Desc[])->Boolean——这个API允许调用者指定是否应使用完整性保护,以及对消息中的哪些元素进行完整性保护。
ServiceAccessPoint::ApplyConfidentiality(Boolean,Desc[])->Boolean——这个API允许调用者指定是否使用机密性策略,以及对消息中的哪些对象使用机密性策略。
ServiceAccessPoint::SetKeyCallbacks(SigningKeyCallback,
SignatureVerificationKeyCallback,
EncryptionKeyCallback,
DecryptionKeyCallback)->
Boolean
如前面的API中所示,在发送或接收消息时,它可能包含一些需要进行完整性保护或保持机密性的对象。本API允许客户端在它本身与SAP之间设置一些必要的指令,从而使SAP能够获得与特定类型的信任管理操作相关的密钥。在一个实施例中,接口以回调为基础,回调通过数字签名和验证支持完整性保护,通过加密和解密支持机密性。在一个实施例中,每个回调的形式如下:
KeyCallback(KeyDesc)->Key[]
在这里,KeyDesc是一个描述所要求的密钥的可选对象,回调将返回一个适当的密钥列表。使用InvokeService(...)API时,接收响应服务消息时要对签名进行验证。如果消息元素未能通过验证,InvokeService(...)可以返回一个XML消息,提示状态,并表明元素未能通过验证。
3.4.服务适配层
如上所述,服务适配层提供一个通用方法,供服务提供者公开它们的服务、处理请求和生成服务响应以及在NEMO框架内编排服务。在其上可以实现其他特定的服务接口绑定的基础。在一个实施例中,WSDL用于描述系统内的服务的接口。
除了定义如何将服务绑定到特定的接口之外,这样的服务描述还可能包含一个授权服务提供者列表(该列表中的授权服务提供者将负责服务访问授权)、一个指向语义描述(它描述服务的用途和用法)的指针以及对组合服务的必要编排的描述(因为要设计其他一个或多个服务的执行)。
除了作为公开服务的逻辑点之外,服务适配层还封装NEMO数据类型的具体表示,以及在NEMO服务概要中为给定参与者支持的平台指定的对象。它还包含一个机制,用于将与服务相关的消息映射到相应的本地服务实现。
在一个实施例中,NEMO框架并不规定如何实现指定平台或参与者的服务适配层。有些情况下,服务提供节点并不需要转换其本地服务协议,也就是说,仅向可以通过本地协议进行通信的客户端节点公开其服务,在这种情况,该服务提供节点并不需要包含服务适配层。
否则,服务提供节点的服务适配层通常应包含以下元素,如图8所示:
入口点——它是一个封装服务接口入口点810和相关WSDL绑定的层。其他节点通过这些接入点调用服务、传递参数数据和收集结果。
消息处理逻辑——层820,它对应于消息处理逻辑,通常包含用于驱动消息处理的消息泵825,一些类型的XML数据绑定支持826,以及低级XML分析器和数据表示支持827。
本地服务——一个表示可用本地服务的层(相应的服务消息被映射到该层),它包含本地服务API830和相应的实现840。
3.5.工作流整理器
在优选实施例中,工作流整理器(WFC)通过协调请求事件流、管理任何相关数据(包括临时结果和中间结果)、执行与实现请求相关的规则来帮助实现最重要的NEMO服务请求。各种类型的事务协调器,从关系数据库中的简单事务监控器到MicrosoftMTS/COM+中更为常见的监控器,都属于此种功能类型的例子。
在一个实施例中,工作流整理器是一个可编程机制,NEMO节点通过它来编排对服务调用的处理和实现。可以根据特定NEMO节点的特征和要求来定制WFC,而且,经过设计,WFC可以支持各种功能,包括从传统的消息队列到更为复杂的分布式事务协调器。一个相对简单的WFC可能会提供一个接口,用于存储和检索任何与服务有关的消息。在此基础上,它可以支持多种功能,包括:(i)收集服务请求,以提高处理效率;(ii)简单地将服务响应聚合为一个复合响应;(iii)手动编排多个服务请求和服务响应,以创建一个复合服务;(iv)自动编排多个服务请求和服务响应,以创建一个复合服务。
基本的服务交互模式是这样开始的:一个服务请求通过节点的服务适配层到达某个NEMO节点。消息被转交给WSDL消息泵;开始时是WSDL消息泵驱动WFC,接下来消息泵被WFC驱动,以实现请求并返回响应。更复杂的情况是,实现服务请求可能需要多个消息、响应和多个节点协作参与。请求处理规则可以用系统的服务描述语言来表示,也可以用其他服务编排描述标准(例如BPEL)来表示。
消息被交给WFC时,WFC将确定此请求的正确处理规则。根据WFC的实现,可以用固定状态机的形式来表示节点公开的一组服务的服务描述逻辑,也可以用支持处理更为自由的服务处理逻辑表达形式的方式表示。
在优选实施例中,WFC体系结构是模块化和可扩展的,并且支持插件。除了解释服务组合和处理规则外,WFC还需要确定是否在启动服务实现处理生命周期的情况下使用NEMO消息,或者将NEMO消息用作正在进行的事务链中的输入。在一个实施例中,NEMO消息包括用于完成这些确定工作的ID和元数据。我们还可以对NEMO消息进行扩展,使之包含可能是服务事务所特有的附加信息,方便消息处理。
在后面更为详细的论述中,NEMO系统的各种实施例直接支持通知服务。通知表示在指定的服务接口接收以进行处理的一则消息,它以有意向的支持NEMO的节点为目标。通知还可以包含用于转发信息的一组不同的载荷类型和用于确定通知所选定的节点是否可扩展的条件(包括基于身份的条件和基于事件的条件)。
在一个实施例中,如图9a所示,服务提供NEMO节点910提供一个服务,这个服务需要由其工作流整理器914完成一个编排过程(例如收集和处理其他两个服务提供者生成的结果),以便实现客户端节点940对该服务的请求。
客户端节点940上支持NEMO的应用942发出一个请求调用服务提供者910提供的服务时,工作流整理器914相应地生成消息,(代表应用942)分别向节点920上的服务提供者“Y”922和节点930上的服务提供者“Z”932发出自己的请求。然后,工作流整理器将整理并处理这两个服务提供节点生成的结果,以实现客户节点940发出的原始请求。
或者,所请求的服务可能不需要多个服务提供节点的服务,相反,可能需要服务提供节点与发出请求的客户端节点之间进行多个回合或多个阶段的通信。如图9b所示,当客户端节点940上支持NEMO的应用942发出请求要求调用服务提供者910提供的服务时,工作流整理器914接下来将与客户端节点940进行多阶段的通信,以实现原始请求。例如,工作流整理器914可能生成消息并(通过接入点944)将消息发送给客户端节点940,然后接收和处理响应,并在后继通信过程中生成附加信息(和接收附加响应),最终实现客户端节点940发出的原始请求。
在这个例子里,服务提供者910使用工作流整理器914(可能根据服务请求的特定服务会话ID或事务ID部分)来跟踪它与客户端正处于哪一个操作阶段,以保证正确处理请求。如上所述,可以使用状态机或类似机制或技术来处理这些多阶段的通信950。
图9c描述了一个相对基本的交互的实施例,该交互在服务提供节点960内部、在工作流整理器914和消息泵965(在该节点的服务适配层内部,没有表示出来)之间发生。如上所述,工作流整理器914处理一个或多个服务请求962,并生成响应964,采用存储和检索机制966维护编排过程的状态。在这个简单的示例中,工作流整理器914能够处理多个服务请求和响应,而且可用相当简单的状态机来实现。
对于更复杂的处理,图9d描述了一个节点体系结构,它可以在进行服务编排时起到驱动作用或被驱动。在这里,该体系结构的功能包括收集多个服务请求、将多个响应聚合为一个复合响应、手动或自动编排多个服务请求和响应以创建一个复合服务。
在图9d中,以工作流整理器914为核心的体系结构支持各种情形。例如,假如外部协调器970理解过程编排的语义(例如,由与服务相关的高级过程描述驱动的业务流程处理语言引擎)或资源使用语义(例如,可以由资源相互关系语义驱动的资源描述框架引擎),那么让NEMO节点将自己的功能和外部协调器970的功能结合在一起,就可以创建功能强大的服务。自定义外部BPL972和/或RDF973处理器可以利用外部消息泵975通过手动编排过程966(即人为干预的过程)来执行过程描述。
除了依靠手动驱动的过程(这个过程依靠与NEMO节点的消息泵协同工作的外部协调器)外,还可以创建一个体系结构,在这个体系结构内,模块可以直接与工作流整理器914集成,以支持自动形式的服务协调和编排968。例如,对于常规类型的服务编排模式,例如那些以BPEL和EBXML表示、通过与服务接口相关的Web服务绑定通信的模式,工作流整理器914可以直接由陆续到达的请求和响应消息967的描述和集合驱动。在这种情况下,只有当与给定的编排处理器插件(例如,BPEL982或EBXML983)相关的状态机认为时机适当时,才会向消息泵965推入复合响应消息。
下面是一个相对高级的API描述实施例,它是由一个NEMO工作流整理器实施例导出的。
WorkflowCollator::Create(Environment[])->WorkflowCollator——这是一个singleton接口,它返回一个已初始化的WFC实例。可以根据一组可选的环境参数对WFC进行初始化。
WorkflowCollator::Store(Key[],XMLMessage)->Boolean——这个API允许调用者通过一组特定键值在WFC内存储服务消息。
WorkflowCollator::RetrieveByKey(Key[],XMLMessage)->XMLMessage[]——该API允许调用者通过一组指定的键值检索一组消息。返回的消息将不再包含在WFC内。
WorkflowCollator::PeekByKey(Key[],XMLMessage)->XMLMessage[]——该API允许调用者通过一组指定的键值检索一组消息。返回的消息仍然包含在WFC之内。
WorkflowCollator::Clear()->Boolean——该API允许调用者清除存储于WFC之内的任何消息。
作为相对比较严格的BPEL编排标准的替代,另一个实施例采用了非正式的基于XML的编排描述,例如用于更动态的应用(如分布式搜索)。请注意以下描述,该描述可以由NEMO工作流整理器进行解释(在语言足够丰富的情况下,甚至还可能替代整个服务):
3.6.DRM引擎体系结构示例
在前面所述的多个NEMO节点体系结构实施例中,图10描述了将一个模块化DRM引擎实施例1000集成到NEMO内容使用设备中,有助于将它集成到许多不同的设备和软件环境之中。
主机应用1002一般通过其用户接口1004接收一个访问特定内容片段的请求。然后主机应用1002将请求和相关的DRM引擎对象(最好对于主机应用是不透明的)发送到DRM引擎1000。DRM引擎1000通过定义良好的接口向主机服务模块1008请求附加的信息和加密服务。例如,DRM引擎1000可能会询问主机服务1008特定链接是否是信任的,或者要求某些对象被解密。有些必需的信息可能是远程的,这种情况下,主机服务1008可通过服务接入点1014请求网络化服务提供信息。
一旦DRM引擎1000确定特定操作是允许的,它将表明这一点,并将必要的加密密钥返回给主机服务1008。主机服务1008根据主机应用1002的指令,依靠内容服务1016来获得所需要的内容,并管理对内容的使用。然后主机服务1008可能会根据需要与加密服务1012协作,启动媒体表现过程1010(例如,通过扬声器播放内容、在屏幕上显示内容等)。
图10中的系统体系结构是一个相对简单的示例,它描述了如何在应用中使用DRM引擎,但是DRM引擎还有许多可能用法。例如,在其他一些实施例中,在相对复杂的策略管理系统管理下,DRM引擎可集成到打包应用中。下面将讨论DRM引擎的客户端(内容使用)和服务器(内容打包)应用,包括这些应用依赖的不同类型的DRM相关对象的描述,随后将介绍一个DRM引擎本身内部体系结构的实施例。
如图11所示,DRM引擎1100依赖一个虚拟机即控制VM1110,在多种主机平台上进行内部DRM处理(如执行管理内容访问的控制程序),从而利用主机环境1120(如上所述,下面进行了更详细的论述)与节点的主机应用1130进行交互,并最终与NEMO或其他系统内的节点进行交互。
在一个实施例中,控制VM1110是由DRM引擎1100的实施例使用的虚拟机,以执行用于管理内容访问的控制程序。下面描述了如何将控制VM1110集成到DRM引擎1100的体系结构中,还介绍了控制VM的基本元素,包括其指令集、内存模型、代码模块以及通过系统调用1106与主机环境1120的交互。
在一个实施例中,控制VM1110是一个相对较小的虚拟机,经设计它可以使用多种编程语言来简单实现。它基于一个面向栈的指令集,该指令集实际上按最低要求设计,没有过多地考虑执行速度或代码密度。但是,应理解,如果特定的应用需要考虑执行速度和/或代码密度,可以使用常规技术(如数据压缩)来提高性能。
控制VM1110适合用低级语言或高级语言编写,支持汇编、C和FORTH等语言。也可以容易地实现其他语言的编译器,如Java语言或定制语言等。
控制VM1110设计为驻留在DRM引擎1100内(包括主机环境1120),而不是直接在处理器或芯片上运行。控制VM1110通过执行存储在代码模块1102内的指令来运行程序。有些指令可以通过一个或多个系统调用1106来调用在程序外实现的功能;系统调用1106可由控制VM1110实现,也可委托给主机环境1120。
执行模型
控制VM1110执行存储在代码模块1102中的指令,执行时,这些代码作为载入到内存1104的字节代码流。控制VM1110维护着一个名为程序计数器(PC)的虚拟寄存器,指令执行时,该计数器递增。VM顺序执行每条指令,直到遇到OP_STOP指令,在调用栈为空时遇到OP_STOP指令,或发生异常。指令跳转被指定为相对跳转(指定为从当前PC值的字节偏移量)或绝对地址。
内存模型
在一个实施例中,控制VM1110的内存模型相对比较简单。VM内存1104分为数据段(DS)和代码段(CS)。数据段是单一、平面、连续的内存空间,起始地址是0。数据段一般是在主机应用1130或主机环境1120的堆内存内分配的一列字节。对于特定的VM实现,内存空间的大小优选固定为最大值,试图访问内存地址范围之外的地址将导致出错,并终止程序的运行。数据段可能由VM同时载入的多个代码模块1102共享。数据段中的内存可以由内存访问指令访问,该访问可能是32位的,也可能是8位的。32位内存访问可以使用big-endian字节顺序来完成。这里并没有假定VM可见内存与主机管理的内存(主机CPU虚拟内存或物理内存)完全对应。
在一个实施例中,代码段是平面、连续的内存空间,起始地址为0。代码段一般是在主机应用1130或主机环境1120的堆内存内分配的一列字节。
控制VM1110可以加载多个代码模块,所有代码模块可以共享同一个数据段(每个模块的数据最好载入到不同的内存地址),但是每个代码模块都有自已的代码段(举例来说,最好代码模块1102的跳转指令不可能导致直接跳转到另一代码模块1102中的代码)。
数据栈
在优选的实施例中,VM具有数据栈的概念,它表示存储在数据段中的32位数据单元。VM维护一个名为栈指针(SP)的虚拟寄存器。在重置后,SP指向数据段的末尾,栈向下增长(数据推入数据栈时,SP寄存器的值减小)。根据引用栈数据的指令,栈上的32位值被解释为32位的带地址整数、32位带符号整数。
调用栈
在一个实施例中,控制VM1110管理一个调用栈,用于嵌套式子程序调用。内存访问指令不能直接读写被推入栈的值,但是VM在执行OP-JSR指令和OP-RET指令时可以间接使用被推入栈的值。对于给定的VM概要,该返回地址栈的大小最好固定为最大值,这样将允许一定数量的嵌套调用,不能超过这个数量。
指令集
在一个实施例中,控制VM1110使用相对简单的指令集。即使指令的数量有限,还是可用它们来编写简单的程序。指令集是基于栈的:除了OP-PUSH指令,任何指令都没有直接操作数。操作数从数据栈读取,并且结果被推入数据栈中。VM是32位的VM:本图解实施例中的所有指令都在32位栈操作数上工作,这些操作数表示内存地址或带符号整数。带符号整数用2的补数二进制编码表示。
下面示出了一个实施例中使用的指令集:
模块格式
在一个实施例中,代码模块1102以原子格式存储,其格式与MPEG-4文件格式中使用的原子结构相同。一个原子包括32位,存储为big-endian字节顺序的4-八位字节,跟随一个4-八位字节类型(通常是对应字母表中字母的ASCII值的八位字节),再之后跟随该原子的载荷(大小—8个八位字节)。
3.7.DRM客户-服务器体系结构:内容使用和打包
如前所述,DRM客户端的使用应用(如媒体播放器)使用DRM内容(例如,播放歌曲和电影等)。DRM服务器端的打包应用(通常驻留在服务器上)打包内容(例如,内容的相关使用和分发权限、密钥等),提供给目标DRM客户端。
图12a描述了一个DRM客户端主体系结构元素的实施例。主机应用1200通过用户接口1210为设备用户(例如,音乐播放器用户)提供服务。用户可能请求访问受保护的内容和随内容接收元数据(如随歌曲本身的音频显示歌手名字和歌曲名称的文本)。
主机应用1200除了与用户接口1210进行交互外,还执行完成客户请求所需的各种功能,这些功能可能包括管理与其他DRM客户端模块(主机应用将某些功能委托给了这些模块)的交互。例如,主机应用1200可能管理与文件系统进行的交互,以提取用户所请求的内容。另外,主机应用最好能够识别受保护内容的对象格式,并向DRM引擎1220发送请求,使其评估做出许可的DRM对象(例如,通过运行相关的控制程序),以确定是否应该授权访问受保护的内容的权限。
如果授权了权限,主机应用1200可能需要验证所要求的签名,并将DRM引擎1220所要求的其他一般性加密功能委托给加密服务1230。DRM引擎1220负责评估DRM对象,确认权限或拒绝权限,并为主机应用1200提供密钥,以解密内容。
主机服务1240为DRM引擎1220提供权限,使之可以访问宿主应用1200管理的数据(以及1200实现的一些库函数)。主机应用1200与内容服务1250进行交互,以访问受保护内容,并且仅向DRM引擎1220传递需要进行处理的内容。内容服务1250从外部媒体服务器获得内容,并依赖客户的永久存储机制存储和管理内容。
一旦准许访问内容,主机应用1200与媒体再现引擎1260进行交互(例如,通过发送密钥进行交互),以解密内容,并通过客户端的AV输出工具再现内容。DRM引擎1220所需要的某些信息可能混合在内容中,可以通过内容服务1250获得并管理这些信息,其他信息可能需要从外部NEMODRM服务或其他来源获得。
在优选实施例中,所有加密操作(包括加密、签名验证等)都由加密服务1230来处理,1230通过主机服务1240(1240转发请求)间接地与DRM引擎进行交互。媒体再现引擎1260也可以使用加密服务1230进行内容解密。
现在转到服务端,图12b描述了一个示例DRM服务端打包节点的主体系结构元素的实施例。主机应用1200通过用户接口1210与内容打包者(例如,音乐内容的所有者和发行者)通信。例如,打包者可能会向主机应用1200提供内容和许可信息,这样内容就可以受到保护(例如,加密和设定相关的限制访问权限),并分发给最终用户和中间内容提供节点。
主机应用1200除了与用户接口1210进行交互外,还可以执行多种必要的功能,以实现内容打包者的请求,这些功能包括管理与其他DRM打包模块(有些功能委托给了这些打包模块)之间的交互。例如,它可以管理与一般加密服务1235之间的交互,以加密内容。它还可以创建一个内容对象,这个内容对象包含或引用内容,并包含或引用一个许可(例如,在DRM打包引擎1225创建一个包装许可的DRM对象之后)。可以将元数据与许可相关联,该元数据以人工可读的方式对许可进行解释(例如,以供客户端用户查看)。
如前所述,主机应用1200通过用户接口1210与用户进行交互。主机应用1200负责获取信息,如内容引用信息和打包者想要执行哪些动作等信息(例如将内容绑定给谁)。它还显示与打包过程有关的信息,如发出的许可文本,如果发生错误,将显示错误的原因。主机应用1200需要的某些信息可能需要使用NEMO服务1270(例如,利用诸如验证或成员关系授权等服务)。
在一个实施例中,主机应用1200委托媒体格式服务1255负责管理所有媒体格式操作,如编码转换和打包等。一般加密服务1235负责发布和验证签名,以及加密和解密某些数据等。对这些操作的请求可以在外部发出,或通过主机服务1240由DRM打包引擎1225发出。
在一个实施例中,内容加密服务1237与一般加密服务1235在逻辑上是分开的,因为1237并不知道主机应用1200。在进行内容打包时,内容加密服务由媒体格式服务1225利用一组由DRM打包引擎1225此前发布的密钥驱动(所有这些操作由主机应用1200进行协调)。
3.8.DRM内容保护和管理对象
在一个示意图中,内容提供者使用依赖DRM打包引擎的主机应用创建一组对象,这组对象保护内容并管理内容的使用,包括发送为获取内容加密密钥所必需的信息。术语许可就是用于包括这一组对象。
在优选实施例中,内容及其许可在逻辑上是分开的,但是使用对象ID通过内部引用绑定在一起。内容和许可通常存储在一起,必要的情况下,也可以分开存储。一个许可可以应用于多个内容项,而且任何单个内容项都可以使用多个许可。
图13介绍了这样一个许可的实施例,包括下面将讨论的对象集中各对象之间的关系。请注意,在这个实施例中控制对象1320和控制器对象1330都是签名对象,因此DRM客户引擎可以先验证控制信息来自信任来源,然后才向主机应用提供访问受保护内容的权限。在这个实施例中,除了内容对象1300外,所有对象都是由DRM客户引擎创建的。
内容对象-内容对象1300表示加密内容1304,用唯一的ID1302来帮助实现内容和其相关密钥的绑定。内容对象1300是一个“外部”对象。加密内容1304的格式(如MP4电影文件和MP3音轨等)和存储由主机应用部分根据内容的类型来确定(或者委托给一个服务)。内容的格式还为ID1302与加密内容1304的关联提供支持。内容打包者的主机应用使用任何可用的加密系统(如使用AES等对称加密方法)以与格式相关的方式对内容进行加密,并管理内容对象1300。
Contentkey对象——Contentkey对象1310表示加密的密钥数据1314(包括一个唯一的加密密钥,可以选择存储于对象内部),而且有一个相应的唯一ID1312。密钥数据如果包含在Contentkey对象1310内,它本身最好是加密的,这样它就只能为那些有权解密内容的用户识别。Contentkey对象1310还指明加密这些密钥数据使用的密码系统。这个加密系统称为“密钥分配系统”,我们将在下面详细讨论这些实施例。
控制对象——控制对象1320包括并保护控制程序(例如,控制字节代码1324),控制程序表示用于内容加密和解密的密钥的使用管理规则。它还包括ID1322,这样它就可以绑定到相应的Contentkey对象。如前所述,控制对象132是签名的,这样DRM客户引擎就可以验证Contentkey1310与控制对象1320之间的绑定的有效性以及ContentkeyID1312与加密密钥数据1314之间的绑定的有效性。可选地,控制字节代码1324的有效性可以通过验证控制器对象1330内包含的安全哈希(例如控制哈希1338[如果有])而得到。
控制器对象——控制器对象1330表示密钥与管理其控制的规则之间的绑定,它分别使用ID1312和1322绑定Contentkey1310和控制对象1320。控制器对象1330通过控制这些规则对内容的应用来管理受保护内容的使用,也就是说,通过确定由哪个控制对象来管理哪些Contentkey1310的使用。控制器对象1330还包含它引用的每个Contentkey1310对象的哈希1336值,以防篡改每个Contentkey对象1310和其相应的加密密钥数据1314之间的绑定。如前所述,控制器对象1330最好是签名的(由拥有允许其签名控制器对象的证书的打包应用,使用公共密钥或对称密钥签名,这一点在下面讨论),以支持验证Contentkey1310与控制对象1320之间的绑定的有效性
以及ContentkeyID1312与加密密钥数据1314之间的绑定的有效性。另外,如前所述,控制器对象1330可选地还包含控制哈希望1338,这样就可以得到控制对象1320的有效性,而无需单独验证其签名。
对称密钥签名——在优选实施例中,对称密钥签名是控制器对象1330最常用的签名类型。在一个实施例中,此类签名是通过计算控制器对象1330的MAC(消息身份验证代码)来实现的,采用的密钥与Contentkey对象1310表示的密钥相同。
公共密钥签名——在优选实施例中,如果控制器对象1330的签名者的身份需要被唯一声明,则需要使用此种类型的签名。这种类型的签名是用公共密钥签名算法实现的,签名采用声明这一对象有效性的主体的私有密钥。使用此类签名时,控制器对象1330中携带的Contentkey绑定信息最好包含Contentkey对象1310中包含的密钥的哈希1336,该哈希同签名私有密钥的指纹信息相关(通常是该私有密钥的哈希)。这种绑定确保了对象的签名者知道用于保护内容的密钥。
保护器对象——保护器对象1340通过控制用于加密和解密内容的密钥的使用,提供对内容的受保护访问。保护器对象1340将内容对象1300绑定到Contentkey对象1310,使受保护内容与其相应的密钥相关联。为了完成此绑定,保护器对象1340包含了引用1342和1344,分别引用内容1300的ID1302和Contentkey1310的ID1312。在一个实施例中,保护器对象1340不仅包含应使用哪些密钥来加密一个或多个内容项的信息,而且还包含了应使何种加密算法的信息。在一个实施例中,如果内容引用1342引用多个内容对象1300,Contentkey引用1344可以仍仅引用一个Contentkey对象1310,表明所有的内容项都是使用相同的加密算法和密钥加密的。
3.9.DRM节点和链接对象
图13示出了由DRM引擎为控制对受保护内容的访问而创建的内容保护和管理对象。图14示出了表示系统内的实体(如用户、设备或组)的DRM对象以及这些实体之间的关系。
如前所述,图4示出了一个节点或授权图的概念实施例,授权图描述了这些实体及它们之间的关系,图14示出了实现这个概念图实施例的两种类型的对象:顶点(或“节点”)对象(1400a和1400b)表示实体和实体的属性,链接对象(1420)表示这些节点对象之间的关系。在一个实施例中,DRM引擎通过执行控制程序来促成涉及这些对象的一个或多个使用模式,例如,加密一首歌曲,或者将歌曲与许可(许可对歌曲向特定个体的分发进行了限制)关联起来。但是,这一实施例中的DRM引擎并没有指明(无论明示还是暗示)与这些对象相关的语义(例如,歌曲可以分发给哪些个体)。
在一个实施例中,这个语义内容(即DRM概要)是在节点对象本身的属性内定义的。DRM概要可以包括对这些实体、各种角色及其所代表的身份的描述,一般用节点属性(1401a和1401b)表示。如前所述,节点1400a和1400b之间的链接1420可能表示各种类型的语义关系。例如,如果一个节点是“用户”,另一个节点是“设备”,链接1420可能表示“所有关系”。如果另一个节点是“用户组”,而不是“设备”,则链接1420可能表示“成员关系”。链接1420在一种情况下可能是单向的,在另一种情况下可能是双向的(例如,表示相同两个节点之间的两个链接时)。
节点对象1400a和1400b一般还具有对象机密性保护非对称密钥对(例如,节点1400a的私有密钥1405a和公共密钥1406a和节点1400b的私有密钥1405b和公共密钥1406b),以限制节点的授权部分的机密信息。节点的机密信息一般用节点的机密性保护公共密钥加密。系统使用Contentkey派生系统分发内容密钥(将在下面详细讨论)时,可选地,内容保护非对称密钥对(例如,节点1400a的私有密钥1403a和公共密钥1403b和节点1400b的私有密钥1403b和公共密钥1403b)可以与链接对象配合使用。另外,还可以使用内容保护对称密钥(例如节点1400a的对称密钥1402a和节点1400b的密钥1402b)对内容项本身进行保护。
如前所述,在一个实施例中,链接对象(如链接1420)表示节点之间的关系。这些关系的语义可以存储在节点属性中(例如,存储在节点1400a的1401a和节点1400b的1401b中),并从链接对象中引用(例如,节点1400a的节点引用1422和节点1400b的节点引用1424)。链接对象还可以有选择地包含加密数据(如密钥派生信息1426),加密数据使链接对象能够用于内容密钥派生,下面将进行介绍。
在一个实施例中,链接对象本身是一个签名对象,以图中的有向边表示,如上述图4所示。如果从一个节点(如节点X)到另一个节点(如节点Y)存在这样一个有向边,则从节点X到节点Y的这条“路径”表示从节点X“可以到达”Y。其他DRM对象可以使用存在这样的路径的事实作为执行特定功能的一个条件。控制对象在允许对其相关的内容对象进行特定的操作之前,可能需要通过检查确定目标节点是否可到达。
例如,如果节点D是表示想要对内容对象进行“播放”操作的设备,管理该内容对象的控制对象可能需要测试是否可以从节点D到达表示特定用户的特定节点U(例如,检查该用户是否为该设备的“所有者”),只有该条件满足后,才能进行“播放”操作。要想确定节点U是否可到达,DRM引擎可以运行控制程序以确定是否有一组链接对象,可以在节点D和节点U之间建立一个路径(例如,直接或间接的关系)。如前所述,在一个实施例中,DRM引擎并不知道关系的语义;它仅确定是否存在路径,这样就使主机应用(举例来说)能够将此路径解释为有条件授权,从而允许访问受保护内容。
在一个实施例中,DRM引擎在使用链接对象确定在系统节点图中是否存在某路径之前,先对它们进行验证。任何时候链接对象的有效性可能都取决于用于签名链接对象的证书系统的特定特性(下面将进行介绍)。例如,链接对象的“生命周期”可能是有限的,或者根据不同的条件时常废止链接对象或令其重新生效。
另外,在一个实施例中,有些策略负责管理哪些实体可以签署链接对象,哪些链接对象可以被创建,但是这些策略和链接对象的生命周期并不直接由DRM引擎处理。相反,它们可能会利用节点属性信息。为了方便执行某些策略,系统可能提供使用附加的限制检查来扩展标准证书格式的方法。通过这些扩展,能够在用于签署链接的密钥证书上表示出有效性限制,这样就可以在确定链接有效之前,对这些限制条件(例如,与链接相连的节点的类型以及其他属性)进行检查。
最后,在一个实施例中,链接对象可能包含为用户提供节点内容保护密钥的加密运算数据,以用于密钥分配。加密数据除了元数据之外、还包含“起始”节点的私有密钥和/或对称内容保护密钥,这些密钥已经使用“目标”节点的内容保护公有密钥和/或内容保护对称密钥进行了加密。例如,在特定策略下,一个实体被赋予了创建链接设备节点和用户节点的链接对象的能力,这个实体可能要进行检查,以确保它只在设备节点对象(具有指示它们确实表示一个设备的属性)和用户节点对象(具有指示它们表示一个用户的属性)之间创建链接。
3.10.DRM加密密钥
图15描述了一个DRM密钥分配系统的实施例。如图15所示,这个密钥分配系统所使用的基本规则是使用链接对象来分配密钥,当然,链接对象的主要功能是建立两个节点对象之间的关系。
如前所述,控制对象可能包含一个控制程序,这个控制程序确定所请求的操作是否得到许可。控制程序可能进行检查,以确定是否可以通过一组链接对象到达特定节点。如图15所示的密钥分配系统通过搜索一组链接对象来帮助进行密钥分配,这样执行控制程序的DRM引擎就可以获得密钥。
在一个实施例中,使用密钥分配系统的每个节点都有一个或多个密钥。这些密钥用于加密内容密钥和其他节点的密钥分配密钥。创建用于相同部署中的链接对象包含一些加密数据载荷,DRM引擎处理链接链时,这些载荷使得能够派生出密钥信息。
由于节点和链接携带密钥,对于给定的一组链接(例如,从节点A到节点B,最后到节点Z),任何可以访问节点A的私有密钥的实体也可以访问节点Z的私有密钥。由于实体可以访问节点Z的私有密钥,因此也可以访问任何使用这些密钥加密的内容密钥。
参与密钥分配系统的节点对象包含密钥作为它们的数据中的一部分。如图15所示,在一个实施例中,每个节点(1500a、1500b和1500c)都有三个密钥。
公共密钥Kpub[N]–这是公共密钥加密程序所使用的公共/私有密钥对中的公共部分。在一个实施例中,由于该密钥(节点1500a中的密钥1505a、节点1500b中的1505b和节点1500c中的1505c)与证书(下面将讨论)一起提供,因此其身份凭证可通过想要用加密方式将机密信息与密钥进行绑定的实体得到验证。
私有密钥Kpriv[N]——这是公共/私有密钥配对的私有部分。管理节点的实体负责确保该私有密钥(分别是在节点1500a、1500b、及1500c内的密钥1515a、1515b、及1515c)得到保密。因此,在一个实施例中,该私有密钥将与其余的节点信息分开保存与传送。
对称密钥Ks[N]——这个密钥与对称加密程序一起使用,下面将进行介绍。因为这个私有密钥(节点1500中的密钥1525a、节点1500b中的密钥1525b和节点1500c中的1525c)是机密的,管理这个节点的实体负责保持其秘密性。
图15中的密钥分配系统可以使用不同的加密算法来实现,尽管参与实体一般需要一致支持一组算法。在一个实施例中,至少支持一种公共密钥加密程序(如RSA)和一种对称密钥加密程序(如AES)。
下面是对各加密函数的表示方法:
Ep(Kpub[N],M)的含义是“使用公共密钥加密程序,利用节点N的公共密钥Kpub加密消息M”
Dp(Kpriv[N],M)的含义是“使用公共密钥加密程序,利用节点N的私有密钥Kpriv加密消息M,”
Es(Ks[N],M)的含义是“使用对称密钥加密程序,利用节点N的对称密钥Ks加密消息M”
Ds(Ks[N],M)的含义是“使用对称密钥加密程序,利用节点N的对称密钥Ks解密消息M”
向一个节点赋予“Contentkey”意味着使能够访问该节点的私有密钥的实体可以使用该密钥。在一个实施例中,绑定是通过使用以下方法中的一种或两种方法来加密密钥而完成的:
PublicBinding:创建一个包含Ep(Kpub[N],CK)的Contentkey对象
SymmetricBinding:创建一个包含Es(Ks[N],CK)的Contentkey对象
在这个实施例中,可能的情况下优选使用对称绑定,因为它使用了一种在接收实体上计算密度比较小的方法。但是,创建Contentkey对象的实体(例如,内容包装器)未必总是能够访问Ks[N]。在这种情况下,可以使用公共绑定(这时Kpub[N]应该可用),因为它不是机密信息。通常令Kpub[N]对于需要赋予Contentkey的实体可用,结合能够由实体检查(以便确定Kpub[N]是否确实是可以信任的节点的密钥的)的证书,以便按照某些议定的策略处理Contentkey。
为了使实体能够访问所有可到达节点的分配密钥,在一个实施例中,链接对象包含了一个“载荷”。这个载荷允许能够访问链接的“起始节点”的私有密钥的实体也能够访问“目标节点”的私有密钥。按照这种方式,实体可以解密任何可到达节点的Contentkey。
现在转到图15,链接节点1500a到节点1500b的链接1530a包含一个载荷,这个载荷是通过用节点1500a的对称密钥1515a来加密节点1500b的私有密钥1515b和1525b而创建的,如果1515a不可用(如,因为其机密性而不可用),则使用节点1500a的公共密钥1525a。类似地,链接节点1500b到节点1500c的链接1530b包含一个载荷,这个载荷是通过利用节点1500b的对称密钥1515b来加密节点1500c的专用密钥1515c和1525c而创建的,如果1515b不可用,则使用节点1500b的公共密钥1525b。
DRM引擎处理链接对象时,它将处理每个链接的载荷,以便更新关于它已经访问的密钥的内部链1550。在一个实施例中,从节点A到节点B的链接的载荷包含以下内容:
公共派生信息
Ep(Kpub[A],{Ks[B],Kpriv[B]})
或
对称派生信息
Es(Ks[A],{Ks[B],Kpriv[B]})
在这里,{Ks[B],Kpriv[B]}是包含Ks[B]和Kpriv[B]的数据结构。
公共派生信息用于向任何可以访问节点A的私有密钥Kpriv[A]的实体转发节点B的私有密钥Ks[B]和Kpriv[B]。对称派生信息用于向任何可以访问节点A的对称密钥Kpriv[A]的实体转发节点B的私有密钥Ks[B]和Kpriv[B]。
因此,对于密钥链1550,可以访问节点1500a的私有密钥(私有密钥1515a和对称密钥1525a)的实体使DRM引擎能够使用这些私有密钥1560作为密钥链1550中的“第一个链接”(产生其余链接的起始点)。Scuba密钥1560用于解密链接1530a内的内容密钥对象1555a(如果通过公共密钥1505a的公共绑定被使用,则应使用私有密钥1515a进行公共派生,或者,如果通过对称密钥1525a的对称绑定被使用,则应使用对称密钥1525a进行对称派生),从而产生密钥链1550之中的下一个链接,即节点1500b的机密密钥(私有密钥1515b和对称密钥1525b)。接下来DRM引擎使用这些密钥1570解密链接1530b内的内容密钥对象1555b(如果通过公共密钥1505b的公共绑定被使用,则应使用私有密钥1515b进行公共派生,或者,如果通过对称密钥1525b的对称绑定被使用,则应使用对称密钥1525b进行对称派生),从而产生密钥链1550之中的最后一个链接,即节点1500c的机密密钥(私有密钥1515c和对称密钥1525c)。
由于,在一个实施例中,DRM引擎可以按照任何顺序处理链接,它可能不会在处理链接时进行密钥派生(例如,因为链接的“其始”节点的密钥还没有被派生)。在这种情况下,链接被保存下来并在此类信息可用时(例如,在“终端”节点内处理链接时)被再次处理。
3.11.DRM证书
如前所述,在一个实施例中,证书用来在决策前(基于这些密钥所创建的数字签名),检查与这些密钥相关的凭证。在一个实施例中,可以利用现有信息(一般以证书标准元素的形式,如有效期、名字等)支持可支持多重证书技术。除了这些标准元素外,可通过编码增加附加约束,限制已认证密钥潜在的使用。
在一个实施例中,将密钥使用扩展作为证书编码过程的一部分,完成这一操作。在扩展中编码的信息可让DRM引擎确定已签署某特定对象的密钥是否被授权用于该目的。例如,某个特定密钥可能具有一个证书,该证书只允许它签署某种链接对象,即其链接从具有特定属性的节点到具有另一特定的属性的节点的链接对象。
用来表达典型证书的基本技术并不能表达这样的约束,因为它的语义并不知道链接和节点之类的元素。在一个实施例中,这样的特定约束因此被转化为基本证书的密钥使用扩展,包括“使用类别”和相应的“约束程序”。
使用类别规定了密钥有权签署何种类型的对象。约束程序表达基于环境的动态条件。在一个实施例中,尽管密钥使用扩展表达式委托给DRM引擎来进行评价,但验证此类证书有效性的验证者也必需理解相关的语义。仅在执行程序并产生成功结果后,该证书才被认作是有效的。
在一个实施例中,约束程序的作用是返回一个Boolean值,例如“true”表示符合约束条件,“false”表示不符合约束条件。控制程序也能访问某些可以用来帮助做出决策的环境信息。可用的环境信息取决于要求证书验证时由DRM引擎做出的决策类型。例如:在使用某一链接对象信息前,DRM引擎可能验证已签署该对象的密钥的证书,检查该证书是否允许此密钥用于那些目的。执行约束程序时,DRM引擎的环境已经填充了与此链接属性以及此链接引用的节点属性相关的信息。
在一个实施例中,嵌入在密钥使用扩展中的约束程序被编码成为一个代码模块(如前所述)。此代码模块最好导出一个以上的入口点,称为,如:
“EngineName.Certificate.<Category>.Check”,这里Category是指需要进行检查的证书种类的名称。验证程序所要的参数将在调用入口点前,推入栈。推入栈的参数类型和数目取决于进行验证的证书扩展的类别。
4.系统操作
4.1.基本节点交互
讨论完NEMO系统主要体系结构元素的各类实施例(包括DRM应用环境中的实施例)后,现在我们转至NEMO系统操作,即在NEMO节点内和节点间的事件顺序,这些节点是对特定应用功能进行分层的基础。
在一个实施例中,在NEMO节点调用特定应用功能前,需要经历初始化和授权的过程。节点首先试图发现所需的服务(通过请求、注册、通知等),然后获得使用那些服务的授权(如通过确定这些节点是可信任的并且符合相关服务提供商的策略)。
该过程如图16所示。图16说明了服务提供者1600(在该实施例中,具有服务提供节点1610和授权节点1620之间共享的功能)和服务请求者1630(如服务的客户端用户)间的基本交互。注意该交互不需要是直接交互。在服务请求者1630和服务提供者1600间可能存在任意个中间节点1625。该过程的基本步骤(详述见下)将从客户服务请求者1630和服务提供者1600的角度进行论述。
从服务请求者1630的角度看,事件逻辑流如图16所示:
服务发现——在一个实施例中,服务请求者1630发出服务发现请求,以便找到能提供所需服务的任何支持NEMO的节点,获取所支持的服务绑定的相关信息,从而访问相关服务接口。服务请求者1630可能会选择缓存关于所发现服务的信息。请注意,用于NEMO节点间服务发现的接口/机制正好是某个NEMO节点选择实现和公开的另一服务。服务发现流程的详述见下,其中包括其他形式的通信,如服务提供者向注册的服务请求者发出的通知。
服务绑定选择——一旦找到了候选服务提供节点,基于特定的服务绑定,请求节点可选定(向其发送请求)一个或多个服务提供节点。
与服务提供者进行的关于可接受信任关系的协商-在一个实施例中,在两个节点进行安全通信前,它们必须能够建立进行安全通信所需的信任关系。这将包括交换一些完整性保护封套(这些封套可用于确定身份)中的兼容信任凭证(例如X500证书、令牌等);和/或基于双方都信任的证书建立安全信道,如SSL信道。在某些情况下,这些凭证的交换和协商可能是服务接口绑定的隐式属性(例如如果将接口公开为网络服务,使用了WS-IXML协议,该隐式属性是WS-Security;或是两个已知节点间的SSL请求)。在其他情况下,信任凭证的交换和协商可以是一个明确的独立步骤。NEMO提供了标准和灵活的框架,允许节点建立进行通信的信任信道。根据节点的属性和交互中所涉及的服务属性,由给定节点来决定与其他NEMO节点交互所需要的凭证,并判断它是否信任一个给定节点。在一个实施例中,NEMO框架利用现有的和新兴的标准,特别是与安全相关的数据类型和协议领域中的标准。例如,在一个实施例中,框架将支持使用SAML描述由服务请求者向服务提供者给出的凭证(当服务请求者想调用服务时),以及使用SAML作为表示授权查询和授权响应的方式。
请求消息的创建——下一步骤是为请求节点1630创建对应所需服务的正确请求消息。该操作可能被服务接入点隐藏。如上所述,服务接入点提供在NEMO框架中与服务提供者交互的抽象和接口,并且可能隐藏特定服务调用问题,如至服务消息映射的当地接口、对象序列化/反序列化、对兼容消息格式的协商、传输机制或消息路由问题等。
请求的发送——一旦请求的消息创建完毕,消息将被发送至目标服务提供节点,如节点1610。根据服务绑定和/或请求客户端的优选设置,请求可采用同步/异步RPC或面向消息的通信方式。与服务的交互可由服务消息的传输和处理来直接完成,或透过NEMO服务接入点由更多的本地接口来实现。
接收响应消息——发出请求后,请求节点1610在回复中收到一个或多个响应。根据服务接口绑定的规定和请求节点1610的优选设置,可采用RPC式响应或通知消息等多种方式来返回回复。如前所述,请求和回复可通过其他中间节点1625路由至它们的目标节点,这些中间节点自身也可能提供一些功能,包括:路由、信任协商、整理和关联功能等。在本实施例中所有服务都是在同一个相容框架内描述、发现、授权、绑定和交互的“标准”NEMO服务。服务接入点可能会隐藏源自节点的消息级抽象。例如,从节点的角度看,服务调用可能看起来像带一组简单固定参数的标准函数调用。
对响应的验证(关于协商后的信任语义)——在一个实施例中,请求节点1630验证响应消息,以确认该消息遵守了它和服务提供节点1610间协商的信任语义。这个逻辑通常完全封装在服务接入点内。
对消息载荷的处理——最后,根据(特定应用)消息载荷类型和内容进行任何合适的处理。
以下是从服务提供者1600的角度来看的事件逻辑流程(有某种近似):
确定支持服务——首先要确定是否支持请求的服务。在一种实施例中,NEMO机构并不硬性规定一个服务接口如何映射到服务的的方式或粒度。在最简单的情况下,一个服务接口明确地映射到一个特定服务,绑定至该接口和调用该接口的动作就等于支持该服务。但是在某些情况下,一个单一的服务接口可能会处理多种类型的请求,或者某一类型服务可能会包含另外的属性,在确定该节点是否真的支持需要的功能之前必须采样检测这些属性。
与服务请求者协商可接受的信任关系——在某些情况下,服务提供者1600有必要确定它是否信任请求节点1630,并建立一条信任通信信道。这一过程已在上边详述。
将授权请求发送至授权服务接口访问权限的节点——服务提供节点1610随后确定请求节点1630是否有权访问该服务,以及访问的条件如何(如果有权访问)。这一决定可以根据本地信息或一个本地支持的授权决定机制作出。如果本地不支持,服务提供节点1610会把授权请求发送至一个已知的管理服务的NEMO授权服务提供者(例如,授权节点1620),以便确定服务提供节点1610是否有权访问所请求的服务。在很多情况下,授权节点1620和服务提供节点1610将是同一个实体,在这种情况下,授权请求的发送和处理是通过轻量级服务接口绑定(例如一个C函数入口点)调用的本地操作。然而,我们在此重申,既然这一机制本身只是一个NEMO服务,那么就有可能做到完全分布式的实现。授权请求可以标明与NEMO节点本身相关的识别信息和/或属性,或者有关与该节点关联的用户和/或装置的信息。
收到授权响应时的消息处理——一旦收到授权响应,如果请求节点1630获得授权,服务提供者1600就会执行必要的处理来实现请求。否则,如果请求节点1630没有获得授权,即可生成一条适当的“授权请求被拒”响应消息。
返回响应消息——然后,依据服务接口绑定及请求节点1630的首选设置,采用多种通信方法(包括RPC式响应或通知消息)中的一种方式返回响应。此处重申,请求与响应可以如上所述经由其他中间节点1625路由到其目标节点,而此类中间节点本身可能会提供一系列服务,包括路由、信任协商、整理及关联等功能。一个中间节点1625所提供的必要服务的例子可能是将消息传递到一个能够以请求节点1630已知的方式发送消息的通知处理节点。而“增值”服务的例子可能是例如赠券服务,该服务在已知请求节点1630意向的前提下,将响应与赠券相关联。
4.2.通知
如上所述,有些NEMO实施例支持异步和同步RPC通信模式,其中客户特别发出一项请求、然后等待响应或通过收回凭证定期检查是否有响应;除此而外,还支持一种基于通知概念的纯消息型通信模式。在一个实施例中,下列元素构成支持这一通知概念的数据和消息类型:
通知——一个以意向端点节点为目地的、包含指定类型载荷的消息。
通知意向条件——用以确定某一特定节点是否会接受某一给定通知的条件。通知意向条件可能包括基于特定类型身份(例如节点ID、用户ID等)、事件(例如节点发现、服务发现等)、近似性分组(例如新爵士音乐俱乐部内容),或一般类别(例如广告)等意向条件。
通知载荷——按类型划分的通知内容。载荷类型包括从简单文本消息到更为复杂的对象。
通知处理程序服务接口——可以接收通知的服务提供者接口类型。该服务提供者亦描述与该接口相关的通知意向条件,以及可接受的载荷类型。支持此种接口的节点可能是通知的最终目的地或一个中间处理端点。
通知处理器服务——一种能够把通知与意向节点相匹配、根据某种策略来传递通知的服务。
通知发出者——一个以若干意向节点和/或中间处理节点为目的地发送通知的节点。
通知、通知意向条件以及通知载荷最好是可扩展的。此外,通知处理程序服务接口最好是与任何其他NEMO服务接口一样,受到同一授权过程的支配。因此,即便某一特定通知在意向条件和可接受载荷方面相匹配,一个节点还是可以根据某些与通知的中间发送者或通知起源相关的一些相关接口策略来拒绝接收某一通知。
图17a描绘了一组通知处理节点1710发现支持通知处理器服务的节点1715和1720的情况。节点1720在其服务描述中指定其通知意向条件,以及可接受的通知载荷类型。
图17b描绘了通知是如何发送的。任何节点均可作为通知的起源以及处理器,并且可以负责将通知发送给支持通知处理器服务的节点1720。因此,节点1710a可以作为起始通知处理节点;或者将此功能由节点1710c(通知起源)和节点1710b(通知处理器)分担。另外,还可以有另一个节点(没有表示出来)负责通知的传递。选择处理来自外部通知发出节点的通知的通知处理器可与一个商业性通知处理引擎(例如微软通知服务)集成,以提高效率。
4.3.服务发现
为使用NEMO服务,NEMO节点首先需要了解这些服务。一种NEMO实施例支持三种动态服务发现机制,如图18a-c所示。
客户端驱动——一个NEMO节点1810a(如图18a)向支持“服务查询”服务接口1815a的某组目标节点(例如1820a)明确发出一个请求,询问目标节点是否支持指定的一组服务。如果请求节点1810a得到授权,服务提供节点1820a就会发送一个响应,表明它是否支持所请求的接口和相关的服务接口绑定。这是当节点公开一些服务时将支持的较为通用的接口之一。
节点注册——一个NEMO节点1810b(如图18b)可以将其描述(包括它所支持的服务)向其他节点(例如服务提供节点1820b)注册。如果一个节点支持该接口1815b,它就会接受来自其他节点的请求,并根据某种策略将这些描述缓存起来。然后,这些节点描述随后就可以供接收节点或向已经缓存描述的节点进行服务查询的其他节点直接使用。作为P2P注册的替代方案,一个节点也可利用一个公共注册中心,例如一个UDDI(统一发现、描述和集成协议)标准注册中心来找到服务。
基于事件的——若干节点(如图18c中的节点1810c)向意向节点1820c(“通知可知”和之前已表明其意向)发出通知1815c,表明状态变化(例如节点活动/可用),或一个节点宣称它支持某种特定的服务。通知1815c可包含对该节点及其服务的详细描述,或者仅包含与该事件相关的节点的ID。意向节点随即可以选择接受并处理该通知。
4.4.服务授权与信任的建立
如上所述,在一个实施例中,在NEMO节点允许访问所请求的服务之前,它首先必须确定请求节点是否有权访问该服务,以及请求节点在何种条件下有权访问该服务。访问权限是基于服务请求者与服务提供者之间交互的信任环境的。如下文将要讨论的,即便一个节点证实它是可信的,服务提供节点仍然可能要求它满足一个指定策略,才能允许访问其某一个或某些特定的服务。
在一个实施例中,NEMO并不规定一组任意节点在确定彼此是否互相信任时采用的具体要求、条件或决策逻辑。不同节点的信任语义可能会截然不同。相反,NEMO提供了一套标准工具集,使各节点可以协商相互可以接受的信任关系。NEMO在确定和建立节点间信任关系过程中,支持节点之间交换用于建立信任环境的凭证(和/或相关信息)。这种与信任有关的凭证可以使用多种不同的模型交换,其中包括:
服务绑定属性——这是一种将信任凭证作为服务接口绑定的一部分进行隐式交换的模型。例如,若一个节点1920a(如图19a)以SSL上的HTTPPost的形式公布一个服务,或者将一个服务公布为要求WS-SecurityXML签名的Web服务,那么这一服务绑定的实际属性就可以与一个请求节点1910a交换与信任有关的所有必要的凭证1915a。
请求/响应属性——这是一种通过请求节点1910b与服务提供节点1920b之间的WSDL请求和响应消息(参见图19b)交换信任凭证的模型,其中也可以将凭证作为消息1915b的属性。例如,数字证书可以附加在请求和响应消息内,一起传送,而且可用于建立信任关系。
显式交换——这是一种通过服务提供者接口(如图19c中1915c)显式交换信任凭证的模型,服务提供者接口允许查询某一特定节点所包含的、与信任凭证有关的信息。一般来说,这是最复杂的模型,通常要求一个单独的往返会话,才能在请求节点1910c与服务提供节点1920c之间完成凭证交换。该服务接口绑定本身即提供一条相互可接受的信任信道用于显式凭证交换。
除了这些基本模型以外,NEMO还可支持这些不同方式的组合。例如,与一个半信任服务绑定相关的通信信道可用于更直接地引导其他与安全有关的凭证的交换,或者直接交换与安全有关的凭证(可能具有某种固有的完整性)并使用它们建立一条与某些服务接口绑定相关联的安全通信信道。
如上所述,不同实体的信任模式语义和建立信任的过程可能会有所不同。在某些情况下,可能不需要节点之间的相互信任。这种动态异类环境要求一种能够提供一套通用工具的灵活模型,这些工具要允许不同的实体协商环境相关的信任语义。
4.5.由策略管理的访问
在一个实施例(如上所述)中,服务提供节点在允许请求节点访问一种资源之前除了要求建立信任环境之外,还可能要求请求节点满足与该资源相关的一种策略。为此目的而使用的策略决定机制可能是本地的和/或私有的。在一个实施例中,NEMO为支持此功能提供一种一致而灵活的机制。
作为服务描述的一部分,我们可以指定某些特定NEMO节点为“授权”服务提供者。在一个实施例中,一个授权服务提供节点实现一个用于处理并响应授权查询请求的标准服务。在允许访问服务接口之前,目标服务提供者需要将一个“授权”查询请求发送到任何此服务的授权节点,而且只有当一个或若干此类节点(或预先指定的节点组合)响应,表明允许该访问时,才能允许该访问。
如图20a所示,请求节点2010与服务提供节点2020之间交换消息2015(包括对某一特定服务的初始请求)。然后服务提供节点2020确定请求节点2010是否有权调用该服务,并因而与管理对所请求的服务的访问的授权节点2025交换授权消息2025(包括对这些节点的初始授权请求2030)。随后,服务提供节点2020根据所收到的响应,处理并返回适当的服务响应,或者返回一个响应,表明访问被拒。
这样,授权服务允许一个NEMO节点扮演策略决定点(PDP)的角色。在一个优选实施例中,NEMO不参与策略管理系统;它不硬性规定一个授权节点如何依据授权查询作出授权决策。然而,为互操作性起见,授权请求和响应最好能遵循某种标准,并能做到充分可扩展,以携带灵活多样的载荷,这样它们就可以适应不同策略管理系统条件下的不同类型的授权查询请求。在一个实施例中,至少为两种授权格式提供支持:(1)一种简单格式,使用某种最小的通用的命名标准(例如输入、简单请求者ID、资源ID和/或动作ID)提供非常简单的封套,以及(2)标准的“安全声明标记语言(SAML)格式封装一个授权查询。
在一个实施例中,授权节点必须识别和支持至少一种预先定义的“简单”格式并能够将其映射到该授权节点上存在的任何本地策略表达格式。对于其他格式,如果授权节点不能处理或理解授权查询请求的载荷,则返回一个适当的错误响应。扩展可能包括节点就授权查询的可接受格式进行协商的能力,以及节点通过查询确定指定授权服务提供节点支持何种格式的能力。
4.6.基本数字权限管理(DRM)节点交互
再次回到一个DRM应用的特定NEMO实例,图21是DRM节点(或顶点)图,可用来说明DRM节点之间的交互及其相互关系。考虑下面的情形,其中便携式设备2110是一个内容重放设备(例如iPod1)。Nip1是代表这一设备的节点。Kip1是与Nip1相关联的内容加密密钥。“用户”是该便携式设备的拥有者,Ng是代表该用户的节点。Kg是与Ng相关联的内容加密密钥。
PubLib是一个公共图书馆。Npl代表该图书馆的成员,Kpl是与Npl相关联的内容加密密钥。ACME代表所有ACME制造的音乐播放器。Namp代表设备的类别,Kamp是与此组相关联的内容加密密钥。
L1是一个从Nip1到Ng的链接,意味着该便携式设备属于该用户(并可访问用户的密钥)。L2是一个从Ng到Npl链接,意味着该用户是公共图书馆的成员(并可访问它的密钥)。L3是一个从Nip1到Namp的链接,意味着该便携式设备是一台ACME设备(仅有成员身份,因该公司没有密钥)。L4是一个从Npl到Napl的链接,而Napl是代表全体公共图书馆的节点(并可访问全组的密钥)。
C1是一个由公共图书馆供其成员使用的电影文件。Kc1是一个用以为C1加密的密钥。GB[C1](未显示)是C1的管理信息(例如,用于管理对该内容的访问的规则和相关信息)。E(a,b)表示用密钥“a”来加密“b”。
为说明起见,假定需要制定一条规则,使设备只要满足下列条件即可播放内容C1:(a)该设备的拥有者是图书馆的成员,而且(b)该设备是由ACME制造的。
内容C1是用Kc1来加密的。创建规则程序以及加密内容密钥RK[C1]=E(Kamp,E(Kpl,Kc1))。规则程序和RK[C1]都可以纳入该内容的管理模块GB[C1]。
该便携式设备接收C1和GB[C1]。例如,此二者均可打包在同一文件中,或分别接收。便携式设备在用户购买后首次安装设备时即接收L1。在用户向公共图书馆支付收视费时便携式设备即接收L2。便携式设备在制造时接收L3(例如L3是内置的)。
便携式设备从L1、L2和L3可以检查出Nip1有一条通向Ng(L1)、Npl(L1+L2)和Namp(L3)的图路径。便携式设备打算播放C1。于是便携式设备运行从GB[C1]中找到的规则。该规则可以检查Nip1是否确实是一ACME设备(到Namp的路径),并属于公共图书馆的成员(至Npl的路径)。因此,规则返回“是”,以及所定列表(Namp、Npl)。
便携式设备用L1计算出Kg,然后用L2从Kg计算出Kpl。便携式设备还使用L3计算出Kamp。该便携式设备将Kpl和Kamp应用于GB[C1]中找到的RK[C1]并计算出Kcl,然后用Kcl来解密并播放C1。
如同上例所示,当节点密钥是对称密钥时,内容打包者需要有权访问它想要将内容“绑定”于其上的节点的密钥。要实现这一点,可创建一个代表打包者的节点,以及连接该节点与它要将规则绑定于其上的节点之间的链接。例如,这一点亦可通过一项服务“带外”实现。但在某些情况下,采用对称密钥不可能,也不实际。这种情况下,可以向需要绑定的节点分配一个密钥对而无需共享知识。此时,打包者可使用目标节点的公共密钥将内容密钥加密,从而把内容密钥绑定到这个节点。欲获得解密密钥,客户端须有权通过到该节点的链接访问节点的私有密钥。
在最一般的情况下,用于规则的节点和用于计算内容加密密钥的节点不必是同一个。使用同一节点是很自然的,因为管理内容的规则和用来加密内容的密钥之间关系密切,但使用同一节点不是必需的。在一些系统中,若干节点可用于内容保护密钥,但不用于表示成员关系条件,或正相反。但在某些情况下,可以使用两组节点,一组用于规则,另一组用于内容保护。例如,一条规则可能说所有Npl组的成员均可访问内容C1,但是内容密钥Kc1可能不受Kp1保护,却受代表所有公共图书馆、不单是Npl的节点Napl的节点密钥Kapl保护。或者一条规则可能说你必须是Namp的成员,然而内容加密密钥却只绑定到Npl。
4.7.DRM虚拟机(VM)的操作
上面有关图21的讨论描述了一个DRM系统在高层次(节点和链接)的操作,包括内容管理策略的建立和执行。图22所示为一个用以执行这样的内容管理策略的建立和执行的DRM引擎的VM的示例代码模块2200。
图22显示的示意性代码模块2200包括以下4个主要元素:
pkCMAtom:该pkCMAtom2210是顶级代码模块单元,包含一个次级单元序列。
pkDSAtom:该pkDSAtom2220包含一个可载入数据段的内存映像。该单元的载荷是一个原始八位字节数值序列。
pkCSAtom:该pkCSAtom2230包含一个可载入代码段的内存映像。该单元的载荷是一个原始八位字节数值序列。
pkEXAtom:该pkEXAtom2240包含一个导出项列表。每一个导出项的组成部分有:名称,以8位名称长度编码,随后是名称的字符,包括一个结尾的0,接着是一个32位的整数,代表该指定项的字节偏移(这是相对储存于pkCSAtom单元中的数据的起点的偏移)。
4.7.1.模块载入器
在一种实施例中,控制VM负责载入代码模块。当一个代码模块被载入时,编码于pkDSAtom2220之中的内存映像被载入到数据段中的一个内存地址。该地址是由VM载入器选择的,并存储于DS的伪寄存器内。编码于pkCSAtom2230之中的内存映像被载入到代码段的一个内存地址。该地址是由VM载入器选择,并存储于代码段的伪寄存器内。
4.7.2.系统调用
在一种实施例中,控制VM程序可以调用在其代码模块的代码段以外实现的功能。这是通过使用OP_CALL指令来实现的,该指令带有一个指定系统调用号的整数栈操作数。根据该系统调用,该实现可能是位于另一不同代码模块(例如公用图书馆)中的控制VM字节代码例程,由VM以VM本地执行方式直接执行,或者委托给一个外部软件模块,例如VM的主机环境。
在一种实施例中,指定了几个系统调用号:
SYS_NOP=0:这一调用是非操作调用,它只是返回(并无操作),主要用于测试VM。
SYS_DEBUG_PRINT=1:打印出一串文本以便调试输出。这一调用会得到一个单一栈自变量,指定包含所要打印之以零位终止的字符串的内存位置的地址。
SYS_FIND_SYSCALL_BY_NAME=2:确定VM是否执行一个指定系统调用。如是的话,将系统调用号返回到栈上;否则返回数值-1。这一调用会得到一个单一栈自变量,指定包含所请求之以零位终止的系统调用名称的内存位置的地址。
4.7.3.系统调用号分配
在一种实施例中,控制VM保留0到1023系统调用号用于强制性系统调用(VM的所有概要必须执行的系统调用)。
系统调用号16384到32767可供VM动态分配(例如由SYS_FIND_SYSCALL_BY_NAME返回的系统调用号可由VM动态分配,而且在所有VM实施例中不必都是同样号码)。
4.7.4.标准系统调用
在一个实施例中,提供了几个标准系统调用以便于编写控制程序。这种标准系统调用可能包括旨在从主机获得一个时间戳的调用、确定一个节点是否可访问的调用和/或类似者。系统调用最好具有动态确定的号码(即其系统调用号可通过调用系统调用SYS_FIND_SYSCALL_BY_NAME、并且将其名称作为传递的参数而获得)。
4.8.DRM引擎接口与主机应用之间的接口
下面是一些由一个示意性DRM(客户端使用)引擎提供给主机应用的接口类型的示例性高层次描述:
SystemName::CreateSession(hostContextObject)→Session
创建一个针对一个主机应用环境的会话。环境对象由DRM引擎用来对该应用进行回调。
Session::ProcessObject(drmObject)
当主机应用遇到媒体文件中可以识别为属于DRM子系统的某些类型实体时,即调用此函数。此类实体包括:内容控制程序、成员身份令牌等等。这些对象的语法和语义不为主机应用所知。
Session::OpenContent(contentReference)→Content
当需要与多媒体内容文件交互时,主机应用调用此函数。DRM引擎返回一个内容对象,该对象随后可以用来获得关于内容的DRM信息,并与此信息交互。
Content::GetDrmInfo()
返回关于内容的DRM元数据,其他情况下此种数据不在文件的一般元数据中出现。
Content::CreateAction(actionInfo)→Action
当欲与一个内容对象交互时,主机应用调用此函数。参数actionInfo规定应用需要执行的操作类型(例如播放),以及任何相关参数(如有必要)。该功能返回一个操作对象,该对象可随后用来执行该操作并获得内容密钥。
Action::GetKeyInfo()
返回解密子系统解密内容所必需的信息。
Action::Check()
检查DRM子系统是否将授权执行这一操作(亦即Action::Perform()是否会随之而来)。
Action::Perform()
根据管理此操作的规则的规定,执行操作以及(利用其副作用)执行后续操作。
下面是一些由一个说明性主机应用提供给DRM(客户使用)引擎的接口类型的示例性高层次描述:
HostContext::GetFileSystem(type)→FileSystem
返回一个虚拟FileSystem对象,DRM子系统对其有独占访问权。该虚拟FileSystem用来存储DRM状态信息。该FileSystem之内的数据只能由DRM子系统读写。
HostContext::GetCurrentTime()
返回由主机系统维持的当前日期/时间。
HostContext::GetIdentity()
返回该主机的唯一ID。
HostContext::ProcessObject(dataObject)
若非识别出DRM子系统由该主机管理,向主机服务返回一个可能已嵌入一DRM对象内部的数据对象(例如证书)。
HostContext::VerifySignature(signatureInfo)
检查一个数据对象上数字签名的有效性。signatureInfo对象所包含的信息最好等同于在一个XMLSig单元中发现的信息。主机服务负责管理确认签名所必需的密钥和密钥凭证。
HostContext::CreateCipher(cipherType,keyInfo)→Cipher
创建一个DRM子系统可用来加密和解密数据的Cipher对象。最好是定义一组最低数量的密码类型,并对每一类型规定实现加密程序所需要的密钥信息的描述方式。
Cipher::Encrypt(data)
上面提到的Cipher对象,用于加密数据。
Cipher::Decrypt(data)
上面提到的Cipher对象,用于解密数据。
HostContext::CreateDigester(digesterType)→Digester
创建一个DRM子系统可用来计算某些数据的安全哈希的Digester对象。将定义一组最低数量的解析类型。
Digester::Update(data)
上面提到的用于计算安全哈希的Digester对象。
Digester::GetDigest()
上面提到的用于获得由DRM子系统计算的安全哈希的Digester对象。
下面是一些由一个说明性DRM(服务端打包)引擎提供给主机应用的接口类型的示例性高层次描述:
SystemName::CreateSession(hostContextObject)→Session
创建一个针对主机应用环境的会话。环境对象由DRM打包引擎用来对该应用进行回调。
Session::CreateContent(contentReferences[])→Content
主机应用会调用该函数以创建一个在后续过程中将与许可对象相关联的内容对象。在contentReferences数组中具有不止一个内容引用表明这些内容是绑定在一起的(例如一个音频和一个视频轨道),而且将其作为一个不可分割的整体而对其发放许可。
Content::SetDrmInfo(drmInfo)
该drmInfo参数具体说明将要发布的许可的元数据。该结构将被读出,并将作为指导原则,以便把许可计算为可供VM之用的字节代码。
Content::GetDRMObjects(format)→drmObjects
当主机应用准备接受由DRM打包引擎创建的drmObjects时,主机应用调用此函数。其中format参数将指明这些对象预期的格式(例如XML或二进制单元)。
Content::GetKeys()→keys[]
当主机应用需要加密内容的密钥时,调用此函数。在一个实施例中,每一个内容引用均有一个密钥。
下面是一些由一个说明性主机应用提供给DRM(服务端打包)引擎的接口类型的示例性高层次描述:
HostContext::GetFileSystem(type)→FileSystem
返回一个虚拟FileSystem对象,DRM子系统对其有独占访问权。该虚拟FileSystem用来存储DRM状态信息。该FileSystem之内的数据只能由DRM子系统读写。
HostContext::GetCurrentTime()→Time
返回由主机系统维持的当前日期/时间。
HostContext::GetIdentity()→ID
返回该主机的唯一ID。
HostContext::PerformSignature(signatureInfo,data)
由DRM打包引擎创建的某些DRM对象须视为可信。由主机提供的此项服务将被用来签署特定对象。
HostContext::CreateCipher(cipherType,keyInfo)→Cipher
创建一个DRM打包引擎可用来加密和解密数据的Cipher对象。该对象用来对ContentKey对象内的内容密钥数据加密。
Cipher::Encrypt(data)
上面提到的Cipher对象,用于加密数据。
Cipher::Decrypt(data)
上面提到的Cipher对象,用于解密数据。
HostContext::CreateDigester(digesterType)→Digester
创建一个DRM打包引擎可用来计算某些数据的安全哈希的Digestor对象。
Digester::Update(data)
上面提到的用于计算安全哈希的Digestor对象。
Digester::GetDigest()
上面提到的用于获得由DRM子系统计算的安全哈希的Digestor对象。
HostContext::GenerateRandomNumber()
生成可以用于生成一个密钥的一个随机数字。
5.服务
5.1.概述
从体系结构和操作角度对NEMO/DRM系统做过说明之后,我们现将注意转向对可用来实现系统功能的众多服务、数据类型及有关对象的集合示例(“概要”)。
如上所述,NEMO结构的一个优选实施例中采用了一种灵活而可移植的方式来描述与服务调用相关联的请求与响应、框架内所用数据类型、消息封装、以及NEMO框架内公开和使用的数据值的语法。WSDL1.1及以上版本具有充分的灵活性,去描述和表示各种类型的服务接口和调用模式,并具备足够的抽象性,去适应通过形形色色的通信协议与各种端点节点的绑定。
在一个实施例中,我们把概要定义为WSDL中定义的、主题上相关的一组数据类型和接口。NEMO区分“核心”概要(包括支持基本的NEMO节点交互模式和基础设施功能所必需的基本数据类型和服务消息的集合)与针对应用的概要,例如一个DRM概要(描述可以用NEMO实现的数字权限管理服务),这二者下面都有讨论。
需要意识到的是,在这些概要中定义的许多数据类型和服务是抽象的,应于使用之前加以具体化。其他概要是在核心概要之上构建起来的。
5.2.NEMO概要层次结构
在一个实施例中,服务接口和相关数据类型的定义构成一组在彼此之上构建的且并可扩展的强制、可选概要。概要与概要扩展之间的差别相当细微。一般来说,概要扩展不增加新的数据类型或服务类型定义。它们只是扩展现有的抽象和具体类型。
图23描绘了一个示例性的NEMO和DRM功能的概要层次结构。该概要层次结构的主要元素包括:
核心概要(profile)-这一概要层次结构的基础是核心概要2300,它最好共享NEMO和DRM的功能。所有其他概要均以这一概要为基础。它包括一组基本的普通类型(下面进行论述),作为创建框架内更复杂的类型的基础。核心概要中的许多类型是抽象的,在使用前须加以具体化。
核心概要扩展-紧靠核心概要2300上方的是核心概要扩展2320,它们是核心概要2300中的类型的初步具体化,由此产生具体的表示。
核心服务概要-同样紧靠核心概要2300上方,核心服务概要2310规定一组通用基础设施服务(下面也会讨论)。这一概要中的服务定义是抽象的,在使用前须加以具体化。
核心服务概要扩展-核心服务概要扩展2330是在核心概要扩展2320及核心服务概要2310之上构建的,是核心服务概要2310中所规定服务的初步具体化,由此产生具体的表示。
DRM概要-紧靠核心概要2300上方的还有DRM概要2340,是其他与DRM相关的概要的基础。DRM概要2340包括一组基本的普通类型(下面将讨论),作为创建更复杂的DRM特定类型的基础。DRM概要2340中的许多类型是抽象的,在使用前须加以具体化。
DRM概要扩展-DRM概要扩展2350是在DRM概要2340之上构建的,它们是DRM概要2340中类型的初步具体化,由此产生具体的表示。
DRM服务概要-DRM服务概要2360也是在DRM概要2340之上构建的,并定义一组通用DRM服务(下面也会讨论)。这一概要中的服务定义是抽象的,在使用前须加以具体化。
特定DRM概要–特定DRM概要2370是在DRM概要扩展2350和DRM服务概要2360之上构建的,是DRM服务概要2360中定义的DRM服务的进一步具体化。这一概要也引入了某些新类型,并进一步扩展了核心概要扩展2320中说明的某些类型。
5.3.NEMO服务与服务规范
在一个实施例中,这一概要层次结构内部包含下列主要服务结构(详细说明如上):
对等发现-系统中的对等方彼此互相发现的能力。
服务发现-发现不同对等方提供的服务并获得有关服务的信息的能力。
授权-确认给定对等方(例如节点)是否有权访问某一指定资源(例如一项服务)的能力。
通知-有关依据指定标准、向一组给定对等方(例如节点)传递目标消息的服务。
下面是这一概要层次结构示例中某些主要DRM结构的定义(详细说明亦如上):
个性化-为一DRM相关端点(诸如一CE设备、音乐播放器、DRM许可服务器等等)获得在一特定DRM系统环境下建立有效身份所需要的凭证、策略及其他对象的服务。
许可获得-获得新的DRM许可的服务。
许可转换-以一种DRM许可新格式交换另一种格式的服务。
成员身份-为在某种指定域内建立成员身份而获得各种类型对象的服务。
在一个实施例中,NEMO/DRM概要层次结构可被描述为一组通用界面规范(描述一组抽象的服务、通信模式及操作)、类型规范(包含NEMO概要中定义的数据类型)和具体规范(将抽象的服务接口映射到具体接口,包括与特定协议的绑定)。此文附录C以“服务定义及概要架构”的方式列举了这些规范的一个实施例。
6.其他应用情形
图24是一个相对简单的NEMO实施例工作示例,环境为用户使用新的音乐播放器播放一首受DRM保护的歌曲。然而如下所示,即便这一简单的示例也显示了许多不同的潜在相关应用情形。该示例证明了发现服务的桥接作用——使用基于通用的即插即用(UPnP)的服务发现作为寻找和链接到一个基于UDDI的目录服务的机制。它也详细说明了个人局域网(PAN)与广域网(WAN)服务之间的交互、为使用服务协商一个信任环境,以及提供新的设备和DRM服务。
参见图24,一个用户刚刚购买了一个新音乐播放器2400,想要播放一首受DRM保护的歌曲。播放器2400能够支持这一DRM系统,但需要被个性化。换言之,尽管播放器2400包括某些使它支持NEMO和具有DRM的功能的元素(未示出),但它首先必须执行个性化过程,才能成为此系统的一部分。
通常情况下,一个NEMO客户端包含如上图5a和6所示的某些基本元素,例如一个服务接入点,这样才能调用其他节点的服务;信任管理处理,以表明它是一个播放某些受保护内容的信任资源;以及一个Web服务层,以支持服务调用及消息的创建和接收。然而如下所讨论的,并非所有这些单元对于使一个节点加入一NEMO系统都是必要的。
在某些实施例中,客户端节点也可能包含若干DRM相关的基本元素,如上图12a和13-15所示,例如一DRM客户端引擎和加密服务(及相关对象和加密密钥),这样才能处理受保护内容,包括解密受保护歌曲;以及一媒体表现引擎,以播放歌曲。同样在这里,并非所有元素都必须存在。例如,播放器2400如果是只能播放不受保护内容的音乐播放器,则可能不需要其他音乐播放器所必备的核心加密元素。
更具体地说,在图24所示的示例中,播放器2400是无线设备,支持UpnP和蓝牙协议,并带有一套X.509证书用来确认签名及为消息签名。播放器2400是支持NEMO的,因为它能够生成和处理有限数量的NEMO消息,但由于资源限制,它不包含NEMO服务接入点。
然而,播放器2400能够加入用户家中的个人局域网(PAN)2410,该网包括一个支持NEMO的、连接Internet并带有蓝牙和一个NEMOSAP2430的家用网关设备2420。播放器2400和网关2420的UpnP栈均已扩展为支持用于“支持NEMO的网关”服务的新服务概要类型,下面将进行讨论。
当用户下载一支歌曲并试图播放时,播放器2400确定它需要被个性化并启动该过程。例如,播放器2400可能发出一个对PAN2410上的NEMO网关的UpnP服务请求。它找到一个NEMO网关服务,而且网关2420返回允许播放器2400连接到该服务的必要的信息。
接着,播放器2400生成一个NEMO个性化请求消息并将其发送给网关服务。该请求包括一个与播放器2400的设备身份相关联的X.509证书。网关2420接到请求后,确认它不能在本地满足该请求,但是能够发现其他潜在服务提供者。然而,网关2420有一个策略,规定它收到的所有消息都必须是数字签名的。因此它拒绝该请求,并返回一条授权失败消息,申明与处理此类请求相关的策略。
播放器2400接到拒绝后,注意到拒绝服务的理由,随即进行数字签名(亦即如上与图15相关的讨论)并将请求重新提交给网关2420,这次消息被网关所接受。如前边提到,网关2420不能在本地满足该请求,但可以执行服务发现。网关2420不知道它的SAP2430实现所支持的特定发现协议,于是,根据所需要服务类型(个性化)生成一个普通的基于属性的服务发现请求,并经由SAP2430发出请求。
SAP2430配置有必要的信息,可以与UDDI注册中心(例如基于Internet的UDDI注册中心2440)通信,它将该请求转换成适当格式的本地UDDI查询并将其发出。UDDI注册中心2440知道一个支持DRM个性化的服务提供者并返回查询结果。SAP2430接收结果并向网关2420返回带有服务提供者必要信息的适当格式的响应。
网关2420从服务发现响应中提取服务提供者信息,并基于初始请求代表播放器2400生成一个新个性化请求。这一请求提交给SAP2430。服务提供者信息(特别是个性化服务2450的服务接口描述)说明了SAP2430必须如何与一个通过WSDL描述的网络服务公开其服务的个性化服务进行通信。SAP2430按照这些要求调用个性化服务2450并收到响应。
网关2420随即将响应返给播放器2400,播放器2400就可以使用响应中的载荷将其DRM引擎个性化。此刻,播放器2400获得必要条件,能够充分参与各种本地与全球性面向用户的服务。这些服务提供对多种本地及远程内容服务、查询、匹配与许可服务以及其他自动化供应服务的完全浏览和访问,共同协作为用户服务。如上所解释的,为访问某些受保护的内容,可能需要各种解密密钥,这里假定用户和播放器2400满足内容提供者所实施的任何策略。
这样,一个在家中使用个人媒体播放器的用户可以享受CE设备的简单,而又享受网关和对等设备提供的服务。当用户旅行到另一地点时,该设备通过逻辑上连接到家庭网络的新网关服务能够重新发现并使用从家中可得到的大部分或全部服务,,同时享受新地点可用的服务,只要这些服务被该种服务相关各种政策所允许。反过来,用户的设备可以为在新地点发现的对等方提供服务。
很明显,利用某些或全部这些结构(NEMO节点、SAP、服务适配层、诸如XML、WSDL、SOAP、UDDI等各种标准),还可能有许多其他情形,即使在这个DRM音乐播放器示例的领域内。例如,播放器2400可能有自己的SAP,也许不需要网关2420。UDDI注册中心2440可能会用于其他目的,诸如查找音乐内容和/或为其发放许可。此外,还可构建许多其他DRM应用,例如涉及针对各种不同类型用户、多种不同类型的音频和视频实施复杂使用和分发策略的许可架构。再者,于DRM环境之外,几乎所有其他基于服务的应用都可使用NEMO框架来构建。
作为另一个示例,我们看一下NEMO在业务对等环境中的应用。业务应用开发与集成技术的快速发展已超出大多数IT部门所实施的传统工具和软件开发生命周期的局限。这包括文字处理文件、图表表示和电子表格的发展。尽管有些人会争论,这些最简单的形式文件,是否代表真实意义上的应用,但是应该注意到这些文件的许多形式具有经过正式描述的、定义良好的和复杂的对象模型。例如,这种文件或其他对象可能包括状态信息,该种信息可在对象的生命周期内被检查及更新,并具有让多个用户同时对该对象进行操作的能力,和/或其他任意的功能。在更复杂的情形下,基于文档的信息对象可经程序汇编,表现得如同成熟的应用。
正如传统的软件开发一样,这些类型的对象也可得益于来源控制和问责制。今日有许多系统支持文档管理,并有许多应用支持某种方式的文件控制。但是大多数这种系统在分布式处理环境条件下表现出局限性,包括利用显式的登记和检验模型的集中化的版本管理方法,以及在特定应用条件下被束缚于客户端表现应用或格式的不灵活的(非常薄弱或非常严格的)相干性策略。
借助于一个强调发现和格式协商能力的P2P策略结构,NEMO的优选实施例可用来解决这些局限。我们可以使一项应用(例如一个文档)的创建具备更丰富的结构形式,从而具有多种优点。丰富的策略可以应用于对象和应用的结构。例如,一个策略可以具体规定下列一些或全部内容:
·只有某些模块可以被修改。
·只有对象接口可以扩展或实现方式可以改变。
·只允许删除但不允许扩展。
·如何应用更新,包括诸如自动合并非冲突的更新功能,以及在某一特定对等方向其他对等方发送其更新之前即应用更新。
·基于策略的通知,这样使所有愿意的对等方都可得到更新通知,以便通过最适宜的机制参与直接同步。
·根据客户的能力,支持来自不同类型客户的更新。
为实现这一功能,每一个参与者所使用的创作应用可以是支持NEMO的对等方。对于创建的文档,可使用一个模板来说明策略,包括谁被授权、对文档的每一个部分可以做什么(除了文件的正常格式化规则外)。只要NEMO对等方所使用的策略引擎可以按其语义解释和执行策略规则,而且,只要文档创建所允许的对等接口支持的操作能够经由服务适配层被映射到一个特定对等方的环境,那么任何对等方均可参与其中,但内部对文件的表示可能会有所不同。
考虑这样一个系统:包括不同的NEMO对等方,其使用构建在NEMO框架之上的服务为形成一份报告文档而协作。在这个示例中,一个无线PDA应用运行一个以Java写成的应用程序,用来处理文档并以文本格式输出。在一台桌面工作站上微软Windows下运行的一个不同的实现使用微软Word格式处理同一份文件。PDA和工作站都能通过例如连接到一个局域网而彼此通信,这样就使PDA用户与工作站的用户就同一份文件彼此合作。在这个示例中:
·参与合作的NEMO对等方能够发现彼此、彼此的当前状态及其能力。
·每一个NEMO对等方为每一个可确认修改提交其身份、更改及操作(例如删除、扩展等等)
·将所有更改传播给每一个NEMO对等方。这可能实现是由于每一个NEMO对等方能够发现另一个对等方的概要和能力(如果公开宣传)。在这一点上,如果它不能这样做的话,通知对等方可将内容修改编码为被通知对等方可接受的格式。另一种选择是接受对等方在其接口接收到内容修改时可以将其以任何它视为合适的格式呈现。
·对等方在接受一个修改之前确认它是来自授权的NEMO参与者。
·依据文档策略应用修改。
作为另一个示例,我们看一下这样的情形,即一个便携式无线用户电子(CE)设备是一个支持NEMO的节点(X),其支持DRM格式A,但欲播放DRM格式B的内容。X宣布它再现该内容的愿望,及它的属性描述(例如它的身份、它支持的操作系统、它的可更新性概要、支持的付款方式和/或类似属性),然后等待从其他提供可能的解决方案的NEMO对等方返回的响应。X收到对其查询的三个响应:
(1)对等方1可以提供内容的清晰MP3格式的可下载低质量版本,费用为2美元。
(2)对等方2可提供经由安全信道、按播放次数付费的高质量内容流,费用是每次播放0.5美元。
(3)对等方3可提供对X的软件升级,该升级使它能播放DRM格式B的内容,费用为10美元。
审阅提案后,X决定第一方案为最佳选择。于是它通过第一方案提交内容请求。该请求包括声明一项委托,即允许对等方1通过另一个NEMO服务从X的支付帐户扣除2美元。一旦X付款,V即从对等方1收到随响应送来的允许它下载MP3文件的令牌。
如果X却决定第三选择是最佳方案,随之而来的是一个更复杂的业务交易。例如,第三选择可能需要被表示为一个使用NEMO编排描述符(NOD)描述的交易业务过程,所述NEMO编排描述符是由包含在支持NEMO的参与对等方中的NEMO工作流整理器(WFC)元素实现的。为完成对X的必要软件更新,可使用NEMO框架执行下列操作:
·X从其无线服务供应商(B)获得允许它接受更新的许可。
·无线服务供应商B直接验证对等方3的证书以确定其身份。
·X从B处下载允许它安装第三方软件更新的强制性更新,对此没有策略限制,但该场景是引起此操作的第一触发事件。
·X为对等方3所提供的更新付款。
·X从对等方3下载更新。
在这一业务过程中,有些操作可能可以由WFC元素同时执行,而其他操作可能需要获得授权并按照特定顺序执行。
NEMO框架的潜在应用的另一个示例是在线博弈环境。不少热门的多玩家博弈环境网络是集中型封闭门户结构,它使在线玩家能够创建并参与博弈会话。
这些环境的局限性之一在于用户通常必须与对弈网络具有紧密关系,并须有一帐户(通常与一特定博弈名称关联)以便使用该服务。一般玩家通常必须管理跨越多个博弈网络、涉及若干名称的几个博弈帐户,并与特定的博弈提供者的客户端应用交互,以便组织多玩家博弈并参与网络之内。这种做法往往不方便,不利于在线使用。
NEMO框架的实施例可用于增强在线博弈体验,通过创造一个支持更趋向联合的、分布式博弈体验的环境,使专业在线博弈网络的细节对于用户和服务提供者来说是透明的。这不仅提供了更好的用户体验,从而鼓励采用这些服务,同时能够降低博弈网络提供者的管理负担。
为实现这些益处,可用NEMO模块对博弈客户端进行个性化,使其能够作为NEMO对等方参与其中。另外可用NEMO模块对博弈网络进行个性化,使其能以标准化方式公开管理接口。最后,可用NEMO信任管理确保只有授权的对等方才能以指定方式进行交互。
例如,假设有3个博弈网络提供者A、B和C,及两个用户X与Y。用户X有一关于A的帐户,而用户Y有一关于B的帐户。X与Y都要求可在C运行的一个新赌戏,并想彼此对博。使用NEMO框架,X的博弈对等方能够自动发现在线博弈提供者C。在A确认C是一合法赌博网络后,X的帐户信息可从A传输到C。现在X已在C注册,规定可以利用正确的令牌与C进行交互。用户Y借助来自B的凭证,通过同样程序获得访问C的资格。一旦X与Y都注册,就可彼此发现并创建一个在线博弈会话。
这一简单注册示例可进一步扩展到处理在线博弈环境可能提供的其他服务,例如博弈令牌存储(例如在保险箱内)、帐户支付以及诸如历史得分记录之类的状态信息共享。
虽则以企业文档管理、在线博弈及媒体内容使用为例做了展示,应该明白此处描述的NEMO框架和DRM系统可应用于任何适宜的场合,并不限于这些特定的示例。
为清晰起见而在前述部分做了详细说明,但显而易见,在随附权利要求范围内可能实施某些更改和修正。须注意的是,本发明的过程和设备的实现可有许多不同的方法。因此,现有实施例应被视为说明性的而非限制性的,而且发明的有效主体不应局限于此处所给的细节,而是可以在随附权利要求的等同范围内加以修订。
Claims (20)
1.一种授权对在计算机系统上的电子内容片段的访问的方法,所述方法包括:
接收来自所述计算机系统的用户的访问电子内容片段的请求;
重新获得与所述电子内容片段相关的许可,所述许可包括控制对象、控制器对象、保护器对象和内容密钥对象,
其中所述控制对象包括管理电子内容片段的使用的控制程序,所述内容密钥对象支持对电子内容片段的访问,所述控制器对象将所述控制对象与所述内容密钥对象关联,并且所述保护器对象将所述内容密钥与电子内容片段关联;
从所述控制对象重新获得控制程序;以及
使用运行在所述计算机系统上的数字权限管理引擎执行所述控制程序以确定所述请求是否被认可,其中执行所述控制程序包括评估一个或多个链接对象以确定是否满足由所述控制程序所表达的一个或多个条件,其中每个链接对象表示两个实体之间的关系,以及其中评估所述一个或多个链接对象包括确定是否能从与第二实体相关的第二节点对象获得与第一实体相关的第一节点对象,其中节点对象表示实体及其属性。
2.如权利要求1所述的方法,其中所述控制器对象能操作地将所述控制对象安全地绑定到所述内容密钥对象。
3.如权利要求1所述的方法,其中所述保护器对象能操作地将所述内容密钥对象安全地绑定到所述电子内容片段。
4.如权利要求3所述的方法,其中所述内容密钥对象包括加密的密钥,所述加密的密钥当被解密时能够解密所述电子内容片段。
5.如权利要求4所述的方法,进一步包括:
从所述一个或多个链接对象获得解密密钥,所述解密密钥能够解密加密的密钥。
6.如权利要求4所述的方法,其中所述一个或多个链接对象中的至少一个链接对象包括第一密钥的加密版本,所述第一密钥能够解密加密的密钥,所述方法进一步包括:
使用与所述计算机系统相关的第二密钥来解密所述第一密钥;
使用所述第一密钥来解密所述加密的密钥;以及
使用所述密钥来解密所述电子内容片段。
7.如权利要求1所述的方法,其中所述第一实体包括用户,并且其中所述第二实体包括能够呈递电子内容的装置。
8.一种授权要对电子内容片段执行给定动作的方法,所述方法包括:
使用在第一数字权限管理引擎上运行的虚拟机执行控制程序,所述控制程序能操作地确定是否能够对所述电子内容片段执行所述给定动作,其中所述控制程序能操作地评估必须要被满足的一组一个或多个条件以便使所述给定动作的执行被授权,并且其中所述一组一个或多个条件中的至少第一条件包括能够从与第二实体相关的第二节点对象获得与第一实体相关的第一节点对象的要求;其中
评估所述数字权限管理引擎能得到的一个或多个链接对象以确定是否能从所述第二节点对象获得所述第一节点对象,每个链接对象表达两个实体之间的关系,其中节点对象表示实体及其属性。
9.如权利要求8所述的方法,其中所述一组一个或多个条件中的至少第二条件包括能够从所述第二节点对象获得与第三实体相关的第三节点对象的要求。
10.如权利要求8所述的方法,进一步包括:
从所述一个或多个链接对象获得第一密钥,所述第一密钥能够解密第二密钥,所述第二密钥能够解密所述电子内容片段。
11.如权利要求8所述的方法,其中所述控制程序被包括在控制对象中。
12.如权利要求11所述的方法,其中所述控制对象加密地绑定到内容密钥对象,所述内容密钥对象包括加密的密钥,所述加密的密钥能够解密所述电子内容片段。
13.一种管理电子内容片段的方法,所述方法包括:
加密所述电子内容片段;
将许可与所述电子内容片段关联起来,所述许可包括控制程序,所述控制程序要求,作为授权所述电子内容片段的解密的条件,占有一组一个或多个链接对象,所述链接对象逻辑地将第一节点对象与第二节点对象连接起来,所述许可进一步包括能操作地解密所述电子内容片段的第一密钥的加密版本,其中所述第一节点对象表示第一实体及其属性并且所述第二节点对象表示第二实体及其属性;
发送所述电子内容片段至远程计算机系统;
确定所述远程计算机系统占有一组一个或多个链接对象,所述链接对象逻辑地将第一节点对象与第二节点对象连接起来,其中所述一个或多个链接对象中的至少一个链接对象包括能操作地解密所述第一密钥的第二密钥的加密版本;
在完成所述确定步骤时,使用与所述远程计算机系统相关联的密钥来解密所述第二密钥;
使用所述第二密钥来解密所述第一密钥;以及
使用所述第一密钥来解密所述电子内容片段。
14.如权利要求13所述的方法,其中所述许可进一步包括安全地将所述控制程序绑定到所述第一密钥的控制器对象。
15.如权利要求14所述的方法,其中所述控制器对象包括内容密钥对象和控制对象的安全哈希,其中所述内容密钥对象包括所述第一密钥的加密版本,并且所述控制对象包括所述控制程序。
16.一种用于控制对计算机系统上的电子内容片段的访问的系统,所述系统包括:
用于接收来自所述计算机系统的用户的访问所述电子内容片段的请求的装置;
用于重新获得与所述电子内容片段相关的许可的装置,所述许可包括控制对象、控制器对象、保护器对象和内容密钥对象,
其中所述控制对象包括管理电子内容片段的使用的控制程序,所述内容密钥对象支持对电子内容片段的访问,所述控制器对象将所述控制对象与所述内容密钥对象关联,并且所述保护器对象将所述内容密钥与电子内容片段关联;
用于从所述控制对象重新获得控制程序的装置;以及
使用运行在所述计算机系统上的数字权限管理引擎执行所述控制程序以确定所述请求是否会被认可的装置,其中执行所述控制程序包括评估一个或多个链接对象以确定是否满足所述控制程序所表达的一个或多个条件,其中每个链接对象表示两个实体之间的关系,以及其中评估所述一个或多个链接对象包括确定是否能从与第二实体相关的第二节点对象获得与第一实体相关的第一节点对象,其中节点对象表示实体及其属性。
17.如权利要求16所述的系统,其中所述控制器对象能操作地将所述控制对象安全地绑定到所述内容密钥对象。
18.如权利要求16所述的系统,其中所述保护器对象能操作地将所述内容密钥对象安全地绑定到所述电子内容片段。
19.如权利要求18所述的系统,其中所述内容密钥对象包括加密的密钥,所述加密的密钥当被解密时能够解密电子内容片段。
20.如权利要求19所述的系统,进一步包括:
从所述一个或多个链接对象获得解密密钥的装置,所述解密密钥能够解密加密的密钥。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US47635703P | 2003-06-05 | 2003-06-05 | |
US60/476357 | 2003-06-05 | ||
US60/476,357 | 2003-06-05 | ||
US50452403P | 2003-09-15 | 2003-09-15 | |
US60/504,524 | 2003-09-15 | ||
US60/504524 | 2003-09-15 | ||
CN200480021795.9A CN1860761B (zh) | 2003-06-05 | 2004-06-07 | 用于对等服务编排的可互操作系统和方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200480021795.9A Division CN1860761B (zh) | 2003-06-05 | 2004-06-07 | 用于对等服务编排的可互操作系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103001923A CN103001923A (zh) | 2013-03-27 |
CN103001923B true CN103001923B (zh) | 2016-03-30 |
Family
ID=34197784
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200480021795.9A Expired - Fee Related CN1860761B (zh) | 2003-06-05 | 2004-06-07 | 用于对等服务编排的可互操作系统和方法 |
CN201110260513.2A Expired - Fee Related CN103001923B (zh) | 2003-06-05 | 2004-06-07 | 用于控制对在计算机系统上的电子内容片段的访问的方法和系统 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200480021795.9A Expired - Fee Related CN1860761B (zh) | 2003-06-05 | 2004-06-07 | 用于对等服务编排的可互操作系统和方法 |
Country Status (13)
Country | Link |
---|---|
US (22) | US8234387B2 (zh) |
EP (3) | EP2270622B1 (zh) |
JP (4) | JP5242915B2 (zh) |
KR (4) | KR101030941B1 (zh) |
CN (2) | CN1860761B (zh) |
AP (1) | AP2005003476A0 (zh) |
AU (2) | AU2004264582B2 (zh) |
BR (1) | BRPI0410999A (zh) |
CA (2) | CA2776354A1 (zh) |
EA (2) | EA015549B1 (zh) |
IL (2) | IL172366A (zh) |
SG (1) | SG155065A1 (zh) |
WO (1) | WO2005017654A2 (zh) |
Families Citing this family (745)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7133846B1 (en) * | 1995-02-13 | 2006-11-07 | Intertrust Technologies Corp. | Digital certificate support system, methods and techniques for secure electronic commerce transaction and rights management |
US6948070B1 (en) | 1995-02-13 | 2005-09-20 | Intertrust Technologies Corporation | Systems and methods for secure transaction management and electronic rights protection |
US6658568B1 (en) * | 1995-02-13 | 2003-12-02 | Intertrust Technologies Corporation | Trusted infrastructure support system, methods and techniques for secure electronic commerce transaction and rights management |
US7124302B2 (en) * | 1995-02-13 | 2006-10-17 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
US5943422A (en) | 1996-08-12 | 1999-08-24 | Intertrust Technologies Corp. | Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels |
US7143290B1 (en) * | 1995-02-13 | 2006-11-28 | Intertrust Technologies Corporation | Trusted and secure techniques, systems and methods for item delivery and execution |
US5892900A (en) * | 1996-08-30 | 1999-04-06 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
US7165174B1 (en) * | 1995-02-13 | 2007-01-16 | Intertrust Technologies Corp. | Trusted infrastructure support systems, methods and techniques for secure electronic commerce transaction and rights management |
DE69638018D1 (de) * | 1995-02-13 | 2009-10-15 | Intertrust Tech Corp | Systeme und Verfahren zur Verwaltung von gesicherten Transaktionen und zum Schutz von elektronischen Rechten |
US7095854B1 (en) * | 1995-02-13 | 2006-08-22 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
US6157721A (en) * | 1996-08-12 | 2000-12-05 | Intertrust Technologies Corp. | Systems and methods using cryptography to protect secure computing environments |
US7133845B1 (en) * | 1995-02-13 | 2006-11-07 | Intertrust Technologies Corp. | System and methods for secure transaction management and electronic rights protection |
US20060206397A1 (en) * | 1995-02-13 | 2006-09-14 | Intertrust Technologies Corp. | Cryptographic methods, apparatus and systems for storage media electronic right management in closed and connected appliances |
US7809138B2 (en) * | 1999-03-16 | 2010-10-05 | Intertrust Technologies Corporation | Methods and apparatus for persistent control and protection of content |
US6959384B1 (en) * | 1999-12-14 | 2005-10-25 | Intertrust Technologies Corporation | Systems and methods for authenticating and protecting the integrity of data streams and other data |
US7430670B1 (en) * | 1999-07-29 | 2008-09-30 | Intertrust Technologies Corp. | Software self-defense systems and methods |
US8145776B1 (en) * | 1999-10-15 | 2012-03-27 | Sony Corporation | Service providing apparatus and method, and information processing apparatus and method as well as program storage medium |
US6832316B1 (en) * | 1999-12-22 | 2004-12-14 | Intertrust Technologies, Corp. | Systems and methods for protecting data secrecy and integrity |
US7085839B1 (en) | 2000-04-07 | 2006-08-01 | Intertrust Technologies Corporation | Network content management |
US7266681B1 (en) * | 2000-04-07 | 2007-09-04 | Intertrust Technologies Corp. | Network communications security agent |
US7313692B2 (en) * | 2000-05-19 | 2007-12-25 | Intertrust Technologies Corp. | Trust management systems and methods |
US7107448B1 (en) * | 2000-06-04 | 2006-09-12 | Intertrust Technologies Corporation | Systems and methods for governing content rendering, protection, and management applications |
US7213266B1 (en) | 2000-06-09 | 2007-05-01 | Intertrust Technologies Corp. | Systems and methods for managing and protecting electronic content and applications |
US7050586B1 (en) | 2000-06-19 | 2006-05-23 | Intertrust Technologies Corporation | Systems and methods for retrofitting electronic appliances to accept different content formats |
US9819561B2 (en) | 2000-10-26 | 2017-11-14 | Liveperson, Inc. | System and methods for facilitating object assignments |
US8868448B2 (en) * | 2000-10-26 | 2014-10-21 | Liveperson, Inc. | Systems and methods to facilitate selling of products and services |
US20060015390A1 (en) * | 2000-10-26 | 2006-01-19 | Vikas Rijsinghani | System and method for identifying and approaching browsers most likely to transact business based upon real-time data mining |
WO2002054391A1 (fr) * | 2000-12-28 | 2002-07-11 | Hitachi Maxell, Ltd. | Bande magnetique, son procede de nettoyage et appareil de nettoyage/formation de servopiste optique |
US20050220286A1 (en) * | 2001-02-27 | 2005-10-06 | John Valdez | Method and apparatus for facilitating integrated access to communications services in a communication device |
US7580988B2 (en) * | 2001-04-05 | 2009-08-25 | Intertrust Technologies Corporation | System and methods for managing the distribution of electronic content |
US7136840B2 (en) | 2001-04-20 | 2006-11-14 | Intertrust Technologies Corp. | Systems and methods for conducting transactions and communications using a trusted third party |
US7581103B2 (en) | 2001-06-13 | 2009-08-25 | Intertrust Technologies Corporation | Software self-checking systems and methods |
US7383570B2 (en) | 2002-04-25 | 2008-06-03 | Intertrust Technologies, Corp. | Secure authentication systems and methods |
US7149899B2 (en) | 2002-04-25 | 2006-12-12 | Intertrust Technologies Corp. | Establishing a secure channel with a human user |
JP3973986B2 (ja) * | 2002-07-12 | 2007-09-12 | 株式会社エヌ・ティ・ティ・ドコモ | ノード探索方法、ノード、通信システム及びノード探索プログラム |
US8799883B2 (en) * | 2003-01-31 | 2014-08-05 | Hewlett-Packard Development Company, L. P. | System and method of measuring application resource usage |
US20040235563A1 (en) * | 2003-02-26 | 2004-11-25 | Blackburn Christopher W. | Game update service in a service-oriented gaming network environment |
JP2004255194A (ja) * | 2003-02-26 | 2004-09-16 | Wms Gaming Inc | サービス指向ゲームネットワーク環境におけるゲーム管理サービス |
US20060142086A1 (en) * | 2003-02-26 | 2006-06-29 | Blackburn Christopher W | Progressive service in a service-oriented gaming network environment |
CA2458554A1 (en) * | 2003-02-26 | 2004-08-26 | Wms Gaming Inc. | A service-oriented gaming network environment |
US8308567B2 (en) * | 2003-03-05 | 2012-11-13 | Wms Gaming Inc. | Discovery service in a service-oriented gaming network environment |
US20040243849A1 (en) * | 2003-03-06 | 2004-12-02 | Blackburn Christopher W. | Authorization service in a service-oriented gaming network environment |
US20040243848A1 (en) * | 2003-03-06 | 2004-12-02 | Blackburn Christopher W. | Authentication service in a service-oriented gaming network environment |
US7927210B2 (en) * | 2003-03-17 | 2011-04-19 | Wms Gaming Inc. | Accounting service in a service-oriented gaming network environment |
US20040242331A1 (en) * | 2003-03-17 | 2004-12-02 | Blackburn Christopher W. | Time service in a service-oriented gaming network environment |
US8261062B2 (en) * | 2003-03-27 | 2012-09-04 | Microsoft Corporation | Non-cryptographic addressing |
US20040266532A1 (en) * | 2003-03-27 | 2004-12-30 | Blackburn Christopher W. | Event management service in a service-oriented gaming network environment |
CA2464514A1 (en) * | 2003-04-16 | 2004-10-16 | Wms Gaming Inc. | Secured networks in a gaming system environment |
CA2464788A1 (en) * | 2003-04-16 | 2004-10-16 | Wms Gaming Inc. | A gaming software distribution network in a gaming system environment |
CA2464797A1 (en) * | 2003-04-16 | 2004-10-16 | Wms Gaming Inc. | Remote authentication of gaming software in a gaming system environment |
US20050227768A1 (en) * | 2003-05-27 | 2005-10-13 | Blackburn Christopher W | Gaming network environment having a language translation service |
EP2270622B1 (en) * | 2003-06-05 | 2016-08-24 | Intertrust Technologies Corporation | Interoperable systems and methods for peer-to-peer service orchestration |
US7729992B2 (en) * | 2003-06-13 | 2010-06-01 | Brilliant Digital Entertainment, Inc. | Monitoring of computer-related resources and associated methods and systems for disbursing compensation |
US8095500B2 (en) | 2003-06-13 | 2012-01-10 | Brilliant Digital Entertainment, Inc. | Methods and systems for searching content in distributed computing networks |
US7526541B2 (en) * | 2003-07-29 | 2009-04-28 | Enterasys Networks, Inc. | System and method for dynamic network policy management |
US8200775B2 (en) | 2005-02-01 | 2012-06-12 | Newsilike Media Group, Inc | Enhanced syndication |
US20050038708A1 (en) * | 2003-08-10 | 2005-02-17 | Gmorpher Incorporated | Consuming Web Services on Demand |
JP4265326B2 (ja) * | 2003-08-12 | 2009-05-20 | 株式会社日立製作所 | サービス処理方法及びシステム並びにその処理プログラム |
US8060553B2 (en) | 2003-08-27 | 2011-11-15 | International Business Machines Corporation | Service oriented architecture for a transformation function in a data integration platform |
US20050235274A1 (en) * | 2003-08-27 | 2005-10-20 | Ascential Software Corporation | Real time data integration for inventory management |
US7814470B2 (en) * | 2003-08-27 | 2010-10-12 | International Business Machines Corporation | Multiple service bindings for a real time data integration service |
US20050262189A1 (en) * | 2003-08-27 | 2005-11-24 | Ascential Software Corporation | Server-side application programming interface for a real time data integration service |
US20050223109A1 (en) * | 2003-08-27 | 2005-10-06 | Ascential Software Corporation | Data integration through a services oriented architecture |
US7814142B2 (en) | 2003-08-27 | 2010-10-12 | International Business Machines Corporation | User interface service for a services oriented architecture in a data integration platform |
US20060010195A1 (en) * | 2003-08-27 | 2006-01-12 | Ascential Software Corporation | Service oriented architecture for a message broker in a data integration platform |
WO2005022417A2 (en) * | 2003-08-27 | 2005-03-10 | Ascential Software Corporation | Methods and systems for real time integration services |
US20050240354A1 (en) * | 2003-08-27 | 2005-10-27 | Ascential Software Corporation | Service oriented architecture for an extract function in a data integration platform |
US8041760B2 (en) | 2003-08-27 | 2011-10-18 | International Business Machines Corporation | Service oriented architecture for a loading function in a data integration platform |
US20050228808A1 (en) * | 2003-08-27 | 2005-10-13 | Ascential Software Corporation | Real time data integration services for health care information data integration |
US20050234969A1 (en) * | 2003-08-27 | 2005-10-20 | Ascential Software Corporation | Services oriented architecture for handling metadata in a data integration platform |
US7296296B2 (en) * | 2003-10-23 | 2007-11-13 | Microsoft Corporation | Protected media path and refusal response enabler |
JP2005141413A (ja) * | 2003-11-05 | 2005-06-02 | Sony Corp | 情報処理装置及びその情報処理方法、並びにデータ通信システム及びデータ通信方法 |
US9009290B2 (en) | 2004-01-22 | 2015-04-14 | Sony Corporation | Methods and apparatuses for discovery and notification of services |
JP4892977B2 (ja) * | 2004-01-29 | 2012-03-07 | ソニー株式会社 | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
US20050177715A1 (en) * | 2004-02-09 | 2005-08-11 | Microsoft Corporation | Method and system for managing identities in a peer-to-peer networking environment |
US7716726B2 (en) * | 2004-02-13 | 2010-05-11 | Microsoft Corporation | System and method for protecting a computing device from computer exploits delivered over a networked environment in a secured communication |
US7814543B2 (en) * | 2004-02-13 | 2010-10-12 | Microsoft Corporation | System and method for securing a computer system connected to a network from attacks |
US7603716B2 (en) * | 2004-02-13 | 2009-10-13 | Microsoft Corporation | Distributed network security service |
US7664828B2 (en) | 2004-02-20 | 2010-02-16 | Microsoft Corporation | Invalid policy detection |
US7496649B2 (en) * | 2004-02-20 | 2009-02-24 | Microsoft Corporation | Policy application across multiple nodes |
US7243157B2 (en) * | 2004-02-20 | 2007-07-10 | Microsoft Corporation | Dynamic protocol construction |
US8862570B1 (en) | 2004-03-02 | 2014-10-14 | Rockstar Consortium Us Lp | Method and apparatus for open management of multi-media services |
US7653189B1 (en) * | 2004-03-02 | 2010-01-26 | Nortel Networks Limited | Telecommunications service negotiation |
US7738980B2 (en) * | 2004-03-04 | 2010-06-15 | Yamaha Corporation | Apparatus for editing configuration data of digital mixer |
US7761406B2 (en) * | 2004-03-16 | 2010-07-20 | International Business Machines Corporation | Regenerating data integration functions for transfer from a data integration platform |
US20050251533A1 (en) * | 2004-03-16 | 2005-11-10 | Ascential Software Corporation | Migrating data integration processes through use of externalized metadata representations |
US8239543B1 (en) * | 2004-03-22 | 2012-08-07 | Netapp, Inc. | Method and an apparatus to provide access to operational data in a storage server via multiple data management protocols |
US7565438B1 (en) * | 2004-03-30 | 2009-07-21 | Sprint Communications Company L.P. | Digital rights management integrated service solution |
US20060242406A1 (en) | 2005-04-22 | 2006-10-26 | Microsoft Corporation | Protected computing environment |
JP4192841B2 (ja) * | 2004-05-17 | 2008-12-10 | ヤマハ株式会社 | ミキサエンジン制御装置及びプログラム |
US20060031234A1 (en) * | 2004-05-21 | 2006-02-09 | Brodi Beartusk | Systems and methods for a collaborative group chat |
US20050262007A1 (en) * | 2004-05-21 | 2005-11-24 | Bea Systems, Inc. | Systems and methods for a collaborative call center |
US20060010205A1 (en) * | 2004-05-21 | 2006-01-12 | Bea Systems, Inc. | Systems and methods for collaboration impersonation |
US20050262092A1 (en) * | 2004-05-21 | 2005-11-24 | Bea Systems, Inc. | Systems and methods for collaboration dynamic pageflows |
US20050262075A1 (en) | 2004-05-21 | 2005-11-24 | Bea Systems, Inc. | Systems and methods for collaboration shared state management |
US20050273668A1 (en) * | 2004-05-20 | 2005-12-08 | Richard Manning | Dynamic and distributed managed edge computing (MEC) framework |
US20060010125A1 (en) * | 2004-05-21 | 2006-01-12 | Bea Systems, Inc. | Systems and methods for collaborative shared workspaces |
US7730482B2 (en) * | 2004-06-08 | 2010-06-01 | Covia Labs, Inc. | Method and system for customized programmatic dynamic creation of interoperability content |
US7788713B2 (en) * | 2004-06-23 | 2010-08-31 | Intel Corporation | Method, apparatus and system for virtualized peer-to-peer proxy services |
US7929689B2 (en) * | 2004-06-30 | 2011-04-19 | Microsoft Corporation | Call signs |
US8312267B2 (en) | 2004-07-20 | 2012-11-13 | Time Warner Cable Inc. | Technique for securely communicating programming content |
US8266429B2 (en) | 2004-07-20 | 2012-09-11 | Time Warner Cable, Inc. | Technique for securely communicating and storing programming material in a trusted domain |
US20060021018A1 (en) * | 2004-07-21 | 2006-01-26 | International Business Machines Corporation | Method and system for enabling trust infrastructure support for federated user lifecycle management |
GB2416872A (en) * | 2004-07-30 | 2006-02-08 | Canon Kk | System for managing tasks on a network by using a service discover, a task manager and a service publisher |
WO2006015441A1 (en) * | 2004-08-13 | 2006-02-16 | Remasys Pty Ltd | Monitoring and management of distributed information systems |
US7693994B2 (en) * | 2004-09-17 | 2010-04-06 | Ricoh Company, Ltd. | Intermediary apparatus, distributed processing system, data-transfer method, program and recording medium |
US7587496B2 (en) * | 2004-09-17 | 2009-09-08 | Ricoh Company, Ltd. | Transfer device, distributed processing system, transfer device control method, program, and recording medium |
US20060064386A1 (en) * | 2004-09-20 | 2006-03-23 | Aaron Marking | Media on demand via peering |
US11734393B2 (en) | 2004-09-20 | 2023-08-22 | Warner Bros. Entertainment Inc. | Content distribution with renewable content protection |
US8793762B2 (en) | 2004-09-20 | 2014-07-29 | Secure Content Storage Association Llc | Simple nonautonomous peering network media |
GB2419000A (en) * | 2004-10-06 | 2006-04-12 | Hewlett Packard Development Co | Proving relationships between data |
KR100628655B1 (ko) * | 2004-10-20 | 2006-09-26 | 한국전자통신연구원 | 상이한 디지털 저작권 관리 도메인간의 콘텐츠 교환을 위한방법 및 시스템 |
JP4357534B2 (ja) * | 2004-10-28 | 2009-11-04 | 富士通株式会社 | 移動無線通信端末及び通信制御方法 |
US7716727B2 (en) * | 2004-10-29 | 2010-05-11 | Microsoft Corporation | Network security device and method for protecting a computing device in a networked environment |
US7810164B2 (en) * | 2004-11-11 | 2010-10-05 | Yamaha Corporation | User management method, and computer program having user authorization management function |
GB0425860D0 (en) * | 2004-11-25 | 2004-12-29 | Ibm | A method for ensuring the quality of a service in a distributed computing environment |
US8533357B2 (en) * | 2004-12-03 | 2013-09-10 | Microsoft Corporation | Mechanism for binding a structured data protocol to a protocol offering up byte streams |
EP1672891A1 (en) * | 2004-12-14 | 2006-06-21 | Alcatel | Method for transferring messages |
US7562382B2 (en) * | 2004-12-16 | 2009-07-14 | International Business Machines Corporation | Specializing support for a federation relationship |
US7533258B2 (en) * | 2005-01-07 | 2009-05-12 | Cisco Technology, Inc. | Using a network-service credential for access control |
EP1681823A1 (en) * | 2005-01-17 | 2006-07-19 | Sap Ag | A method and a system to organize and manage a semantic web service discovery |
US20070106754A1 (en) * | 2005-09-10 | 2007-05-10 | Moore James F | Security facility for maintaining health care data pools |
US20060265489A1 (en) * | 2005-02-01 | 2006-11-23 | Moore James F | Disaster management using an enhanced syndication platform |
US8700738B2 (en) * | 2005-02-01 | 2014-04-15 | Newsilike Media Group, Inc. | Dynamic feed generation |
US8200700B2 (en) | 2005-02-01 | 2012-06-12 | Newsilike Media Group, Inc | Systems and methods for use of structured and unstructured distributed data |
US20080046471A1 (en) * | 2005-02-01 | 2008-02-21 | Moore James F | Calendar Synchronization using Syndicated Data |
US20080195483A1 (en) * | 2005-02-01 | 2008-08-14 | Moore James F | Widget management systems and advertising systems related thereto |
US20070050446A1 (en) * | 2005-02-01 | 2007-03-01 | Moore James F | Managing network-accessible resources |
US8347088B2 (en) * | 2005-02-01 | 2013-01-01 | Newsilike Media Group, Inc | Security systems and methods for use with structured and unstructured data |
US20080040151A1 (en) * | 2005-02-01 | 2008-02-14 | Moore James F | Uses of managed health care data |
US20080126178A1 (en) * | 2005-09-10 | 2008-05-29 | Moore James F | Surge-Based Online Advertising |
US8140482B2 (en) | 2007-09-19 | 2012-03-20 | Moore James F | Using RSS archives |
US9202084B2 (en) | 2006-02-01 | 2015-12-01 | Newsilike Media Group, Inc. | Security facility for maintaining health care data pools |
US7818350B2 (en) * | 2005-02-28 | 2010-10-19 | Yahoo! Inc. | System and method for creating a collaborative playlist |
ATE383709T1 (de) * | 2005-02-28 | 2008-01-15 | Alcatel Lucent | Bidirektionale soap-kommunikation mittels einer einzigen http-sitzung |
JP2006285607A (ja) * | 2005-03-31 | 2006-10-19 | Sony Corp | コンテンツ情報提供システム,コンテンツ情報提供サーバ,コンテンツ再生装置,コンテンツ情報提供方法,コンテンツ再生方法,およびコンピュータプログラム |
US7890598B2 (en) * | 2005-03-31 | 2011-02-15 | Sony Corporation | Remote access management |
EP1710694A3 (en) * | 2005-04-08 | 2006-12-13 | Ricoh Company, Ltd. | Communication apparatus, program product for adding communication mechanism to communication apparatus for providing improved usability and communication efficiency, and recording medium storing program product |
US9436804B2 (en) | 2005-04-22 | 2016-09-06 | Microsoft Technology Licensing, Llc | Establishing a unique session key using a hardware functionality scan |
US9363481B2 (en) | 2005-04-22 | 2016-06-07 | Microsoft Technology Licensing, Llc | Protected media pipeline |
US7949117B2 (en) * | 2005-04-28 | 2011-05-24 | Apple Inc. | Heterogeneous video conferencing |
US7817180B2 (en) * | 2005-04-28 | 2010-10-19 | Apple Inc. | Video processing in a multi-participant video conference |
US7864209B2 (en) * | 2005-04-28 | 2011-01-04 | Apple Inc. | Audio processing in a multi-participant conference |
US7899170B2 (en) * | 2005-04-28 | 2011-03-01 | Apple Inc. | Multi-participant conference setup |
US8464317B2 (en) * | 2005-05-06 | 2013-06-11 | International Business Machines Corporation | Method and system for creating a protected object namespace from a WSDL resource description |
US20060271939A1 (en) * | 2005-05-11 | 2006-11-30 | Eric Joris | Enterprise-to-enterprise integration |
US20060271384A1 (en) * | 2005-05-31 | 2006-11-30 | Microsoft Corporation | Reference data aggregate service population |
US20060277092A1 (en) * | 2005-06-03 | 2006-12-07 | Credigy Technologies, Inc. | System and method for a peer to peer exchange of consumer information |
US7684421B2 (en) * | 2005-06-09 | 2010-03-23 | Lockheed Martin Corporation | Information routing in a distributed environment |
US20070011171A1 (en) * | 2005-07-08 | 2007-01-11 | Nurminen Jukka K | System and method for operation control functionality |
WO2007011917A2 (en) * | 2005-07-15 | 2007-01-25 | Newsilike Media Group, Inc. | Managing network-accessible services |
WO2007011167A1 (en) * | 2005-07-21 | 2007-01-25 | Kyungpook National University Industry-Academic Cooperation Foundation | Virtual storage system and method for searching file based on ad-hoc network |
US20070019641A1 (en) * | 2005-07-22 | 2007-01-25 | Rockwell Automation Technologies, Inc. | Execution of industrial automation applications on communication infrastructure devices |
CA2615659A1 (en) * | 2005-07-22 | 2007-05-10 | Yogesh Chunilal Rathod | Universal knowledge management and desktop search system |
JP4765485B2 (ja) * | 2005-08-26 | 2011-09-07 | ソニー株式会社 | 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム |
US8046837B2 (en) | 2005-08-26 | 2011-10-25 | Sony Corporation | Information processing device, information recording medium, information processing method, and computer program |
EP2506467A3 (en) * | 2005-09-05 | 2015-03-25 | Yamaha Corporation | Digital mixer |
US8738732B2 (en) | 2005-09-14 | 2014-05-27 | Liveperson, Inc. | System and method for performing follow up based on user interactions |
US9432468B2 (en) | 2005-09-14 | 2016-08-30 | Liveperson, Inc. | System and method for design and dynamic generation of a web page |
US8825907B2 (en) * | 2005-09-15 | 2014-09-02 | Gendband US LLC | Incorporating a mobile device into a peer-to-peer network |
US20110010533A1 (en) * | 2005-09-20 | 2011-01-13 | Matsushita Electric Industrial Co., Ltd. | System and Method for Component Trust Model in Peer-to-Peer Service Composition |
US20070083476A1 (en) * | 2005-10-11 | 2007-04-12 | Interdigital Technology Corporation | Method and system for enforcing user rights and maintaining consistency of user data in a data network |
US20070088660A1 (en) * | 2005-10-13 | 2007-04-19 | Abu-Amara Hosame H | Digital security for distributing media content to a local area network |
US20070204078A1 (en) * | 2006-02-09 | 2007-08-30 | Intertrust Technologies Corporation | Digital rights management engine systems and methods |
CA2626244A1 (en) | 2005-10-18 | 2007-04-26 | Intertrust Technologies Corporation | Methods for evaluating licenses containing control programs by a drm engine |
TWI468969B (zh) * | 2005-10-18 | 2015-01-11 | Intertrust Tech Corp | 授權對電子內容作存取的方法及授權對該電子內容執行動作之方法 |
US9626667B2 (en) | 2005-10-18 | 2017-04-18 | Intertrust Technologies Corporation | Digital rights management engine systems and methods |
CA2527447C (en) * | 2005-11-18 | 2015-05-05 | Allen Vi Cuong Chan | Message oriented construction of web services |
US20070130622A1 (en) * | 2005-11-21 | 2007-06-07 | Docomo Communications Laboratories Usa, Inc. | Method and apparatus for verifying and ensuring safe handling of notifications |
US20090036217A1 (en) * | 2005-11-22 | 2009-02-05 | Wms Gaming Inc. | Service-oriented gaming network environment |
US8560456B2 (en) * | 2005-12-02 | 2013-10-15 | Credigy Technologies, Inc. | System and method for an anonymous exchange of private data |
US8270293B2 (en) * | 2005-12-02 | 2012-09-18 | Panasonic Corporation | Systems and methods for efficient electronic communication in a distributed routing environment |
US9686183B2 (en) * | 2005-12-06 | 2017-06-20 | Zarbaña Digital Fund Llc | Digital object routing based on a service request |
US20080021918A1 (en) * | 2005-12-23 | 2008-01-24 | Rao Viswanatha H | Enterprise service management unifier system |
US20070162377A1 (en) * | 2005-12-23 | 2007-07-12 | Credigy Technologies, Inc. | System and method for an online exchange of private data |
US8176534B2 (en) * | 2005-12-30 | 2012-05-08 | General Instrument Corporation | Method and apparatus for provisioning a device to access digital rights management (DRM) services in a universal plug and play (UPnP) network |
US20070214179A1 (en) * | 2006-03-10 | 2007-09-13 | Khanh Hoang | Searching, filtering, creating, displaying, and managing entity relationships across multiple data hierarchies through a user interface |
US7523121B2 (en) | 2006-01-03 | 2009-04-21 | Siperian, Inc. | Relationship data management |
US7836439B2 (en) * | 2006-02-03 | 2010-11-16 | Research In Motion Limited | System and method for extending a component-based application platform with custom services |
US20070201655A1 (en) * | 2006-02-03 | 2007-08-30 | Michael Shenfield | System and method for installing custom services on a component-based application platform |
US8371932B2 (en) * | 2006-02-07 | 2013-02-12 | Wms Gaming Inc. | Wager gaming network with wireless hotspots |
US8360887B2 (en) * | 2006-02-09 | 2013-01-29 | Wms Gaming Inc. | Wagering game server availability broadcast message system |
US8924335B1 (en) | 2006-03-30 | 2014-12-30 | Pegasystems Inc. | Rule-based user interface conformance methods |
US7987514B2 (en) * | 2006-04-04 | 2011-07-26 | Intertrust Technologies Corp. | Systems and methods for retrofitting electronic appliances to accept different content formats |
US8831011B1 (en) * | 2006-04-13 | 2014-09-09 | Xceedium, Inc. | Point to multi-point connections |
US8086842B2 (en) * | 2006-04-21 | 2011-12-27 | Microsoft Corporation | Peer-to-peer contact exchange |
CN101064660A (zh) * | 2006-04-28 | 2007-10-31 | 西门子通信技术(北京)有限公司 | 一种实现业务互通的系统及方法 |
KR101346734B1 (ko) * | 2006-05-12 | 2014-01-03 | 삼성전자주식회사 | 디지털 저작권 관리를 위한 다중 인증서 철회 목록 지원방법 및 장치 |
JP2009537042A (ja) * | 2006-05-12 | 2009-10-22 | サムスン エレクトロニクス カンパニー リミテッド | 保安データを管理する装置およびその方法 |
WO2007137145A2 (en) * | 2006-05-17 | 2007-11-29 | Newsilike Media Group, Inc | Certificate-based search |
US8224975B1 (en) * | 2006-05-24 | 2012-07-17 | Avaya Inc. | Web service initiation protocol for multimedia and voice communication over internet protocol |
US8019845B2 (en) * | 2006-06-05 | 2011-09-13 | International Business Machines Corporation | Service delivery using profile based management |
US7747736B2 (en) * | 2006-06-05 | 2010-06-29 | International Business Machines Corporation | Rule and policy promotion within a policy hierarchy |
US9338028B2 (en) * | 2006-06-19 | 2016-05-10 | Nokia Technologies Oy | Utilizing information of a local network for determining presence state |
CN101094223B (zh) * | 2006-06-23 | 2010-12-08 | 国际商业机器公司 | 在面向服务体系结构系统的服务模型中排布策略的方法和装置 |
US7881315B2 (en) * | 2006-06-27 | 2011-02-01 | Microsoft Corporation | Local peer-to-peer digital content distribution |
KR100877064B1 (ko) * | 2006-07-24 | 2009-01-07 | 삼성전자주식회사 | 고유 id 생성 장치 및 방법 |
US7774463B2 (en) * | 2006-07-25 | 2010-08-10 | Sap Ag | Unified meta-model for a service oriented architecture |
US20080052162A1 (en) * | 2006-07-27 | 2008-02-28 | Wood Charles B | Calendar-Based Advertising |
US20080046437A1 (en) * | 2006-07-27 | 2008-02-21 | Wood Charles B | Manual Conflict Resolution for Background Synchronization |
US20080046369A1 (en) * | 2006-07-27 | 2008-02-21 | Wood Charles B | Password Management for RSS Interfaces |
US20080052343A1 (en) * | 2006-07-27 | 2008-02-28 | Wood Charles B | Usage-Based Prioritization |
US8172686B2 (en) | 2006-08-08 | 2012-05-08 | Wms Gaming Inc. | Configurable wagering game manager |
EP2074547A2 (en) * | 2006-08-10 | 2009-07-01 | Intertrust Technologies Corporation | Trust management systems and methods |
US8095626B2 (en) | 2006-08-31 | 2012-01-10 | Realnetworks, Inc. | System and method for configuring a client electronic device |
US20080059434A1 (en) * | 2006-08-31 | 2008-03-06 | Realnetworks, Inc. | Api-accessible media distribution system |
JP5079427B2 (ja) * | 2006-08-31 | 2012-11-21 | アクセンチュア グローバル サーヴィシズ ゲゼルシャフト ミット ベシュレンクテル ハフツング | システム用のサービスプロビジョニング及びアクチベーションエンジン |
US20080066181A1 (en) * | 2006-09-07 | 2008-03-13 | Microsoft Corporation | DRM aspects of peer-to-peer digital content distribution |
US20080071897A1 (en) * | 2006-09-15 | 2008-03-20 | International Business Machines Corporation | Method, system, and computer program product for federating the state and behavior of a manageable resource |
US8042090B2 (en) * | 2006-09-29 | 2011-10-18 | Sap Ag | Integrated configuration of cross organizational business processes |
US8150798B2 (en) | 2006-10-10 | 2012-04-03 | Wells Fargo Bank, N.A. | Method and system for automated coordination and organization of electronic communications in enterprises |
US8520850B2 (en) | 2006-10-20 | 2013-08-27 | Time Warner Cable Enterprises Llc | Downloadable security and protection methods and apparatus |
US20080104206A1 (en) * | 2006-10-31 | 2008-05-01 | Microsoft Corporation | Efficient knowledge representation in data synchronization systems |
US20080103977A1 (en) * | 2006-10-31 | 2008-05-01 | Microsoft Corporation | Digital rights management for distributed devices |
US8732854B2 (en) | 2006-11-01 | 2014-05-20 | Time Warner Cable Enterprises Llc | Methods and apparatus for premises content distribution |
US20080113677A1 (en) * | 2006-11-11 | 2008-05-15 | Rajeev Kumar Madnawat | Mobile to mobile service invocation framework using text messsaging |
US20080133767A1 (en) * | 2006-11-22 | 2008-06-05 | Metis Enterprise Technologies Llc | Real-time multicast peer-to-peer video streaming platform |
US8578350B2 (en) * | 2006-11-30 | 2013-11-05 | Ncr Corporation | System and method for interpreting a specification language file to implement a business system |
AU2011203040B2 (en) * | 2006-12-01 | 2012-07-05 | Catch Media, Inc. | Media management and tracking |
KR100733742B1 (ko) * | 2006-12-14 | 2007-06-29 | 주식회사 아이오셀 | 휴대용 정보처리 단말기 및 상기 단말기의 통신 시스템 |
US8625481B2 (en) * | 2006-12-15 | 2014-01-07 | Samsung Electronics Co., Ltd. | Architecture for MANET over Bluetooth |
KR101369399B1 (ko) * | 2006-12-29 | 2014-03-05 | 삼성전자주식회사 | Drm 에이전트-렌더링 어플리케이션 분리 환경에서수행되는 drm 관련 권한 통제 방법 및 시스템 |
WO2008087743A1 (en) * | 2007-01-16 | 2008-07-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Control device, reproducing device, permission server, method for controlling control device, method for controlling reproducing device, and method for controlling permission server |
US8621540B2 (en) | 2007-01-24 | 2013-12-31 | Time Warner Cable Enterprises Llc | Apparatus and methods for provisioning in a download-enabled system |
US9088518B2 (en) * | 2007-01-25 | 2015-07-21 | Hewlett-Packard Development Company, L.P. | Web services and telecom network management unification |
US8117278B2 (en) * | 2007-02-05 | 2012-02-14 | Oracle International Corporation | Orchestration of components to realize a content or service delivery suite |
US7620659B2 (en) * | 2007-02-09 | 2009-11-17 | Microsoft Corporation | Efficient knowledge representation in data synchronization systems |
US7996882B2 (en) * | 2007-02-26 | 2011-08-09 | L Heureux Israel | Digital asset distribution system |
US20080222237A1 (en) * | 2007-03-06 | 2008-09-11 | Microsoft Corporation | Web services mashup component wrappers |
US20080222599A1 (en) * | 2007-03-07 | 2008-09-11 | Microsoft Corporation | Web services mashup designer |
KR101566171B1 (ko) * | 2007-03-09 | 2015-11-06 | 삼성전자 주식회사 | 디지털 저작권 관리 방법 및 장치 |
EP1970809A1 (en) * | 2007-03-14 | 2008-09-17 | Software Ag | Method and registry for policy consistency control in a Service Oriented Architecture |
EP1978468A1 (en) * | 2007-04-04 | 2008-10-08 | Sap Ag | A method and a system for secure execution of workflow tasks in a distributed workflow management system within a decentralized network system |
US8782527B2 (en) * | 2007-06-27 | 2014-07-15 | Microsoft Corp. | Collaborative phone-based file exchange |
US8111837B2 (en) * | 2007-06-28 | 2012-02-07 | Apple Inc. | Data-driven media management within an electronic device |
US8041438B2 (en) | 2007-06-28 | 2011-10-18 | Apple Inc. | Data-driven media management within an electronic device |
US8171177B2 (en) * | 2007-06-28 | 2012-05-01 | Apple Inc. | Enhancements to data-driven media management within an electronic device |
US7861008B2 (en) * | 2007-06-28 | 2010-12-28 | Apple Inc. | Media management and routing within an electronic device |
US20090019427A1 (en) * | 2007-07-13 | 2009-01-15 | International Business Machines Corporation | Method and Apparatus for Providing Requirement Driven Static Analysis of Test Coverage for Web-Based, Distributed Processes |
JP5351158B2 (ja) * | 2007-07-23 | 2013-11-27 | インタートラスト テクノロジーズ コーポレイション | テザード装置システム及び方法 |
US9596292B1 (en) * | 2007-08-03 | 2017-03-14 | EMC IP Holding Company LLC | Client-side scripts in a service-oriented API environment |
CN101365128A (zh) * | 2007-08-10 | 2009-02-11 | 中兴通讯股份有限公司 | 综合视频业务对等网络系统 |
US7779094B2 (en) * | 2007-08-21 | 2010-08-17 | Juniper Networks, Inc. | Event problem report bundles in XML format |
US8214475B1 (en) * | 2007-08-30 | 2012-07-03 | Amazon Technologies, Inc. | System and method for managing content interest data using peer-to-peer logical mesh networks |
US8290152B2 (en) * | 2007-08-30 | 2012-10-16 | Microsoft Corporation | Management system for web service developer keys |
US9160752B2 (en) * | 2007-08-31 | 2015-10-13 | International Business Machines Corporation | Database authorization rules and component logic authorization rules aggregation |
US7747590B2 (en) * | 2007-08-31 | 2010-06-29 | International Business Machines Corporation | Avoiding redundant computation in service-oriented architectures |
US9807096B2 (en) * | 2014-12-18 | 2017-10-31 | Live Nation Entertainment, Inc. | Controlled token distribution to protect against malicious data and resource access |
US8560938B2 (en) | 2008-02-12 | 2013-10-15 | Oracle International Corporation | Multi-layer XML customization |
US8838760B2 (en) * | 2007-09-14 | 2014-09-16 | Ricoh Co., Ltd. | Workflow-enabled provider |
US8238313B2 (en) * | 2007-09-14 | 2012-08-07 | Intel Corporation | Techniques for wireless personal area network communications with efficient spatial reuse |
US20090083441A1 (en) * | 2007-09-24 | 2009-03-26 | Microsoft Corporation | Synchronization of web service endpoints in a multi-master synchronization environment |
US20090083762A1 (en) * | 2007-09-24 | 2009-03-26 | Microsoft Corporation | Dynamically mapping an action of a message |
US7836018B2 (en) * | 2007-10-24 | 2010-11-16 | Emc Corporation | Simultaneously accessing file objects through web services and file services |
US20090119121A1 (en) * | 2007-11-02 | 2009-05-07 | Mwstory Co., Ltd. | Peer-to-peer service providing system and method for preventing contents from being illegally distributed |
US9350595B1 (en) * | 2007-12-27 | 2016-05-24 | Emc Corporation | System and method for serializing and deserializing data objects into a single binary stream |
US20090241153A1 (en) * | 2008-03-18 | 2009-09-24 | Avaya Technology Llc | Open cable application platform set-top box (stb) personal profiles and communications applications |
US20090241159A1 (en) * | 2008-03-18 | 2009-09-24 | Avaya Technology Llc | Open cable application platform set-top box (stb) personal profiles and communications applications |
US8453188B2 (en) * | 2008-01-22 | 2013-05-28 | Avaya Inc. | Open cable application platform set-top box (STB) personal profiles and communications applications |
US20090241158A1 (en) * | 2008-03-18 | 2009-09-24 | Avaya Technology Llc | Open cable application platform set-top box (stb) personal profiles and communications applications |
US7904597B2 (en) * | 2008-01-23 | 2011-03-08 | The Chinese University Of Hong Kong | Systems and processes of identifying P2P applications based on behavioral signatures |
WO2009093941A1 (en) * | 2008-01-24 | 2009-07-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for checking aggregated web sevices |
US8819838B2 (en) * | 2008-01-25 | 2014-08-26 | Google Technology Holdings LLC | Piracy prevention in digital rights management systems |
US8966465B2 (en) | 2008-02-12 | 2015-02-24 | Oracle International Corporation | Customization creation and update for multi-layer XML customization |
US8538998B2 (en) | 2008-02-12 | 2013-09-17 | Oracle International Corporation | Caching and memory optimizations for multi-layer XML customization |
US7987163B2 (en) * | 2008-02-12 | 2011-07-26 | Bae Systems Information And Electronic Systems Integration Inc. | Apparatus and method for dynamic web service discovery |
US8788542B2 (en) | 2008-02-12 | 2014-07-22 | Oracle International Corporation | Customization syntax for multi-layer XML customization |
US8875306B2 (en) | 2008-02-12 | 2014-10-28 | Oracle International Corporation | Customization restrictions for multi-layer XML customization |
DE102008002787A1 (de) * | 2008-02-29 | 2009-09-03 | Schneider Electric Gmbh | 4-Phasen-Interaktionsmuster basierend auf Port-Typ-Protokollen für die Verwendung von Lebenszyklen von Services, welche durch serviceorientierte Geräte bereitgestellt werden |
US20090253517A1 (en) * | 2008-04-04 | 2009-10-08 | Zipzapplay, Inc. | Open game engine and marketplace with associated game editing and creation tools |
US8782604B2 (en) | 2008-04-11 | 2014-07-15 | Oracle International Corporation | Sandbox support for metadata in running applications |
JP2009278223A (ja) * | 2008-05-13 | 2009-11-26 | Panasonic Corp | 電子証明システム及び秘匿通信システム |
US8095518B2 (en) * | 2008-06-04 | 2012-01-10 | Microsoft Corporation | Translating DRM system requirements |
US8055619B2 (en) * | 2008-06-05 | 2011-11-08 | Novell, Inc. | Mechanisms to support object-oriented version control operations |
US8667031B2 (en) | 2008-06-13 | 2014-03-04 | Oracle International Corporation | Reuse of shared metadata across applications via URL protocol |
US8457034B2 (en) * | 2008-06-17 | 2013-06-04 | Raytheon Company | Airborne communication network |
US8700301B2 (en) | 2008-06-19 | 2014-04-15 | Microsoft Corporation | Mobile computing devices, architecture and user interfaces based on dynamic direction information |
US20090315766A1 (en) | 2008-06-19 | 2009-12-24 | Microsoft Corporation | Source switching for devices supporting dynamic direction information |
US20090315775A1 (en) * | 2008-06-20 | 2009-12-24 | Microsoft Corporation | Mobile computing services based on devices with dynamic direction information |
US20090319166A1 (en) * | 2008-06-20 | 2009-12-24 | Microsoft Corporation | Mobile computing services based on devices with dynamic direction information |
US8467991B2 (en) * | 2008-06-20 | 2013-06-18 | Microsoft Corporation | Data services based on gesture and location information of device |
US8949713B1 (en) * | 2008-06-30 | 2015-02-03 | Amazon Technologies, Inc. | Version-specific request processing |
US20090327094A1 (en) * | 2008-06-30 | 2009-12-31 | Microsoft Corporation | Platform independent ecosystem for creation, consumption and trade of user-generated digital content |
US8762313B2 (en) | 2008-07-25 | 2014-06-24 | Liveperson, Inc. | Method and system for creating a predictive model for targeting web-page to a surfer |
US8799200B2 (en) | 2008-07-25 | 2014-08-05 | Liveperson, Inc. | Method and system for creating a predictive model for targeting webpage to a surfer |
CA2727784C (en) * | 2008-07-28 | 2015-03-31 | Sony Corporation | Client device and associated methodology of accessing networked services |
US8655826B1 (en) * | 2008-08-01 | 2014-02-18 | Motion Picture Laboratories, Inc. | Processing and acting on rules for content recognition systems |
US8805844B2 (en) | 2008-08-04 | 2014-08-12 | Liveperson, Inc. | Expert search |
US8863234B2 (en) * | 2008-08-06 | 2014-10-14 | The Boeing Company | Collaborative security and decision making in a service-oriented environment |
KR101614945B1 (ko) * | 2008-08-20 | 2016-04-25 | 삼성전자주식회사 | 홈 네트워크에서의 개인정보 보호 방법 및 장치 |
US8219572B2 (en) * | 2008-08-29 | 2012-07-10 | Oracle International Corporation | System and method for searching enterprise application data |
US8799319B2 (en) | 2008-09-19 | 2014-08-05 | Oracle International Corporation | System and method for meta-data driven, semi-automated generation of web services based on existing applications |
CA2677504A1 (en) * | 2008-09-03 | 2010-03-03 | Dundas Data Visualization, Inc. | Systems and methods for providing security for software applications |
US8996658B2 (en) | 2008-09-03 | 2015-03-31 | Oracle International Corporation | System and method for integration of browser-based thin client applications within desktop rich client architecture |
US8850553B2 (en) * | 2008-09-12 | 2014-09-30 | Microsoft Corporation | Service binding |
US8296317B2 (en) * | 2008-09-15 | 2012-10-23 | Oracle International Corporation | Searchable object network |
US8271609B2 (en) * | 2008-09-15 | 2012-09-18 | Oracle International Corporation | Dynamic service invocation and service adaptation in BPEL SOA process |
US9122520B2 (en) | 2008-09-17 | 2015-09-01 | Oracle International Corporation | Generic wait service: pausing a BPEL process |
US8335778B2 (en) * | 2008-09-17 | 2012-12-18 | Oracle International Corporation | System and method for semantic search in an enterprise application |
US20100094674A1 (en) * | 2008-10-14 | 2010-04-15 | Michael Marriner | Supply Chain Management Systems and Methods |
JP4669901B2 (ja) * | 2008-10-21 | 2011-04-13 | キヤノン株式会社 | 情報処理装置、情報処理方法及びプログラム |
US8640199B2 (en) * | 2008-10-23 | 2014-01-28 | Hewlett-Packard Developmet Company | Network service provision method, network device, network server and network |
US9892417B2 (en) | 2008-10-29 | 2018-02-13 | Liveperson, Inc. | System and method for applying tracing tools for network locations |
US20100205024A1 (en) * | 2008-10-29 | 2010-08-12 | Haggai Shachar | System and method for applying in-depth data mining tools for participating websites |
EP2192514A1 (en) * | 2008-11-26 | 2010-06-02 | Thomson Licensing | Method and system for processing digital content according to a workflow |
US8332654B2 (en) | 2008-12-08 | 2012-12-11 | Oracle International Corporation | Secure framework for invoking server-side APIs using AJAX |
US9124648B2 (en) | 2008-12-09 | 2015-09-01 | Microsoft Technology Licensing, Llc | Soft type binding for distributed systems |
WO2010067551A1 (ja) * | 2008-12-10 | 2010-06-17 | 日本電気株式会社 | 秘匿通信ネットワークにおける共有乱数管理方法および管理システム |
US8145593B2 (en) * | 2008-12-11 | 2012-03-27 | Microsoft Corporation | Framework for web services exposing line of business applications |
US20100153565A1 (en) * | 2008-12-11 | 2010-06-17 | Microsoft Corporation | Connection management in line-of-business |
US8914351B2 (en) | 2008-12-16 | 2014-12-16 | Clinton A. Krislov | Method and system for secure automated document registration from social media networks |
US8341141B2 (en) * | 2008-12-16 | 2012-12-25 | Krislov Clinton A | Method and system for automated document registration |
US8589372B2 (en) | 2008-12-16 | 2013-11-19 | Clinton A. Krislov | Method and system for automated document registration with cloud computing |
US9444823B2 (en) * | 2008-12-24 | 2016-09-13 | Qualcomm Incorporated | Method and apparatus for providing network communication association information to applications and services |
US7849206B2 (en) * | 2009-01-13 | 2010-12-07 | Microsoft Corporation | Service for policy rule specification evaluation and enforcement on multiple communication modes |
US8140556B2 (en) * | 2009-01-20 | 2012-03-20 | Oracle International Corporation | Techniques for automated generation of queries for querying ontologies |
US7962574B2 (en) * | 2009-01-29 | 2011-06-14 | International Business Machines Corporation | Data integration in service oriented architectures |
US8301690B2 (en) * | 2009-02-06 | 2012-10-30 | International Business Machines Corporation | Correlator system for web services |
US20100212016A1 (en) * | 2009-02-18 | 2010-08-19 | Microsoft Corporation | Content protection interoperrability |
EP2401867A4 (en) * | 2009-02-25 | 2013-11-13 | Secure Content Storage Ass Llc | CONTENT DISTRIBUTION WITH RENEWABLE CONTENTS |
US8214401B2 (en) * | 2009-02-26 | 2012-07-03 | Oracle International Corporation | Techniques for automated generation of ontologies for enterprise applications |
US20120036495A2 (en) * | 2009-02-27 | 2012-02-09 | Research In Motion Limited | Method, apparatus and system for supporting polymorphic elements at run-time in portable computing devices |
US8458114B2 (en) * | 2009-03-02 | 2013-06-04 | Analog Devices, Inc. | Analog computation using numerical representations with uncertainty |
CN101499101A (zh) * | 2009-03-10 | 2009-08-05 | 腾讯科技(深圳)有限公司 | 一种社会化网络中特征关系圈的提取方法及装置 |
US8843435B1 (en) | 2009-03-12 | 2014-09-23 | Pegasystems Inc. | Techniques for dynamic data processing |
EP2406931B1 (en) * | 2009-03-12 | 2013-07-24 | NEC Europe Ltd. | Method for supporting management and exchange of distributed data of user or an entity |
US8929303B2 (en) * | 2009-04-06 | 2015-01-06 | Samsung Electronics Co., Ltd. | Control and data channels for advanced relay operation |
US20160098298A1 (en) * | 2009-04-24 | 2016-04-07 | Pegasystems Inc. | Methods and apparatus for integrated work management |
WO2010125697A1 (en) * | 2009-05-01 | 2010-11-04 | Telefonaktiebolaget L M Ericsson (Publ) | An information processing system and method providing a composed service |
WO2010134996A2 (en) | 2009-05-20 | 2010-11-25 | Intertrust Technologies Corporation | Content sharing systems and methods |
BRPI1013002A2 (pt) | 2009-05-21 | 2016-03-29 | Intertrust Tech Corp | sistemas e métodos para entrega de conteúdo |
US8914903B1 (en) | 2009-06-03 | 2014-12-16 | Amdocs Software System Limited | System, method, and computer program for validating receipt of digital content by a client device |
US9602864B2 (en) | 2009-06-08 | 2017-03-21 | Time Warner Cable Enterprises Llc | Media bridge apparatus and methods |
US9866609B2 (en) | 2009-06-08 | 2018-01-09 | Time Warner Cable Enterprises Llc | Methods and apparatus for premises content distribution |
EP2264654A1 (en) * | 2009-06-19 | 2010-12-22 | Software AG | Consistency enforcement system for XML objects stored in an SOA-registry |
US8571994B2 (en) * | 2009-06-26 | 2013-10-29 | Disney Enterprises, Inc. | Method and system for allocating access to digital media content |
US8872767B2 (en) | 2009-07-07 | 2014-10-28 | Microsoft Corporation | System and method for converting gestures into digital graffiti |
US10045083B2 (en) | 2009-07-13 | 2018-08-07 | The Directv Group, Inc. | Satellite seeding of a peer-to-peer content distribution network |
CN101599995B (zh) * | 2009-07-13 | 2012-01-11 | 中国传媒大学 | 面向高并发检索系统的目录分发方法及网络架构 |
CN102474412A (zh) * | 2009-07-17 | 2012-05-23 | 上海贝尔股份有限公司 | Sem内的drm方法和设备以及提供drm服务的方法 |
US8478820B2 (en) | 2009-08-26 | 2013-07-02 | Qualcomm Incorporated | Methods and systems for service discovery management in peer-to-peer networks |
KR101669287B1 (ko) * | 2009-09-01 | 2016-11-09 | 삼성전자주식회사 | 제 3의 원격 유저 인터페이스 장치를 통한 원격 유저 인터페이스 장치의 제어 방법 및 장치 |
US9529694B2 (en) * | 2009-09-14 | 2016-12-27 | Oracle International Corporation | Techniques for adaptive trace logging |
US9734037B1 (en) * | 2009-09-15 | 2017-08-15 | Symantec Corporation | Mobile application sampling for performance and network behavior profiling |
US8837726B2 (en) * | 2009-10-16 | 2014-09-16 | Cisco Technology, Inc. | Content protection key encryptor for security providers |
KR101674903B1 (ko) * | 2009-10-20 | 2016-11-11 | 삼성전자주식회사 | 개인 네트워크를 이용한 서비스 제공 방법 및 장치 |
US8055817B2 (en) * | 2009-10-30 | 2011-11-08 | International Business Machines Corporation | Efficient handling of queued-direct I/O requests and completions |
US8478776B2 (en) | 2009-10-30 | 2013-07-02 | Qualcomm Incorporated | Methods and systems for peer-to-peer network discovery using multi-user diversity |
US8825818B2 (en) * | 2009-11-10 | 2014-09-02 | Qualcomm Incorporated | Host initiated connection to a device |
US20110119479A1 (en) * | 2009-11-17 | 2011-05-19 | Robert Cowie | EOOBE-Application to collect information for new computer and manufacturing process |
US8869108B2 (en) | 2009-11-18 | 2014-10-21 | Oracle International Corporation | Techniques related to customizations for composite applications |
US8631071B2 (en) * | 2009-12-17 | 2014-01-14 | International Business Machines Corporation | Recognition of and support for multiple versions of an enterprise canonical message model |
US9111004B2 (en) | 2009-12-17 | 2015-08-18 | International Business Machines Corporation | Temporal scope translation of meta-models using semantic web technologies |
US9026412B2 (en) * | 2009-12-17 | 2015-05-05 | International Business Machines Corporation | Managing and maintaining scope in a service oriented architecture industry model repository |
US20130232198A1 (en) * | 2009-12-21 | 2013-09-05 | Arbitron Inc. | System and Method for Peer-to-Peer Distribution of Media Exposure Data |
US20110153391A1 (en) * | 2009-12-21 | 2011-06-23 | Michael Tenbrock | Peer-to-peer privacy panel for audience measurement |
US8307134B2 (en) | 2010-01-15 | 2012-11-06 | Apple Inc. | Multiple communication interfaces on a portable storage device |
US8934645B2 (en) | 2010-01-26 | 2015-01-13 | Apple Inc. | Interaction of sound, silent and mute modes in an electronic device |
US9244965B2 (en) * | 2010-02-22 | 2016-01-26 | Thoughtwire Holdings Corp. | Method and system for sharing data between software systems |
US8730928B2 (en) * | 2010-02-23 | 2014-05-20 | Qualcomm Incorporated | Enhancements for increased spatial reuse in ad-hoc networks |
US8683370B2 (en) | 2010-03-01 | 2014-03-25 | Dundas Data Visualization, Inc. | Systems and methods for generating data visualization dashboards |
US8965801B2 (en) * | 2010-03-31 | 2015-02-24 | International Business Machines Corporation | Provision of support services as a service |
US8612633B2 (en) * | 2010-03-31 | 2013-12-17 | Microsoft Corporation | Virtual machine fast emulation assist |
US8433813B2 (en) | 2010-04-07 | 2013-04-30 | Apple Inc. | Audio processing optimization in a multi-participant conference |
WO2011127049A1 (en) | 2010-04-07 | 2011-10-13 | Liveperson, Inc. | System and method for dynamically enabling customized web content and applications |
US20110252117A1 (en) * | 2010-04-12 | 2011-10-13 | Swee Huat Sng | Devices and Methods for Redirecting a Browser to Access Computer Resource Behind a Network Firewall |
US8868758B2 (en) * | 2010-05-04 | 2014-10-21 | Microsoft Corporation | Provider connection framework |
CN101833506B (zh) * | 2010-05-04 | 2012-05-30 | 中国人民解放军国防科学技术大学 | 具备长事务特征服务接口的验证方法 |
US9614641B2 (en) | 2010-05-12 | 2017-04-04 | Qualcomm Incorporated | Resource coordination for peer-to-peer groups through distributed negotiation |
US10657507B2 (en) * | 2010-05-17 | 2020-05-19 | Adobe Inc. | Migration between digital rights management systems without content repackaging |
US8914482B2 (en) | 2010-05-26 | 2014-12-16 | Microsoft Corporation | Translation of technology-agnostic management commands into multiple management protocols |
US8615585B2 (en) | 2010-05-28 | 2013-12-24 | International Business Machines Corporation | Ontology based resource provisioning and management for services |
US8700777B2 (en) | 2010-05-28 | 2014-04-15 | International Business Machines Corporation | Extensible support system for service offerings |
US8423658B2 (en) * | 2010-06-10 | 2013-04-16 | Research In Motion Limited | Method and system to release internet protocol (IP) multimedia subsystem (IMS), session initiation protocol (SIP), IP-connectivity access network (IP-CAN) and radio access network (RAN) networking resources when IP television (IPTV) session is paused |
US8451789B2 (en) | 2010-06-15 | 2013-05-28 | Nokia Corporation | Method to request resources in TV white spaces type environment |
US8874896B2 (en) | 2010-06-18 | 2014-10-28 | Intertrust Technologies Corporation | Secure processing systems and methods |
US9189649B2 (en) | 2010-06-25 | 2015-11-17 | International Business Machines Corporation | Security model for workflows aggregating third party secure services |
US8595197B2 (en) | 2010-06-29 | 2013-11-26 | International Business Machines Corporation | Message validation in a service-oriented architecture |
CN102143614B (zh) * | 2010-07-01 | 2014-02-26 | 华为终端有限公司 | 升级方法和家庭网关设备 |
US9906838B2 (en) | 2010-07-12 | 2018-02-27 | Time Warner Cable Enterprises Llc | Apparatus and methods for content delivery and message exchange across multiple content delivery networks |
US8799177B1 (en) * | 2010-07-29 | 2014-08-05 | Intuit Inc. | Method and apparatus for building small business graph from electronic business data |
US8412247B2 (en) | 2010-09-03 | 2013-04-02 | Nokia Corporation | Method for generating a coexistence value to define fair resource share between secondary networks |
US8385286B2 (en) | 2010-09-03 | 2013-02-26 | Nokia Corporation | Resource sharing between secondary networks |
US8711736B2 (en) | 2010-09-16 | 2014-04-29 | Apple Inc. | Audio processing in a multi-participant conference |
US9015493B2 (en) * | 2010-09-16 | 2015-04-21 | Microsoft Technology Licensing, Llc | Multitenant-aware protection service |
US8984034B2 (en) | 2010-09-28 | 2015-03-17 | Schneider Electric USA, Inc. | Calculation engine and calculation providers |
CA2754520A1 (en) | 2010-10-07 | 2012-04-07 | Dundas Data Visualization, Inc. | Systems and methods for dashboard image generation |
US9563751B1 (en) * | 2010-10-13 | 2017-02-07 | The Boeing Company | License utilization management system service suite |
US20120106364A1 (en) * | 2010-10-29 | 2012-05-03 | Nokia Corporation | Heterogeneous coexistence management in secondary networks |
US10531516B2 (en) | 2010-11-05 | 2020-01-07 | Mark Cummings | Self organizing system to implement emerging topologies |
US10687250B2 (en) | 2010-11-05 | 2020-06-16 | Mark Cummings | Mobile base station network |
US10285094B2 (en) | 2010-11-05 | 2019-05-07 | Mark Cummings | Mobile base station network |
US10694402B2 (en) | 2010-11-05 | 2020-06-23 | Mark Cummings | Security orchestration and network immune system deployment framework |
US9268578B2 (en) | 2010-11-05 | 2016-02-23 | Mark Cummings | Integrated circuit design and operation for determining a mutually compatible set of configuration for cores using agents associated with each core to achieve an application-related objective |
EP3793175A1 (en) | 2010-11-19 | 2021-03-17 | IOT Holdings, Inc. | Machine-to-machine (m2m) interface procedures for announce and de-announce of resources |
US8381218B2 (en) | 2010-11-30 | 2013-02-19 | Microsoft Corporation | Managing groups of computing entities |
DE202011110377U1 (de) * | 2010-12-03 | 2013-09-20 | Titus Inc. | System eines hierarchischen Metadaten Managements und Anwendung |
AU2011340789B2 (en) | 2010-12-08 | 2014-03-27 | Remasys Pty Ltd | End-user performance monitoring for mobile applications |
US9350598B2 (en) | 2010-12-14 | 2016-05-24 | Liveperson, Inc. | Authentication of service requests using a communications initiation feature |
US8918465B2 (en) * | 2010-12-14 | 2014-12-23 | Liveperson, Inc. | Authentication of service requests initiated from a social networking site |
WO2012093835A2 (ko) * | 2011-01-03 | 2012-07-12 | 주식회사 케이티 | 모바일 p2p 서비스를 위한 지연-용인 콘텐츠 전송 장치 및 그 방법 |
CA2737148A1 (en) | 2011-01-06 | 2012-07-06 | Dundas Data Visualization, Inc. | Methods and systems for providing a discussion thread to key performance indicator information |
CN102075574B (zh) * | 2011-01-07 | 2013-02-06 | 北京邮电大学 | 一种网络协作学习系统和网络协作学习方法 |
US8989884B2 (en) | 2011-01-11 | 2015-03-24 | Apple Inc. | Automatic audio configuration based on an audio output device |
US8363602B2 (en) | 2011-01-14 | 2013-01-29 | Nokia Corporation | Method, apparatus and computer program product for resource allocation of coexistent secondary networks |
JP5664273B2 (ja) * | 2011-01-21 | 2015-02-04 | ソニー株式会社 | 無線通信装置、プログラム、および無線通信システム |
US10445113B2 (en) * | 2011-03-01 | 2019-10-15 | International Business Machines Corporation | Method and system for setting the user interface to suit the display screen of an electronic device |
EP2506519A1 (en) * | 2011-03-25 | 2012-10-03 | EADS Deutschland GmbH | Method for determining integrity in an evolutionary collabroative information system |
GB201105765D0 (en) | 2011-04-05 | 2011-05-18 | Visa Europe Ltd | Payment system |
WO2012142178A2 (en) | 2011-04-11 | 2012-10-18 | Intertrust Technologies Corporation | Information security systems and methods |
KR20120122616A (ko) * | 2011-04-29 | 2012-11-07 | 삼성전자주식회사 | Drm 서비스 제공 방법 및 장치 |
US9202024B2 (en) * | 2011-05-02 | 2015-12-01 | Inside Secure | Method for playing digital contents projected with a DRM (digital rights management) scheme and corresponding system |
US20120284804A1 (en) | 2011-05-02 | 2012-11-08 | Authentec, Inc. | System and method for protecting digital contents with digital rights management (drm) |
US8514802B2 (en) | 2011-05-04 | 2013-08-20 | Nokia Corporation | Method to evaluate fairness of resource allocations in shared bands |
WO2012157044A1 (ja) * | 2011-05-13 | 2012-11-22 | 株式会社日立製作所 | 業務フロー管理方法、装置及びプログラム |
US8478660B2 (en) * | 2011-05-19 | 2013-07-02 | Telefonica, S.A. | Method and system for improving the selection of services in a service exchange environment |
US9317341B2 (en) | 2011-05-24 | 2016-04-19 | Microsoft Technology Licensing, Llc. | Dynamic attribute resolution for orchestrated management |
WO2012166927A1 (en) * | 2011-06-02 | 2012-12-06 | Numerex Corp. | Wireless snmp agent gateway |
CA2840263A1 (en) * | 2011-07-04 | 2013-01-10 | Blackberry Limited | System and method for sharing mobile device content |
US20130013358A1 (en) * | 2011-07-08 | 2013-01-10 | Mark Sears | E-commerce content management system for dealer self-routing |
US9131330B2 (en) * | 2011-07-15 | 2015-09-08 | Telefonaktiebolaget L M Ericsson (Publ) | M2M services enablement architecture for cellular access networks |
US8929831B2 (en) | 2011-07-18 | 2015-01-06 | Nokia Corporation | Method, apparatus, and computer program product for wireless network discovery based on geographical location |
CA2842260A1 (en) * | 2011-07-20 | 2013-01-24 | Sonos, Inc. | Web-based music partner systems and methods |
US9270471B2 (en) * | 2011-08-10 | 2016-02-23 | Microsoft Technology Licensing, Llc | Client-client-server authentication |
CN102938878B (zh) * | 2011-08-15 | 2016-03-23 | 上海贝尔股份有限公司 | 相邻小区的mbms服务信息通知方法以及相应的设备 |
JP2013058006A (ja) * | 2011-09-07 | 2013-03-28 | Fuji Xerox Co Ltd | 情報処理装置及び情報処理プログラム |
KR101240552B1 (ko) * | 2011-09-26 | 2013-03-11 | 삼성에스디에스 주식회사 | 미디어 키 관리 및 상기 미디어 키를 이용한 피어-투-피어 메시지 송수신 시스템 및 방법 |
US9589112B2 (en) * | 2011-09-29 | 2017-03-07 | Lg Electronics Inc. | Method, device, and system for downloading contents on the basis of a rights verification |
US8954942B2 (en) | 2011-09-30 | 2015-02-10 | Oracle International Corporation | Optimizations using a BPEL compiler |
CN103875254A (zh) * | 2011-10-03 | 2014-06-18 | 汤姆逊许可公司 | 用于在数字锁存器系统中处理内容供应的方法和装置 |
US9832649B1 (en) * | 2011-10-12 | 2017-11-28 | Technology Business Management, Limted | Secure ID authentication |
DE102011054842A1 (de) * | 2011-10-27 | 2013-05-02 | Wincor Nixdorf International Gmbh | Vorrichtung zur Handhabung von Wertscheinen und/oder Münzen sowie Verfahren zur Initialisierung und zum Betrieb einer solchen Vorrichtung |
CN103117983B (zh) * | 2011-11-16 | 2015-11-04 | 中国移动通信集团公司 | 数据服务请求应答方法和数据服务协议栈的设计方法 |
US20130151589A1 (en) * | 2011-11-17 | 2013-06-13 | Market76 | Computer-based system for use in providing advisory services |
US9019909B2 (en) | 2011-12-06 | 2015-04-28 | Nokia Corporation | Method, apparatus, and computer program product for coexistence management |
US8751800B1 (en) | 2011-12-12 | 2014-06-10 | Google Inc. | DRM provider interoperability |
US9195936B1 (en) | 2011-12-30 | 2015-11-24 | Pegasystems Inc. | System and method for updating or modifying an application without manual coding |
US8943002B2 (en) | 2012-02-10 | 2015-01-27 | Liveperson, Inc. | Analytics driven engagement |
EP2815593A4 (en) | 2012-02-17 | 2015-08-12 | Intertrust Tech Corp | VEHICLE TRANSLATION SYSTEMS AND METHODS |
AU2013200916B2 (en) | 2012-02-20 | 2014-09-11 | Kl Data Security Pty Ltd | Cryptographic Method and System |
US9727708B2 (en) | 2012-02-21 | 2017-08-08 | Pulselocker, Inc. | Method and apparatus for limiting access to data by process or computer function with stateless encryption |
US9350814B2 (en) * | 2012-02-21 | 2016-05-24 | Qualcomm Incorporated | Internet protocol connectivity over a service-oriented architecture bus |
US9621458B2 (en) | 2012-02-21 | 2017-04-11 | Qualcomm Incorporated | Internet routing over a service-oriented architecture bus |
US8953490B2 (en) | 2012-03-02 | 2015-02-10 | Blackberry Limited | Methods and apparatus for use in facilitating Wi-Fi peer-to-peer (P2P) wireless networking |
US8805941B2 (en) | 2012-03-06 | 2014-08-12 | Liveperson, Inc. | Occasionally-connected computing interface |
US9473946B2 (en) | 2012-03-12 | 2016-10-18 | Nokia Technologies Oy | Method, apparatus, and computer program product for temporary release of resources in radio networks |
US8909274B2 (en) | 2012-03-12 | 2014-12-09 | Nokia Corporation | Method, apparatus, and computer program product for resource allocation conflict handling in RF frequency bands |
US9503512B2 (en) | 2012-03-21 | 2016-11-22 | Intertrust Technologies Corporation | Distributed computation systems and methods |
EP2832073A4 (en) * | 2012-03-29 | 2015-12-16 | Intel Corp | TAPPING SERVICE LAYER BETWEEN TWO DEVICES |
US8813246B2 (en) | 2012-04-23 | 2014-08-19 | Inside Secure | Method for playing digital contents protected with a DRM (digital right management) scheme and corresponding system |
US9563336B2 (en) | 2012-04-26 | 2017-02-07 | Liveperson, Inc. | Dynamic user interface customization |
US9672196B2 (en) | 2012-05-15 | 2017-06-06 | Liveperson, Inc. | Methods and systems for presenting specialized content using campaign metrics |
US9813496B2 (en) * | 2012-05-23 | 2017-11-07 | Infosys Limited | Method and apparatus for collaborating in a work environment |
WO2013183150A1 (ja) * | 2012-06-07 | 2013-12-12 | 株式会社 東芝 | セキュリティアダプタプログラム及び装置 |
US20130332987A1 (en) | 2012-06-11 | 2013-12-12 | Intertrust Technologies Corporation | Data collection and analysis systems and methods |
US9654900B2 (en) | 2012-06-29 | 2017-05-16 | Interdigital Patent Holdings, Inc. | Service-based discovery in networks |
US20140007197A1 (en) * | 2012-06-29 | 2014-01-02 | Michael John Wray | Delegation within a computing environment |
US10825032B2 (en) | 2012-07-06 | 2020-11-03 | Oracle International Corporation | Service design and order fulfillment system with action |
CN104641374A (zh) | 2012-07-20 | 2015-05-20 | 英特托拉斯技术公司 | 信息定向系统和方法 |
DE102012015527B4 (de) * | 2012-08-04 | 2017-02-09 | Audi Ag | Verfahren zum Nutzen eines zweiten Infotainmentsystems mittels eines ersten Infotainmentsystems und Fahrzeug |
US8942701B2 (en) | 2012-08-14 | 2015-01-27 | Nokia Corporation | Method, apparatus, and computer program product for transferring responsibility between network controllers managing coexistence in radio frequency spectrum |
US9378073B2 (en) * | 2012-08-14 | 2016-06-28 | International Business Machines Corporation | Remote procedure call for a distributed system |
US9178771B2 (en) * | 2012-08-23 | 2015-11-03 | Hewlett-Packard Development Company, L.P. | Determining the type of a network tier |
CN102868594B (zh) * | 2012-09-12 | 2015-05-27 | 浪潮(北京)电子信息产业有限公司 | 一种消息处理方法和装置 |
US9363133B2 (en) | 2012-09-28 | 2016-06-07 | Avaya Inc. | Distributed application of enterprise policies to Web Real-Time Communications (WebRTC) interactive sessions, and related methods, systems, and computer-readable media |
US10164929B2 (en) * | 2012-09-28 | 2018-12-25 | Avaya Inc. | Intelligent notification of requests for real-time online interaction via real-time communications and/or markup protocols, and related methods, systems, and computer-readable media |
RU2519470C1 (ru) * | 2012-10-17 | 2014-06-10 | Общество с ограниченной ответственностью "Сетевизор" | Способ защищенного распространения мультимедийной информации посредством развертывания децентрализованной сети типа peer-to-peer и децентрализованная сеть для осуществления способа |
US9532224B2 (en) * | 2012-11-05 | 2016-12-27 | Electronics And Telecommunications Research Institute | Method of device-to-device discovery and apparatus thereof |
WO2014074513A1 (en) | 2012-11-06 | 2014-05-15 | Intertrust Technologies Corporation | Activity recognition systems and methods |
WO2014074722A1 (en) | 2012-11-07 | 2014-05-15 | Intertrust Technologies Corporation | Vehicle charging path optimization systems and methods |
WO2014074738A1 (en) | 2012-11-07 | 2014-05-15 | Intertrust Technologies Corporation | Personalized data management systems and methods |
US9107089B2 (en) | 2012-11-09 | 2015-08-11 | Nokia Technologies Oy | Method, apparatus, and computer program product for location based query for interferer discovery in coexistence management system |
US9565472B2 (en) | 2012-12-10 | 2017-02-07 | Time Warner Cable Enterprises Llc | Apparatus and methods for content transfer protection |
US9769132B2 (en) * | 2012-12-20 | 2017-09-19 | Mitsubishi Electric Corporation | Control system for securely protecting a control program when editing, executing and transmitting the control program |
WO2014124318A1 (en) | 2013-02-08 | 2014-08-14 | Interdigital Patent Holdings, Inc. | METHOD AND APPARATUS FOR INCORPORATING AN INTERNET OF THINGS (IoT) SERVICE INTERFACE PROTOCOL LAYER IN A NODE |
US9584544B2 (en) * | 2013-03-12 | 2017-02-28 | Red Hat Israel, Ltd. | Secured logical component for security in a virtual environment |
WO2014165284A1 (en) | 2013-03-12 | 2014-10-09 | Intertrust Technologies Corporation | Secure transaction systems and methods |
US20140282786A1 (en) | 2013-03-12 | 2014-09-18 | Time Warner Cable Enterprises Llc | Methods and apparatus for providing and uploading content to personalized network storage |
US9626489B2 (en) | 2013-03-13 | 2017-04-18 | Intertrust Technologies Corporation | Object rendering systems and methods |
US8799053B1 (en) * | 2013-03-13 | 2014-08-05 | Paul R. Goldberg | Secure consumer data exchange method, apparatus, and system therfor |
US9294458B2 (en) | 2013-03-14 | 2016-03-22 | Avaya Inc. | Managing identity provider (IdP) identifiers for web real-time communications (WebRTC) interactive flows, and related methods, systems, and computer-readable media |
US9299049B2 (en) * | 2013-03-15 | 2016-03-29 | Sap Se | Contract-based process integration |
US9215075B1 (en) | 2013-03-15 | 2015-12-15 | Poltorak Technologies Llc | System and method for secure relayed communications from an implantable medical device |
EP2975854B1 (en) | 2013-03-15 | 2019-09-18 | Panasonic Intellectual Property Management Co., Ltd. | Content distribution method, content distribution system, source device, and sink device |
US9130900B2 (en) * | 2013-03-15 | 2015-09-08 | Bao Tran | Assistive agent |
US10368255B2 (en) | 2017-07-25 | 2019-07-30 | Time Warner Cable Enterprises Llc | Methods and apparatus for client-based dynamic control of connections to co-existing radio access networks |
US9066153B2 (en) | 2013-03-15 | 2015-06-23 | Time Warner Cable Enterprises Llc | Apparatus and methods for multicast delivery of content in a content delivery network |
US9716589B2 (en) * | 2013-04-22 | 2017-07-25 | Unisys Corporation | Secured communications arrangement applying internet protocol security |
US9306981B2 (en) | 2013-04-24 | 2016-04-05 | Intertrust Technologies Corporation | Bioinformatic processing systems and methods |
US9300555B2 (en) | 2013-06-05 | 2016-03-29 | Globalfoundries Inc. | Peer-to-peer ad hoc network system for monitoring a presence of members of a group |
US10205624B2 (en) | 2013-06-07 | 2019-02-12 | Avaya Inc. | Bandwidth-efficient archiving of real-time interactive flows, and related methods, systems, and computer-readable media |
CN108156180B (zh) * | 2013-06-08 | 2021-04-09 | 科大国盾量子技术股份有限公司 | 一种基于Android智能移动终端的通信密钥分配方法 |
US10191733B2 (en) | 2013-06-25 | 2019-01-29 | Sap Se | Software change process orchestration in a runtime environment |
US9961052B2 (en) * | 2013-06-28 | 2018-05-01 | Extreme Networks, Inc. | Virtualized host ID key sharing |
US9558460B2 (en) * | 2013-06-28 | 2017-01-31 | Lexmark International Technology Sarl | Methods of analyzing software systems having service components |
US9525718B2 (en) | 2013-06-30 | 2016-12-20 | Avaya Inc. | Back-to-back virtual web real-time communications (WebRTC) agents, and related methods, systems, and computer-readable media |
US9065969B2 (en) | 2013-06-30 | 2015-06-23 | Avaya Inc. | Scalable web real-time communications (WebRTC) media engines, and related methods, systems, and computer-readable media |
US8949998B2 (en) * | 2013-07-01 | 2015-02-03 | Medidata Solutions, Inc. | Method and system for maintaining data in a substantiated state |
US9112840B2 (en) | 2013-07-17 | 2015-08-18 | Avaya Inc. | Verifying privacy of web real-time communications (WebRTC) media channels via corresponding WebRTC data channels, and related methods, systems, and computer-readable media |
US9313568B2 (en) | 2013-07-23 | 2016-04-12 | Chicago Custom Acoustics, Inc. | Custom earphone with dome in the canal |
WO2015013685A1 (en) * | 2013-07-25 | 2015-01-29 | Convida Wireless, Llc | End-to-end m2m service layer sessions |
US9614890B2 (en) | 2013-07-31 | 2017-04-04 | Avaya Inc. | Acquiring and correlating web real-time communications (WEBRTC) interactive flow characteristics, and related methods, systems, and computer-readable media |
US9467450B2 (en) * | 2013-08-21 | 2016-10-11 | Medtronic, Inc. | Data driven schema for patient data exchange system |
US9531808B2 (en) | 2013-08-22 | 2016-12-27 | Avaya Inc. | Providing data resource services within enterprise systems for resource level sharing among multiple applications, and related methods, systems, and computer-readable media |
US9363150B2 (en) * | 2013-09-05 | 2016-06-07 | International Business Machines Corporation | Policy driven auto-transitioning framework for governed objects in service registries |
KR20180095126A (ko) * | 2013-09-20 | 2018-08-24 | 콘비다 와이어리스, 엘엘씨 | 관심에 기초한 향상된 m2m 콘텐츠 관리 |
US10225212B2 (en) | 2013-09-26 | 2019-03-05 | Avaya Inc. | Providing network management based on monitoring quality of service (QOS) characteristics of web real-time communications (WEBRTC) interactive flows, and related methods, systems, and computer-readable media |
US10033693B2 (en) | 2013-10-01 | 2018-07-24 | Nicira, Inc. | Distributed identity-based firewalls |
CN110581766A (zh) * | 2013-10-31 | 2019-12-17 | 美国唯美安视国际有限公司 | 用于跨多个条件访问服务器的同步的密钥推导的系统和方法 |
US10263952B2 (en) | 2013-10-31 | 2019-04-16 | Avaya Inc. | Providing origin insight for web applications via session traversal utilities for network address translation (STUN) messages, and related methods, systems, and computer-readable media |
US9769214B2 (en) | 2013-11-05 | 2017-09-19 | Avaya Inc. | Providing reliable session initiation protocol (SIP) signaling for web real-time communications (WEBRTC) interactive flows, and related methods, systems, and computer-readable media |
CN103595714A (zh) * | 2013-11-08 | 2014-02-19 | 福建省视通光电网络有限公司 | 一种通过web服务通道实现数据传输的方法 |
KR101510336B1 (ko) * | 2013-11-14 | 2015-04-07 | 현대자동차 주식회사 | 차량용 운전자 지원 시스템의 검사 장치 |
CN103618795B (zh) * | 2013-11-29 | 2018-06-05 | 百度在线网络技术(北京)有限公司 | 跨设备的文件处理方法、客户端和服务器 |
US9697061B1 (en) | 2013-12-18 | 2017-07-04 | Amazon Technologies, Inc. | Parameter delegation for encapsulated services |
CN105830107A (zh) | 2013-12-19 | 2016-08-03 | 维萨国际服务协会 | 基于云的交易方法和系统 |
US9922322B2 (en) | 2013-12-19 | 2018-03-20 | Visa International Service Association | Cloud-based transactions with magnetic secure transmission |
US10129243B2 (en) | 2013-12-27 | 2018-11-13 | Avaya Inc. | Controlling access to traversal using relays around network address translation (TURN) servers using trusted single-use credentials |
KR101548210B1 (ko) * | 2014-01-06 | 2015-08-31 | 고려대학교 산학협력단 | 왕복 시간 변화를 이용하여 익명 네트워크를 통한 우회 접속을 탐지하는 방법 |
US9826051B2 (en) * | 2014-01-21 | 2017-11-21 | Amadeus S.A.S. | Content integration framework |
WO2015116855A1 (en) | 2014-01-29 | 2015-08-06 | Intertrust Technologies Corporation | Secure application processing systems and methods |
EP3117575B1 (en) * | 2014-03-14 | 2018-08-22 | Telefonaktiebolaget LM Ericsson (publ) | Systems and methods related to establishing a temporary trust relationship between a network-based media service and a digital media renderer |
JP5765457B2 (ja) * | 2014-03-19 | 2015-08-19 | 株式会社ナカヨ | 情報収集方法、および情報端末 |
US11386442B2 (en) | 2014-03-31 | 2022-07-12 | Liveperson, Inc. | Online behavioral predictor |
US10581927B2 (en) | 2014-04-17 | 2020-03-03 | Avaya Inc. | Providing web real-time communications (WebRTC) media services via WebRTC-enabled media servers, and related methods, systems, and computer-readable media |
US9749363B2 (en) | 2014-04-17 | 2017-08-29 | Avaya Inc. | Application of enterprise policies to web real-time communications (WebRTC) interactive sessions using an enterprise session initiation protocol (SIP) engine, and related methods, systems, and computer-readable media |
RU2617919C1 (ru) * | 2014-04-23 | 2017-04-28 | Ремоут Медиа, Ллс | Интеллектуальная система синхронизации маршрутизации и способы синтетической ретрансляции для установления социальных контактов и потоковой передачи контента для группы пользователей |
US10846694B2 (en) | 2014-05-21 | 2020-11-24 | Visa International Service Association | Offline authentication |
US9621940B2 (en) | 2014-05-29 | 2017-04-11 | Time Warner Cable Enterprises Llc | Apparatus and methods for recording, accessing, and delivering packetized content |
US10162855B2 (en) | 2014-06-09 | 2018-12-25 | Dundas Data Visualization, Inc. | Systems and methods for optimizing data analysis |
US11540148B2 (en) | 2014-06-11 | 2022-12-27 | Time Warner Cable Enterprises Llc | Methods and apparatus for access point location |
US10374910B2 (en) * | 2014-06-13 | 2019-08-06 | Convida Wireless, Llc | Automated service profiling and orchestration |
US9215228B1 (en) * | 2014-06-17 | 2015-12-15 | Cisco Technology, Inc. | Authentication of devices having unequal capabilities |
US9912705B2 (en) | 2014-06-24 | 2018-03-06 | Avaya Inc. | Enhancing media characteristics during web real-time communications (WebRTC) interactive sessions by using session initiation protocol (SIP) endpoints, and related methods, systems, and computer-readable media |
US10068012B2 (en) | 2014-06-27 | 2018-09-04 | Sonos, Inc. | Music discovery |
GB2530245A (en) * | 2014-07-15 | 2016-03-23 | Piksel Inc | Controlling delivery of encrypted media assets |
CN104092777B (zh) * | 2014-07-29 | 2017-12-26 | 深圳市富途网络科技有限公司 | 客户端的布局设定与服务器同步存储的方法及其系统 |
US9344455B2 (en) * | 2014-07-30 | 2016-05-17 | Motorola Solutions, Inc. | Apparatus and method for sharing a hardware security module interface in a collaborative network |
US9531749B2 (en) | 2014-08-07 | 2016-12-27 | International Business Machines Corporation | Prevention of query overloading in a server application |
US9775029B2 (en) | 2014-08-22 | 2017-09-26 | Visa International Service Association | Embedding cloud-based functionalities in a communication device |
CN105407444A (zh) * | 2014-09-05 | 2016-03-16 | 青岛海尔智能家电科技有限公司 | 一种聚合响应的方法和装置 |
US20160105400A1 (en) * | 2014-10-08 | 2016-04-14 | Time Warner Cable Enterprises Llc | Apparatus and methods for data transfer beteween a plurality of user devices |
US10469396B2 (en) | 2014-10-10 | 2019-11-05 | Pegasystems, Inc. | Event processing with enhanced throughput |
US9781004B2 (en) * | 2014-10-16 | 2017-10-03 | Cisco Technology, Inc. | Discovering and grouping application endpoints in a network environment |
US9935833B2 (en) | 2014-11-05 | 2018-04-03 | Time Warner Cable Enterprises Llc | Methods and apparatus for determining an optimized wireless interface installation configuration |
WO2016118216A2 (en) | 2014-11-06 | 2016-07-28 | Intertrust Technologies Corporation | Secure application distribution systems and methods |
US9609541B2 (en) | 2014-12-31 | 2017-03-28 | Motorola Solutions, Inc. | Method and apparatus for device collaboration via a hybrid network |
WO2016112338A1 (en) | 2015-01-08 | 2016-07-14 | Intertrust Technologies Corporation | Cryptographic systems and methods |
US9680875B2 (en) | 2015-01-20 | 2017-06-13 | Cisco Technology, Inc. | Security policy unification across different security products |
US9571524B2 (en) | 2015-01-20 | 2017-02-14 | Cisco Technology, Inc. | Creation of security policy templates and security policies based on the templates |
US9521167B2 (en) | 2015-01-20 | 2016-12-13 | Cisco Technology, Inc. | Generalized security policy user interface |
US9531757B2 (en) | 2015-01-20 | 2016-12-27 | Cisco Technology, Inc. | Management of security policies across multiple security products |
US9401933B1 (en) | 2015-01-20 | 2016-07-26 | Cisco Technology, Inc. | Classification of security policies across multiple security products |
US10069928B1 (en) * | 2015-01-21 | 2018-09-04 | Amazon Technologies, Inc. | Translating requests/responses between communication channels having different protocols |
EP3261605B2 (en) | 2015-02-26 | 2022-04-20 | SiO2 Medical Products, Inc. | Cycloolefin polymer container with a scratch resistant and anti-static coating |
US9906604B2 (en) * | 2015-03-09 | 2018-02-27 | Dell Products L.P. | System and method for dynamic discovery of web services for a management console |
US10630686B2 (en) * | 2015-03-12 | 2020-04-21 | Fornetix Llc | Systems and methods for organizing devices in a policy hierarchy |
US20160267481A1 (en) * | 2015-03-13 | 2016-09-15 | Svetoslav Lazarov Gramenov | System and method for distributed money supply |
US10965459B2 (en) | 2015-03-13 | 2021-03-30 | Fornetix Llc | Server-client key escrow for applied key management system and process |
CN104717073B (zh) * | 2015-03-19 | 2018-09-18 | 张文 | 个人信息共享系统及其个人信息共享方法和身份认证方法 |
US10063375B2 (en) * | 2015-04-20 | 2018-08-28 | Microsoft Technology Licensing, Llc | Isolation of trusted input/output devices |
CN107615791B (zh) | 2015-04-23 | 2020-07-28 | 康维达无线有限责任公司 | 用于添加m2m服务的装置和方法 |
US9641540B2 (en) | 2015-05-19 | 2017-05-02 | Cisco Technology, Inc. | User interface driven translation, comparison, unification, and deployment of device neutral network security policies |
CA2988120A1 (en) | 2015-06-02 | 2016-12-08 | Liveperson, Inc. | Dynamic communication routing based on consistency weighting and routing rules |
US10255921B2 (en) * | 2015-07-31 | 2019-04-09 | Google Llc | Managing dialog data providers |
CN106407832B (zh) * | 2015-08-03 | 2021-03-09 | 阿里巴巴集团控股有限公司 | 一种用于数据访问控制的方法及设备 |
US10909186B2 (en) * | 2015-09-30 | 2021-02-02 | Oracle International Corporation | Multi-tenant customizable composites |
US10623514B2 (en) | 2015-10-13 | 2020-04-14 | Home Box Office, Inc. | Resource response expansion |
US10656935B2 (en) | 2015-10-13 | 2020-05-19 | Home Box Office, Inc. | Maintaining and updating software versions via hierarchy |
US11171924B2 (en) | 2015-10-14 | 2021-11-09 | Adp, Inc. | Customized web services gateway |
US10348816B2 (en) | 2015-10-14 | 2019-07-09 | Adp, Llc | Dynamic proxy server |
US9860346B2 (en) | 2015-10-14 | 2018-01-02 | Adp, Llc | Dynamic application programming interface builder |
US10623528B2 (en) | 2015-10-14 | 2020-04-14 | Adp, Llc | Enterprise application ecosystem operating system |
US10317243B2 (en) * | 2015-10-15 | 2019-06-11 | Intertrust Technologies Corporation | Sensor information management systems and methods |
US10600442B2 (en) * | 2015-10-20 | 2020-03-24 | Sony Corporation | Information processing device, information processing method, and program |
US9342388B1 (en) * | 2015-12-02 | 2016-05-17 | International Business Machines Corporation | Dynamic queue alias |
US9986578B2 (en) | 2015-12-04 | 2018-05-29 | Time Warner Cable Enterprises Llc | Apparatus and methods for selective data network access |
US10305996B2 (en) * | 2015-12-07 | 2019-05-28 | Prn Productions, Inc. | System, device, and method for service coordination |
US10225084B1 (en) * | 2015-12-29 | 2019-03-05 | EMC IP Holding Company LLC | Method, apparatus and computer program product for securely sharing a content item |
US9992232B2 (en) | 2016-01-14 | 2018-06-05 | Cisco Technology, Inc. | Policy block creation with context-sensitive policy line classification |
US9918345B2 (en) | 2016-01-20 | 2018-03-13 | Time Warner Cable Enterprises Llc | Apparatus and method for wireless network services in moving vehicles |
US10880281B2 (en) | 2016-02-26 | 2020-12-29 | Fornetix Llc | Structure of policies for evaluating key attributes of encryption keys |
US10860086B2 (en) | 2016-02-26 | 2020-12-08 | Fornetix Llc | Policy-enabled encryption keys having complex logical operations |
US10492034B2 (en) | 2016-03-07 | 2019-11-26 | Time Warner Cable Enterprises Llc | Apparatus and methods for dynamic open-access networks |
US20170296458A1 (en) * | 2016-04-14 | 2017-10-19 | The Procter & Gamble Company | Cosmetic composition |
US10762559B2 (en) | 2016-04-15 | 2020-09-01 | Adp, Llc | Management of payroll lending within an enterprise system |
US10187367B2 (en) | 2016-05-11 | 2019-01-22 | Iheartmedia Management Services, Inc. | Licensing authentication via mobile device |
US20170329526A1 (en) * | 2016-05-13 | 2017-11-16 | Hewlett Packard Enterprise Development Lp | Interoperable capabilities |
US10698599B2 (en) | 2016-06-03 | 2020-06-30 | Pegasystems, Inc. | Connecting graphical shapes using gestures |
US10630085B2 (en) | 2016-06-06 | 2020-04-21 | Omnicharge, Inc. | Portable power solutions |
US10476965B1 (en) * | 2016-06-06 | 2019-11-12 | Omnicharge, Inc. | Apparatus, system and method for sharing tangible objects |
US11237595B2 (en) | 2016-06-06 | 2022-02-01 | Omnicharge, Inc. | Portable power solutions |
US10164858B2 (en) | 2016-06-15 | 2018-12-25 | Time Warner Cable Enterprises Llc | Apparatus and methods for monitoring and diagnosing a wireless network |
RU2649788C1 (ru) * | 2016-06-16 | 2018-04-04 | Общество С Ограниченной Ответственностью "Яндекс" | Способ и система для обработки запроса на транзакцию в распределенных системах обработки данных |
US11128444B2 (en) * | 2016-06-30 | 2021-09-21 | Intel Corporation | Technologies for serializable binary data distribution |
US10698647B2 (en) | 2016-07-11 | 2020-06-30 | Pegasystems Inc. | Selective sharing for collaborative application usage |
BR112018076196A2 (pt) | 2016-07-11 | 2019-03-26 | Visa International Service Association | método, e, dispositivos de comunicação portátil e de acesso. |
WO2018010957A1 (en) * | 2016-07-12 | 2018-01-18 | Deutsche Telekom Ag | Method for providing an enhanced level of authentication related to a secure software client application provided by an application distribution entity in order to be transmitted to a client computing device; system, application distribution entity, software client application, and client computing device for providing an enhanced level of authentication related to a secure software client application, program and computer program product |
WO2018010958A2 (en) * | 2016-07-12 | 2018-01-18 | Deutsche Telekom Ag | Method for detecting and/or identifying data streams within a telecommunications network; system, telecommunications network, and content server entity for detecting and/or identifying data streams within a telecommunications network, program and computer program product |
CN109844717B (zh) | 2016-08-14 | 2023-05-23 | 利维帕尔森有限公司 | 用于移动应用程序的实时远程控制的系统和方法 |
US10880284B1 (en) * | 2016-08-19 | 2020-12-29 | Amazon Technologies, Inc. | Repurposing limited functionality devices as authentication factors |
US10044832B2 (en) | 2016-08-30 | 2018-08-07 | Home Box Office, Inc. | Data request multiplexing |
CN106375458B (zh) * | 2016-09-08 | 2019-12-13 | 上海银赛计算机科技有限公司 | 服务调用系统、方法及装置 |
CN106384028A (zh) * | 2016-09-12 | 2017-02-08 | 浪潮软件股份有限公司 | 一种支持多租户的统一身份认证服务实现的方法 |
EP3526972A1 (en) * | 2016-10-12 | 2019-08-21 | Koninklijke KPN N.V. | Enabling a media orchestration |
US10719616B2 (en) | 2016-10-25 | 2020-07-21 | Beatport, LLC | Secure content access system |
WO2018097947A2 (en) | 2016-11-03 | 2018-05-31 | Convida Wireless, Llc | Reference signals and control channels in nr |
US10609160B2 (en) * | 2016-12-06 | 2020-03-31 | Nicira, Inc. | Performing context-rich attribute-based services on a host |
CN107025559B (zh) | 2017-01-26 | 2020-09-18 | 创新先进技术有限公司 | 一种业务处理方法及装置 |
US11765406B2 (en) | 2017-02-17 | 2023-09-19 | Interdigital Madison Patent Holdings, Sas | Systems and methods for selective object-of-interest zooming in streaming video |
US10560328B2 (en) | 2017-04-20 | 2020-02-11 | Cisco Technology, Inc. | Static network policy analysis for networks |
US10826788B2 (en) | 2017-04-20 | 2020-11-03 | Cisco Technology, Inc. | Assurance of quality-of-service configurations in a network |
US10623264B2 (en) | 2017-04-20 | 2020-04-14 | Cisco Technology, Inc. | Policy assurance for service chaining |
US10698740B2 (en) * | 2017-05-02 | 2020-06-30 | Home Box Office, Inc. | Virtual graph nodes |
US11467868B1 (en) * | 2017-05-03 | 2022-10-11 | Amazon Technologies, Inc. | Service relationship orchestration service |
US10439875B2 (en) | 2017-05-31 | 2019-10-08 | Cisco Technology, Inc. | Identification of conflict rules in a network intent formal equivalence failure |
US10623271B2 (en) | 2017-05-31 | 2020-04-14 | Cisco Technology, Inc. | Intra-priority class ordering of rules corresponding to a model of network intents |
US10554483B2 (en) | 2017-05-31 | 2020-02-04 | Cisco Technology, Inc. | Network policy analysis for networks |
US10693738B2 (en) | 2017-05-31 | 2020-06-23 | Cisco Technology, Inc. | Generating device-level logical models for a network |
US10581694B2 (en) | 2017-05-31 | 2020-03-03 | Cisco Technology, Inc. | Generation of counter examples for network intent formal equivalence failures |
US20180351788A1 (en) | 2017-05-31 | 2018-12-06 | Cisco Technology, Inc. | Fault localization in large-scale network policy deployment |
US10812318B2 (en) | 2017-05-31 | 2020-10-20 | Cisco Technology, Inc. | Associating network policy objects with specific faults corresponding to fault localizations in large-scale network deployment |
US10505816B2 (en) | 2017-05-31 | 2019-12-10 | Cisco Technology, Inc. | Semantic analysis to detect shadowing of rules in a model of network intents |
US10645547B2 (en) | 2017-06-02 | 2020-05-05 | Charter Communications Operating, Llc | Apparatus and methods for providing wireless service in a venue |
US10638361B2 (en) | 2017-06-06 | 2020-04-28 | Charter Communications Operating, Llc | Methods and apparatus for dynamic control of connections to co-existing radio access networks |
US10587621B2 (en) | 2017-06-16 | 2020-03-10 | Cisco Technology, Inc. | System and method for migrating to and maintaining a white-list network security model |
US11469986B2 (en) | 2017-06-16 | 2022-10-11 | Cisco Technology, Inc. | Controlled micro fault injection on a distributed appliance |
US10686669B2 (en) | 2017-06-16 | 2020-06-16 | Cisco Technology, Inc. | Collecting network models and node information from a network |
US11645131B2 (en) | 2017-06-16 | 2023-05-09 | Cisco Technology, Inc. | Distributed fault code aggregation across application centric dimensions |
US10547715B2 (en) | 2017-06-16 | 2020-01-28 | Cisco Technology, Inc. | Event generation in response to network intent formal equivalence failures |
US10904101B2 (en) | 2017-06-16 | 2021-01-26 | Cisco Technology, Inc. | Shim layer for extracting and prioritizing underlying rules for modeling network intents |
US10574513B2 (en) | 2017-06-16 | 2020-02-25 | Cisco Technology, Inc. | Handling controller and node failure scenarios during data collection |
US11150973B2 (en) | 2017-06-16 | 2021-10-19 | Cisco Technology, Inc. | Self diagnosing distributed appliance |
US10498608B2 (en) | 2017-06-16 | 2019-12-03 | Cisco Technology, Inc. | Topology explorer |
US10536337B2 (en) | 2017-06-19 | 2020-01-14 | Cisco Technology, Inc. | Validation of layer 2 interface and VLAN in a networked environment |
US10411996B2 (en) | 2017-06-19 | 2019-09-10 | Cisco Technology, Inc. | Validation of routing information in a network fabric |
US10673702B2 (en) | 2017-06-19 | 2020-06-02 | Cisco Technology, Inc. | Validation of layer 3 using virtual routing forwarding containers in a network |
US10700933B2 (en) | 2017-06-19 | 2020-06-30 | Cisco Technology, Inc. | Validating tunnel endpoint addresses in a network fabric |
US10623259B2 (en) | 2017-06-19 | 2020-04-14 | Cisco Technology, Inc. | Validation of layer 1 interface in a network |
US10805160B2 (en) | 2017-06-19 | 2020-10-13 | Cisco Technology, Inc. | Endpoint bridge domain subnet validation |
US11283680B2 (en) | 2017-06-19 | 2022-03-22 | Cisco Technology, Inc. | Identifying components for removal in a network configuration |
US10560355B2 (en) | 2017-06-19 | 2020-02-11 | Cisco Technology, Inc. | Static endpoint validation |
US10567228B2 (en) | 2017-06-19 | 2020-02-18 | Cisco Technology, Inc. | Validation of cross logical groups in a network |
US10218572B2 (en) | 2017-06-19 | 2019-02-26 | Cisco Technology, Inc. | Multiprotocol border gateway protocol routing validation |
US10348564B2 (en) | 2017-06-19 | 2019-07-09 | Cisco Technology, Inc. | Validation of routing information base-forwarding information base equivalence in a network |
US10333787B2 (en) | 2017-06-19 | 2019-06-25 | Cisco Technology, Inc. | Validation of L3OUT configuration for communications outside a network |
US10554493B2 (en) | 2017-06-19 | 2020-02-04 | Cisco Technology, Inc. | Identifying mismatches between a logical model and node implementation |
US11343150B2 (en) | 2017-06-19 | 2022-05-24 | Cisco Technology, Inc. | Validation of learned routes in a network |
US10652102B2 (en) | 2017-06-19 | 2020-05-12 | Cisco Technology, Inc. | Network node memory utilization analysis |
US10567229B2 (en) | 2017-06-19 | 2020-02-18 | Cisco Technology, Inc. | Validating endpoint configurations between nodes |
US10505817B2 (en) | 2017-06-19 | 2019-12-10 | Cisco Technology, Inc. | Automatically determining an optimal amount of time for analyzing a distributed network environment |
US10437641B2 (en) | 2017-06-19 | 2019-10-08 | Cisco Technology, Inc. | On-demand processing pipeline interleaved with temporal processing pipeline |
US10341184B2 (en) | 2017-06-19 | 2019-07-02 | Cisco Technology, Inc. | Validation of layer 3 bridge domain subnets in in a network |
US10528444B2 (en) | 2017-06-19 | 2020-01-07 | Cisco Technology, Inc. | Event generation in response to validation between logical level and hardware level |
US10812336B2 (en) | 2017-06-19 | 2020-10-20 | Cisco Technology, Inc. | Validation of bridge domain-L3out association for communication outside a network |
US10644946B2 (en) | 2017-06-19 | 2020-05-05 | Cisco Technology, Inc. | Detection of overlapping subnets in a network |
CN107277153B (zh) * | 2017-06-30 | 2020-05-26 | 百度在线网络技术(北京)有限公司 | 用于提供语音服务的方法、装置和服务器 |
US10846387B2 (en) | 2017-07-12 | 2020-11-24 | At&T Intellectual Property I, L.P. | Managing access based on activities of entities |
US10587456B2 (en) | 2017-09-12 | 2020-03-10 | Cisco Technology, Inc. | Event clustering for a network assurance platform |
US10587484B2 (en) | 2017-09-12 | 2020-03-10 | Cisco Technology, Inc. | Anomaly detection and reporting in a network assurance appliance |
US10554477B2 (en) | 2017-09-13 | 2020-02-04 | Cisco Technology, Inc. | Network assurance event aggregator |
US10333833B2 (en) | 2017-09-25 | 2019-06-25 | Cisco Technology, Inc. | Endpoint path assurance |
US11379808B2 (en) * | 2017-10-24 | 2022-07-05 | Spotify Ab | System and method for use of prepare-proceed workflow to orchestrate operations associated with a media content environment |
FR3073998B1 (fr) * | 2017-11-23 | 2019-11-01 | In Webo Technologies | Procede numerique de controle d'acces a un objet, une ressource ou service par un utilisateur |
US10657261B2 (en) | 2017-11-30 | 2020-05-19 | Mocana Corporation | System and method for recording device lifecycle transactions as versioned blocks in a blockchain network using a transaction connector and broker service |
US10505920B2 (en) | 2017-11-30 | 2019-12-10 | Mocana Corporation | System and method of device identification for enrollment and registration of a connected endpoint device, and blockchain service |
US11102053B2 (en) | 2017-12-05 | 2021-08-24 | Cisco Technology, Inc. | Cross-domain assurance |
CN108108444B (zh) * | 2017-12-22 | 2021-12-21 | 国云科技股份有限公司 | 一种企业业务单元自适应系统及其实现方法 |
US10873509B2 (en) | 2018-01-17 | 2020-12-22 | Cisco Technology, Inc. | Check-pointing ACI network state and re-execution from a check-pointed state |
US10572495B2 (en) | 2018-02-06 | 2020-02-25 | Cisco Technology Inc. | Network assurance database version compatibility |
EP3776199B1 (en) | 2018-03-28 | 2023-07-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and apparatus for multi-provider virtual network services |
US11748137B2 (en) * | 2018-03-28 | 2023-09-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and apparatus for multi-provider virtual network services |
US10261775B1 (en) * | 2018-04-17 | 2019-04-16 | Hewlett Packard Enterprise Development Lp | Upgrade orchestrator |
US20190347599A1 (en) * | 2018-05-08 | 2019-11-14 | Palantir Technologies Inc | Systems and methods for routing support tickets |
US20210224416A1 (en) * | 2018-05-15 | 2021-07-22 | Ixup Ip Pty Ltd | Cryptographic key management |
US11748455B2 (en) * | 2018-05-25 | 2023-09-05 | Intertrust Technologies Corporation | Digital rights management systems and methods using efficient messaging architectures |
US10812315B2 (en) | 2018-06-07 | 2020-10-20 | Cisco Technology, Inc. | Cross-domain network assurance |
US11868321B2 (en) | 2018-06-12 | 2024-01-09 | Salesforce, Inc. | Cryptographically secure multi-tenant data exchange platform |
US11477667B2 (en) | 2018-06-14 | 2022-10-18 | Mark Cummings | Using orchestrators for false positive detection and root cause analysis |
US10659298B1 (en) | 2018-06-27 | 2020-05-19 | Cisco Technology, Inc. | Epoch comparison for network events |
US11218508B2 (en) | 2018-06-27 | 2022-01-04 | Cisco Technology, Inc. | Assurance of security rules in a network |
US10911495B2 (en) | 2018-06-27 | 2021-02-02 | Cisco Technology, Inc. | Assurance of security rules in a network |
US11044273B2 (en) | 2018-06-27 | 2021-06-22 | Cisco Technology, Inc. | Assurance of security rules in a network |
US11019027B2 (en) | 2018-06-27 | 2021-05-25 | Cisco Technology, Inc. | Address translation for external network appliance |
US10904070B2 (en) | 2018-07-11 | 2021-01-26 | Cisco Technology, Inc. | Techniques and interfaces for troubleshooting datacenter networks |
US10826770B2 (en) | 2018-07-26 | 2020-11-03 | Cisco Technology, Inc. | Synthesis of models for networks using automated boolean learning |
US10616072B1 (en) | 2018-07-27 | 2020-04-07 | Cisco Technology, Inc. | Epoch data interface |
US10778652B2 (en) * | 2018-07-31 | 2020-09-15 | Bae Systems Information And Electronic Systems Integration Inc. | Secure computational workflows |
US11048488B2 (en) | 2018-08-14 | 2021-06-29 | Pegasystems, Inc. | Software code optimizer and method |
CN109309712B (zh) * | 2018-09-07 | 2022-06-17 | 平安科技(深圳)有限公司 | 基于接口异步调用的数据传输方法、服务器及存储介质 |
US11080247B2 (en) * | 2018-09-19 | 2021-08-03 | Salesforce.Com, Inc. | Field-based peer permissions in a blockchain network |
US11100091B2 (en) | 2018-09-19 | 2021-08-24 | Salesforce.Com, Inc. | Lightweight node in a multi-tenant blockchain network |
US11809409B2 (en) | 2018-09-19 | 2023-11-07 | Salesforce, Inc. | Multi-tenant distributed ledger interfaces |
US11157484B2 (en) | 2018-09-19 | 2021-10-26 | Salesforce.Com, Inc. | Advanced smart contract with decentralized ledger in a multi-tenant environment |
CN109409084B (zh) * | 2018-09-21 | 2021-06-25 | 中国科学院信息工程研究所 | 一种检测返回地址被篡改的链式数据存储结构 |
US10965771B2 (en) * | 2018-09-25 | 2021-03-30 | International Business Machines Corporation | Dynamically switchable transmission data formats in a computer system |
EP3858023A1 (en) | 2018-09-27 | 2021-08-04 | Convida Wireless, Llc | Sub-band operations in unlicensed spectrums of new radio |
US11640429B2 (en) | 2018-10-11 | 2023-05-02 | Home Box Office, Inc. | Graph views to improve user interface responsiveness |
US10949327B2 (en) * | 2018-10-19 | 2021-03-16 | Oracle International Corporation | Manipulation of complex variables in orchestration applications |
CN109302416A (zh) * | 2018-11-13 | 2019-02-01 | 深圳市华师兄弟文化传播有限公司 | 自品牌分享系统 |
US11595217B2 (en) | 2018-12-06 | 2023-02-28 | Digicert, Inc. | System and method for zero touch provisioning of IoT devices |
CN109739478B (zh) * | 2018-12-24 | 2022-12-06 | 网易(杭州)网络有限公司 | 前端项目自动化构建方法、装置、存储介质及电子设备 |
CN109842615B (zh) * | 2018-12-29 | 2021-10-15 | 四川航天拓鑫玄武岩实业有限公司 | 一种通信装置及通信方法 |
CN109739666A (zh) * | 2019-01-09 | 2019-05-10 | 广州虎牙信息科技有限公司 | 单例方法的跨进程调用方法、装置、设备及存储介质 |
EP3932003A4 (en) * | 2019-03-01 | 2022-11-30 | SingularDTV GmbH | DISTRIBUTED DIGITAL CONTENT DISTRIBUTION SYSTEM AND PROCEDURES USING BLOCKCHAINS AND ENCRYPTED PEER-TO-PEER NETWORK |
CN110113247B (zh) * | 2019-04-18 | 2021-07-20 | 深圳市梦网科技发展有限公司 | 富媒体信息收发系统、发送、展示方法及终端设备 |
US11321307B2 (en) * | 2019-06-25 | 2022-05-03 | Optum, Inc. | Orchestrated consensus validation for distributed ledgers using heterogeneous validation pools |
CA3084976A1 (en) * | 2019-07-01 | 2021-01-01 | Next Pathway Inc. | System and method for automated source code generation to provide service layer functionality for legacy computing systems in a service-oriented architecture |
TWI714184B (zh) * | 2019-07-25 | 2020-12-21 | 中華電信股份有限公司 | 多階層網路樣式比對方法 |
US11469908B2 (en) | 2019-08-07 | 2022-10-11 | Bank Of America Corporation | Equipment onboarding and deployment security system |
CN110535842B (zh) * | 2019-08-20 | 2021-11-19 | 之江实验室 | 一种基于抽样检测的拟态安全系统和方法 |
CN110768956B (zh) * | 2019-09-19 | 2022-09-27 | 苏宁云计算有限公司 | 数据服务提供方法、装置、计算机设备和存储介质 |
JP2022549671A (ja) * | 2019-09-25 | 2022-11-28 | コモンウェルス サイエンティフィック アンド インダストリアル リサーチ オーガナイゼーション | ブラウザアプリケーション用の暗号化サービス |
GB2588107B (en) | 2019-10-07 | 2022-11-02 | British Telecomm | Secure publish-subscribe communication methods and apparatus |
US20220394031A1 (en) * | 2019-11-11 | 2022-12-08 | Schneider Electric USA, Inc. | Secure data orchestrator for iot networks |
CN111193720A (zh) * | 2019-12-16 | 2020-05-22 | 中国电子科技集团公司第三十研究所 | 一种基于安全代理的信任服务适配方法 |
US11539718B2 (en) | 2020-01-10 | 2022-12-27 | Vmware, Inc. | Efficiently performing intrusion detection |
US11513817B2 (en) | 2020-03-04 | 2022-11-29 | Kyndryl, Inc. | Preventing disruption within information technology environments |
CN111464652A (zh) * | 2020-04-07 | 2020-07-28 | 中国建设银行股份有限公司 | 一种银行保管箱业务提供方法及装置 |
DE102020111020A1 (de) * | 2020-04-22 | 2021-10-28 | Endress+Hauser Conducta Gmbh+Co. Kg | Verfahren zur Überprüfung der authentischen Herkunft von elektronischen Modulen eines modular aufgebauten Feldgeräts der Automatisierungstechnik |
US11546315B2 (en) * | 2020-05-28 | 2023-01-03 | Hewlett Packard Enterprise Development Lp | Authentication key-based DLL service |
CN111722946A (zh) * | 2020-06-28 | 2020-09-29 | 深圳壹账通智能科技有限公司 | 分布式事务处理方法、装置、计算机设备及可读存储介质 |
WO2022009122A1 (en) * | 2020-07-07 | 2022-01-13 | Calgary Scientific Inc | Highly scalable, peer-based, real-time agent architecture |
CN113923250B (zh) * | 2020-07-07 | 2023-04-07 | 华为技术有限公司 | 一种辅助网络服务编排的方法、装置及系统 |
US11290481B2 (en) | 2020-07-09 | 2022-03-29 | Bank Of America Corporation | Security threat detection by converting scripts using validation graphs |
US11368310B2 (en) | 2020-07-11 | 2022-06-21 | Bank Of America Corporation | Data transfer between computing nodes of a distributed computing system |
CN111914435B (zh) * | 2020-08-18 | 2022-08-16 | 哈尔滨工业大学 | 面向时空界的多方协作式服务价值-质量-能力建模方法 |
US11567945B1 (en) | 2020-08-27 | 2023-01-31 | Pegasystems Inc. | Customized digital content generation systems and methods |
CN111815420B (zh) * | 2020-08-28 | 2021-07-06 | 支付宝(杭州)信息技术有限公司 | 一种基于可信资产数据的匹配方法、装置及设备 |
US11734356B2 (en) * | 2020-09-11 | 2023-08-22 | Jpmorgan Chase Bank, N.A. | System and method for implementing an open policy agent bridge |
CN116249981A (zh) * | 2020-09-30 | 2023-06-09 | 字节跳动有限公司 | 视频编解码中的图像分割 |
US11640565B1 (en) | 2020-11-11 | 2023-05-02 | Wells Fargo Bank, N.A. | Systems and methods for relationship mapping |
US11392573B1 (en) | 2020-11-11 | 2022-07-19 | Wells Fargo Bank, N.A. | Systems and methods for generating and maintaining data objects |
US11646866B2 (en) | 2020-11-17 | 2023-05-09 | International Business Machines Corporation | Blockchain based service reservation and delegation |
CN112579087A (zh) * | 2020-12-25 | 2021-03-30 | 四川长虹电器股份有限公司 | 基于Lua脚本的炒菜机人机界面的开发方法 |
US11456931B1 (en) * | 2021-04-06 | 2022-09-27 | Amdocs Development Limited | System, method and computer program for orchestrating loosely coupled services |
CN113805870B (zh) * | 2021-09-18 | 2024-01-30 | 上海熙菱信息技术有限公司 | 一种基于bff架构的服务接口编排方法和系统 |
US20230117615A1 (en) * | 2021-10-19 | 2023-04-20 | At&T Intellectual Property I, L.P. | Api driven subscriber ims registration status changes and ims routing steering |
US11907229B2 (en) * | 2022-03-31 | 2024-02-20 | Gm Cruise Holdings Llc | System and method for platform-independent access bindings |
US20230359513A1 (en) * | 2022-05-04 | 2023-11-09 | Marsh (USA) Inc. | Orchestration system and method to provide client independent api integration model |
CN114849649B (zh) * | 2022-05-05 | 2023-06-02 | 浙江师范大学 | 具有zsd拓扑结构的离子杂化多孔材料及其制备方法和应用 |
CN114760290B (zh) * | 2022-05-07 | 2024-04-12 | 北京字跳网络技术有限公司 | 一种应用开发方法、装置、电子设备及存储介质 |
WO2023224680A1 (en) * | 2022-05-18 | 2023-11-23 | Margo Networks Pvt. Ltd. | Peer to peer (p2p) encrypted data transfer/offload system and method |
CN115277745A (zh) * | 2022-06-24 | 2022-11-01 | 湖南大学 | 一种支持异步调度的服务总线编排系统及方法 |
TWI818798B (zh) * | 2022-11-08 | 2023-10-11 | 英業達股份有限公司 | 權限管理方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5892900A (en) * | 1996-08-30 | 1999-04-06 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
CN1274461A (zh) * | 1998-07-22 | 2000-11-22 | 松下电器产业株式会社 | 保护版权的数字数据记录装置和方法,其使记录在记录媒介上的加密的数字数据易于再现,以及记录了该方法的程序的计算机可读的记录媒介 |
CN1371056A (zh) * | 2001-02-09 | 2002-09-25 | 索尼公司 | 信息处理方法/装置和程序 |
Family Cites Families (270)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US599949A (en) * | 1898-03-01 | Edward a | ||
US476357A (en) | 1892-06-07 | Photograph-holder | ||
US4327508A (en) * | 1980-12-08 | 1982-05-04 | J. I. Case Company | Trencher digging chain sprocket drive |
US4827508A (en) | 1986-10-14 | 1989-05-02 | Personal Library Software, Inc. | Database usage metering and protection system and method |
US4977594A (en) | 1986-10-14 | 1990-12-11 | Electronic Publishing Resources, Inc. | Database usage metering and protection system and method |
US5050213A (en) | 1986-10-14 | 1991-09-17 | Electronic Publishing Resources, Inc. | Database usage metering and protection system and method |
US5940504A (en) | 1991-07-01 | 1999-08-17 | Infologic Software, Inc. | Licensing management system and method in which datagrams including an address of a licensee and indicative of use of a licensed product are sent from the licensee's site |
US6850252B1 (en) | 1999-10-05 | 2005-02-01 | Steven M. Hoffberg | Intelligent electronic appliance system and method |
US5414845A (en) * | 1992-06-26 | 1995-05-09 | International Business Machines Corporation | Network-based computer system with improved network scheduling system |
JPH07230380A (ja) | 1994-02-15 | 1995-08-29 | Internatl Business Mach Corp <Ibm> | 適用業務プログラムの利用管理方法およびシステム |
JP2853727B2 (ja) | 1994-02-22 | 1999-02-03 | 日本ビクター株式会社 | 再生プロテクト方法及びプロテクト再生装置 |
JPH07319691A (ja) | 1994-03-29 | 1995-12-08 | Toshiba Corp | 資源保護装置、特権保護装置、ソフトウェア利用法制御装置、及びソフトウェア利用法制御システム |
US5473692A (en) * | 1994-09-07 | 1995-12-05 | Intel Corporation | Roving software license for a hardware agent |
FR2721722B1 (fr) * | 1994-06-22 | 1996-09-13 | France Telecom | Procédé de réalisation d'une matrice de composants à puits quantiques de structure verticale "tout optique". |
US5715403A (en) | 1994-11-23 | 1998-02-03 | Xerox Corporation | System for controlling the distribution and use of digital works having attached usage rights where the usage rights are defined by a usage rights grammar |
JPH08263438A (ja) | 1994-11-23 | 1996-10-11 | Xerox Corp | ディジタルワークの配給及び使用制御システム並びにディジタルワークへのアクセス制御方法 |
US5629980A (en) | 1994-11-23 | 1997-05-13 | Xerox Corporation | System for controlling the distribution and use of digital works |
US5634012A (en) | 1994-11-23 | 1997-05-27 | Xerox Corporation | System for controlling the distribution and use of digital works having a fee reporting mechanism |
US5638443A (en) | 1994-11-23 | 1997-06-10 | Xerox Corporation | System for controlling the distribution and use of composite digital works |
DE69638018D1 (de) | 1995-02-13 | 2009-10-15 | Intertrust Tech Corp | Systeme und Verfahren zur Verwaltung von gesicherten Transaktionen und zum Schutz von elektronischen Rechten |
US6658568B1 (en) | 1995-02-13 | 2003-12-02 | Intertrust Technologies Corporation | Trusted infrastructure support system, methods and techniques for secure electronic commerce transaction and rights management |
US7165174B1 (en) | 1995-02-13 | 2007-01-16 | Intertrust Technologies Corp. | Trusted infrastructure support systems, methods and techniques for secure electronic commerce transaction and rights management |
US5943422A (en) | 1996-08-12 | 1999-08-24 | Intertrust Technologies Corp. | Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels |
US6948070B1 (en) | 1995-02-13 | 2005-09-20 | Intertrust Technologies Corporation | Systems and methods for secure transaction management and electronic rights protection |
US7069451B1 (en) | 1995-02-13 | 2006-06-27 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
US6157721A (en) | 1996-08-12 | 2000-12-05 | Intertrust Technologies Corp. | Systems and methods using cryptography to protect secure computing environments |
US7124302B2 (en) | 1995-02-13 | 2006-10-17 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
US5530235A (en) | 1995-02-16 | 1996-06-25 | Xerox Corporation | Interactive contents revealing storage device |
IL113572A (en) * | 1995-05-01 | 1999-03-12 | Metalink Ltd | Symbol decoder |
US5534975A (en) | 1995-05-26 | 1996-07-09 | Xerox Corporation | Document processing system utilizing document service cards to provide document processing services |
US5757915A (en) * | 1995-08-25 | 1998-05-26 | Intel Corporation | Parameterized hash functions for access control |
US5638446A (en) * | 1995-08-28 | 1997-06-10 | Bell Communications Research, Inc. | Method for the secure distribution of electronic files in a distributed environment |
US5774652A (en) * | 1995-09-29 | 1998-06-30 | Smith; Perry | Restricted access computer system |
US6807534B1 (en) | 1995-10-13 | 2004-10-19 | Trustees Of Dartmouth College | System and method for managing copyrighted electronic media |
US5765152A (en) | 1995-10-13 | 1998-06-09 | Trustees Of Dartmouth College | System and method for managing copyrighted electronic media |
US5825883A (en) | 1995-10-31 | 1998-10-20 | Interval Systems, Inc. | Method and apparatus that accounts for usage of digital applications |
AUPN955096A0 (en) * | 1996-04-29 | 1996-05-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Telecommunications information dissemination system |
DE69737593T2 (de) | 1996-05-15 | 2007-12-20 | Intertrust Technologies Corp., Sunnyvale | Verfahren und Vorrichtung zum Zugriff auf DVD-Inhalte |
CA2264819C (en) | 1996-09-04 | 2010-03-23 | Intertrust Technologies Corp. | Trusted infrastructure support systems, methods and techniques for secure electronic commerce, electronic transactions, commerce process control and automation, distributed computing, and rights management |
US6052780A (en) | 1996-09-12 | 2000-04-18 | Open Security Solutions, Llc | Computer system and process for accessing an encrypted and self-decrypting digital information product while restricting access to decrypted digital information |
US6006332A (en) | 1996-10-21 | 1999-12-21 | Case Western Reserve University | Rights management system for digital media |
JPH10133955A (ja) | 1996-10-29 | 1998-05-22 | Matsushita Electric Ind Co Ltd | 可搬型メディア駆動装置とその方法、及び可搬型メディアとネットワークの連携装置とその方法 |
US6023765A (en) | 1996-12-06 | 2000-02-08 | The United States Of America As Represented By The Secretary Of Commerce | Implementation of role-based access control in multi-level secure systems |
US5920861A (en) | 1997-02-25 | 1999-07-06 | Intertrust Technologies Corp. | Techniques for defining using and manipulating rights management data structures |
US5937041A (en) * | 1997-03-10 | 1999-08-10 | Northern Telecom, Limited | System and method for retrieving internet data files using a screen-display telephone terminal |
US5999949A (en) | 1997-03-14 | 1999-12-07 | Crandall; Gary E. | Text file compression system utilizing word terminators |
US6735253B1 (en) | 1997-05-16 | 2004-05-11 | The Trustees Of Columbia University In The City Of New York | Methods and architecture for indexing and editing compressed video over the world wide web |
EP0988591A1 (en) | 1997-06-09 | 2000-03-29 | Intertrust, Incorporated | Obfuscation techniques for enhancing software security |
US6188995B1 (en) | 1997-07-28 | 2001-02-13 | Apple Computer, Inc. | Method and apparatus for enforcing software licenses |
US6044469A (en) * | 1997-08-29 | 2000-03-28 | Preview Software | Software publisher or distributor configurable software security mechanism |
US5941951A (en) | 1997-10-31 | 1999-08-24 | International Business Machines Corporation | Methods for real-time deterministic delivery of multimedia data in a client/server system |
US7092914B1 (en) | 1997-11-06 | 2006-08-15 | Intertrust Technologies Corporation | Methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information |
US6112181A (en) | 1997-11-06 | 2000-08-29 | Intertrust Technologies Corporation | Systems and methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information |
JP3733715B2 (ja) | 1997-11-12 | 2006-01-11 | 富士ゼロックス株式会社 | 文書開示装置、文書開示プログラムを格納した媒体および文書開示方法 |
US6065120A (en) * | 1997-12-09 | 2000-05-16 | Phone.Com, Inc. | Method and system for self-provisioning a rendezvous to ensure secure access to information in a database from multiple devices |
US6769019B2 (en) | 1997-12-10 | 2004-07-27 | Xavier Ferguson | Method of background downloading of information from a computer network |
US5991399A (en) | 1997-12-18 | 1999-11-23 | Intel Corporation | Method for securely distributing a conditional use private key to a trusted entity on a remote system |
US6233577B1 (en) * | 1998-02-17 | 2001-05-15 | Phone.Com, Inc. | Centralized certificate management system for two-way interactive communication devices in data networks |
US7809138B2 (en) | 1999-03-16 | 2010-10-05 | Intertrust Technologies Corporation | Methods and apparatus for persistent control and protection of content |
EP1521467A3 (en) | 1998-03-16 | 2005-04-13 | Intertrust Technologies Corp. | Methods and apparatus for continuous control and protection of media content |
JP3809008B2 (ja) * | 1998-03-27 | 2006-08-16 | 株式会社アドバンテスト | カストマトレイストッカ |
US7606355B2 (en) * | 1998-04-22 | 2009-10-20 | Echarge Corporation | Method and apparatus for ordering goods, services and content over an internetwork |
US6223608B1 (en) * | 1998-06-02 | 2001-05-01 | Mitsubishi Denki Kabushiki Kaisha | Torque detector |
US20040107368A1 (en) | 1998-06-04 | 2004-06-03 | Z4 Technologies, Inc. | Method for digital rights management including self activating/self authentication software |
US6226618B1 (en) | 1998-08-13 | 2001-05-01 | International Business Machines Corporation | Electronic content delivery system |
US6119108A (en) | 1998-10-01 | 2000-09-12 | Aires Systems Corporation | Secure electronic publishing system |
US6985953B1 (en) | 1998-11-30 | 2006-01-10 | George Mason University | System and apparatus for storage and transfer of secure data on web |
US7058414B1 (en) | 2000-05-26 | 2006-06-06 | Freescale Semiconductor, Inc. | Method and system for enabling device functions based on distance information |
WO2000054453A1 (en) * | 1999-03-10 | 2000-09-14 | Digimarc Corporation | Signal processing methods, devices, and applications for digital rights management |
US6223291B1 (en) * | 1999-03-26 | 2001-04-24 | Motorola, Inc. | Secure wireless electronic-commerce system with digital product certificates and digital license certificates |
US7073063B2 (en) * | 1999-03-27 | 2006-07-04 | Microsoft Corporation | Binding a digital license to a portable device or the like in a digital rights management (DRM) system and checking out/checking in the digital license to/from the portable device or the like |
US20020198791A1 (en) * | 1999-04-21 | 2002-12-26 | Perkowski Thomas J. | Internet-based consumer product brand marketing communication system which enables manufacturers, retailers and their respective agents, and consumers to carry out product-related functions along the demand side of the retail chain in an integrated manner |
US6883100B1 (en) | 1999-05-10 | 2005-04-19 | Sun Microsystems, Inc. | Method and system for dynamic issuance of group certificates |
US6785815B1 (en) | 1999-06-08 | 2004-08-31 | Intertrust Technologies Corp. | Methods and systems for encoding and protecting data using digital signature and watermarking techniques |
AU6104800A (en) | 1999-07-16 | 2001-02-05 | Intertrust Technologies Corp. | Trusted storage systems and methods |
WO2001010076A2 (en) | 1999-07-29 | 2001-02-08 | Intertrust Technologies Corp. | Systems and methods for protecting secure and insecure computing environments using cryptography |
EP1531383A3 (en) | 1999-07-30 | 2005-07-27 | Intertrust Technologies Corp. | Methods and systems for transaction record delivery using thresholds and multi-stage protocol |
US20080133417A1 (en) | 1999-10-18 | 2008-06-05 | Emergent Music Llc | System to determine quality through reselling of items |
US6842863B1 (en) | 1999-11-23 | 2005-01-11 | Microsoft Corporation | Certificate reissuance for checking the status of a certificate in financial transactions |
US6331227B1 (en) * | 1999-12-14 | 2001-12-18 | Epion Corporation | Enhanced etching/smoothing of dielectric surfaces |
US6996720B1 (en) * | 1999-12-17 | 2006-02-07 | Microsoft Corporation | System and method for accessing protected content in a rights-management architecture |
US6832316B1 (en) | 1999-12-22 | 2004-12-14 | Intertrust Technologies, Corp. | Systems and methods for protecting data secrecy and integrity |
US6772340B1 (en) | 2000-01-14 | 2004-08-03 | Microsoft Corporation | Digital rights management system operating on computing device and having black box tied to computing device |
US7426750B2 (en) * | 2000-02-18 | 2008-09-16 | Verimatrix, Inc. | Network-based content distribution system |
US20010033554A1 (en) | 2000-02-18 | 2001-10-25 | Arun Ayyagari | Proxy-bridge connecting remote users to a limited connectivity network |
IL135555A0 (en) | 2000-04-09 | 2001-05-20 | Vidius Inc | Preventing unauthorized access to data sent via computer networks |
JP3711866B2 (ja) | 2000-04-10 | 2005-11-02 | 日本電気株式会社 | プラグアンドプレイ機能を有するフレームワークおよびその再構成方法 |
AU2001255497A1 (en) | 2000-04-18 | 2001-10-30 | Portalplayer, Inc. | Downloaded media protocol integration system and method |
WO2001086462A1 (en) | 2000-05-08 | 2001-11-15 | Leap Wireless International, Inc. | Method of converting html/xml to hdml/wml in real-time for display on mobile devices |
US7313692B2 (en) | 2000-05-19 | 2007-12-25 | Intertrust Technologies Corp. | Trust management systems and methods |
US7496637B2 (en) | 2000-05-31 | 2009-02-24 | Oracle International Corp. | Web service syndication system |
US6961858B2 (en) | 2000-06-16 | 2005-11-01 | Entriq, Inc. | Method and system to secure content for distribution via a network |
JP2004531780A (ja) * | 2000-06-22 | 2004-10-14 | マイクロソフト コーポレーション | 分散型コンピューティングサービスプラットフォーム |
WO2002003604A2 (en) * | 2000-06-29 | 2002-01-10 | Cachestream Corporation | Digital rights management |
AU7182701A (en) | 2000-07-06 | 2002-01-21 | David Paul Felsher | Information record infrastructure, system and method |
US6976164B1 (en) | 2000-07-19 | 2005-12-13 | International Business Machines Corporation | Technique for handling subsequent user identification and password requests with identity change within a certificate-based host session |
EP1189432A3 (en) | 2000-08-14 | 2004-10-20 | Matsushita Electric Industrial Co., Ltd. | A hierarchical encryption scheme for secure distribution of predetermined content |
US7010808B1 (en) | 2000-08-25 | 2006-03-07 | Microsoft Corporation | Binding digital content to a portable storage device or the like in a digital rights management (DRM) system |
US7743259B2 (en) | 2000-08-28 | 2010-06-22 | Contentguard Holdings, Inc. | System and method for digital rights management using a standard rendering engine |
JP4269501B2 (ja) | 2000-09-07 | 2009-05-27 | ソニー株式会社 | 情報記録装置、情報再生装置、情報記録方法、情報再生方法、および情報記録媒体、並びにプログラム提供媒体 |
GB2366969A (en) | 2000-09-14 | 2002-03-20 | Phocis Ltd | Copyright protection for digital content distributed over a network |
US7171558B1 (en) | 2000-09-22 | 2007-01-30 | International Business Machines Corporation | Transparent digital rights management for extendible content viewers |
GB0024918D0 (en) | 2000-10-11 | 2000-11-22 | Sealedmedia Ltd | Method of providing java tamperproofing |
GB0024919D0 (en) | 2000-10-11 | 2000-11-22 | Sealedmedia Ltd | Method of further securing an operating system |
SE519748C2 (sv) | 2000-10-23 | 2003-04-08 | Volvo Technology Corp | Förfarande för kontroll av behörighet för tillträde till ett objekt samt datorprogramprodukten för utförande av förfaranden |
ATE552562T1 (de) | 2000-11-10 | 2012-04-15 | Aol Musicnow Llc | Verteilungs und -abonnementsystem für digitalen inhalt |
US20030177187A1 (en) | 2000-11-27 | 2003-09-18 | Butterfly.Net. Inc. | Computing grid for massively multi-player online games and other multi-user immersive persistent-state and session-based applications |
US7356690B2 (en) | 2000-12-11 | 2008-04-08 | International Business Machines Corporation | Method and system for managing a distributed trust path locator for public key certificates relating to the trust path of an X.509 attribute certificate |
JP2002207637A (ja) | 2001-01-11 | 2002-07-26 | Hitachi Ltd | 情報開示方法、情報開示装置および情報サービス方法 |
US7774279B2 (en) * | 2001-05-31 | 2010-08-10 | Contentguard Holdings, Inc. | Rights offering and granting |
US20030220880A1 (en) * | 2002-01-17 | 2003-11-27 | Contentguard Holdings, Inc. | Networked services licensing system and method |
US7395430B2 (en) | 2001-08-28 | 2008-07-01 | International Business Machines Corporation | Secure authentication using digital certificates |
GB2372343A (en) | 2001-02-17 | 2002-08-21 | Hewlett Packard Co | Determination of a trust value of a digital certificate |
US7308717B2 (en) | 2001-02-23 | 2007-12-11 | International Business Machines Corporation | System and method for supporting digital rights management in an enhanced Java™ 2 runtime environment |
GB2373136A (en) * | 2001-03-07 | 2002-09-11 | Int Computers Ltd | Distributed computing using wireless mobile devices |
WO2002076003A2 (en) * | 2001-03-19 | 2002-09-26 | Imesh Ltd. | System and method for peer-to-peer file exchange mechanism from multiple sources |
US7065507B2 (en) | 2001-03-26 | 2006-06-20 | Microsoft Corporation | Supervised license acquisition in a digital rights management system on a computing device |
AU2002254478A1 (en) * | 2001-03-27 | 2002-10-08 | Microsoft Corporation | Distributed, scalable cryptographic acces control |
KR100911282B1 (ko) * | 2001-03-29 | 2009-08-11 | 소니 가부시끼 가이샤 | 정보 처리 장치 |
US20020144108A1 (en) | 2001-03-29 | 2002-10-03 | International Business Machines Corporation | Method and system for public-key-based secure authentication to distributed legacy applications |
US20020144283A1 (en) * | 2001-03-30 | 2002-10-03 | Intertainer, Inc. | Content distribution system |
US7580988B2 (en) | 2001-04-05 | 2009-08-25 | Intertrust Technologies Corporation | System and methods for managing the distribution of electronic content |
EP2211528B1 (en) * | 2001-04-12 | 2013-07-10 | Research In Motion Limited | A method and a system for pushing an encrypted service book to a mobile user |
US20020157002A1 (en) | 2001-04-18 | 2002-10-24 | Messerges Thomas S. | System and method for secure and convenient management of digital electronic content |
US7136840B2 (en) | 2001-04-20 | 2006-11-14 | Intertrust Technologies Corp. | Systems and methods for conducting transactions and communications using a trusted third party |
US7043050B2 (en) * | 2001-05-02 | 2006-05-09 | Microsoft Corporation | Software anti-piracy systems and methods utilizing certificates with digital content |
US6934702B2 (en) * | 2001-05-04 | 2005-08-23 | Sun Microsystems, Inc. | Method and system of routing messages in a distributed search network |
US7249100B2 (en) * | 2001-05-15 | 2007-07-24 | Nokia Corporation | Service discovery access to user location |
US7152046B2 (en) | 2001-05-31 | 2006-12-19 | Contentguard Holdings, Inc. | Method and apparatus for tracking status of resource in a system for managing use of the resources |
WO2002101494A2 (en) | 2001-06-07 | 2002-12-19 | Contentguard Holdings, Inc. | Protected content distribution system |
US7581103B2 (en) | 2001-06-13 | 2009-08-25 | Intertrust Technologies Corporation | Software self-checking systems and methods |
US6916100B2 (en) * | 2001-06-27 | 2005-07-12 | Donnelly Corporation | Vehicle exterior rearview mirror assembly |
US7203966B2 (en) * | 2001-06-27 | 2007-04-10 | Microsoft Corporation | Enforcement architecture and method for digital rights management system for roaming a license to a plurality of user devices |
US7421411B2 (en) | 2001-07-06 | 2008-09-02 | Nokia Corporation | Digital rights management in a mobile communications environment |
US20030009681A1 (en) | 2001-07-09 | 2003-01-09 | Shunji Harada | Digital work protection system, recording medium apparatus, transmission apparatus, and playback apparatus |
WO2003009112A1 (en) * | 2001-07-17 | 2003-01-30 | Matsushita Electric Industrial Co., Ltd. | Content usage device and network system, and license information acquisition method |
EP1428098B1 (en) * | 2001-08-01 | 2006-12-20 | Matsushita Electric Industrial Co., Ltd. | Device and method for managing content usage right |
JP2003044436A (ja) * | 2001-08-02 | 2003-02-14 | Sony Corp | 認証処理方法、および情報処理装置、並びにコンピュータ・プログラム |
JP4280036B2 (ja) * | 2001-08-03 | 2009-06-17 | パナソニック株式会社 | アクセス権制御システム |
US20030037139A1 (en) * | 2001-08-20 | 2003-02-20 | Koninklijke Philips Electronics N.V. | Content distribution model |
US7085969B2 (en) * | 2001-08-27 | 2006-08-01 | Industrial Technology Research Institute | Encoding and decoding apparatus and method |
US7035944B2 (en) * | 2001-09-19 | 2006-04-25 | International Business Machines Corporation | Programmatic management of software resources in a content framework environment |
JP2003099693A (ja) * | 2001-09-20 | 2003-04-04 | Fujitsu Ltd | 電子決済方法 |
CA2404602C (en) * | 2001-09-21 | 2009-07-14 | Corel Corporation | Web services gateway |
US20030065956A1 (en) * | 2001-09-28 | 2003-04-03 | Abhijit Belapurkar | Challenge-response data communication protocol |
US7359517B1 (en) | 2001-10-09 | 2008-04-15 | Adobe Systems Incorporated | Nestable skeleton decryption keys for digital rights management |
US7487363B2 (en) | 2001-10-18 | 2009-02-03 | Nokia Corporation | System and method for controlled copying and moving of content between devices and domains based on conditional encryption of content key depending on usage |
WO2003034313A2 (en) * | 2001-10-18 | 2003-04-24 | Macrovision Corporation | Systems and methods for providing digital rights management compatibility |
US20030079133A1 (en) | 2001-10-18 | 2003-04-24 | International Business Machines Corporation | Method and system for digital rights management in content distribution application |
KR20040060950A (ko) | 2001-10-29 | 2004-07-06 | 마츠시타 덴끼 산교 가부시키가이샤 | 베이스라인 dvb-cpcm 장치 |
US20030084172A1 (en) * | 2001-10-29 | 2003-05-01 | Sun Microsystem, Inc., A Delaware Corporation | Identification and privacy in the World Wide Web |
US7254614B2 (en) * | 2001-11-20 | 2007-08-07 | Nokia Corporation | Web services push gateway |
WO2003044716A2 (en) | 2001-11-20 | 2003-05-30 | Contentguard Holdings, Inc. | An extensible rights expression processing system |
JP4664572B2 (ja) | 2001-11-27 | 2011-04-06 | 富士通株式会社 | 文書配布方法および文書管理方法 |
US20030126086A1 (en) * | 2001-12-31 | 2003-07-03 | General Instrument Corporation | Methods and apparatus for digital rights management |
US7088823B2 (en) | 2002-01-09 | 2006-08-08 | International Business Machines Corporation | System and method for secure distribution and evaluation of compressed digital information |
EP1470497A1 (en) * | 2002-01-12 | 2004-10-27 | Coretrust, Inc. | Method and system for the information protection of digital content |
US7496757B2 (en) | 2002-01-14 | 2009-02-24 | International Business Machines Corporation | Software verification system, method and computer program element |
US7603469B2 (en) | 2002-01-15 | 2009-10-13 | International Business Machines Corporation | Provisioning aggregated services in a distributed computing environment |
US20030140119A1 (en) | 2002-01-18 | 2003-07-24 | International Business Machines Corporation | Dynamic service discovery |
US20030145044A1 (en) | 2002-01-28 | 2003-07-31 | Nokia Corporation | Virtual terminal for mobile network interface between mobile terminal and software applications node |
US20030144859A1 (en) * | 2002-01-31 | 2003-07-31 | Meichun Hsu | E-service publication and discovery method and system |
US20030172127A1 (en) * | 2002-02-06 | 2003-09-11 | Northrup Charles J. | Execution of process by references to directory service |
US6996544B2 (en) * | 2002-02-27 | 2006-02-07 | Imagineer Software, Inc. | Multiple party content distribution system and method with rights management features |
KR100467929B1 (ko) | 2002-02-28 | 2005-01-24 | 주식회사 마크애니 | 디지털 컨텐츠의 보호 및 관리를 위한 시스템 |
US7159224B2 (en) | 2002-04-09 | 2007-01-02 | Sun Microsystems, Inc. | Method, system, and articles of manufacture for providing a servlet container based web service endpoint |
US7472270B2 (en) | 2002-04-16 | 2008-12-30 | Microsoft Corporation | Secure transmission of digital content between a host and a peripheral by way of a digital rights management (DRM) system |
US8656178B2 (en) | 2002-04-18 | 2014-02-18 | International Business Machines Corporation | Method, system and program product for modifying content usage conditions during content distribution |
US7369851B2 (en) | 2002-04-19 | 2008-05-06 | Hewlett-Packard Development Company, L.P. | Communications network capable of determining SIM card changes in electronic devices |
US7149899B2 (en) | 2002-04-25 | 2006-12-12 | Intertrust Technologies Corp. | Establishing a secure channel with a human user |
US7383570B2 (en) | 2002-04-25 | 2008-06-03 | Intertrust Technologies, Corp. | Secure authentication systems and methods |
US7076249B2 (en) * | 2002-05-06 | 2006-07-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for generating management data for drifting mobile radios |
US8611919B2 (en) * | 2002-05-23 | 2013-12-17 | Wounder Gmbh., Llc | System, method, and computer program product for providing location based services and mobile e-commerce |
US7529929B2 (en) | 2002-05-30 | 2009-05-05 | Nokia Corporation | System and method for dynamically enforcing digital rights management rules |
US7296154B2 (en) | 2002-06-24 | 2007-11-13 | Microsoft Corporation | Secure media path methods, systems, and architectures |
AU2003267975A1 (en) * | 2002-06-27 | 2004-01-19 | Piranha Media Distribution, Inc. | Method and apparatus for the free licensing of digital media content |
US7631318B2 (en) * | 2002-06-28 | 2009-12-08 | Microsoft Corporation | Secure server plug-in architecture for digital rights management systems |
US7353402B2 (en) * | 2002-06-28 | 2008-04-01 | Microsoft Corporation | Obtaining a signed rights label (SRL) for digital content and obtaining a digital license corresponding to the content based on the SRL in a digital rights management system |
AU2002950202A0 (en) | 2002-07-11 | 2002-09-12 | University Of Wollongong | Methods for standard mechanisms for digital item manipulation and handling |
AU2003265866A1 (en) * | 2002-09-03 | 2004-03-29 | Vit Lauermann | Targeted release |
US7401221B2 (en) | 2002-09-04 | 2008-07-15 | Microsoft Corporation | Advanced stream format (ASF) data stream header object protection |
US20040216127A1 (en) * | 2002-09-10 | 2004-10-28 | Chutney Technologies | Method and apparatus for accelerating web services |
US20060020784A1 (en) | 2002-09-23 | 2006-01-26 | Willem Jonker | Certificate based authorized domains |
CN1685687B (zh) | 2002-09-30 | 2013-10-30 | 皇家飞利浦电子股份有限公司 | 确定目标节点对于源节点的邻近性的方法 |
US20060021065A1 (en) | 2002-10-22 | 2006-01-26 | Kamperman Franciscus Lucas A J | Method and device for authorizing content operations |
US8356067B2 (en) | 2002-10-24 | 2013-01-15 | Intel Corporation | Servicing device aggregates |
US20040088541A1 (en) * | 2002-11-01 | 2004-05-06 | Thomas Messerges | Digital-rights management system |
US20040143546A1 (en) * | 2002-11-01 | 2004-07-22 | Wood Jeff A. | Easy user activation of electronic commerce services |
US20040088175A1 (en) | 2002-11-01 | 2004-05-06 | Thomas Messerges | Digital-rights management |
US7757075B2 (en) | 2002-11-15 | 2010-07-13 | Microsoft Corporation | State reference |
US7899187B2 (en) | 2002-11-27 | 2011-03-01 | Motorola Mobility, Inc. | Domain-based digital-rights management system with easy and secure device enrollment |
US20040117490A1 (en) * | 2002-12-13 | 2004-06-17 | General Instrument Corporation | Method and system for providing chaining of rules in a digital rights management system |
US7493289B2 (en) * | 2002-12-13 | 2009-02-17 | Aol Llc | Digital content store system |
JP2006510102A (ja) | 2002-12-17 | 2006-03-23 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | コンテンツの分配を許容するシステム |
US8364951B2 (en) * | 2002-12-30 | 2013-01-29 | General Instrument Corporation | System for digital rights management using distributed provisioning and authentication |
AU2003283729A1 (en) | 2002-12-30 | 2004-07-22 | Koninklijke Philips Electronics N.V. | Divided rights in authorized domain |
US8468227B2 (en) | 2002-12-31 | 2013-06-18 | Motorola Solutions, Inc. | System and method for rendering content on multiple devices |
US20040128546A1 (en) * | 2002-12-31 | 2004-07-01 | International Business Machines Corporation | Method and system for attribute exchange in a heterogeneous federated environment |
TWI349204B (en) | 2003-01-10 | 2011-09-21 | Panasonic Corp | Group admission system and server and client therefor |
US20040139312A1 (en) | 2003-01-14 | 2004-07-15 | General Instrument Corporation | Categorization of host security levels based on functionality implemented inside secure hardware |
US7383586B2 (en) * | 2003-01-17 | 2008-06-03 | Microsoft Corporation | File system operation and digital rights management (DRM) |
US20050004873A1 (en) | 2003-02-03 | 2005-01-06 | Robin Pou | Distribution and rights management of digital content |
US20040158731A1 (en) * | 2003-02-11 | 2004-08-12 | Microsoft Corporation | Publishing digital content within a defined universe such as an organization in accordance with a digital rights management (DRM) system |
US7577999B2 (en) * | 2003-02-11 | 2009-08-18 | Microsoft Corporation | Publishing digital content within a defined universe such as an organization in accordance with a digital rights management (DRM) system |
US20040230965A1 (en) | 2003-02-28 | 2004-11-18 | Harri Okkonen | Mobile handset network that facilitates interaction between a generic intelligent responsive agent and a service broker server |
US7577964B2 (en) | 2003-02-28 | 2009-08-18 | Hewlett-Packard Development Company, L.P. | System and methods for defining a binding for web-services |
DE10311898B4 (de) | 2003-03-18 | 2005-04-21 | Webasto Ag | Heizgerät f∢r ein Fahrzeug |
JP2004287994A (ja) | 2003-03-24 | 2004-10-14 | Fuji Xerox Co Ltd | 電子図書館サーバ及び電子図書館サービスシステム |
US20040207659A1 (en) * | 2003-04-02 | 2004-10-21 | International Business Machines Corporation | Program creation by combining web services using graphic user interface controls |
US20040205333A1 (en) | 2003-04-14 | 2004-10-14 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system for digital rights management |
JP4759513B2 (ja) | 2003-06-02 | 2011-08-31 | リキッド・マシンズ・インコーポレーテッド | 動的、分散的および協働的な環境におけるデータオブジェクトの管理 |
EP2270622B1 (en) | 2003-06-05 | 2016-08-24 | Intertrust Technologies Corporation | Interoperable systems and methods for peer-to-peer service orchestration |
US7272228B2 (en) | 2003-06-12 | 2007-09-18 | International Business Machines Corporation | System and method for securing code and ensuring proper execution using state-based encryption |
JP2005012282A (ja) | 2003-06-16 | 2005-01-13 | Toshiba Corp | 電子商品流通システム、電子商品受信端末、及び電子商品流通方法 |
US7089594B2 (en) | 2003-07-21 | 2006-08-08 | July Systems, Inc. | Application rights management in a mobile environment |
US8200775B2 (en) | 2005-02-01 | 2012-06-12 | Newsilike Media Group, Inc | Enhanced syndication |
WO2005025116A2 (en) * | 2003-09-05 | 2005-03-17 | Limelight Networks, Inc. | Management of digital content licenses |
US7389273B2 (en) * | 2003-09-25 | 2008-06-17 | Scott Andrew Irwin | System and method for federated rights management |
US7480382B2 (en) | 2003-09-30 | 2009-01-20 | Microsoft Corporation | Image file container |
US20050078822A1 (en) * | 2003-10-08 | 2005-04-14 | Eyal Shavit | Secure access and copy protection management system |
US7594275B2 (en) | 2003-10-14 | 2009-09-22 | Microsoft Corporation | Digital rights management system |
US20050102513A1 (en) | 2003-11-10 | 2005-05-12 | Nokia Corporation | Enforcing authorized domains with domain membership vouchers |
US20050108707A1 (en) | 2003-11-14 | 2005-05-19 | Taylor Thomas M. | Systems and methods for creating and managing a virtual retail store on end-user client computers within a network |
EP1688843A1 (en) | 2003-11-25 | 2006-08-09 | Matsushita Electric Industrial Co., Ltd. | Authentication system |
US7516331B2 (en) | 2003-11-26 | 2009-04-07 | International Business Machines Corporation | Tamper-resistant trusted java virtual machine and method of using the same |
US20050234735A1 (en) | 2003-11-26 | 2005-10-20 | Williams Jim C | Digital rights management using proximity testing |
US20050192902A1 (en) | 2003-12-05 | 2005-09-01 | Motion Picture Association Of America | Digital rights management using multiple independent parameters |
US20050177516A1 (en) * | 2004-02-06 | 2005-08-11 | Eric Vandewater | System and method of protecting digital content |
JP2007527668A (ja) | 2004-02-23 | 2007-09-27 | ヒルクレスト・ラボラトリーズ・インコーポレイテッド | 安全なメディアコンピューティング環境のための方法及びシステム |
JP4350549B2 (ja) | 2004-02-25 | 2009-10-21 | 富士通株式会社 | デジタル著作権管理のための情報処理装置 |
CA2460467A1 (en) | 2004-03-10 | 2005-09-10 | Metamail Corporation | System and method of trusted publishing |
JP2005259015A (ja) | 2004-03-15 | 2005-09-22 | Ricoh Co Ltd | 文書開示装置、文書開示システム、プログラム及び記憶媒体 |
JP4466148B2 (ja) | 2004-03-25 | 2010-05-26 | 株式会社日立製作所 | ネットワーク転送対応コンテンツ利用管理方法、及びプログラム、コンテンツ転送システム |
US20050222227A1 (en) * | 2004-04-01 | 2005-10-06 | Pfizer Inc | Oxazole-amine compounds for the treatment of neurodegenerative disorders |
US7437771B2 (en) | 2004-04-19 | 2008-10-14 | Woodcock Washburn Llp | Rendering protected digital content within a network of computing devices or the like |
US20050262568A1 (en) | 2004-05-18 | 2005-11-24 | Hansen Mark D | System and method for managing access to protected content by untrusted applications |
US20050273629A1 (en) | 2004-06-04 | 2005-12-08 | Vitalsource Technologies | System, method and computer program product for providing digital rights management of protected content |
US7711647B2 (en) | 2004-06-10 | 2010-05-04 | Akamai Technologies, Inc. | Digital rights management in a distributed network |
US20050278256A1 (en) | 2004-06-15 | 2005-12-15 | Eric Vandewater | System and method of promoting copy-managed digital content |
GB0413848D0 (en) * | 2004-06-21 | 2004-07-21 | British Broadcasting Corp | Accessing broadcast media |
AU2005273532B2 (en) | 2004-06-28 | 2011-04-07 | Acano (Uk) Limited | System for proximity determination |
US20060015580A1 (en) * | 2004-07-01 | 2006-01-19 | Home Box Office, A Delaware Corporation | Multimedia content distribution |
US7559759B2 (en) * | 2004-07-20 | 2009-07-14 | Irwin Research And Development, Inc. | Trim press having an article ejector, article ejecting device with linear drive mechanism, and method |
US7715565B2 (en) | 2004-07-29 | 2010-05-11 | Infoassure, Inc. | Information-centric security |
US20060036554A1 (en) | 2004-08-12 | 2006-02-16 | Microsoft Corporation | Content and license delivery to shared devices |
US7610011B2 (en) | 2004-09-19 | 2009-10-27 | Adam Albrett | Providing alternative programming on a radio in response to user input |
KR100677152B1 (ko) | 2004-11-17 | 2007-02-02 | 삼성전자주식회사 | 사용자 바인딩을 이용한 홈 네트워크에서의 콘텐츠 전송방법 |
EP1672831A1 (fr) | 2004-12-16 | 2006-06-21 | Nagravision S.A. | Méthode de transmission de données numériques dans un réseau local |
JP4622514B2 (ja) | 2004-12-28 | 2011-02-02 | 日本電気株式会社 | 文書匿名化装置、文書管理装置、文書匿名化方法及び文書匿名化プログラム |
JP4510653B2 (ja) | 2005-01-31 | 2010-07-28 | キヤノン株式会社 | レイアウト決定方法及び装置並びにプログラム |
KR100694104B1 (ko) | 2005-02-23 | 2007-03-12 | 삼성전자주식회사 | 라운드 트립 시간을 측정하는 방법 및 이를 이용한 인접성검사 방법 |
WO2006095335A2 (en) | 2005-03-07 | 2006-09-14 | Noam Camiel | System and method for a dynamic policies enforced file system for a data storage device |
KR100636232B1 (ko) | 2005-04-29 | 2006-10-18 | 삼성전자주식회사 | 해시 체인을 이용하여 디바이스들간의 인접성을 검사하는방법 및 장치 |
EP1724699A1 (en) | 2005-05-17 | 2006-11-22 | Siemens Aktiengesellschaft | Method and system for gradually degrading the quality of digital content in a DRM system |
US20060294580A1 (en) | 2005-06-28 | 2006-12-28 | Yeh Frank Jr | Administration of access to computer resources on a network |
JP2007066302A (ja) | 2005-08-04 | 2007-03-15 | Ricoh Co Ltd | 認証機能を備える電子文書 |
CN101305375A (zh) | 2005-09-12 | 2008-11-12 | 沙盒技术有限公司 | 用于控制电子信息的分发的系统和方法 |
US8239682B2 (en) | 2005-09-28 | 2012-08-07 | Nl Systems, Llc | Method and system for digital rights management of documents |
WO2007043015A2 (en) | 2005-10-13 | 2007-04-19 | Koninklijke Philips Electronics N.V. | Improved proximity detection method |
KR100736080B1 (ko) * | 2005-10-27 | 2007-07-06 | 삼성전자주식회사 | 다 계층으로 구성된 멀티미디어 스트림의 저작권을 계층별로 관리하는 방법 및 장치 |
KR100757845B1 (ko) | 2006-02-13 | 2007-09-11 | (주)잉카엔트웍스 | 클라이언트 기기로 암호화된 컨텐츠에 대응하는 라이센스를제공하는 방법 및 상기 방법을 채용한 drm 변환 시스템 |
US20070255659A1 (en) * | 2006-05-01 | 2007-11-01 | Wei Yen | System and method for DRM translation |
US7873988B1 (en) | 2006-09-06 | 2011-01-18 | Qurio Holdings, Inc. | System and method for rights propagation and license management in conjunction with distribution of digital content in a social network |
JP2009026013A (ja) | 2007-07-18 | 2009-02-05 | Yahoo Japan Corp | コンテンツ登録・提供装置、コンテンツ登録・提供制御方法、および、コンテンツ登録・提供制御プログラム |
US8230100B2 (en) * | 2007-07-26 | 2012-07-24 | Realnetworks, Inc. | Variable fidelity media provision system and method |
KR100982059B1 (ko) | 2007-09-27 | 2010-09-13 | 주식회사 엘지유플러스 | 제휴 디알엠의 컨텐츠를 호환 디알엠의 컨텐츠로 변환하는시스템 및 그 방법과 그 기능의 컴퓨터 프로그램이 기록된기록매체 |
US7831571B2 (en) * | 2007-10-25 | 2010-11-09 | International Business Machines Corporation | Anonymizing selected content in a document |
CN100555299C (zh) | 2007-12-28 | 2009-10-28 | 中国科学院计算技术研究所 | 一种数字版权保护方法和系统 |
JP5033658B2 (ja) | 2008-01-28 | 2012-09-26 | 株式会社リコー | 電子文書セキュリティシステム |
US8095518B2 (en) | 2008-06-04 | 2012-01-10 | Microsoft Corporation | Translating DRM system requirements |
-
2004
- 2004-06-07 EP EP10180088.6A patent/EP2270622B1/en not_active Not-in-force
- 2004-06-07 BR BRPI0410999-6A patent/BRPI0410999A/pt not_active Application Discontinuation
- 2004-06-07 KR KR1020057023383A patent/KR101030941B1/ko not_active IP Right Cessation
- 2004-06-07 EP EP04776350.3A patent/EP1629363B1/en not_active Not-in-force
- 2004-06-07 SG SG200718613-3A patent/SG155065A1/en unknown
- 2004-06-07 CA CA2776354A patent/CA2776354A1/en not_active Abandoned
- 2004-06-07 AP AP2005003476A patent/AP2005003476A0/xx unknown
- 2004-06-07 CN CN200480021795.9A patent/CN1860761B/zh not_active Expired - Fee Related
- 2004-06-07 KR KR1020107024495A patent/KR101024237B1/ko not_active IP Right Cessation
- 2004-06-07 WO PCT/US2004/018120 patent/WO2005017654A2/en active Application Filing
- 2004-06-07 EP EP10181095A patent/EP2280524A3/en not_active Withdrawn
- 2004-06-07 KR KR1020087010633A patent/KR100965437B1/ko not_active IP Right Cessation
- 2004-06-07 JP JP2006509076A patent/JP5242915B2/ja not_active Expired - Fee Related
- 2004-06-07 KR KR1020107007909A patent/KR101030203B1/ko not_active IP Right Cessation
- 2004-06-07 CN CN201110260513.2A patent/CN103001923B/zh not_active Expired - Fee Related
- 2004-06-07 EA EA200700510A patent/EA015549B1/ru not_active IP Right Cessation
- 2004-06-07 AU AU2004264582A patent/AU2004264582B2/en not_active Ceased
- 2004-06-07 EA EA200501896A patent/EA008614B1/ru not_active IP Right Cessation
- 2004-06-07 US US10/863,551 patent/US8234387B2/en not_active Expired - Fee Related
- 2004-06-07 CA CA2528428A patent/CA2528428C/en active Active
-
2005
- 2005-12-05 IL IL172366A patent/IL172366A/en not_active IP Right Cessation
-
2007
- 2007-05-17 US US11/804,667 patent/US20070283423A1/en not_active Abandoned
- 2007-07-27 US US11/829,809 patent/US20080298591A1/en not_active Abandoned
- 2007-07-27 US US11/829,774 patent/US20080285757A1/en not_active Abandoned
- 2007-07-27 US US11/829,751 patent/US20080056500A1/en not_active Abandoned
- 2007-07-27 US US11/829,837 patent/US9466054B1/en not_active Expired - Fee Related
- 2007-07-27 US US11/829,805 patent/US20080301430A1/en not_active Abandoned
- 2007-08-20 US US11/894,624 patent/US20090094453A1/en not_active Abandoned
- 2007-08-20 US US11/894,372 patent/US20080140835A1/en not_active Abandoned
- 2007-10-30 US US11/929,937 patent/US20080133731A1/en not_active Abandoned
- 2007-12-12 JP JP2007320348A patent/JP5059577B2/ja not_active Expired - Fee Related
-
2009
- 2009-06-30 US US12/459,490 patent/US20100005513A1/en not_active Abandoned
- 2009-06-30 US US12/459,491 patent/US20100017606A1/en not_active Abandoned
- 2009-11-12 US US12/617,164 patent/US9235833B2/en not_active Expired - Fee Related
- 2009-11-17 US US12/620,452 patent/US20100070774A1/en not_active Abandoned
- 2009-11-17 US US12/620,445 patent/US20100067699A1/en not_active Abandoned
-
2010
- 2010-05-27 US US12/789,004 patent/US9424564B2/en not_active Expired - Fee Related
- 2010-06-03 US US12/792,952 patent/US9235834B2/en not_active Expired - Fee Related
- 2010-06-03 US US12/792,965 patent/US20100250927A1/en not_active Abandoned
- 2010-08-12 AU AU2010212301A patent/AU2010212301B2/en not_active Ceased
-
2011
- 2011-10-27 US US13/283,126 patent/US9317843B2/en not_active Expired - Fee Related
- 2011-10-27 US US13/283,245 patent/US20120042389A1/en not_active Abandoned
- 2011-10-27 US US13/283,313 patent/US20120159643A1/en not_active Abandoned
- 2011-11-14 JP JP2011248897A patent/JP2012053913A/ja active Pending
-
2012
- 2012-11-14 IL IL223027A patent/IL223027A/en not_active IP Right Cessation
-
2014
- 2014-02-20 JP JP2014030471A patent/JP5731679B2/ja not_active Expired - Fee Related
-
2016
- 2016-09-15 US US15/266,928 patent/US20170163645A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5892900A (en) * | 1996-08-30 | 1999-04-06 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
CN1274461A (zh) * | 1998-07-22 | 2000-11-22 | 松下电器产业株式会社 | 保护版权的数字数据记录装置和方法,其使记录在记录媒介上的加密的数字数据易于再现,以及记录了该方法的程序的计算机可读的记录媒介 |
CN1371056A (zh) * | 2001-02-09 | 2002-09-25 | 索尼公司 | 信息处理方法/装置和程序 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103001923B (zh) | 用于控制对在计算机系统上的电子内容片段的访问的方法和系统 | |
AU2012202810B2 (en) | Interoperable systems and methods for peer-to-peer service orchestration | |
MXPA05013130A (es) | Sistemas y metodos interoperables para orquestacion de servicio de igual a igual |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160330 |