具体实施方式
在下文中,依据本发明的一个优选实施例的在内容提供系统和便携装置之间通过网络同步数据的方法将会参照附图详细说明。
图2是一个结构图,示出了依照本发明的一个优选实施例的同步信息系统的结构。
依照本发明的该同步信息系统与至少一个内容提供系统300和至少一个同步化客户端400相链接。该同步信息系统通过同步服务保持和管理关于已注册的便携装置的信息和关于该便携装置的用户的信息。
如图2所示的该同步信息系统包括同步信息服务器210和同步信息数据库220。
同步信息服务器210从内容提供系统200接收装置注册请求的信息并且根据接收到的信息在同步信息数据库220中记录该装置注册信息。该装置注册信息可以包括用户ID、密码或者在使用该服务时需要的便携装置ID。另外,同步信息系统210响应内容提供系统300的请求分配给便携装置一个装置ID,存贮该装置ID和用户信息(用户ID、密码、或其他相关信息)的请求,并产生该装置ID和将所产生的ID给予该便携装置。前面所说的注册该便携装置和分配装置ID的方法将会参照图6在下面详细叙述。
同步信息数据库220存储用户认证信息和关于内容提供系统300、DRM、应用程序接口(API)、便携装置API等的信息,其中该信息在内容提供系统300和同步化客户端400之间同步信息时是需要的。而且,依照本发明的一个优选实施例,同步信息数据库220可以被配置为进一步记录同步化客户端设置程序以便用户可以通过从个人计算机中接收同步化客户端400进行安装。首先,想要使用内容同步服务的用户连接到同步信息系统上并且下载储存在同步信息数据库220中的同步化客户端设置程序,接下来,该用户执行该程序并且在他/她的个人计算机上安装同步化客户端400。
图2中示出的同步信息系统可以由想要提供依照本发明的信息同步系统的地区(比如,一个国家)所授权的操作人员来操作。因此,尽管这个同步信息系统逻辑上在一个服务器上操作,该系统可以在一个以上服务器上操作。
图3是一个结构图,示出了依照本发明的一个实施例的内容提供系统的结构。该内容提供系统可以包括具有数据库进入模块302的分析单元301,数据库303,同步服务服务器304,DRM模块305,和文件服务器306的分析单元301。依照本发明的一个实施例,DRM模块305和文件服务器306可以包含在依照本发明的内容提供系统中或者位于物理上间隔的外部系统中并且依照本发明的内容提供系统的控制运行。
分析单元301存储依照本发明的内容提供系统所执行的操作的记录并且为系统管理人员提供各种统计数据。依照本发明的一个优选实施例,分析单元301可以基于页面操作。这时,优选安装JAVA应用程序服务器。
依照本发明的分析单元301,1)在数据库303中存储所有种类的历史信息,和2)在数据库303中存储从网络服务器传输的信息,和3)基于所存储的历史信息向系统管理者报告所有种类的统计信息。另外,分析单元301进一步包括数据库进入控制模块302并控制对数据库303的进行。
数据库进入控制模块302用来访问内容提供系统中的数据库303。数据库进入控制模块302可以以XML-RPC(可扩展标示语言-远程进程调用)实现并且使用HTTP(超文本传送协议)。因此,数据库进入控制模块302可以给使用依照本发明的同步服务的用户提供内容,而不妨碍安全措施,比如网络国边缘的防火墙。
数据库303通常可以包括用户信息数据库装置(没有示出)和同步通道数据库装置(没有示出)。该用户信息数据库装置是存储关于预定内容用户、该用户的内容购买和被该用户购买的内容的信息的数据库。这时,该信息在同步服务服务器模块304中使用。依照本发明的一个实施例,用户信息数据库装置可以被设计为可通过数据库进入控制模块302访问。另外,同步通道数据库装置是存储关于用户的内容购买和被该用户购买的内容的信息的数据库,其中该信息在依照本发明的内容提供系统中使用。另外,依照本发明的该内容提供系统可以进一步包括数据库管理单元(没有示出)用来管理数据库303。该数据库管理单元可以通过使用关系型数据库管理系统(RDBMS),比如Oracle、Infomix、Sybase、DB2等,或者面向对象型数据库管理系统(OODBMS),比如Orion、O2等来实现本发明的目的。
依照本发明的同步服务服务器304对通过通讯从同步化客户端传送来的所有信息进行解析和分析并传送预定的信息到同步化客户端。依照本发明的一个实施例,尽管一个同步服务系统逻辑上可以在一个内容提供系统中运行,但它可以被设计为能够通过使用多流方法在同一时间处理一个以上同步化客户端的请求。另外,依照本发明的一个实施例,同步服务服务器340可以用Java来实现并可在所有运行JVM的操作系统中运行。并且它可以设计为通过以无连接方式与同步化客户端链接以最小化服务器负荷。而且,依照本发明的一个实施例,同步服务服务器304可以是数据自适应鉴定监视器服务器(daemonserver)。本领域内的熟练技术人员都明白的是,该数据自适应鉴定监视器服务器是安装在服务器中以符合客户请求的服务程序。INETD可以被用作数据自适应鉴定监视器服务器的一种方法。当该数据自适应鉴定监视器服务器启动时,进程只有在有客户请求时才会装载。因此,这个数据自适应鉴定监视器服务器可能响应较慢。但是,该数据自适应鉴定监视器服务器可以有效地使用存储器。
依照本发明的同步服务服务器304可以被设计为1)处理同步化客户端的连接,2)注册便携装置,3)产生便携装置可下载的信息的列表,4)传输预定内容给便携装置,5)更新传送完成的内容信息,或6)恢复删除的装置ID。被传送到便携装置的内容可以被分组为正在更新的进行中的内容(不没有结束的教育内容)、其中期间预定且每一内容在预定期间中产生的系列内容(语言内容等的过期期刊),或者单一内容(单个内容,比如,歌曲,铃声,屏幕背景等)。前面提到的功能3)到6)可以被设计为依照上述的分组内容逐步实施。
DRM模块305加密记录在文件服务器306中的内容。依照本发明的一个优选实施例,DRM模块305可以是通过基于XrML(可扩展权利标识语言)的使用规则来加密内容的程序。本领域的熟练技术人员都明白的是,XrML是表达相应内容的信息或者相应内容的数字权利的语言。因此,在XrML中通过使用DRM进行授权以及显示各个授权的费用和访问条件是可能的。依照本发明的DRM模块305给想要使用依照本发明的同步服务的用户分配认证密钥并且通过同步化客户端将用户请求的内容在加密后传输给用户。依照本发明的另一个实施例,可以使用一种其中DRM模块305不在内容提供系统中并且内容不加密的将信息传送给同步化客户端的方法。那就是,未加密的信息可以传输给同步化客户端。该同步化客户端可以加密该内容并且将该加密过的内容传输给便携装置。便携装置可以通过使用预定的解密密钥解密该加密的内容进行显示。
文件服务器306将内容储存为文件,其中该文件被传输给便携装置。储存在文件服务器306中的内容可以依照本领域熟练技术人员熟知的加密方法来储存。
DRM模块305和文件服务器306可以在内容提供系统之中。另外,它们也可以物理地在内容提供系统之外,这时DRM模块305和文件服务器306可以依照本发明与内容提供系统联结在一起。
接口单元307是通过有线/无线网络与同步化客户端进行通讯的模块。接口单元307可以和同步化客户端传输数据并且可以解压缩所传输的数据。
图4a是依照本发明的一个实施例安装在用户的个人电脑上的同步化客户端的结构示意图。
在图4a中示出的该同步化客户端通过和同步信息系统或者内容提供系统通讯,为用户的便携装置传输预定内容,该预定内容是由用户指定的。该内容被加密以保护数字权利。该同步化客户端在解密加密过的内容后,传送该解密过的内容给便携装置。各内容提供系统可能会采用各种DRM方法。因此,该同步化客户端可以设计为通过API(应用程序接口)方式装载用于各种DRM方法的解密模块。该解密模块可以连续更新并且,即使一个新的DRM方法被开发,它也可以通过更新以解密相应内容。
如图4中所示,依照本发明的第一个实施例的同步化客户端可以包括用户接口401,通讯模块402,加密/解密模块403,便携装置管理模块404,和同步驱动器405。
用户接口单元401提供接口以便用户可以方便地使用同步化客户端。同步化客户端的用户接口的一个例子在图4b中示出。参照图4b,图4b的左图是该同步化客户端的一个界面示例,右图是用来管理用户想要使用的内容和控制该内容可以下载到用户的个人计算机上的用户接口的示例。
通讯模块402是用来完成与同步信息系统及内容提供系统之间的通讯的模块。依照本发明的一个实施例,和前述的系统之间的通讯可以用传送/接收基于XML消息的方式来完成。这个基于XML的消息可以包含包括用户认证信息或内容信息的登录信息,或内容列表信息,装置ID,同步请求,便携装置注册请求等。
加密/解密模块403是用来解密被加密为各种格式的内容的模块。其中被加密的内容由内容提供系统传送。因此,加密/解密模块403可以包括至少一个解密API。加密/解密模块403可以包括解密模块,它可以相应于至少一个用来加密对应于内容提供系统中的内容的文件数据的加密模块。
同步驱动器404是驱动模块,用来在同步化客户端和便携装置之间传输数据。依照本发明的一个优选实施例,同步化客户端和便携装置间的连接可以是USB。因此,本领域技术人员都明白该USB连接到个人计算机的外围设备,其中USB包括USB网络集线器,USB节点和USB主机。
图5是示出了依照本发明的一个实施例通过网络在内容提供者和便携装置之间同步数据的方法的流程图。图5中示出的方法可以包括以下步骤:
该同步化客户端在S501中与便携装置建立对话。这时,建立对话可以以检测便携装置的连接状态和装载同步化客户端的同步驱动器的方式进行。当该对话建立时,在S502中该同步化客户端确定是否装置ID存储在便携装置中。如果该装置ID被存储了,在S503中该同步化客户端传送登录信息到内容提供系统,其中登录信息包括用户认证信息(用户ID,密码或装置ID)或者要被同步的内容信息。内容提供系统在S504中接收登录信息。除非该装置ID被储存了,即,如果因为该便携装置的固件升级使得唯一给定的装置ID被删除而请求新的ID,该同步化客户端转到图6b并且进行操作以接收新的装置ID。
内容提供系统在S505中分析接收到的登录信息并在S506(用户认证步骤)中确定该从同步化客户端传送来的登录信息是否由正确用户传送。如果他/她是正确的用户,内容提供系统在S508中通过访问用户信息数据库寻找对应于包含在登录信息中的内容信息的内容列表信息,其中内容列表信息由用户设定。在S508中该内容提供系统通过控制文件服务器提取相应的文件数据并且传送所提取的文件数据到同步化客户端。
在S510中该同步化客户端由内容提供系统接收加密过的文件数据并且在S511中解密所接收到的文件数据。当内容在S511中被解密时,同步化客户端可以分配PC存储器的特定区域作为临时缓冲器,解密被分割为预定大小的内容并且传送解密过的内容到便携装置。这时,该便携装置可以存储所分割的内容。也就是,被解密的文件数据在解密过程中可以不作为临时文件的类型(*.tmp)来存储且可以在按顺序接收时解密至少一个相应的临时缓冲。这样就防止了通过存储器转储等未经授权地存储相应的解密文件。
依照本发明的一个实施例,同步化客户端在S512中通过预定的加密模块重新加密解密后的文件数据。这是为了在便携装置和内容之间传送数据时更好的保护数字权利。该同步化客户端可以通过预定的连接方法比如USB传送加密过的文件数据到便携装置。这时,便携装置可以通过解密该传送的文件数据来使用它。
如果文件数据的传送正常结束,在S514中内容提供系统更新的数据库303的内容列表信息(比如,相应的内容的下载,下载的数据)。
除非用户认证正常进行,也就是说,除非相应的便携装置的登录信息在内容提供系统中注册,该内容提供系统转到图6a(S507)运行。
图6a和6b是流程图,示出了依照本发明的一个实施例注册便携装置和给予它装置ID的方法。
图6a是流程图,示出了依照本发明的一个实施例的请求装置注册的一种方法。
S507中如果确定进行装置注册请求,内容提供系统转到在图6a中示出的程序。S601中该内容提供系统传送装置注册信息到同步信息系统。该装置注册信息可以包括用户ID,密码和相应的装置ID。该内容提供系统在S602中接收装置注册信息并在S603中记录包含在该信息中的用户ID、密码或者装置ID到前述的同步信息数据库中。S604中同步信息系统传送相应便携装置的注册完成信息到内容提供系统。该内容提供系统在S605中接收传送的信息并在S606中更新相应的便携装置的信息,其中该信息记录在数据库中。在S606中执行的数据库信息更新可以用这样一种方式执行,它将字段值从未注册更新为注册,其中该字段值表示该用户是否注册。在更新数据库后,内容提供系统可以转到图5中的S503以及执行内容同步服务。依照本发明的另一个实施例,本发明可以构造为忽略S602到S604步骤,以只在内容提供系统中执行装置ID注册程序,和周期性的或非周期性的依照实现内容提供系统的方法或者系统特征进行与同步信息系统的数据同步。
图6b是流程图,示出了依照本发明的一个实施例给予便携装置的装置ID的一种方法。
S502中如果确定把装置ID赋予便携装置,转到图6b中示出的程序。S651中该同步化客户端传送关于请求装置ID的信息给同步信息系统。该装置注册信息可以包括用户ID,密码,或者生产厂家唯一地赋予该便携装置的装置ID。S652中同步信息系统接收请求装置ID的信息以及在S653中给予用户ID,密码,或者相应于包括在接受到的信息中的生产商装置ID的唯一的装置ID。在S653中,该相应的装置ID可以为8位大小。此时,该装置ID可以由国家信息,生产商信息,产品型号信息,产品识别信息,产品生产号码或者序列号组成。该同步信息系统在S654中在前述的同步信息数据库中记录给出的相应的便携装置的装置ID,用户ID和密码。在S655中,该同步信息系统传送该装置ID给同步化客户端。该同步化客户端在S656中接收该装置ID以及在S657中储存接收的装置ID。在S657中储存的装置ID可以传送给便携装置并且记录在预定的存储装置中。将该装置ID储存在同步化客户端或者便携装置中之后,内容提供系统可以再次转到图5中的S503并且执行内容提供系统。
如前所述,从同步化客户端传送来的所有的登录信息或者便携装置相关信息都被同步信息系统所管理。这样是为了集中地执行便携装置管理。那就是,每个便携装置被赋予唯一的装置ID以及用户信息被一个同步信息系统管理。因此,只有当具有一个用户ID,一个密码或者唯一的装置ID时,可以连接多个内容提供系统。
同时,依照本发明的另一个实施例,已解密的内容在传送给便携装置之前,可以通过预定的加密方法再次加密。
图7a是结构框图,示出了依照本发明的第一实施例的通过网络便携装置的同步化客户端和内容提供系统的结构。
参照图7a,内容提供系统有多个DRM加密模块701~70n并且在对各个内容提供器以分别不同的DRM模块加密用户请求内容后,为同步化客户端提供加密后的内容。
同步化客户端710通过和内容提供系统700的通讯,从内容提供系统700接收相应于预定内容信息的加密文件数据。同步化客户端710解密所接收到的文件数据并加密该解密的数据以便其只能在便携装置730中使用。同步化客户端710将加密后的文件数据传送给便携装置730。内容提供系统700中的各个内容提供商可以使用分别不同的加密方法。因此,该同步化客户端包括多个DRM解密模块711~71n以对应于多个DRM加密模块701~70n的加密方法。多个DRM解密模块711~71n可以持续升级以及,如果内容提供系统700采用新的DRM方法,可以通过更新对应于该DRM加密方法的DRM解密方法来解密以该DRM加密方法加密的内容。
同步化客户端710包括多个DRM解密模块711~71n,安全模块721,装置加密模块722和便携装置接口模块723。
多个DRM解密模块711~71n传送用户认证信息或者用户请求内容信息给内容提供系统700并且接收来自内容提供系统700的加密后的文件数据。此时,用户认证信息可以包括用户ID,密码和便携装置的装置ID中的至少一个-该便携装置ID具有唯一值。这个装置ID可以是相应的便携装置的产品ID。多个DRM解密模块711~71n通过预定的DRM模块解密接受到的文件数据。该DRM模块相应于装备在内容提供系统700中的多个DRM加密模块701~70n操作。这是为了解密由内容提供系统700提供的所有加密内容。多个DRM解密模块711~71n可以用至少一个动态链接库文件(后面称为,DLL)实现。如上所述,该同步化客户端解密由内容提供系统提供的加密文件数据是为了解决现有技术中的问题。如果加密过的文件数据必须在便携装置中解密或者如果文件数据的加密方法对于各个内容提供商不同的话,现有技术的便携装置730要求具有对应于各个加密方法的解密模块。那就是,同步化客户端710解密在内容提供系统700中被加密为多种格式的数字内容并在用预定的DRM方法将该解密的数字内容加密后传送该加密的数字内容给便携装置730,从而便携装置730可以通过一种解密模块播放加密的数据内容。
安全模块721控制对该解密模块的访问。因此,如果有任何对该解密模块的访问,安全模块721判断该访问应用程序程序是否被授权并且在判断的基础上控制该应用程序对该解密模块的访问。因此,访问可以包括所有对该文件的访问,比如生成/打开/读/写/删除等等。安全模块751可以控制该应用程序的访问。例如,安全模块721可以使解密模块的文件本身不可见以便应用程序比如资源管理器不能查找到这个解密模块。或者安全模块721可以用这样一种方式控制该应用程序,即该文件储存的文件夹可以查找到但是不能进入。或者,安全模块721可以用这样一种方式控制该应用程序,即除被允许访问该文件的应用程序以外的其他应用程序不能访问该文件,尽管该文件夹的文件是可见的。
安全模块721通过过滤驱动器或者挂钩方法(hooking method)的装置驱动器监视所有对OS文件的访问以及允许可以访问解密模块的应用程序去访问该模块。安全模块721通过使用预定的加密密钥方法在解密模块中储存加密的文件并且通过驱动器监视想要访问该解密模块的应用程序。如果该应用程序被允许访问,安全模块721实时解密加密过的文件并且传送解密后的文件给该应用程序。
除非由于病毒程序比如黑客程序或者由于自我检测安全模块721工作正常,除被允许访问的应用程序以外的其他程序可以没有授权而访问该解密模块。这时,该解密模块以加密文件的形式暴露。然而,因为该解密模块的文件本身为加密文件的类型,通过加密的解密模块的文件来正常地解密该加密数字内容是不可能的。
如上,尽管安全模块721没有正常运行以及该加密的解密模块的文件未经授权被访问,解密该加密过的数字内容是不可能的,除非该加密的解密模块的文件被解密。因此,尽管该加密过的数字内容被未经授权复制,如果没有解密过,它是不能正常使用的。
如果预定应用程序想要通过在驱动器中包括预定认证信息访问该解密模块,安全模块721将该认证信息传送给解密模块并执行认证,其中驱动器在访问该解密模块时运行。此时,如果该应用程序经过认证,安全模块721可以使它能够访问该解密模块。
为了保持解密过的数据的安全性,安全模块721可以阻止其他应用程序访问存储有解密过的数据的存储器,除非是装置加密模块722加密了解密后的数据的情形。如果除加密模块之外的其他应用访问该解密过的文件数据,该解密过的文件数据可能未经授权被复制和非法传播和使用。因此,这里有一个防止前述问题的解决方法。安全模块721使得在多个DRM解密模块711~71n中管理的文件数据只有通过操作系统(OS)的核心水平才能被访问,因此安全模块721可以用这样一种方法控制其他应用程序,即该解密过的文件数据不能被其他应用程序所用。
装置加密模块722访问和加密解密过的文件数据以便该文件数据只在预定的便携装置中是可用的。装置加密模块722可以相应于便携装置中的解密模块运作并通过使用加密密钥在解密过的文件数据中加密便携装置730的用户认证信息。装置加密模块722可以使用预定的认证密匙加密相应的内容或者授权传送给便携装置730的加密内容。
便携装置接口模块723传送加密过的文件数据给便携装置730以及从便携装置730接收用户认证信息或用户请求内容信息。该内容信息包括关于用户想要使用的内容的信息。
便携装置730从同步化客户端710接收加密过的文件数据以及通过预定的解密模块解密所接收到的文件数据。该解密模块相应于同步化客户端710的装置加密模块722运行。该解密模块可以通过使用便携装置730的相应的用户认证信息来解密加密过的文件数据,其中文件数据在同步化客户端710中的装置加密模块722中被加密。
图7b是结构框图,示出了依照本发明的第二实施例便携装置的同步化客户端和内容提供系统通过网络的结构。
参照图7b,内容提供系统具有多个DRM加密模块751~75n以及在对各个内容提供商使用分别不同的DRM模块加密内容后,为同步化客户端760提供用户请求内容。
同步化客户端760可以包含多个解密包761~76n以及装置解密包770。同步化客户端760通过与内容提供系统750的通讯从其上接收对应于预定内容信息的加密过的文件数据。同步化客户端760可以在多个解密包761~76n中保持DRM解密模块和应用访问控制模块,其中DRM解密模块解密由内容提供系统750提供的加密文件数据,而应用访问控制模块控制访问该DRM解密模块或其中的解密文件数据的应用。
各自不同的加密方法可以应用于内容提供系统750的各个内容提供商。因此,该DRM解密模块可以设计用来执行至少一个解密程序。这样以便解密模块可以相对于DRM加密模块751~75n的加密方法。不管何时有新的DRM方法出现,该DRM解密模块可以连续更新以及,如果内容提供系统750采用了新的DRM方法,可以通过升级来解密相应的内容。这样DRM解密模块就可以相应于内容提供系统750的多个DRM加密模块751~75n操作。这是为了DRM解密模块可以解密内容提供系统750提供的所有加密的内容。如上述,该同步化客户端760解密内容提供系统750提供的加密文件数据是为了解决现有技术中的问题。如果便携装置780解密该文件数据或者如果文件数据的加密方法对于各个内容提供商不同,现有技术中的便携装置780要求具有各自的加密方法的解密模块。也就是,多个解密包761~76n解密在内容提供系统750中被加密成各种格式的数字内容以及在使用预定的DRM方法加密所解密过的数字内容后,将加密过的数据内容传送给便携装置780,从而便携装置730可以通过一个解密模块播放加密过的数据内容。
应用访问控制模块基于要求文件数据的装置同步包770是否是经过认证的应用来允许/阻止该应用对DRM解密模块或对其中的已经解密过的文件数据的访问。如果装置同步包770是经过认证的应用,该应用访问控制模块允许装置同步包770访问DRM解密模块或者访问该文件数据,其中文件数据通过DRM解密模块被解密。该应用访问控制模块监视要求访问该解密过的文件数据的应用的请求或应用对DRM解密模块本身的访问,其中应用在装置同步包770中操作。如果有访问该解密文件数据的请求或如果有对该DRM解密模块的访问,应用访问控制模块判断该应用是否被授权并基于判断使该应用能够访问解密后的文件数据或DRM解密模块。
通过DRM解密模块解密过的文件数据被传送到装置同步包770。这是一个防止未授权复制和非法发布的解决方法。因为,如果除依照本发明的装置同步包770之外的其他应用可以访问该解密过的文件数据或DRM模块,该解密过的文件数据可能被未经授权的复制和非法传播或利用。
装置同步包770可以包含装置加密模块772和便携装置接口模块773。装置同步包770访问解密后的文件数据并通过装置加密模块772进行加密并且传送加密后的文件数据给便携装置接口模块773,其中文件数据包括便携装置的用户认证信息。该用户认证信息可能包括用户ID,密码,以及用户的便携装置ID中的至少一个-该便携装置ID具有唯一值。该装置ID可以是相应便携装置的产品ID。
装置加密模块772通过预定的应用访问由多个解密包761~76n解密的文件数据并且加密该解密过的文件数据使得该文件数据只能在预定的便携装置中使用。装置加密模块772可以对应于便携装置780中的解密模块运行并且在该解密过的文件数据中使用加密密钥加密便携装置780的用户认证信息。该装置加密模块772可以被设置为使用预定的认证密匙或授权证书来加密该内容。这样是为了加密传送到便携装置780中的内容。
便携装置接口模块773传送加密过的文件数据到便携装置780以及从便携装置780中接收用户认证信息或用户请求内容信息。该内容信息包括有关用户想要使用的内容的信息。
便携装置780从同步化客户端接收加密过的文件数据并且通过预定的解密模块解密接收到的文件数据。该解密模块对应于同步化客户端760中的装置加密模块772运行。该解密模块可以使用便携装置780的相应的用户认证信息解密文件数据,其中文件数据在同步化客户端760中的装置加密模块772中加密。
如前所述,如果同步化客户端中的解密的内容在被传送到便携装置之前通过预定的加密方法被重新加密,在内容提供系统和便携装置之间传送的内容就被再一次加密。因此,数字权利得到了更强的保护。即,如果在同步化客户端和便携装置之间传送的内容数据没有加密,相应的内容可能通过多个便携装置未经授权而复制。这是因为目前便携装置被用作大容量存储装置。因此,相应内容的数字权利可以通过阻止未经授权的复制被保护。
该同步化客户端被要求具有至少一个解密模块以解密在至少一个内容提供系统中加密的内容。然而,便携装置只要求具有一个解密模块以解密从同步化客户端传送来的内容。因此,便携装置的负荷就减少了。
图8是流程图,示出了依照本发明的另外一个实施例,通过网络在内容提供系统和便携装置之间同步数据的一种方法。
参照图8,该便携装置在S801和S802中传送用户认证信息和内容信息到同步化客户端。该用户认证信息包括用户ID,密码,和用户的便携装置ID中的至少一个,其中便携装置ID具有唯一值。该内容信息包括有关用户在便携装置中想要使用的内容的信息。
同步化客户端在S803中传送分别在S801和S802中接收到的用户认证信息和内容信息给内容提供系统。内容提供系统在S804中从同步化客户端接收该信息。该内容信息包括关于用户在便携装置中想要使用的内容的信息。该内容提供系统通过接收到的用户认证信息认证用户。该用户认证通常是使用包括在所接收到的用户认证信息中的用户ID,密码或用户装置ID来识别用户的过程。在用户认证步骤中,该用户被识别。此时,如果用户想要使用付费内容,确认支付该内容的费用的方法也是可能的。如果用户认证完成了,该内容提供系统在S806中依照接收到的内容信息查找储存在预定数据库中的内容并且传送相应于接收到的内容信息的加密的文件数据给同步化客户端。对于各个内容提供系统加密文件数据的加密方法可能是不同的。同步化客户端在S807中接收相应于内容信息的加密的文件数据,其中内容信息从预定的内容提供系统传送来。
在S808中,同步化客户端的安全模块控制应用对解密模块的访问以便未被允许访问该预定解密模块的应用不能访问它。S808是通过控制应用对解密模块的访问来阻止未经授权的复制或转化的程序,其中只有被允许访问该解密模块的应用程序可以访问和解密加密文件而未经允许访问的应用不能访问该解密模块。解密模块可以仅通过操作系统的核心水平来控制对其的访问。该解密模块通过预定的加密密钥方法存储为加密文件的类型。如果想要访问该解密模块的应用程序是一个被允许的程序,该加密文件被实时解密和传送给该应用程序。
在S809中该同步化客户端通过预定的解密模块解密接收到的文件数据。该解密模块可以由至少一个动态链接库文件组成。该解密相对于在内容提供系统中的加密模块中执行的加密来运行从而各文件数据可以被解密,其中文件数据以由各自不同的内容提供系统提供的分别不同的加密方法来加密。该同步化客户端在S810中再次加密解密的文件数据以便该解密过的文件数据只在该便携装置中使用。S810是仅当该便携装置中具有一个解密模块时通过加密该解密的文件数据,使得加密后的文件数据能被解密的程序,其中S810对应于安装在便携装置中的预定加密模块。在S811中该同步化客户端相应于接收到的传送内容的请求并且传送加密后的文件数据给该便携装置。在S812中,该便携装置从同步化客户端接收加密后的文件数据并且在S813中通过预定的解密模块解密该加密文件数据。
本发明的实施例包括具有使得计算机具体执行各种操作的程序指令的计算机可读介质。该介质还可以包括,单独地或与程序指令结合,数据文件,数据结构,表等。该介质和程序指令可以是为了本发明的目的专门设计和构造的,或者是那些计算机软件领域的技术人员都广泛知道的和可得到的。计算机可读介质的例子包括磁介质比如硬盘,软盘,和磁带;光介质比如CD-ROM盘;磁-光介质比如光磁软盘;以及被专门配置用来存储和执行程序指令的硬件装置,比如只读存储装置(ROM)和随机存取存储器(RAM)。该介质也可以是一个传输介质比如光学或者金属线,波导等等,包括指定该程序指令、数据结构等的载波传输信号。程序指令的例子包括机器码,比如由编译器生成的,和包含由计算机使用解释器来执行的高级代码的文件。
图9是通用计算机的内部结构框图,它被经常用于执行依照本发明通过网络在内容提供器和便携装置之间同步数据的方法。
计算机系统900包括任意数目的连接到包括主存储器(通常随机存取存储器,或“RAM960”),主存储器(通常只读存储器,或“ROM970”)的存储装置上的处理器940(也称作中央处理单元,或CPU)。如本领域公知的,ROM 970用于向CPU单向传送数据和指令,而RAM 960被用来以双向方式传送数据和指令。这两种主存贮装置可以包括上面讨论过的适合计算机可读的介质的任意一种。大容量存储装置910也双向连接到CPU并提供额外的数据存储能力并且可以具有上面讨论过的计算机可读介质的任意一种。该大容量存储装置910可以用来存储程序,数据等等,并且通常是辅助存贮媒质,比如比主存储器慢的硬盘。特定的大容量存储装置,比如CD-ROM 920也可以单向的给CPU传送数据。处理器940还连接到网络接口950,具有一个或多个输入/输出装置,比如视频监视器,跟踪器,鼠标,键盘,麦克风,触控式显示器,传感卡读卡机,磁带或者纸带阅读机,图形输入板,描画针,声音或手写识别器,或者其他众所周知的输入装置比如,当然包括其他的计算机。最后,处理器940任选连接到计算机或者使用通常如950所示的网络连接的通讯网络。使用这样的网络连接,可以想像到该CPU可以从网络上接收信息,或者可在执行上面讨论的方法时输出信息到网络上。上面讨论的装置和材料对计算机硬件和软件领域中的技术人员来说时非常熟悉的。
上面的硬件部件可以配置成如同一个或多个执行本发明的操作软件模块。
前面对发明的特定实施例的描述是为了示例和描述的目的。它并不是试图穷尽或将本发明限制到公开的精确形式,并且很明显地在上述范围内可以有很多修改和变化。因此,本发明的范围由所附的权利要求和他们的等同范围所确定。