拷贝保护的软件卡盒

2017-01-11 19:36

一种优选地与游戏控制台(1)一起使用的卡盒(2)。卡盒(2)包括:ROM(21)、非易失性存储器

和加密单元。在控制台上运行的应用程序(3)从ROM(21)中读取数据、从非易失性存储器(22)中读取数据、以及将数据写入非易失性存储器(22)。要写入非易失性存储器(22)中的数据由加密单元(23)进行加密,但返回加密形式的要读取数据以供游戏应用程序(3)的解密功能进行解密。也可以接收到加密形式的数据,以进行解密和返回。加密或解密单元也可以从非易失性存储器(22)接收数据,并将该数据发送给接口

(24、42)。因为如果在加密单元(23)未知的情况下,黑客为了拷贝必须修改游戏应用程序(3),所以本发明提高了现有的拷贝保护。本发明还提供了一种配备有接收RFID(41)的光学介质(4)。

1.一种适合于与控制台(1)一起使用的拷贝保护存储载体(2、4),所述存储载体(2、4)

适合于可释放地连接至控制台(1)并包括:数据存储区(21),存储在控制台(1)上可执行的应用程序;以及接口(24、42),适合于:经由控制台(1)的接口(14、43)向控制台(1)发送从数据存储区(21)读取的应用程序数据;

其特征在于,所述存储载体(2、4)还包含:存储器(22),适合于存储接口(24、42)从在控制台(1)上执行的应用程序(3)接收到的应用程序参数数据;密码单元(23、25),适合于从接口(24、42)接收应用程序参数数据,对接收到的应用程序参数数据执行密码操作,以及将接收的应用程序参数数据存储到存储器(22)中;其中,接口(24、42)还适合于:从存储器(22)中读取应用程序参数数据;经由控制台(1)的接口(14、43)将读取的应用程序参数数据通信至在控制台(1)上执行的应用程序(3);以及接口(24、42)从在控制台(1)上执行的应用程序(3)接收加密形式的应用程序参数数据,并将未加密形式的应用程序参数数据返回给在控制台(1)上执行的应用程序(3),或者从在控制台上(1)执行的应用程序(3)接收未加密形式的应用程序参数数据,并将加密形式的应用程序参数数据返回给在控制台(1)上执行的应用程序(3);并且在控制台(1)上可执行的应用程序包括用于对要发送至接口的应用程序参数数据进行加密的加密密钥,或用于对从接口接收到的加密的应用程序参数数据进行解密的解密密钥。

2.一种适合于与控制台(1)一起使用的拷贝保护存储载体(2、4),所述存储载体(2、4)

适合于可释放地连接至控制台(1)并包括:数据存储区(21),存储在控制台(1)上可执行的应用程序;以及接口(24、42),适合于:经由控制台(1)的接口(14、43)向控制台(1)发送从数据存储区(21)读取的应用程序数据;

其特征在于,所述存储载体(2、4)还包括:存储器(22),适合于存储接口(24、42)从在控制台(1)上执行的应用程序(3)接收到的应用程序参数数据;密码单元(23、25),适合于从存储器(22)接收应用程序参数数据,对接收到的应用程序参数数据执行密码操作,以及将接收到的应用程序参数数据发送给接口(24、42);其中,接口(24、42)还适合于:经由控制台(1)的接口(14、43)从在控制台(1)上执行的应用程序(3)接收应用程序参数数据;以及

将接收到的应用程序参数数据存储在存储器(22)中;以及接口(24、42)从在控制台(1)上执行的应用程序(3)接收加密形式的应用程序参数数据,并将未加密形式的应用程序参数数据返回给在控制台(1)上执行的应用程序(3),或者

从在控制台(1)上执行的应用程序(3)接收未加密形式的应用程序参数数据,并将加密形式的应用程序参数数据返回给在控制台(3)上执行的应用程序(3);并且在控制台(1)上可执行的应用程序包括用于对要发送至接口的应用程序参数数据进行加密的加密密钥,或用于对从接口接收到的加密的应用程序参数数据进行解密的解密密钥。

3.根据权利要求1或2所述的存储载体(2、4),其中,密码操作是对数据的解密,并且接口适合于从控制台(1)接收加密形式的数据,并将未加密形式的数据返回给控制台(1)。

