CN100593786C - 用于提供从java应用访问oma drm保护文件的系统和方法 - Google Patents

用于提供从java应用访问oma drm保护文件的系统和方法 Download PDF

Info

Publication number
CN100593786C
CN100593786C CN200680007978A CN200680007978A CN100593786C CN 100593786 C CN100593786 C CN 100593786C CN 200680007978 A CN200680007978 A CN 200680007978A CN 200680007978 A CN200680007978 A CN 200680007978A CN 100593786 C CN100593786 C CN 100593786C
Authority
CN
China
Prior art keywords
file
request
allow
preview
described request
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
Application number
CN200680007978A
Other languages
English (en)
Other versions
CN101137992A (zh
Inventor
A·达夫伊多夫
M·罗茨
J·夏普
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nokia Technologies Oy
Original Assignee
Nokia Oyj
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nokia Oyj filed Critical Nokia Oyj
Publication of CN101137992A publication Critical patent/CN101137992A/zh
Application granted granted Critical
Publication of CN100593786C publication Critical patent/CN100593786C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6581Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Technology Law (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

一种用于以加密模式、解密模式或默认模式访问电子设备上的内容的系统和方法。请求被传送到应用程序接口以允许请求程序访问至少一个文件。请求具体地标识请求程序是否期望以加密模式、解密模式或默认模式访问文件。确定由系统正在使用的应用程序接口是否支持特定的形式,至少一个文件是否被保护;以及是否允许请求的程序访问至少一个文件。如果应用程序接口支持特定形式,如果至少一个文件被保护,并且如果允许请求程序访问至少一个文件,则以特定形式打开至少一个文件以便由请求程序使用。

Description

用于提供从JAVA应用访问OMA DRM保护文件的系统和方法
技术领域
本发明一般地涉及数字版权管理和设备管理。更具体地,本发明涉及由应用以加密或解密形式读取保护的文件。
背景技术
开放移动联盟(OMA)数字版权管理(DRM)是允许由移动终端对各种媒体对象的使用量进行控制的技术,媒体对象例如响音声调、图像和其他对象。DRM是用于描述使用关于版权和版权持有人的信息以管理版权材料的广泛技术以及使得材料可用于用户的术语和条件的术语。更具体地,DRM包括将所有者的财产权描述、分层、分析、评估、贸易和监测为一种资产。DRM将数字版权的管理覆盖到工作的物理表现(例如,教科书)或工作的数字表现(例如,因特网web页)。DRM还覆盖资产的管理,无论资产具有有形的或无形的价值。当前的DRM技术包括用于描述针对资产的术语和条件的语言,通过强加控制环境或编码的资产表现来跟踪资产使用,以及针对数字版权的整个管理的封闭架构。在OMA DRM技术中,通过向每个媒体对象补充版权对象来训练控制。版权对象定义使用媒体对象所依据的规则。
OMA DRM技术由许多移动终端使用以保护内容图像、声音文件、视频和其他内容。未保护文件以纯文本格式存储在文件系统中,而保护文件被加密。接着,假设无论何时应用请求保护文件的内容,则DRM代理(特殊的系统组件)立刻解密文件并且向请求的应用提供数据。同时,应用通常可使用特殊的API以加密形式读取相同的保护文件,旁路DRM代理。
不幸地是,不是上述的访问方法总是可以的。这是因为最初创建一些API(例如Java API)时没有考虑内容的OMA DRM保护。这导致进退两难。当Java应用请求OMA DRM保护文件的内容时,不清楚是否应该将文件的数据原样(即,加密的)传递给应用,或DRM代理是否应该预先执行解密。当前,例如图像查看器和音乐播放器的一些Java应用需要纯文本格式的保护文件。然而,其他的Java应用,例如文件管理器和电子邮件客户端需要加密形式的保护文件。此外,某些应用可能需要两种类型的访问。例如,一些图像查看器可以显示OMA DRM保护图像和对其进行超级分发。
由于这样的事实,上述的情况进一步复杂,即,同一个Java应用可以使用不同的Java API来打开同一个保护文件。例如,多媒体API(JSR 135)可播放音乐文件,而文件API(JSR 75)用于对其进行复制。此外,关于文件的OMA DRM保护,所有的Java API落入(具有某些保留)两类中的一类:“安全”API,其不允许应用得到保护文件的内容;以及“不安全”API,其允许应用得到保护文件的内容。
因此需要一种系统,其允许应用能够指定将要读取保护文件的内容的形式。该机制应该足够的通用以便事实上可由潜在地访问保护文件的任意Java API以及其他API来使用。
发明内容
本发明通过提供用于指定保护的文件的数据传递到应用的格式的三种附加类型的文件URL来克服上面确定的缺陷。为了避免在现有API中的改变并且使得访问方法API独立,通过向URL的尾部添加合适的选择参数,根据本发明实现以特定形式(解密或加密)打开保护文件的请求。结果是,本方法可由使用URL打开文件的任意API来使用。根据本发明的一个实施方式,当通过使用URL的API来打开OMA DRM保护文件时,应用可请求三种访问模式中的一种:解密、加密或默认。另外,应用可指定其旨在使用该内容还是仅预览它。例如,在图像的情况下,应用可指定其旨在向用户显示完整的图像还是仅显示图像的缩略图。利用本发明,例如MIDlet的应用因此能够读取OMA DRM保护文件而不在任何当前的API中进行改变。
根据当结合附图时所做出的下面的详细描述,本发明的这些和其他目的、优势和特征,连同其操作的组织和方式将变得明显,其中贯穿下面所述的几副附图,相同的元件具有相同的编号。
附图说明
图1是其中本发明可实施的系统的概要示图;
图2是可在本发明的实施中所使用的移动电话的透视图;
图3是图2的移动电话的电话电路的示意图;
图4是根据本发明的一个实施方式示出涉及其中应用请求以解密模式访问文件或多个文件的情况中的决策处理的流程图;
图5是根据本发明的一个实施方式示出涉及其中应用请求以加密模式访问文件或多个文件的情况中的决策处理的流程图;以及
图6是根据本发明的一个实施方式示出涉及其中应用请求以默认模式访问文件或多个文件的情况中的决策处理的流程图。
具体实施方式
图1示出可利用本发明的系统10,包括可通过网络通信的多个通信设备。系统10可包括有线或无线网络的任意组合,包括但不限于移动电话网络、无线局域网(LAN)、蓝牙个域网、以太网LAN、令牌环LAN、广域网、因特网等。系统10可包括有线和无线通信设备。
例如,图1中示出的系统10包括移动电话网络11和因特网28。针对因特网28的连接性可包括但不限于远程无线连接、短程无线连接和各种有线连接,包括但不限于电话线、电缆线路、电力线等。
系统10的示例性通信设备可包括但不限于移动电话12、组合的个人数字助理(PDA)和移动电话14、PDA 16、集成消息传送设备(IMD)18、台式计算机20和笔记本计算机22。通信设备可以是固定的或当由移动的个人携带时是移动的。通信设备还可处于交通工具的模式中,包括但不限于轿车、卡车、出租车、公共汽车、轮船、飞机、自行车、摩托车等。一些或所有的通信设备可发送和接收呼叫和消息并且通过到基站24的无线连接25与服务提供商进行通信。基站24可连接到允许移动电话网络11和因特网28之间通信的网络服务器26。系统10可包括附加的通信设备和不同类型的通信设备。
通信设备可使用各种传输技术进行通信,包括但不限于码分多址(CDMA)、全球移动通信系统(GSM)、通用移动通信系统(UMTS)、时分多址(TDMA)、频分多址(FDMA)、传输控制协议/网际协议(TCP/IP)、短消息传送服务(SMS)、多媒体消息传送服务(MMS)、电子邮件、即时消息传送服务(IMS)、蓝牙、IEEE 802.11等。通信设备可使用各种媒体进行通信,包括但不限于无线、红外线、激光、电缆连接等。
图2和图3示出其中可实施本发明的一个示意性移动电话12。然而,应该理解本发明不旨在限于一种特定类型的移动电话12或其他电子设备。图2和图3的移动电话12包括机壳30,液晶显示器形式的显示器32,小键盘34、麦克风36、耳筒38、电池40、红外端口42、天线44、根据本发明的一个实施方式的UICC形式的智能卡46,读卡器48、无线接口电路52、编解码器电路54、控制器56和存储器58。各个电路和元件是现有技术中熟知的所有类型的一种,例如诺基亚范围内的移动电话。
根据本发明的原理,通过向URL请求的尾部添加选择参数来实现以特定形式打开保护文件的请求。根据本发明的一个实施方式,当通过使用URL的API来打开OMA DRM保护文件时,应用可请求三种访问模式中的一种,解密的、加密的或默认的。应用还可指定其旨在使用该内容还是仅预览该内容。本发明可实际上通过使用URL访问文件的任意API来使用,包括但不限于Java API。
下面是当期望以解密(纯文本)模式读取文件时,本发明的一个实施方式如何操作的示例。当应用试图使用以“file://”开始并且以“?drm=dec+’purpose”’或“?drm=dec+’purpose’+preview”(其中’purpose’是下面中的一项:“display”、“play”、“print”或“execute”)结束的URL打开文件时,这可以被解释为打开文件以便以纯文本形式读取内容的请求。这种类型的URL的两个这样的例子如下:
file:///E:/images/cat.jpg?drm=dec+play
file:///E:/sounds/mew.mp3?drm=dec+play+preview
如果包含“?drm=dec+’purpose’”的URL指向是OMA DRM保护文件的对象,并且如果移动设备安全策略允许应用访问该文件,则系统以解密模式打开文件。在这种情况下,在对文件的所有后续读操作中,API实施将返回解密的内容。换句话说,从应用的角度来看,读操作发生,如同内容未保护。如果移动设备的安全策略不允许应用使用包含“?drm=dec+’purpose’”的URL来访问请求的保护文件,则java.lang.SecurityException由URL被传递到的API方法来掷出。每个解密模式,URL包含’purpose’参数“display”、“play”、“print”或“execute”。API实施将该参数的值解释为指示应用将对被打开的文件执行的操作。接着该实施使用该参数来检查对于给定的文件,相应的OMA DRAM许可是否存在并且有效。如果对于指示的操作,保护的文件不具有有效的许可,则不打开文件并且掷出java.lang.SecurityException。
另一方面,如果包含“?drm=dec+’purpose’”的URL指向未保护文件,并且移动设备的安全策略允许应用访问该文件,则系统以默认模式打开文件。在这种情况下,以只读模式打开文件。如果移动设备的安全策略不允许应用使用以“?drm=dec+’purpose’”结束的URL来访问请求的未保护文件,则java.lang.SecurityException由URL被传递到的API方法来掷出。
如果以“?drm=dec+’purpose’+’preview’”结束的URL指向DRM保护文件,则系统将其解释为指示应用不打算使用文件的内容。例如,系统可仅展示图像文件的“缩略图”而不是显示整个和全部的图像。在这种情形下,如果保护的文件在相关的许可中具有<count>的限制(或限制了文件可被打开的次数的任何其他限制),则DRM代理不减小计数器。这是必要的,因为在某些情况下,应用需要操控内容,但这样的预览通常不具有实际使用文件的内容的资格。
如果URL仅以“?drm=dec+’purpose’”(没有“preview”)结束并且目标文件具有带有<count>限制的许可,则DRM代理减小计数器。这意味着解密模式下的默认行为是减小计数器,并且应用需要明确地指出何时不需要减小计数器。如果以“?drm=dec+’purpose’+’preview’”结束的URL指向未保护的文件,则“preview”参数被忽略。
所述预览机制可能不可用于非信任应用。如果这样的应用在文件URL中包括“preview”,则掷出java.lang.SecurityException。
在图4中表示出示出当应用请求以解密模式访问文件时的决策处理的流程图。在步骤400,应用试图以解密模式打开文件或一组文件。在步骤405,确定在正在使用的特定API中是否支持解密模式。如果不支持解密模式,则在步骤410,掷出IllegalArgumentException。如果支持解密模式,则在步骤415确定应用请求什么类型的访问。如果应用请求写或读-写访问,则在步骤417掷出SecurityException。
另一方面,如果应用请求读访问,则在步骤420确定讨论的URL是指向单个文件还是指向一组文件。如果URL仅指向单个文件,则在步骤440确定所请求的文件是否是DRM保护的。如果不是DRM保护的,则在步骤445确定是否允许应用访问文件。如果允许应用访问文件,则在步骤450,打开请求的、未保护的文件仅用于读操作。如果不允许应用访问文件,则在步骤455处掷出SecurityException。
另一方面,如果请求的文件是DRM保护的,则在步骤460确定是否允许应用访问文件。如果不允许访问文件,则在步骤465掷出SecurityException。如果允许应用访问文件,则在步骤470,确定在URL中是否存在“preview”代码。如果不存在“preview”代码,则在步骤475,以解密模式打开请求的文件以仅用于读操作。对于一些文件,如果DRM许可包括<count>限制,则计数器减小一。如果在URL中存在“preview”,则在步骤480确定是否允许应用使用“preview”功能。应该注意到也在URL指向一组文件并且针对文件中的至少一个存在“preview”代码时做出该确定。如果允许应用使用“preview”功能,则在步骤485掷出IllegalArgumentException。如果应用可使用“preview”功能,则在步骤490以解密形式打开所请求的DRM保护文件以仅用于读操作。如果DRM许可包含<count>限制,则计数器将不减小。
返回到步骤420,如果URL指向一组文件,则在步骤425确定在URL中是否存在“preview”代码。如果存在这样的代码,则在步骤430,允许应用访问的该组中的所有文件被打开。在这种情况下,以解密模式打开来自该组的DRM保护文件。对于一些文件,如果DRM许可包括<count>限制,则计数器不减小。应该注意到,如果一些文件无法打开,则也可掷出异常。另一方面,如果URL中不存在“preview”代码,则在步骤435,允许应用所访问的组中的所有文件被打开。以解密模式打开来自该组的DRM保护文件。对于一些文件,如果DRM许可包含<count>限制,则计数器减小一。应该注意到,如果一些文件打不开,则也可掷出异常。应该注意到,对于步骤425和步骤430,每个单独的文件可经历如步骤440到490步骤中所示出的相同的决策处理。
下面是当期望以加密的形式读取文件时,本发明的一个实施方式如何操作的例子。当应用试图使用以“file://”开始并且以“?drm=enc”结束的URL来打开保护的文件时,这由系统解释为请求打开文件以便以加密的形式读取内容。一个示例的URL是
file:///E:/images/cat.ipg?drm=enc。
如果以“?drm=enc”结束的URL指向OMA DRM保护文件时,并且如果移动设备的安全策略允许应用访问文件,则系统以加密模式打开文件。在由应用执行的文件的所有后续读操作中,系统将以加密(“照现在的样子”)形式返回内容。如果移动设备的安全策略不允许应用使用以“?drm=enc”结束的URL来访问请求的保护的文件,则通过URL传递到的API方法来掷出java.lang.SecurityException。如果以“?drm=enc”结束的URL指向未保护文件,则通过URL传递到的API方法来掷出java.lang.SecurityException。
在图5中示出表示当应用请求以加密模式访问文件时的决策处理的流程图。在步骤500,应用期望以加密形式打开文件。在步骤510,确定正在使用的API是否支持加密模式。如果不支持,则在步骤520掷出ILLegalAgrumentException。如果支持加密模式,则在步骤530确定期望的访问的类型。如果请求写或读_写访问,则在步骤535,掷出SecurityException。如果请求读访问,则在步骤540确定文件是否是DRM保护的。如果文件不是DRM保护的,则在步骤550掷出SecurityException。如果文件是DRM保护的,则在步骤560确定是否允许应用访问文件。如果允许,则在步骤570,以加密形式打开请求的DRM保护文件以仅用于读操作。如果不允许应用访问文件,则在步骤550掷出SecurityException。
下面是当期望以默认模式读取文件时本发明的一个实施方式如何操作的例子。当应用试图使用常规文件URL或以“?drm=preview”或另一个“preview”代码结束的文件URL来打开保护文件时,这由系统解释为请求以默认模式打开文件。URL的两个这样的例子如下:
file:///E:/images/cat.jpg
file:///E:/sounds/mew.mp3?drm=preview
如果用于请求的URL指向未保护文件,并且如果移动设备的安全策略允许应用访问该文件,则系统打开文件。在这种情况下,如果URL以“preview”参数结束,则该参数被忽略。
如果用于请求的URL指向保护文件,并且如果移动设备的安全策略允许应用访问该文件,则系统或者根本不授权访问,或系统打开文件以便以纯文本形式读取内容(类似于图4中示出的解密形式)。在这种情形下,对于“不安全”API,不授权以纯文本形式访问DRM保护文件。“不安全”API是允许应用获得DRM保护文件的解密内容的那些API,因此造成泄露保护内容的机会。如果拒绝访问保护文件,则掷出java.lang.SecurityException。另外,仅在仅向应用提供针对文件内容的使用模式的API中授权默认模式的访问(例如,对应于DRM许可“播放”的模式)。该限制是存在的,因为DRM代理需要知道哪个OMA DRM许可要检查。
如果URL以“preview”代码结束并且指向DRM保护文件,则这由系统解释为指示应用将不使用文件的内容。在这种情况下,如果保护文件在相关许可中具有<count>限制(或限制文件可被打开的次数的某个其他限制),则DRM代理不减小计数器。如前所述,这是必要的,因为在某些情况下,应用需要操控内容但操控不具有文件内容的实际使用的资格。相反,如果URL不以“preview”结束,并且如果目标文件或多个文件具有带有<count>限制的许可,则DRM代理减小计数器。这意味着默认模式中的默认行为是减小计数器,并且应用需要明确指定计数器何时不应减小。
如上所述,如果以“?drm=preview”或类似预览代码结束的URL指向非保护文件,则“?preview”参数被忽略。也如前所述,所述的“preview”机制不可用于不属于制造商安全域的应用。如果这样的应用在文件URL中包括“preview”代码,则掷出java.lang.IllegalArgumentException。
在图6中示出表示用于令应用以默认模式访问文件的决策处理的流程图。在步骤600,应用请求以默认模式打开文件或一组文件。在步骤605,确定讨论中的URL是否包括“preview”代码。如果在URL中包括这样的preview代码,则在步骤610确定是否识别该预览代码。如果不识别该代码,则在步骤615掷出IllegalArgumentException。如果识别预览代码,则在步骤620确定是否允许应用使用该预览代码。如果不允许,则在步骤627掷出SecurityException。
如果允许应用使用预览代码,或如果返回到步骤605,URL根本不包括任何预览代码,则在步骤625确定URL是指向单个文件还是一组文件。如果URL指向单个文件,则在步骤630确定请求的文件是否是DRM保护的。如果文件不是DRM保护的,则在步骤635确定是否允许应用访问文件。如果允许应用访问文件,则在步骤640打开请求的、未保护的文件。如果不允许应用访问文件,则在步骤645掷出SecurityException。
返回到步骤630,如果请求的文件是DRM保护的,则在步骤650确定是否允许应用访问文件。如果不允许,则在步骤645掷出SecurityException。如果允许应用访问文件,则在步骤655确定默认模式是否可用于在讨论中的特定API中。如果默认模式不可用,则在步骤645掷出SecurityException。如果默认模式可用,则在步骤660确定被请求的访问的类型。如果请求写或读写访问,则在步骤665掷出SecurityException。如果请求读访问,则在步骤670确定URL是否包括“preview”代码。如果有预览代码,则在步骤675以解密形式打开请求的DRM保护文件以仅用于读操作。如果DRM许可包括<count>限制或阻止文件被打开超出预定的次数的类似限制,则不减小计数器。如果不存在预览代码,则在步骤680以解密形式打开请求的DRM保护文件以仅用于读操作。如果DRM许可包含<count>限制,则计数器减小一。
返回到步骤625,如果URL指向一组文件,则确定URL是否包括“preview”代码。如果没有这样的代码,则在步骤690,允许应用访问的该组中的每个文件被打开。在这种情况下,以解密模式打开来自该组的DRM保护文件。如果这些文件的任意一个包括<count>限制,则计数器减小一。如果无法打开来自该组的一些文件,则也可以掷出异常。另一方面,如果在URL中有预览代码,则在步骤695也打开允许应用所访问的该组中的每个文件。在这种情形下,以解密模式打开来自该组的DRM保护文件。如果这些文件中的任意一个包括<count>限制,则计数器不减小。如果来自该组的一些文件无法打开,则也可以掷出异常。应该注意到,对于步骤690和步骤695,每个单独的文件可经历如步骤630到步骤680中所示出的相同决策处理。
在方法步骤的一般背景下描述了本发明,在一个实施方式中其可通过程序产品来实施,该计算机产品包括计算机可执行指令,例如由网络化环境中的计算机所执行的程序代码。
一般地,程序模块包括执行特定任务或实施特定抽象数据类型的例程、程序、对象、组件、数据结构等。计算机可执行指令、关联的数据结构以及程序模块提供用于执行这里公开的方法的步骤的程序代码的例子。这类可执行指令或关联的数据结构的特定序列提供用于实施这类步骤中所述的功能的相应动作的例子。
可利用标准的编程技术来完成本发明的软件和web实施,该编程技术具有基于规则的逻辑和其他逻辑以完成各种数据库搜索步骤、相关步骤、比较步骤和判定步骤。应该注意到,这里和权利要求书中所使用的措词“组件”和“模块”旨在包括使用一行或多行软件代码的实施,和/或硬件实施,和/或用于接收人工输入的设备。
为了示例和描述,已经提供了本发明的实施方式的上述描述。不旨在穷举或将本发明限制于这里所公开的实施,根据本发明的上述教导或从本发明的实践可获得修改和变形。选择和描述实施方式以便解释本发明的原理及其实际应用,从而使得本领域技术人员在各种实施方式中以及利用适于预期特定使用的各种修改来实施本发明。

Claims (16)

1.一种访问电子设备上的内容的方法,包括:
向应用程序接口传送请求以允许请求程序访问至少一个文件,该请求具体地标识所述至少一个文件是从包括加密形式、解密形式和默认形式的组中选择的特定的形式;
确定正在由系统所使用的应用程序接口是否支持该特定的形式;
确定所述请求程序请求读访问;
确定所述至少一个文件是否被保护;
确定是否允许请求程序访问所述至少一个文件;以及
如果应用程序接口支持所述特定的形式,所述至少一个文件被保护,并且如果允许所述请求程序访问至少一个文件,则以特定形式打开所述至少一个文件以便由所述请求程序使用。
2.根据权利要求1所述的方法,另外包括如果所述应用程序接口不支持所述特定的形式,则传送异常。
3.根据权利要求1所述的方法,另外包括如果不允许请求程序访问至少一个文件,则传输安全相关异常。
4.根据权利要求1所述的方法,另外包括如果不保护至少一个文件,并且如果允许所述请求程序访问文件,则打开所述至少一个文件以便由所述请求程序使用。
5.根据权利要求1所述的方法,其中打开至少一个文件以仅用于读操作。
6.根据权利要求1所述的方法,另外包括如果所述请求程序请求对至少一个文件的写或读_写访问,则传送异常而不是打开所述至少一个文件。
7.根据权利要求1所述的方法,其中至少一个文件包括单个文件。
8.根据权利要求1所述的方法,其中至少一个文件包括多个文件,并且其中在所述应用程序接口支持特定形式、至少一个文件被保护、并且允许所述请求程序访问所述至少一个文件的情况下,所述多个文件中的每个以特定形式打开以便由所述请求程序使用。
9.根据权利要求1所述的方法,另外包括:
如果允许所述请求程序访问所述至少一个文件,则确定所述请求是否包括预览代码;
如果请求包括预览代码,则确定是否允许所述请求程序使用所述预览代码;以及
如果允许所述请求程序使用所述预览代码,则打开至少一个文件以便由所述请求程序以预览模式使用。
10.根据权利要求9所述的方法,另外包括如果允许所述请求程序使用所述预览代码,并且如果针对至少一个文件的许可包括对所述至少一个文件可被打开的次数的限制,则保持所述至少一个文件可被打开的剩余次数的水平。
11.根据权利要求9所述的方法,另外包括如果在所述请求中不包括预览代码,并且如果针对至少一个文件的许可包括对所述至少一个文件可被打开的次数的限制,则使所述至少一个文件可被打开的剩余次数减一。
12.根据权利要求9所述的方法,另外包括如果所述请求中包括预览代码,但不允许所述请求程序使用所述预览代码,则传送异常。
13.一种访问电子设备上的内容的设备,包括:
用于向应用程序接口传送请求以允许请求程序访问至少一个文件的装置,该请求具体地标识所述至少一个文件是从包括加密形式、解密形式和默认形式的组中选择的特定的形式;
用于确定正在由系统所使用的应用程序接口是否支持该特定的形式的装置;
用于确定所述请求程序请求读访问的装置;
用于确定至少一个文件是否被保护的装置;
用于确定是否允许请求程序访问至少一个文件的装置;以及
用于如果应用程序接口支持所述特定的形式,至少一个文件被保护,并且如果允许请求程序访问所述至少一个文件,则以特定形式打开所述至少一个文件以便由所述请求程序使用的装置。
14.根据权利要求13所述的设备,另外包括:
用于如果允许所述请求程序访问所述至少一个文件,则确定所述请求是否包括预览代码的装置;
用于如果请求包括预览代码,则确定是否允许所述请求程序使用所述预览代码的装置;以及
用于如果允许所述请求程序使用所述预览代码,则打开至少一个文件以便由所述请求程序以预览模式使用的装置。
15.根据权利要求14所述的设备,另外包括用于如果允许所述请求程序使用所述预览代码,并且如果针对至少一个文件的许可包括对所述至少一个文件可被打开的次数的限制,则保持所述至少一个文件可被打开的剩余次数的水平的装置。
16.根据权利要求14所述的设备,另外包括用于如果在所述请求中不包括预览代码,并且如果针对至少一个文件的许可包括对所述至少一个文件可被打开的次数的限制,则将所述至少一个文件可被打开的剩余次数减一的装置。
CN200680007978A 2005-01-27 2006-01-27 用于提供从java应用访问oma drm保护文件的系统和方法 Expired - Fee Related CN100593786C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/045,200 2005-01-27
US11/045,200 US8739291B2 (en) 2005-01-27 2005-01-27 System and method for providing access to OMA DRM protected files from java application

Publications (2)

Publication Number Publication Date
CN101137992A CN101137992A (zh) 2008-03-05
CN100593786C true CN100593786C (zh) 2010-03-10

Family

ID=36758216

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200680007978A Expired - Fee Related CN100593786C (zh) 2005-01-27 2006-01-27 用于提供从java应用访问oma drm保护文件的系统和方法

Country Status (7)

Country Link
US (1) US8739291B2 (zh)
EP (1) EP1846865A4 (zh)
KR (1) KR100918253B1 (zh)
CN (1) CN100593786C (zh)
CA (1) CA2596022A1 (zh)
HK (1) HK1114504A1 (zh)
WO (1) WO2006097797A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2110769B1 (en) * 2004-02-03 2012-12-05 SanDisk Secure Content Solutions, Inc. Protection of digital data content
US7698223B2 (en) * 2005-04-21 2010-04-13 Microsoft Corporation Pluggable file-based digital rights management API layer for applications and engines
WO2006117555A2 (en) * 2005-05-04 2006-11-09 Vodafone Group Plc Digital rights management
US11201868B2 (en) * 2006-10-23 2021-12-14 Nokia Technologies Oy System and method for adjusting the behavior of an application based on the DRM status of the application
US7991902B2 (en) * 2006-12-08 2011-08-02 Microsoft Corporation Reputation-based authorization decisions
KR20100114066A (ko) * 2008-01-31 2010-10-22 인터내셔널 비지네스 머신즈 코포레이션 암호화된 파일 엑세스를 위한 방법 및 시스템
US9288210B2 (en) * 2009-01-26 2016-03-15 Microsoft Technology Licensing, Llc Revocable object access
US9864864B2 (en) * 2014-09-23 2018-01-09 Accenture Global Services Limited Industrial security agent platform
CN115525918B (zh) * 2022-11-04 2023-04-28 山东双仁信息技术有限公司 一种无纸化办公用文件的加密方法和系统

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7159116B2 (en) * 1999-12-07 2007-01-02 Blue Spike, Inc. Systems, methods and devices for trusted transactions
US5987454A (en) * 1997-06-09 1999-11-16 Hobbs; Allen Method and apparatus for selectively augmenting retrieved text, numbers, maps, charts, still pictures and/or graphics, moving pictures and/or graphics and audio information from a network resource
US6415322B1 (en) * 1998-02-27 2002-07-02 Engage, Inc. Dual/blind identification
US6499035B1 (en) * 1998-07-15 2002-12-24 Microsoft Corporation Licensing java objects
AU767042B2 (en) * 1999-05-21 2003-10-30 General Instrument Corporation Programming interface for television settop core system software
US7475246B1 (en) * 1999-08-04 2009-01-06 Blue Spike, Inc. Secure personal content server
US6891953B1 (en) * 2000-06-27 2005-05-10 Microsoft Corporation Method and system for binding enhanced software features to a persona
US7173730B1 (en) * 2000-09-13 2007-02-06 Canon Information Systems, Inc. Rule-based data reproduction system and method
US7171558B1 (en) 2000-09-22 2007-01-30 International Business Machines Corporation Transparent digital rights management for extendible content viewers
US7000107B2 (en) * 2000-09-30 2006-02-14 Microsoft Corporation System and method for using dynamic web components to remotely control the security state of web pages
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
US7421411B2 (en) * 2001-07-06 2008-09-02 Nokia Corporation Digital rights management in a mobile communications environment
US6925571B1 (en) * 2001-10-15 2005-08-02 Ricoh Company, Ltd. Method and system of remote monitoring and support of devices, using POP3 and decryption using virtual function
US7313590B2 (en) * 2001-12-12 2007-12-25 Rich Media Club, Llc Method and system for file server direct connection
US20030126086A1 (en) * 2001-12-31 2003-07-03 General Instrument Corporation Methods and apparatus for digital rights management
EP1486850A2 (en) * 2003-06-06 2004-12-15 Sony Ericsson Mobile Communications AB Allowing conversion of one digital rights management scheme to another
US20050070257A1 (en) * 2003-09-30 2005-03-31 Nokia Corporation Active ticket with dynamic characteristic such as appearance with various validation options
US7280956B2 (en) * 2003-10-24 2007-10-09 Microsoft Corporation System, method, and computer program product for file encryption, decryption and transfer
US8181255B2 (en) * 2004-06-22 2012-05-15 Nds Limited Digital rights management system
US7383510B2 (en) * 2004-09-13 2008-06-03 Third Generation Search, Ltd System for organization, display, and navigation of digital information
CN101421969B (zh) 2004-11-18 2013-05-29 康坦夹德控股股份有限公司 许可证中心的内容消费的方法、系统和设备

Also Published As

Publication number Publication date
WO2006097797A1 (en) 2006-09-21
HK1114504A1 (en) 2008-10-31
KR20070104430A (ko) 2007-10-25
CA2596022A1 (en) 2006-09-21
KR100918253B1 (ko) 2009-09-21
US8739291B2 (en) 2014-05-27
CN101137992A (zh) 2008-03-05
EP1846865A4 (en) 2011-06-01
US20060174347A1 (en) 2006-08-03
EP1846865A1 (en) 2007-10-24

Similar Documents

Publication Publication Date Title
CN100593786C (zh) 用于提供从java应用访问oma drm保护文件的系统和方法
KR101248790B1 (ko) 다수의 소비자 시스템들 중 하나에 암호화된 콘텐트에 대한 액세스를 제공하는 방법, 암호화된 콘텐트에 대한 액세스를 제공하는 장치 및 보안 콘텐트 패키지를 발생시키는 방법
CN100562902C (zh) 用于安全管理存储在电子标签上的数据的方法和系统
US8438398B2 (en) Information processing apparatus, information processing method, information processing program and information processing system
JP4980592B2 (ja) 権利データオブジェクトを提供する方法
US20050091507A1 (en) Method and apparatus for managing digital rights using portable storage device
US20070033285A1 (en) Value information transfer system and value information transfer method
CN101165700A (zh) 提供drm内容和许可证的方法和设备及使用方法和设备
CN106341234A (zh) 一种授权方法及装置
CN101690077B (zh) Drm方案扩展
EP1667046A1 (en) Method for managing digital rights using portable storage device
KR100604715B1 (ko) 자원들의 사용을 관리하기 위한 시스템에서의 자원의상태를 추적하기 위한 방법과 장치
CN107294955B (zh) 电子文件加密中间件管控系统及方法
CN115277143B (zh) 一种数据安全传输方法、装置、设备及存储介质
CN101595488A (zh) 用于将内容绑定到单独的存储器装置的方法和设备
TW200419412A (en) Digital-rights management
CN101243469A (zh) 从第一平台到第二平台的数字许可证迁移
CN109784073A (zh) 数据访问方法及装置、存储介质、计算机设备
US11201868B2 (en) System and method for adjusting the behavior of an application based on the DRM status of the application
CN101112040B (zh) 用于保护数字权限文件描述的方法和装置
CN102812470A (zh) 在第一次访问时的内容绑定
JP2006092566A (ja) 情報処理装置及びその方法、プログラム
CN102663295B (zh) 一种e-drm通用适配器系统
CN106940760A (zh) 一种移动数字版权保护系统
CN107005578A (zh) 权限控制方法、权限受控装置、电子设备及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1114504

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1114504

Country of ref document: HK

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160112

Address after: Espoo, Finland

Patentee after: Technology Co., Ltd. of Nokia

Address before: Espoo, Finland

Patentee before: Nokia Oyj

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100310

Termination date: 20190127

CF01 Termination of patent right due to non-payment of annual fee