4.根据权利要求1或2所述的存储载体(2、4),其中,密码操作是对数据的加密,并且接口适合于从控制台(1)接收未加密形式的数据,并将加密形式的数据返回给控制台(1)。

5.根据权利要求1或2所述的存储载体,其中,存储载体是卡盒(2),数据存储区是存储器。

6.根据权利要求1或2所述的存储载体,其中,存储载体是实现数据存储区的光存储介质(4),所述光存储介质具备实现接口(24、42)、存储器(22;24)和加密单元(23、25)的RFID电路(41)。

7.根据权利要求1或2所述的存储载体,其中,用于对数据进行加密的算法基于非对称密码术。

拷贝保护的软件卡盒

技术领域

本发明总体上涉及计算机软件,具体涉及用于卡盒(cartridge)上软件的拷贝保护。

背景技术

本节旨在向读者介绍与以下描述和/或要求保护的本发明的各方面有关的现有技术的各方面。相信此处的讨论有助于向读者提供背景知识,以便更好地理解本发明的各个方面。因此,应当理解的是应该据此阅读这些说明,而不应将这些说明视为对现有技术的认可。

计算机程序,特别是计算机游戏(下文中用作非限制示例),长久以来存储在卡盒内,卡盒,以便于使用,其他优点是即时访问软件以及封装坚固。这样的卡盒典型地包括与控制台交互的接口、存储软件应用程序的ROM、以及用于存储游戏参数的另一存储器,优选地,非易失性存储器。

然而,这些卡盒上的软件几乎像‘普通’软件一样容易被拷贝。自然,软件供应商已经提出针对拷贝防御,例如采用专用接口与芯片集、对软件应用程序加密。不幸的是,黑客还是能够攻破现有防御体系,实际上,可以在互联网上(例如,专门用于攻击的站点上)

找到所有当前程序。

欧洲专利申请EP07300965提供了一种用于保护预先记录的介质的系统。此介质与安全处理器相关联,安全处理器中存储了玩家完全访问内容所需的信息和软件。无论玩家什么时候需要该信息或软件的结果,都需要和安全处理器联系并等待响应。这种解决方案的缺点是不习惯与安全处理器交互的的玩家不能够使用该内容。

因此,应认识到,需要提出一种提高对卡盒上的软件的拷贝保护的解决方案,优选地,使得能够继续使用现有的控制台。本发明提供了这样的解决方案。

发明内容

在第一方面,本发明涉及一种适合于与控制台一起使用的拷贝保护存储载体。存储载体包括:存储器,适合于存储应用程序参数数据;数据存储区,适合于存储在控制台上可执行的应用程序的至少一部分;以及接口,适合于经由控制台的接口向控制台发送从数据存储区读取的应用程序数据、从存储器中读取应用程序参数数据、以及经由控制台的接口将读取的应用程序参数数据通信至在控制台上执行的应用程序。存储载体还包含:密码单元,适合于从接口接收应用程序参数数据、对接收到的应用程序参数数据执行密码操作、以及将接收的应用程序参数数据存储到存储器中。接口还适合于从在控制台上执行的应用程序接收加密形式的应用程序参数数据,并将未加密形式的应用程序参数数据返回给在控制台上执行的应用程序,或者从在控制台上执行的应用程序接收未加密形式的应用程序参数数据,并将加密形式的应用程序参数数据返回给在控制台上执行的应用程序。

第二方面,本发明涉及一种适合于与控制台一起使用的拷贝保护存储载体。存储

载体包括:存储器,适合于存储应用程序参数数据;数据存储区,适合于存储在控制台上可执行的应用程序的至少一部分;以及,接口,适合于经由控制台的接口向控制台发送从数据存储区读取的应用程序数据、经由控制台的接口从在控制台上执行的应用程序接收应用程序参数数据、以及将接收到的应用程序参数数据存储在存储器中。存储载体还包括:密码单元,适合于从存储器接收应用程序参数数据、对接收到的应用程序参数数据执行密码操作、以及将接收到的应用程序参数数据发送给接口。接口还适合于从在控制台上执行的应用程序接收加密形式的应用程序参数数据,并将未加密形式的应用程序参数数据返回给在控制台上执行的应用程序,或者从在控制台上执行的应用程序接收未加密形式的应用程序参数数据,并将加密形式的应用程序参数数据返回给在控制台上执行的应用程序。

在第一优选实施例中,密码操作是对数据的解密,并且接口适合于从控制台接收加密形式的数据,并将未加密形式的数据返回给控制台。

在第二优选实施例中,密码操作是对数据的加密,并且接口适合于从控制台接收未加密形式的数据,并将加密形式的数据返回给控制台。

在第三优选实施例中,存储载体是卡盒,数据存储区是存储器。

在第四优选实施例中,存储载体是实现数据存储区的光存储介质。光存储介质具备实现接口、存储器和加密单元的RFID电路。

在第五优选实施例中,用于对数据进行加密的算法基于非对称密码术。

附图说明

参照附图,通过非限制示例,描述本发明的优选特征在附图中:

图1示出了根据本发明的优选实施例的具有卡盒的控制台;

图2示出了根据本发明另一实施例的具有卡盒的控制台;

图3示出了根据本发明变型的具有光学介质的控制台。

具体实施方式

图1示出了根据本发明优选实施例的具有卡盒2的控制台1。在说明书中,术语“控制台”用于表示能够与卡盒交互的设备,以使得执行在卡盒上存储的应用程序,术语“卡盒”用于表示一种使用固态存储器来存储应用程序的物理对象。有利地,卡盒2可释放地连接至控制台1。

控制台包括用于执行软件应用程序的一个或多个处理器10以及用于实现物理和逻辑接口的接口管理器14,物理和逻辑接口用于与卡盒2交互。接口14可以通过典型的地址/数据双向总线或调用来实现一个或多个功能。

控制台还包括:存储至少一个应用程序、固件或中间件的只读存储器(ROM)11;用于存储临时数据和从卡盒2中加载的游戏应用程序3的随机存取存储器(RAM)12;通过例如屏幕和扬声器、以及密钥、按钮和触摸屏与一个或多个用户进行交互的用户界面13。处理器10适用于执行ROM中的至少一个应用程序以及存储在RAM12中的游戏应用程序3。

优选地,接口14自动检测卡盒2的存在。典型地,当没有卡盒2时,总线是不通电的,也不供电。只要有卡盒2,就给卡盒2供电,并且也给数据总线通电。供电并不应视为超出本发明的范围。

卡盒2包括适用于与控制台1的接口14进行通信的接口24。卡盒2还包括:将游戏应用程序存储在固定地址(例如,0x00000)处的ROM21,以及适用于存储诸如游戏中玩家当前位置等游戏参数的至少一个非易失性存储器22。例如,非易失性存储器22可以是电可擦除可编程存储器(EEPROM)或闪存。卡盒2还包括优选地安全存储加密密钥K的加密单元23。应当注意,密钥K也可以存储在卡盒2中的其他位置。

在优选实施例中,加密单元23是具有嵌入式1024比特私钥作为加密密钥K的硬件RSA密码器。针对相同游戏应用程序3,加密密钥K对于所有卡盒2可以是相同的,但在卡盒2的批次之间或实际单独卡盒2之间也能够使用不同的加密密钥K。

ROM21、非易失性存储器22、加密单元23和接口24可以在单个芯片上实现,例如片上系统(SOC)或两个或更多的分离电路。

游戏应用程序3是用于阐述本发明的虚拟实体。游戏应用程序据称可以是由处理器10执行的至少来自于ROM21的软件程序(游戏应用程序3的一部分可以从其他源接收,例如通过互联网)。游戏应用程序3据称还知道卡盒2的内部组织结构。当被处理器10执行时,游戏应用程序3可以经由接口14和24与卡盒2进行通信,以执行至少一个操作,例如:从ROM21读取数据;从非易失性存储器22读取数据;以及向非易失性存储器22写入数据。当要将数据写入非易失性存储器22时,接口24将数据转发至加密单元23,以利用密钥K进行加密并存储。应当注意,加密单元存储数据按照直接方式(例如,将数据写入非易失性存储器22)或间接方式(例如,将数据传递至中间单元)。然而,当要从非易失性存储器22中读取数据时,接口24从非易失性存储器22中读取数据,并且将加密形式的数据转发至游戏应用程序3。技术人员将认识到,加密单元不对存储数据进行解密,因此,卡盒会“无阻碍地”接收到该数据,并且该数据以加密的形式从卡盒发送。

-1

游戏应用程序3包括解密功能30和与加密密钥K相对应的解密密钥K。在使用-1

非对称密码术的情况下,不需要在游戏应用程序3中隐藏解密密钥K。然而,如果使用对称密码术,则应当以某种方式隐藏解密密钥,例如通过使用所谓的“白盒密码术”。如上文中所述,游戏应用程序可以与卡盒2进行通信,以便:从ROM21读取数据、向非易失性存储器22写入数据、以及从非易失性存储器22读取数据。“无阻碍地”发送要写入非易失性存储器22中的数据,或者可能使用会话密钥对要该数据进行加密,会话密钥保护在接口14,24之间发送的要加密和存储的数据。从非易失性存储器22中读取加密形式的数据,并解密功-1

能30使用解密密钥K对该数据进行解密。

在优选实施例中,游戏应用程序3的解密例程30实现了RSA解密器,并且解密密-1

钥K是与加密私钥K相对应的共钥。

假设黑客永远不会获得加密单元23所使用的密钥K,那么本发明能够防止游戏的简单攻击和拷贝。如果这是事实,黑客在不修改游戏应用程序3的情况下不能复制卡盒2。

图2示出了根据本发明的备选实施例的具有卡盒的控制台。在这个实施例中,控制台1可以与优选实施例中的控制台相同。卡盒2包括接口24、ROM21、非易失性存储器22、以及解密单元25。游戏应用程序3包括加密功能31。

备选实施例与优选实施例的主要区别在于,这里游戏应用程序3适用于使用密钥K来加密数据,以用于将将加密的数据存储在卡盒2的非易失性存储器22中。加密的数据-1

有接口24接收,并被转发至解密单元25,解密单元25使用密钥K对该数据进行解密,并

将该数据发送至非易失性存储器22以进行存储。当游戏应用程序3随后请求数据时,接口24从非易失性存储器22中获取未加密的数据,并将该数据发送至控制台1。

将认识到,在两个实施例的变型是可能的。加密单元23和解密单元25可以位于非易失性存储器22的“另一侧上”。例如,在优选实施例中,数据以未加密形式存储在非易失性存储器22中,并在游戏应用程序3请求该数据时由加密单元23对该数据进行加密。

图3示出了根据本发明的变化实施例的具有光学介质4的控制台1。该变化实施例与优选实施例有一点类似,唯一的区别是静态存储介质是光学介质而不是只读存储器,因此缩短类似特征的描述。光学介质4,例如CD-ROM或DVD,具备RFID(射频标识)电路41,RFID电路41包括接口42、非易失性存储器22、以及存储加密密钥K的加密单元23。控制台1包括与RFID电路41交互的第一接口43,和与光学介质4交互的第二接口44。这两个接口能够被实现为单个组件。

处理器10所执行的游戏应用程序3执行与光学介质4相关的至少3个操作:通过第二接口44,可以从光学介质4中读取数据(基本上与第优选实施例中的ROM相对应);以及通过第一接口43,可以从RFID电路41中读取数据并向RFID电路41写入数据。如在第优选实施例中,优选地,“无阻碍地”发送要写入非易失性存储器22中的数据,并通过加密单元23对该数据进行加密,而照样读取从非易失性存储器22中读取的数据,并以加密形式返回以用于游戏应用程序3的解密单元30进行解密。

因为控制台无需了解卡盒2的结构,所以本发明的优点是,使得老控制台能够使用新的、受保护的卡盒,而无需对前者进行修改。

因此,将认识到,本发明提供了一种改进的软件拷贝保护系统。本领域的技术人员将认识到,这个系统并不限于游戏。

在说明书和权利要求(适当的地方)以及附图中所公开的每个特征都可以独立提供或以任何适当组合的形式来提供。以在硬件中所实现的描述特征也可以以软件形式实现,反之亦然。在适当情况下,连接可以被实现为无线连接或有线连接(不必须是直接连接或专用连接)。仅描述了与本发明有关的特征;有意省去对于本发明的描述不必要的特征,以便于理解。

权利要求中出现的参考数字仅仅是说明性的,不应对权利要求的范围起到任何限制作用。

图1
图2

图3