CN1582422A - 防止未被授权使用软件的方法 - Google Patents
防止未被授权使用软件的方法 Download PDFInfo
- Publication number
- CN1582422A CN1582422A CNA028220404A CN02822040A CN1582422A CN 1582422 A CN1582422 A CN 1582422A CN A028220404 A CNA028220404 A CN A028220404A CN 02822040 A CN02822040 A CN 02822040A CN 1582422 A CN1582422 A CN 1582422A
- Authority
- CN
- China
- Prior art keywords
- public keys
- software
- private key
- hardware
- key
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 84
- 238000013475 authorization Methods 0.000 claims description 61
- 238000004891 communication Methods 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 20
- 238000009826 distribution Methods 0.000 claims description 4
- 230000004913 activation Effects 0.000 abstract 1
- 238000012512 characterization method Methods 0.000 abstract 1
- 230000000875 corresponding effect Effects 0.000 description 21
- 230000006870 function Effects 0.000 description 20
- 238000012545 processing Methods 0.000 description 13
- 230000001360 synchronised effect Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 230000002452 interceptive effect Effects 0.000 description 6
- 230000000295 complement effect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000003213 activating effect Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000008485 antagonism Effects 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- 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/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/125—Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
-
- 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/101—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
- G06F21/1014—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to tokens
-
- 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/106—Enforcing content protection by specific content processing
- G06F21/1063—Personalisation
-
- 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/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/73—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2115—Third party
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明描述了一种防止未被授权使用与至少一个特定硬件设备绑定在一起的软件。该硬件设备包括诸如唯一的硬件号码/地址、序列号、或者其他的嵌入的硬件特征序列这样的唯一的硬件识别序列。将特定的授权密钥传送到该软件以可激活该软件。授权密钥包含其他事物中的已加密的硬件识别序列,将该已加密的硬件识别序列与可存取的硬件设备的读取的序列进行比较。如果序列匹配则许可使用软件特征。
Description
技术领域
本发明通常涉及一种用于防止未被授权使用软件程序的方法,尤其是涉及一种用于防止未被授权使用与硬件设备有关的软件程序的方法。
背景技术
对于软件开发者及经销者而言未被授权使用软件是很普遍的问题。近十年来在家里和在办公室中使用个人计算机已变得很普遍。软件和硬件产品提供了高级别的功能并且其使用增加了。尤其是,在家使用个人计算机仍在上升并且将进一步扩大。软件功能越复杂且开发软件所付出的努力越大,防止软件未被授权使用则越重要。尽管计算机软件的未被授权复制是违反法律的,但是广泛可得到的盗版软件以及有限的强制能力使软件侵权行为的扩张进一步扩大。
此外,跟专用硬件设备结合分销的软件在逐步增多。经常将硬件设备与相应的软件工具绑定在一起,这可提高硬件设备的价值并且可使所绑定的产品与竞争者的同类产品相分离。具有相应软件的专有硬件设备不受这样一个问题的影响,即可使用具有另一个制造商的软件工具的硬件设备。但是越来越多的硬件设备使用标准接口以与不同的软件一起来进行操作。因此,对于制造商来说防止仅与相应硬件设备结合分销的软件未被授权使用是很重要的。进一步考虑对某些硬件设备的软件功能进行限制,这也是一个合适的方法以使购买硬件设备的顾客受同一制造商的束缚。例如,顾客不得不购买同一厂商的相应软件产品以便可以使用该硬件的所有功能和选项。因此,制造商可根据开发费用来计算硬件和软件产品的混合成本。
当前的防止未被授权使用软件的方法不足够有效或者是有损害。使用授权密钥也不是很有效,因为可以从许多有效工具中知道授权密钥以消除授权密钥询问或者在互联网上公开了大量的未被授权密钥。很快就能确定产生授权密钥的方法。并且,不能监控软件的使用并且尤其是不能监控与特定硬件结合使用的软件应该是只被授权的软件。
保护软件的使用的一个有效的但不方便的方法就是使用被称为“软件保护器(dongle)”的硬件密钥。这些外部设备执行某个算法以产生一代码,计算机接收该代码并且在该代码是正确的情况下可对软件代码进行存取。虽然使用硬件密钥是一个可减少软件侵权的有效方法,但是其他的硬件密钥会引起其与执行该软件的计算机的连接问题。标准化的输入/输出端口是可用的并且在技术上是有效的,但是经常会出现与其它连接硬件的冲突。此外制造硬件密钥是很昂贵的并且与软件相结合是相当成问题的。因此,有效的硬件密钥在经济上受限于高价值的软件应用。
与当前的软件保护方法有关的问题是不存在这样一种可用的方法,即该方法可将软件使用的认证处理与检查该软件所访问的某些硬件设备组合在一起。
发明内容
因此,需要这样一种安全的且合理的方法,该方法可防止与对应的硬件设备绑定在一起的软件未被授权使用。防止软件未被授权使用的方法不但可保证软件使用本身的安全而且可未被授权使用竞争者的类似硬件设备所具有的软件。在软件具有其他可获得的情况下,这是很重要的。为了使用本发明的方法,至少一个硬件设备必须包括诸如标识号、序列号码或者可由软件所读取的并且可清楚标识的其它嵌入式唯一代码序列这样的唯一不变的标识序列。
根据本发明可由附属的权利要求获得这些目的。
为了执行软件而需要存储在软件中的或者可由软件存取的授权密钥。软件存取授权密钥的类型取决于可执行该软件的设备。有利的是当将该软件开发成可在普通个人计算机上执行时,可将授权密钥存储在单独的文件中。软件从有关的硬件模块中读取唯一的硬件标识序列。授权密钥还包含至少一个硬件标识序列。将所读取的序列与所包含的序列进行比较。如果这两个序列相匹配,则允许使用该软件并且允许执行。所包含的硬件标识序列是在其还包含有其他典型软件授权密钥的授权密钥中共同编码的(co-coded)。其他典型的软件授权密钥进一步包含与软件有关的信息,例如用于标识软件程序的序列、用于标识软件程序的制造商或者经销者的序列等等。对所包含的硬件标识序列与软件所读取的标识序列进行比较,这可在不同的授权条件之间进行选择。因此,可通过其包括有正确硬件标识序列的所标识的硬件设备的某个序列来使用该软件是可能的。软件授权密钥不必仅包含单个硬件标识序列,而是可包含各种序列,其中只有一个或者某些所包含的序列必须匹配。硬件设备不需要与可执行该软件的计算机或者类似设备电连接,因为无线连接越来越重要,尤其是对于在家使用而言。
应尽可能宽的来理解单词“共同编码”并且尤其是其覆盖了同类术语的等价解释,其中假定单词“共同编码”是an additional codingin、a composed coding with、a coding of等等。例如,授权密钥可以是一段序列或者可以是由若干个相关序列或者不相关序列所组成的,其包含在与一个或者若干存储器位置有关的一个或者若干个数据记录中。进一步包括根据下述功能来对序列进行编码(相关的或者不相关的,例如根据相同的编码方法或者根据不同的编码方法或者与另一个编码参数相结合的编码方法),该功能表示通过对其表示授权密钥的唯一序列或者若干序列进行编码来选出各个序列或者子序列。
根据本发明的一实施例,通过这样一个接口来进行从硬件模块中读取硬件标识序列的操作,该接口就是适合于至少一个硬件模块与处理设备之间的接口通信,该处理设备是用于分别执行并运行由上述方法所保护的软件的设备。
此外根据另一个实施例,通过这样一个接口来进行读出操作,该接口采用有线或者无线通信连接以使至少一个硬件模块与用于分别执行并运行上述软件的处理设备互连。
最好是,对其包含于授权密钥中的硬件号进行加密。存在多个用于对所期望的硬件标识序列进行加密并且对所需授权密钥中的它们进行共同编码。
方便的是,通过使用私用密钥来对所加密的硬件标识序列进行解密。分别在软件代码中实现并对密钥进行编码。制造商或者软件的经销人必须知道其包含在授权密钥中的相应硬件设备的硬件标识序列。使用相同的私用密钥来对这些序列进行加密和解密。类似的方法使用保密算法而不是私用密钥。相同的算法用来加密并且可用来对包含在授权密钥中的硬件标识序列进行解密。因此,必须在软件代码中实现这些算法或者对其进行编码。这两个方法提供了相关的防止未被授权使用软件的保护。另外,从经济上来说这些方法可在低成本的软件工具中执行。
更优选的,使用公共密匙加密方法来产生授权密钥并且在软件执行期间检索硬件标识序列。公共密匙加密方法需要私用密钥和公共密钥这两个不同的密钥。使用私用密钥来加密仅利用公共密钥来解密的数据。与上述加密方法相反,不能从软件代码当中提取加密密钥或者方法。在分布式软件中不能实现私用密钥,因为公共密钥可足以对所包含的硬件标识序列进行解密。私用密钥只是被可产生授权的可靠授权密钥所知。在软件代码中可实现公共密钥但是其与授权密钥一起提交或者通过网页等等来获得。
方便的是,可自由获得的公共密钥及与授权密钥的与国际格式相关的信息可使得为某些未被授权的硬件设备构造“黑客”密钥成为可能,因为该软件程序不能区分已授权方的合法公共密钥与未被授权资源的公共密钥。因此,对公共密钥进行编码是有益的。
另外,为防止同时交换公开密钥和授权密钥(这可允许未被授权使用软件),因此由第三职权方来签署公共密钥。所签署的公开密钥通常被称为证书。然而,密钥的签署是再次基于如上所述的公共密匙加密方法。使用相应的一对密钥来进行加密与解密。由第三方密钥职权方提供了相应的一对密钥,该第三方密钥职权方通常专用于提供密钥。由第三方密钥职权方的私用密钥来对软件的制造商或者经销人的公共密钥进行加密。为了获得其用于对包含在授权密钥中的硬件标识序列进行解密的公共密钥,第三方密钥职权方的相应公共密钥被用于证书以便对证书进行解密。通过应用每一个都为不同的独立密钥职权方所知的两个私用密钥来进行交错的加密,这更难以克服软件的保护以便于未被授权使用。
在如上所述使用由软件的制造商或者经销人分配的证书以及第三方密钥职权方的公共密钥的情况下,可通过可自由访问的资源来分配证书及第三方公共密钥。可能的资源例如是制造商或者经销人的网络服务器,该网络服务器可通过网页和有效下载来提供必要证书并且附加提供与第三方密钥职权方的网络服务器的网页的超级链接以便为卖方提供一整套证书和公共密钥。
最好是,将软件程序绑定到至少一个网络接口模块上。网络接口模块包括被称为媒介访问控制层(MAC)地址的在世界范围内有效的唯一标识序列。MAC地址最好是用作唯一标识序列。更好的是,将软件程序绑定到至少一个蓝牙模块上,该蓝牙模块包括在世界范围内唯一的蓝牙地址。
根据本发明的另一个实施例,提供了一种防止未被授权使用软件的软件工具。该软件工具包括程序部分,当在计算机程序或者代码部分中分别执行和/或操作该软件工具时,该程序部分执行上述方法的操作。
根据本发明的另一个实施例,提出了一种用于防止未被授权使用软件的计算机程序。该计算机程序包括程序代码部分,当在处理设备、计算机或者网络设备上执行该程序时,该程序代码部分执行上述方法。
根据本发明的另一个实施例,提供了一种计算机程序产品,该计算机程序产品包括存储在计算机可读介质上的程序代码部分,当在处理设备、计算机或者网络设备上执行所述程序产品时该程序代码部分用于执行上述方法。
根据本发明的另一个实施例,提供了一种可防止未被授权使用软件的处理设备。因此,该处理设备包括或者装载有防止其被滥用的软件,其中在该处理设备上执行或者运行该软件并且该软件包括分别执行和运行该软件所需的一授权密钥。另外,该设备包括接口、用于读取的部件、用于检索的部件、用于比较的部件、以及用于许可的部件。用于读取的部件可读取至少一个硬件模块所包含的一硬件标识序列,该硬件标识序列包括可标识至少一个硬件模块并且尤其是可唯一标识至少一个硬件模块的硬件标识序列。用于读取的部件进一步包括接口,该接口通过采用可连接在处理设备与至少一个硬件模块之间的数据通信的接口来读取硬件标识序列。用于检索的部件可获得存储在授权密钥中的硬件标识序列,和用于比较的部件对所读取的以及所检索的硬件标识序列进行比较以便确定该软件是否被授权使用。在所读取的硬件标识序列与所检索的硬件标识序列相匹配的情况下,用于许可可执行该软件的部件允许操作该软件的功能。
如果所读取的硬件标识序列与所检索的硬件标识序列相匹配,那么完全允许操作整个软件,如果所读取的硬件标识序列与所检索的硬件标识序列不匹配那么仅允许部分操作软件。
根据本发明的另一个实施例,上述接口基于有线或者无线数据通信接口,该接口可使至少一个硬件模块与分别用于执行和运行受保护软件的处理设备之间进行数据通信。
根据本发明的另一个实施例,该处理设备进一步包括用于解密的部件,该部件适用于并且可对包含在授权密钥中的且已加密的硬件标识序列进行解密。
根据本发明的另一个实施例,用于解密的部件执行基于公共密匙加密方法的解密处理。其涉及第一公共密钥和第一私用密钥的公共密钥加密方法如上所述并且参考根据本发明实施例的方法来其进行详细的描述。根据本发明的另一个实施例,用于解密的部件执行交错的解密处理,该处理包括另外的已加密的第一公共密钥。其涉及第一公共密钥、第一私用密钥、第二公共密钥、以及第二私用密钥的交错公共密匙加密方法如上所述并且参考本发明实施例的方法对其进行了详细的描述。可以自由的存取加密的或者未加密的第一和第二公共密钥。
根据本发明的另一个实施例,提供了一种可防止未被授权使用软件的系统,该系统包括处理设备和至少一个硬件模块。
因此,该处理设备包括或者装载有防止其被滥用的软件,其中在该处理设备上执行或者运行该软件并且该软件包括分别执行和运行该软件所需要的授权密钥。另外,该设备包括接口、用于读取的部件、用于检索的部件、用于比较的部件、以及用于许可的部件。用于读取的部件可读取至少一个硬件模块所包含的硬件标识序列,该硬件标识序列包括允许标识至少一个硬件模块并且尤其是可唯一标识至少一个硬件模块的硬件标识序列。用于读取的部件进一步包括接口,该接口通过采用可连接在处理设备与至少一个硬件模块之间的数据通信的接口来读取硬件标识序列。用于检索的部件可获得存储在授权密钥中的硬件标识序列,和用于比较的部件对所读取的以及所检索的硬件标识序列进行比较以便确定该软件是否被授权使用。在所读取的硬件标识序列与所检索的硬件标识序列相匹配的情况下,用于许可软件操作的部件允许操作该软件的功能。如果所读取的硬件标识序列与所检索的硬件标识序列相匹配那么允许完全操作软件,并且如果所读取的硬件标识序列与所检索的硬件标识序列不匹配那么仅允许部分操作软件。
另外,至少一个硬件模块因此包括所要读取的硬件标识序列以及相应接口,该接口可使分别执行和运行该软件的处理设备读取该硬件模块。
根据本发明的另一个实施例,上述接口基于有线或者无线数据通信接口,该接口可使至少一个硬件模块与分别用于执行和运行受保护软件的处理设备之间进行数据通信。
根据本发明的另一个实施例,该处理设备进一步包括用于进行解密的部件,该部件适用于并且可对包含在授权密钥中的且已加密的硬件标识序列进行解密。
根据本发明的另一个实施例,用于解密的部件执行基于公共密匙加密方法的解密处理。其涉及第一公共密钥和第一私用密钥的公共密钥加密方法如上所述并且参考根据本发明实施例的方法来其进行详细的描述。
根据本发明的另一个实施例,用于解密的部件执行交错的解密处理,该处理包括另外的已加密的第一公共密钥。其涉及第一公共密钥、第一私用密钥、第二公共密钥、以及第二私用密钥的交错公共密匙加密方法如上所述并且参考本发明实施例的方法对其进行了详细的描述。
附图说明
在整个下文中,在附图中使用附图标记,并且在对附图的整个说明中都使用了相同的附图标记以描述本发明实施例的相应部分。
图1是说明用于第一次激活所保护的软件所要执行的方法步骤的流程图;
图2是说明在第一次激活之后用于重复激活所保护的软件所要执行的方法步骤的流程图;
图3给出了其每一个均装备有蓝牙网络接口的两个个人计算机的可能配置以作为硬件配置的例子;
图4给出了其每一个均配备有蓝牙网络接口的移动终端和移动电话的可能配置以作为硬件配置的例子;
图5给出了其涉及诸如移动电话这样的控制器单元或者个人计算机的另一个实施例,该控制器单元或者个人计算机都装备有蓝牙网络接口以控制诸如DVD播放器、VCR录像机这样的家用电子设备;
图6给出了根据本发明一实施例的与终端设备进行交互操作的移动电话的结构;以及
图7给出了根据本发明一实施例的其外部附装有照相机模块的一移动电话的配置。
具体实施方式
图1给出了一流程图。该流程图示出了根据本发明的方法的一实施例。所给出的实施例应用上述的分别结合签署的公共密钥和证书的公共密匙加密方法。
下面将对典型的示例性方案进行描述以教导防止未被授权使用的软件保护方法这样的优点。通过因特网来使用制造商或者经销人的网上商店或者通过传统商店来购买硬件设备以及相应软件。如果通过因特网联系信息来进行购买,那么将诸如邮件地址或者电子邮件地址提交给卖方。将硬件设备和相应软件放在一起并将其送到买方。例如通过硬件产品的序列号可获得各个硬件标识号码。通过数据库系统将唯一的硬件标识号码和序列号链接起来。为了可使用该软件,还必须将授权密钥提交给买方。根据公共密匙加密方法利用私用密钥来对硬件标识号码进行加密。为了确保私用密钥的特定安全性,应由单个密钥职权方来对硬件标识号码的加密以及授权密钥中的已加密号码编码以避免广泛的分布私用密钥。最好是利用另一个提交方式来提交所产生的授权密钥。还可由用户来请求授权密钥。用户将例如由专用软件工具和联系地址所确定的其资产中的硬件设备的序列号或者唯一的硬件标识号码提交给密钥职权方。密钥职权方必须能够检查硬件号码以确保授权该硬件设备可与软件一起使用。此刻用户拥有硬件设备、相应软件、以及个人授权密钥。
还提供了根据私用密钥的公共密钥。公共密钥的编码可以很简单,但是也提供了不安全的方式。根据当前的优选实施例,提供了公共密钥以作为证书或者所签署的公共密钥。所签署的公共密钥包括第三方密钥职权方,该第三方密钥职权方根据用于对包含在授权密钥中的硬件标识号码进行加密的私用密钥来对公共密钥进行加密。通过电子邮件将所签署的公共密钥以及第三方密钥职权方的公共密钥提交给用户或者用户通过利用因特网来对其进行存取。
在两步解密中软件此刻对授权密钥的硬件标识号码进行解密。在第一解密步骤中利用第三方密钥职权方的公共密钥来分别对所签署的公共密钥或者证书进行解密。该解密步骤产生了制造商或者经销人的公共密钥。在涉及所获得的公共密钥及授权密钥的下述第二解密步骤产生对包含于授权密钥中的硬件号码的披露。此刻对所包含的硬件号码和由可存取的硬件设备的软件所读取的硬件标识号码进行比较。如果号码匹配,那么允许用户存取软件并且对其执行。在另一个情况下,例如允许对具有限制性功能的软件进行存取是可能的。
由于对用于对授权密钥数据进行解密的公共密钥的附加加密,因此与利用编码的公共密钥来进行解密的情况相比,该软件的操作以及因此未被授权使用该软件则变得更困难。该证书可确保只有制造商或者经销人的公共密钥是合法的公共密钥。另外,如果以任何可与提交授权密钥相并行的方式来提交证书及第三方密钥职权方的相应公共密钥,那么密钥的交换更容易并且可以交换以前的泄密密钥对抗新的安全密钥。
图2给出了在第一次激活之后所执行的用于重复激活保护软件的方法步骤。在根据图2的实施例中,分别存储了第三方密钥职权方的公共密钥或者证书、制造商或者经销人的公共密钥以及授权密钥。每次重新启动该软件时,利用制造商或者经销人的公共密钥对所签署的公共密钥进行解密并且随后对所包含的硬件标识号码进行解密和提取以用于授权密钥并且将其与可访问的硬件设备进行比较以便保证可使用被授权的硬件设备。该进程保证不能交换制造商的公共密钥以对抗被授权方的公共密钥。因此,可分别实现防止软件程序的滥用或者使软件保护的短路(short-circuiting)难得多。
通常一旦安装在计算机系统上的软件程序不能复制并且不能重新安装在另一个上。在这种情况下防止制造商或者经销人的公共密钥的交换不再是必须的。因此,仅仅一次检查公共密钥以便确保来自授权源的公共密钥起源是足够的。只是必须存储已解密的证书及授权密钥,这节省了要执行一个解密处理。完整的软件保护是优选的,因为经常使用相同的解密方法及算法并且完全交错的解密过程的执行不能使软件程序扩大很多。
在根据本发明一实施例的软件保护方法的最后的操作中,比较或者核实所提取的硬件标识序列(由公共密匙加密方法的上述装置所提取的授权密钥)与所读出的硬件标识密钥(从与用于执行根据本发明一实施例的软件保护方法的软件处理设备有关的硬件模块中所读取的),在所提取的硬件标识序列和所读出的硬件标识序列有效(匹配)的情况下,产生对软件功能进行完全操作。对软件功能进行完全操作是指允许用户访问和使用该软件所提供的所有功能。
在根据第一实施例的所提取的硬件标识序列和所读出的硬件标识序列是无效(不匹配)的情况下,阻止软件的处理以使用户不能访问或者使用其任何功能。在根据第二实施例的所提取的硬件标识序列和所读出的硬件标识序列是无效(不匹配)的情况下,不是全部阻止软件的处理以便允许用户可访问和使用全部软件功能的有限功能。根据共享软件的概念,这种部分阻止或者部分解除软件功能是公知的。可自由下载、安装并且使用某些共享软件,其中使用被限制在功能受限版本。例如用户所输入的注册密钥将功能受限共享软件版本转换成功能不受限共享软件版本。
图3给出了其每一个均装备有蓝牙网络接口303的两个计算机301的可能配置以作为硬件配置的一个例子。这两个蓝牙网络接口303均包括唯一的硬件标识地址。由安装在两个计算机301之一上的两个软件来读取两个标识地址,因为蓝牙网络接口303可彼此进行访问并且所有的网络接口卡必须包括唯一的硬件标识地址以可在世界范围内对其进行识别。将应用根据本发明的保护方法的软件安装在两个计算机之一上并且检查其包括有某些硬件标识地址的至少两个蓝牙网络接口303是否是可访问的。甚至可以对其它的授权条件进行共同编码。例如,能够被编码成:蓝牙网络接口303之一必须与执行该软件的计算机电连接并且可通过射频传输305来访问另一个网络接口303。显然,其包括有唯一硬件标识地址的已核实硬件设备的数目根据授权条件而变化。
图4给出了其每一个均装备有蓝牙网络接口303,405的移动终端401和移动电话403的可能配置以作为硬件配置的另一个例子。该配置与图3所示的配置相类似。移动电话403用于使移动终端401通过访问服务器而链接到因特网上。利用蓝牙网络接口303,405来执行移动电话403与移动终端401之间的数据通信。在只授权与某个制造商的移动电话403一起使用的移动终端401上可执行特定软件。插入到移动电话403上的蓝牙网络接口405的制造商经销必要的通信软件,只有当某一蓝牙网络接口405被相连时该通信软件才是可用的。使用根据本发明的方法可防止未被授权使用在移动终端上所执行的软件。授权密钥包括蓝牙网络接口405的蓝牙硬件地址。与移动终端401相连的相应蓝牙网络接口303不涉及该核实过程以使得任何制造商的蓝牙网络接口都可以被使用。
图5给出了其包括诸如移动电话403这样的控制器单元或者个人计算机301的另一个实施例,该控制器单元或者个人计算机都装备有蓝牙网络接口303以控制诸如数字化视频光盘播放器(DVD)、录像机(VCR)、数字录像机(DVCR)这样的家用电子设备。所出现的包括在家用电子设备中的许多特征仅仅需要可操作的用户接口。尤其是,其包括有多个特征的视频处理设备适合安装有接口装置以由诸如个人计算机、移动电话、或者可执行控制软件的类似装置这样的另一个终端设备对其进行远程控制。蓝牙网络接口是作为优选的接口设备来执行。必须保护在控制设备上所执行的有关的控制软件并且只能与某些制造商的家用电子设备一起使用,但是可在多个制造商的控制设备上执行。因此,本发明的方法可防止未被授权使用软件以控制其执行相同控制接口的竞争者的未被授权的设备。
图6给出了根据本发明一实施例的与在这里即就是一移动电话的外部硬件模块交互操作的软件执行设备的配置以作为软件操作设备的一例子,该软件执行设备在这里即就是其呈现为个人计算机的终端设备,其中例如移动电话与个人计算机之间的交互操作关系允许在其之间同步数据。根据其依照该发明一实施例的上述方法,其包含有一部分或者多个部分指令代码的某个软件或者计算机程序可在终端设备600上进行操作。该某个软件或者计算机程序的操作并不局限于某个终端设备600,即某一软件或者计算机程序是可执行的并且可在任何类似种类的终端装置上运行,应将该软件或者计算机程序理解为例如可在各个其具有某个操作系统的处理设备上、某一类相关的中央处理单元等等上执行。
另外,通过可执行专用软件或者计算机程序的终端设备600的通信装置来使专用软件或者计算机程序与外部硬件模块610交互操作,也就是说,数据在终端设备600与外部硬件模块610之间进行通信,该外部硬件模块610是专用软件或者计算机程序进行操作所需要的。然而,根据上述的发明构思,该软件的操作或者使用不受限,也就是说,该软件或者计算机程序的操作不受限制,即例如只有利用特定的外部硬件模块610来执行数据的相互通信的情况下可能对所有的软件特性进行操作,该特定的外部硬件模块610是由外部硬件模块610所包括的唯一标识序列来标识的并且可通过专用软件或者计算机程序来检索。
为了根据所提供的发明构思来教导软件保护思想,在这里由外部硬件模块所表示的移动电话允许与同步对应设备同步数据。在这里由终端设备600所表示的同步对应设备必须运行与移动电话交互操作的某个同步软件。将移动电话的制造商所经销的同步软件仅附加地销售给制造商所制造的移动电话的所有者。例如,两个主要的考虑是制造商所关心的。第一,可有效防止在支持同步的某些移动电话的所有者当中的其它同步软件的交换。第二,其它的同步软件只与制造商所制造的移动电话一起使用,即使原理上用竞争者的移动电话可对该软件进行适当的操作。然而,其它的同步软件可在许多同步对应设备上执行。
通过执行上述实施例以及所描述的用于防止未被授权使用软件的方法可解决上述这两个与用户滥用软件有关的考虑。通过检索用于识别某个移动电话的唯一硬件标识序列可防止在能够同步的移动电话的所有者之间交换未被授权的软件这样的上述第一个问题。在与硬件标识序列有关的设备上测试同步的软件并且只有在硬件标识序列有效的情况下允许使用该同步的软件。考虑到上述的例子,适合的唯一硬件标识序列可以是IMEI(国际移动设备标识)、1MSI(国际移动用户标识)等等。类似地可解决结合竞争者所制造的移动电话未授权使用软件这样的上述第二个问题。为此,一个制造商的移动电话包括可唯一标识制造商的唯一硬件标识序列。在与硬件标识序列有关的制造商上测试同步的软件并且只有在硬件标识序列有效的情况下允许使用同步的软件。例如可从IMEI(国际移动设备标识)中获得与硬件标识序列有关的制造商。
根据参考图1和图2所给出的对实施例的描述来执行对一个或多个有效硬件标识序列的说明,也就是说如果硬件标识序列是有关的设备或者有关的制造商,那么其是独立的。
终端设备600和外部硬件模块610具有公共的通信连接,采用该通信连接来检索标识序列以及用于在执行软件或者计算机程序期间进行数据通信。例如,图6给出了其通过无线电频率通信链路602而基于终端设备600的蓝牙模块601以及外部硬件模块610的相对应的蓝牙模块611进行互连的蓝牙。另外,通信是基于其它有线或者无线通信连接,诸如通用串行总线(USB)连接、串行RS-232连接、基于串行或者并行连接的专有电缆、红外线(IRDA)连接、无线本地回路(WLL)连接、无线局域网(WLAN)连接、专有低功率无线电频率通信连接,其中这些所给定的连接仅构成了对可能的通用通信连接的选择。终端设备600和外部硬件模块610还可以通过数据通信总线而互连,其中可采用多个标准化且专用的数据通信总线以便允许在用以防止未被授权使用的软件或者计算机程序与外部硬件模块之间进行数据通信。
尽管已根据外部硬件模块610而给出了多个例子,但是该硬件模块另外也可在用以执行软件的处理设备中被执行,其中该硬件模块表示不需操作处理设备的对处理设备的辅助硬件扩充部分,但是为处理设备提供了附加功能。
图7给出了依照本发明一实施例的具有外部附连照相机模块的移动电话的配置。作为所示的照相机模块615的所述移动电话610表示其可利用专用软件和所附连的硬件模块进行操作的处理设备的步置,根据在本发明基础上的发明构思,该专用软件与所附连的硬件模块进行交互操作。在这里,移动电话610包括用于对照相机特征进行处理的成像软件,即用于对照相机模块615所拍摄的图片进行记录及操作。照相机模块615是移动电话的辅助设备,但是缺省时在每个移动电话610中执行相应的成像软件。只有在照相机模块615对移动电话的用户接口所安心使用的成像软件进行访问的情况下才允许用户使用成像软件。与上述任一个实施例相类似,通过检索硬件标识序列来获得对与用户接口的项有关的照相机模块的可见度进行控制。根据本发明的实施例,移动电话610和照相机模块通过外部数据通信总线620来互连,该通信总线620可基于牢固的串行总线、牢固的并联总线、或者例如类似于多媒体卡(MMC)总线这样的总线。
相应的,表示软件执行设备的移动电话包括至少一个用于从包含有硬件标识序列的硬件模块中读取该硬件标识序列的部件700、用于从存储在适当存储器711中的授权密钥中检索至少一个硬件标识序列的部件710、用于对所检索的硬件标识序列和至少一个所存储的硬件标识序列进行比较的部件720、以及用于管理软件执行许可的部件730。用于从硬件模块中检索硬件标识序列的部件700需要并包括一个或者多个通信部件705以允许与辅助的硬件模块进行通信,例如通信部件705是基于上述任何一种通信连接标准或者专用通信解决方案。用于检索至少一个所存储的硬件标识序列的部件710需要对授权密钥存储器711进行访问,该授权密钥存储器711例如是用于存储的其提供了专用存储区的存储器、大容量存储器介质等等。在加密的情况下,也可执行与用于解密的部件712相对应的已存储的硬件标识序列,访问所需的其它有关解密的信息,诸如公共密钥。
诸如照相机模块这样的硬件模块进一步还包括至少一个用于存储硬件标识序列的部件755以及当软件执行设备请求时用于将硬件标识序列传送到软件执行设备上的部件750。用于传送的部件750与上述的软件执行设备的数据通信接口相对应。硬件标识序列例如存储在诸如只读存储器(ROM)或者闪速存储器这样的存储器中、存储在诸如用户标识模块这样的智能卡中、或者存储在其他适合的硬件部件中,该硬件部件可存储标识序列并且可通过在用于传送的部件750上由软件执行设备通过由读取部件700所启动的通信接口705所发出的请求来读取标识序列。
通过上述部件的方式,可在移动电话610中即在包含在移动电话610中的成像软件中执行根据本发明实施例的用于防止未被授权使用软件的方法。
应该强调的是,与已知方法相比,根据本发明的发明构思可防止未被授权使用软件。公知的方法可解决限制独占性的执行软件的某个专用处理设备使用该软件的期望。这里所提出的发明构思解决了不对某个专用处理设备使用某个软件进行限制,而是限制所存在的某个辅助硬件模块使用该软件的期望,该辅助硬件模块也可执行该软件并且可扩展该处理设备的功能。在其上执行软件本身的处理设备不是任意关联以致只是与提供对其测试的标识序列的硬件模块结合可在多个处理设备上执行和运行软件。
为了例示并说明,前面已对本发明的优选实施例进行了描述。这不是意图详尽或者限制本发明为所公开的具体形式。根据上述教导可做出许多修改和变化。本发明的范围并不局限于该详细说明,而是由附属的权利要求书来限定。
防止使用未被授权的软件的方法使用了可由软件存取的硬件设备的唯一硬件标识序列。将该标识序列与其包括有硬件标识序列的特定授权密钥中的编码的序列进行比较。为了防止非法操作所包含的硬件标识序列,根据所期望的保护程度可利用不同的加密方法来对该序列进行加密。因此,通过采用本发明的方法合理并有效地保护与某些硬件设备绑定在一起使用的软件。
Claims (20)
1.一种用于防止未被授权使用软件的方法,该软件可对包括有唯一的硬件标识序列的至少一个特定硬件模块进行访问,其中所述软件包括要被执行的授权密钥,其特征在于:
读取所述至少一个特定硬件模块的所述硬件标识序列,
检索其包含在所述授权密钥中的预定的硬件标识序列,
对所述所读出的硬件标识序列与包含在授权密钥中的所述硬件标识序列进行比较,并且
-如果两个序列匹配,则允许执行所述软件。
2、根据权利要求1的方法,利用与所述至少一个硬件模块进行接口通信的接口来操作所述读出步骤。
3、根据权利要求2的方法,利用其基于有线或者无线数据通信接口的接口来操作所述读出步骤,该有线或者无线数据通信接口可使所述至少一个硬件模块与利用所述软件来操作的处理设备互连。
4、根据前面任一个权利要求的方法,其特征在于对其包含在所述授权密钥中的所述硬件标识序列进行加密。
5、根据权利要求4的方法,其特征在于通过采用公共密匙加密方法来对包含在所述授权密钥中的所述硬件标识序列进行加密,包括:
第一私用密钥,该第一私用密钥只是为授权密钥分配职权方所知,以及
第一公共密钥,该第一公共密钥与第一私用密钥相对应,
其中所述第一私用密钥用于对所述硬件标识序列进行加密并且所述第一公共密钥用于对所述硬件标识序列进行解密并且其中所述第一公共密钥是仅有的允许对被所述第一私用密钥加密的数据进行解密的密钥。
6、根据权利要求5的方法,其中另外利用公共密匙加密方法来对所述第一公共密钥进行加密,包括:
第二私用密钥,该第二私用密钥只是为信赖的第三职权方所知,以及
第二公共密钥,该第二公共密钥与所述第二私用密钥相对应,
其中所述第二私用密钥用于对所述第一公共密钥进行加密并且所述第二公共密钥用于对所述已加密的第一公共密钥进行解密,并且其中所述第二公共密钥是仅有的允许对被第二私用密钥加密的数据进行解密的密钥。
7、根据权利要求5或6的方法,其中可自由访问第一公共密钥和第二公共密钥中的至少一个。
8、用于防止未被授权使用软件的软件工具,其包括用于执行权利要求1至7的任一个权利要求的操作的程序代码部分,当所述程序是在计算机程序中实现以可在处理设备、计算机、用户终端、或者网络设备上执行时。
9、用于防止未被授权使用软件的计算机程序,其包括用于执行权利要求1至7任一个权利要求的操作的程序代码部分,当所述程序是在在处理设备、计算机、用户终端、或者网络设备上运行时。
10、用于防止未被授权使用软件的计算机程序产品,其中所述计算机程序产品包括存储在计算机可读介质上的程序代码部分以用于执行权利要求1至7中任一个权利要求的方法,当所述程序产品在处理设备、计算机、用户终端、或者网络设备上运行时。
11、一种用于防止未被授权使用软件的处理设备,其中利用所述处理设备来操作所述软件并且所述软件包括要被执行的授权密钥,其特征在于
接口,该接口使所述处理设备与包括有硬件标识序列的至少一个硬件模块互连,
部件,该部件读出所述至少一个硬件模块的所述硬件标识序列,
部件,该部件检索其包含在所述授权密钥中的预定硬件标识序列,
部件,该部件对所述所读出的硬件标识序列与包含在授权密钥中的所述硬件标识序列进行比较,以及
部件,如果两个序列匹配则该部件允许执行所述软件。
12、根据权利要求11的设备,其中所述接口是基于可使所述至少一个硬件模块与所述处理设备互连的有线或者无线数据通信接口。
13、根据权利要求11或者12的设备,进一步包括:
部件,该部件对包含在所述授权密钥中的已被加密的所述预定硬件标识序列进行解密。
14、根据权利要求13的设备,用于解密的所述部件还可采用公共密匙加密方法,包括:
第一私用密钥,该第一私用密钥只是为授权密钥分配职权方所知,以及
第一公共密钥,该第一公共密钥与第一私用密钥相对应,
其中所述第一私用密钥用于对所述硬件标识序列进行加密并且所述第一公共密钥用于对所述硬件标识序列进行解密并且其中所述第一公共密钥是仅有的允许对被所述第一私用密钥加密的数据进行解密的密钥。
15、根据权利要求14的设备,用于解密的所述部件还可采用公共密匙加密方法,包括:
第二私用密钥,该第二私用密钥只是为可信赖的第三职权方所知,以及
第二公共密钥,该第二公共密钥与所述第二私用密钥相对应,
其中所述第二私用密钥用于对所述第一公共密钥进行加密并且所述第二公共密钥用于对所述已加密的第一公共密钥进行解密,并且其中所述第二公共密钥是仅有的允许对被第二私用密钥加密的数据进行解密的密钥。
16、一种可防止未被授权使用软件的系统,包括:
处理设备,
至少一个硬件模块
其特征在于
所述处理设备装载有所述软件,并且
利用所述处理设备来操作所述软件并且所述软件包括要被执行的授权密钥,
提供了接口以使所述处理设备与和所述处理设备相关的至少一个硬件模块互连,该硬件模块包括硬件标识序列,
部件,该部件读出所述至少一个硬件模块的所述硬件标识序列,
部件,该部件检索其包含在所述授权密钥中的预定硬件标识序列,
部件,该部件对所述所读出的硬件标识序列与包含在授权密钥中的所述硬件标识序列进行比较,以及
部件,如果两个序列匹配则该部件允许执行所述软件,其中所述至少一个硬件模块包括:
接口,该接口使所述处理设备与至少一个硬件模块互连。
17、根据权利要求16的系统,其中所述处理设备和所述至少一个硬件模块的所述接口都是基于可使其互连的有线或者无线数据通信接口。
18、根据权利要求16或者17的系统,进一步包括:
部件,用于对包含在所述授权密钥中的所述预定硬件标识序列进行解密。
19、根据权利要求18的系统,其中用于解密的所述部件还可采用公共密匙加密方法,包括:
第一私用密钥,该第一私用密钥只是为授权密钥分配职权方所知,以及
第一公共密钥,该第一公共密钥与第一私用密钥相对应,
其中所述第一私用密钥用于对所述硬件标识序列进行加密并且所述第一公共密钥用于对所述硬件标识序列进行解密并且其中所述第一公共密钥是仅有的允许对被所述第一私用密钥加密的数据进行解密的密钥。
20、根据权利要求19的系统,用于解密的所述部件还可采用公共密匙加密方法,包括:
第二私用密钥,该第二私用密钥只是为可信赖的第三职权方所知,以及
第二公共密钥,该第二公共密钥与所述第二私用密钥相对应,
其中所述第二私用密钥用于对所述第一公共密钥进行加密并且所述第二公共密钥用于对所述已加密的第一公共密钥进行解密,并且其中所述第二公共密钥是仅有的允许对被第二私用密钥加密的数据进行解密的密钥。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/944,405 | 2001-09-04 | ||
US09/944,405 US7313828B2 (en) | 2001-09-04 | 2001-09-04 | Method and apparatus for protecting software against unauthorized use |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1582422A true CN1582422A (zh) | 2005-02-16 |
CN1328634C CN1328634C (zh) | 2007-07-25 |
Family
ID=25481334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB028220404A Expired - Fee Related CN1328634C (zh) | 2001-09-04 | 2002-08-29 | 防止未被授权使用软件的方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7313828B2 (zh) |
EP (1) | EP1423771B1 (zh) |
CN (1) | CN1328634C (zh) |
AT (1) | ATE428988T1 (zh) |
DE (1) | DE60231990D1 (zh) |
WO (1) | WO2003021403A1 (zh) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100401849C (zh) * | 2005-11-04 | 2008-07-09 | 中国移动通信集团公司 | 防止盗用客户端软件的双向控制方法 |
CN100462991C (zh) * | 2006-12-28 | 2009-02-18 | 北京飞天诚信科技有限公司 | 还原硬件标识的方法和系统 |
CN101149768B (zh) * | 2006-09-20 | 2011-04-27 | 展讯通信(上海)有限公司 | 一种专用处理器软件的加密和解密方法 |
CN102215131A (zh) * | 2011-06-16 | 2011-10-12 | 中兴通讯股份有限公司 | 一种功能License的管理方法及装置 |
CN102467634A (zh) * | 2010-11-10 | 2012-05-23 | 财团法人工业技术研究院 | 软件授权系统及方法 |
CN102483778A (zh) * | 2009-08-28 | 2012-05-30 | 索尼爱立信移动通讯有限公司 | 对移动设备应用的有效访问 |
CN101138239B (zh) * | 2005-04-08 | 2012-05-30 | 韩国电子通信研究院 | 工具包结构和内容执行装置 |
CN101917300B (zh) * | 2007-05-16 | 2012-07-04 | 华为技术有限公司 | 一种控制多设备的授权方法、通信设备和服务器 |
CN101216915B (zh) * | 2008-01-21 | 2012-07-25 | 深圳市路通网络技术有限公司 | 安全移动支付方法 |
CN103942472A (zh) * | 2014-04-14 | 2014-07-23 | 立德高科(北京)数码科技有限责任公司 | 用于屏蔽非授权使用者启动软件的方法及装置 |
CN104021318A (zh) * | 2013-03-01 | 2014-09-03 | 北京大学 | 防重放攻击装置和防重放攻击方法 |
CN101441692B (zh) * | 2008-11-21 | 2014-09-03 | 北京市研祥兴业国际智能科技有限公司 | 实现计算机硬件和软件绑定的方法 |
CN105184116A (zh) * | 2015-06-19 | 2015-12-23 | 昆山博威泰克电子科技有限公司 | 智能设备软件加密及本人认证装置及其方法 |
CN105426782A (zh) * | 2015-07-09 | 2016-03-23 | 中华电信股份有限公司 | 智能卡固件授权的系统与方法 |
CN106230777A (zh) * | 2016-07-12 | 2016-12-14 | 珠海市魅族科技有限公司 | 一种防止文件被破解的方法及终端 |
CN107784206A (zh) * | 2017-11-10 | 2018-03-09 | 北京深思数盾科技股份有限公司 | 软件保护方法和装置以及软件验证方法和装置 |
CN108259163A (zh) * | 2016-12-29 | 2018-07-06 | 北京博瑞彤芸文化传播股份有限公司 | 终端设备的授权方法 |
CN109302370A (zh) * | 2017-07-24 | 2019-02-01 | 上海牛卡网络科技有限公司 | 一种客户端验证方法、终端和服务器 |
CN109766685A (zh) * | 2019-01-21 | 2019-05-17 | 安徽养和医疗器械设备有限公司 | 一种通过usb接口实现的硬件数字授权模块及其授权方法 |
WO2023024538A1 (zh) * | 2021-08-27 | 2023-03-02 | 华为技术有限公司 | 一种保护应用程序的方法、装置和系统 |
Families Citing this family (58)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050091511A1 (en) * | 2000-05-25 | 2005-04-28 | Itay Nave | Useability features in on-line delivery of applications |
US7962416B1 (en) * | 2000-11-22 | 2011-06-14 | Ge Medical Technology Services, Inc. | Method and system to remotely enable software-based options for a trial period |
US7885896B2 (en) | 2002-07-09 | 2011-02-08 | Avaya Inc. | Method for authorizing a substitute software license server |
US8041642B2 (en) | 2002-07-10 | 2011-10-18 | Avaya Inc. | Predictive software license balancing |
US7966520B2 (en) | 2002-08-30 | 2011-06-21 | Avaya Inc. | Software licensing for spare processors |
US7707116B2 (en) | 2002-08-30 | 2010-04-27 | Avaya Inc. | Flexible license file feature controls |
US7698225B2 (en) | 2002-08-30 | 2010-04-13 | Avaya Inc. | License modes in call processing |
US7681245B2 (en) | 2002-08-30 | 2010-03-16 | Avaya Inc. | Remote feature activator feature extraction |
US7587600B2 (en) * | 2002-09-16 | 2009-09-08 | Telefonaktiebolaget L M Ericsson (Publ.) | Loading data onto an electronic device |
US20040059926A1 (en) * | 2002-09-20 | 2004-03-25 | Compaq Information Technology Group, L.P. | Network interface controller with firmware enabled licensing features |
US7890997B2 (en) | 2002-12-26 | 2011-02-15 | Avaya Inc. | Remote feature activation authentication file system |
US7835520B2 (en) * | 2003-02-20 | 2010-11-16 | Zoran Corporation | Unique identifier per chip for digital audio/video data encryption/decryption in personal video recorders |
CN1314237C (zh) * | 2003-06-08 | 2007-05-02 | 华为技术有限公司 | 交换机安全管理方法 |
EP1530220A1 (en) * | 2003-11-04 | 2005-05-11 | SwissProbe AG | Cantilever assembly |
US7269725B2 (en) * | 2003-12-17 | 2007-09-11 | Lenovo (Singapore) Pte. Ltd. | Autonomic binding of subsystems to system to prevent theft |
JP2006059134A (ja) * | 2004-08-20 | 2006-03-02 | Fujitsu Ltd | 機能強化プログラム、バンドルソフト機能強化方法及び装置 |
US7552341B2 (en) | 2004-09-01 | 2009-06-23 | Microsoft Corporation | Licensing the use of software on a particular CPU |
US20060064756A1 (en) * | 2004-09-17 | 2006-03-23 | Ebert Robert F | Digital rights management system based on hardware identification |
US20060064488A1 (en) * | 2004-09-17 | 2006-03-23 | Ebert Robert F | Electronic software distribution method and system using a digital rights management method based on hardware identification |
US7707405B1 (en) | 2004-09-21 | 2010-04-27 | Avaya Inc. | Secure installation activation |
US8229858B1 (en) | 2004-09-30 | 2012-07-24 | Avaya Inc. | Generation of enterprise-wide licenses in a customer environment |
US7747851B1 (en) * | 2004-09-30 | 2010-06-29 | Avaya Inc. | Certificate distribution via license files |
US7457960B2 (en) * | 2004-11-30 | 2008-11-25 | Analog Devices, Inc. | Programmable processor supporting secure mode |
US20070041584A1 (en) * | 2005-08-16 | 2007-02-22 | O'connor Clint H | Method for providing activation key protection |
EP1758041A1 (en) * | 2005-08-22 | 2007-02-28 | Siemens Aktiengesellschaft | A method for enabling the use of an interactive program system |
US7814023B1 (en) | 2005-09-08 | 2010-10-12 | Avaya Inc. | Secure download manager |
TW200736952A (en) * | 2005-10-12 | 2007-10-01 | Clevx Llc | Software-firmware transfer system |
US8769703B2 (en) * | 2006-04-27 | 2014-07-01 | Unisys Corporation | System and method for providing a mechanism to virtualize a perpetual, unique system identity on a partitioned computer system |
US8136168B2 (en) * | 2006-05-15 | 2012-03-13 | Taiwan Semiconductor Manufacturing Company, Ltd. | System and method for design-for-manufacturability data encryption |
US20080147227A1 (en) * | 2006-10-31 | 2008-06-19 | Delaney William P | Systems and methods for improved product variant configuration and distribution in hub-based distribution |
KR20090086577A (ko) | 2006-12-04 | 2009-08-13 | 지오테이트 비.브이. | Rf 신호 프로세싱 방법 |
WO2008078215A2 (en) * | 2006-12-22 | 2008-07-03 | Nxp B.V. | System and method for remotely tracking an activation of protected software |
US7882358B2 (en) * | 2007-01-15 | 2011-02-01 | Microsoft Corporation | Reversible hashing for E-signature verification |
US8682800B2 (en) * | 2007-01-30 | 2014-03-25 | Microsoft Corporation | Controlling access to technology based upon authorization |
WO2009065135A1 (en) | 2007-11-17 | 2009-05-22 | Uniloc Corporation | System and method for adjustable licensing of digital products |
WO2009097350A1 (en) * | 2008-01-29 | 2009-08-06 | Palm, Inc. | Secure application signing |
WO2009105002A1 (en) * | 2008-02-20 | 2009-08-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Flexible node identity for telecom nodes |
US8374968B2 (en) * | 2008-02-22 | 2013-02-12 | Uniloc Luxembourg S.A. | License auditing for distributed applications |
US20090285390A1 (en) * | 2008-05-16 | 2009-11-19 | Ati Technologies Ulc | Integrated circuit with secured software image and method therefor |
US8676714B2 (en) * | 2009-06-11 | 2014-03-18 | Microsoft Corporation | Hardware specific product license validation |
US8423473B2 (en) | 2009-06-19 | 2013-04-16 | Uniloc Luxembourg S. A. | Systems and methods for game activation |
US9633183B2 (en) | 2009-06-19 | 2017-04-25 | Uniloc Luxembourg S.A. | Modular software protection |
US20100323790A1 (en) * | 2009-06-19 | 2010-12-23 | Etchegoyen Craig S | Devices and Methods for Auditing and Enforcing Computer Game Licenses |
US20100325149A1 (en) * | 2009-06-22 | 2010-12-23 | Craig Stephen Etchegoyen | System and Method for Auditing Software Usage |
US20100325150A1 (en) * | 2009-06-22 | 2010-12-23 | Joseph Martin Mordetsky | System and Method for Tracking Application Usage |
US20100333213A1 (en) * | 2009-06-24 | 2010-12-30 | Craig Stephen Etchegoyen | Systems and Methods for Determining Authorization to Operate Licensed Software Based on a Client Device Fingerprint |
US9129097B2 (en) * | 2009-06-24 | 2015-09-08 | Uniloc Luxembourg S.A. | Systems and methods for auditing software usage using a covert key |
US8667605B2 (en) * | 2009-11-19 | 2014-03-04 | Adobe Systems Incorporated | Method and system for determining the eligibility for deploying protected content |
US20120110339A1 (en) * | 2010-11-01 | 2012-05-03 | Par Technology Corporation | Security Software For Vector File Format Data |
US9449324B2 (en) | 2010-11-11 | 2016-09-20 | Sony Corporation | Reducing TV licensing costs |
US10110380B2 (en) * | 2011-03-28 | 2018-10-23 | Nxp B.V. | Secure dynamic on chip key programming |
US9436543B2 (en) | 2012-09-13 | 2016-09-06 | Freescale Semiconductor, Inc. | Electronic device and method for protecting an electronic device against unauthorized use |
CN102982263A (zh) * | 2012-11-19 | 2013-03-20 | 中国联合网络通信集团有限公司 | 应用程序保护方法和设备 |
EP3025235B1 (en) | 2013-07-25 | 2020-10-28 | Siemens Healthcare Diagnostics Inc. | Anti-piracy protection for software |
CN104639506B (zh) * | 2013-11-13 | 2018-07-24 | 中国电信股份有限公司 | 对应用程序安装进行管控的方法、系统与终端 |
US9872293B1 (en) * | 2013-11-22 | 2018-01-16 | The United States Of America As Represented By The Administrator Of National Aeronautics And Space Administration | Intelligent data transfer for multiple sensor networks over a broad temperature range |
WO2018146513A1 (en) * | 2017-02-07 | 2018-08-16 | Vargas Parker Juan Pablo | System for logistic monitoring, control and preservation of inventory stocks of goods |
US11252570B2 (en) | 2019-11-22 | 2022-02-15 | John Junior Richardson | Computer system and method for software authentication and single application enforcement |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4593353A (en) * | 1981-10-26 | 1986-06-03 | Telecommunications Associates, Inc. | Software protection method and apparatus |
CA1238427A (en) * | 1984-12-18 | 1988-06-21 | Jonathan Oseas | Code protection using cryptography |
US4685055A (en) * | 1985-07-01 | 1987-08-04 | Thomas Richard B | Method and system for controlling use of protected software |
US5109413A (en) * | 1986-11-05 | 1992-04-28 | International Business Machines Corporation | Manipulating rights-to-execute in connection with a software copy protection mechanism |
US5199066A (en) * | 1989-04-18 | 1993-03-30 | Special Effects Software, Inc. | Method and apparatus for protecting software |
US5029207A (en) * | 1990-02-01 | 1991-07-02 | Scientific-Atlanta, Inc. | External security module for a television signal decoder |
US5592651A (en) * | 1993-06-11 | 1997-01-07 | Rackman; Michael I. | Method and system for limiting multi-user play of video game cartridges |
JPH09507729A (ja) * | 1994-01-13 | 1997-08-05 | バンカーズ・トラスト・カンパニー | キー寄託機能付き暗号システムおよび方法 |
US5734819A (en) * | 1994-10-12 | 1998-03-31 | International Business Machines Corporation | Method and apparatus for validating system operation |
US5754761A (en) * | 1995-03-06 | 1998-05-19 | Willsey; John A. | Universal sofeware key process |
US5999629A (en) * | 1995-10-31 | 1999-12-07 | Lucent Technologies Inc. | Data encryption security module |
US5790663A (en) * | 1996-03-28 | 1998-08-04 | Advanced Micro Devices, Inc. | Method and apparatus for software access to a microprocessor serial number |
FR2751154B1 (fr) * | 1996-07-15 | 1998-09-11 | Schlumberger Ind Sa | Systeme de diversification d'informations dans un reseau de distribution de produits ou de services |
US6363482B1 (en) * | 1997-09-08 | 2002-03-26 | Harmonic Data Systems, Ltd. | Secure broadband communication |
BE1011489A6 (nl) * | 1997-10-09 | 1999-10-05 | Waldman Naamloze Vennootschap | Werkwijze en controle-inrichting voor het besturen van een digitaal informatieverwerkingstoestel. |
US6189099B1 (en) * | 1998-02-11 | 2001-02-13 | Durango Corporation | Notebook security system (NBS) |
US6189146B1 (en) * | 1998-03-18 | 2001-02-13 | Microsoft Corporation | System and method for software licensing |
US6243468B1 (en) * | 1998-04-29 | 2001-06-05 | Microsoft Corporation | Software anti-piracy system that adapts to hardware upgrades |
US6169976B1 (en) * | 1998-07-02 | 2001-01-02 | Encommerce, Inc. | Method and apparatus for regulating the use of licensed products |
EP1076279A1 (en) * | 1999-08-13 | 2001-02-14 | Hewlett-Packard Company | Computer platforms and their methods of operation |
US6289455B1 (en) * | 1999-09-02 | 2001-09-11 | Crypotography Research, Inc. | Method and apparatus for preventing piracy of digital content |
KR100605825B1 (ko) * | 1999-09-14 | 2006-07-31 | 삼성전자주식회사 | 하드 디스크 드라이브를 구비하는 방송 수신 시스템의 복사 방지장치 및 방법 |
US6725205B1 (en) * | 1999-12-02 | 2004-04-20 | Ulysses Esd, Inc. | System and method for secure software installation |
US6996720B1 (en) * | 1999-12-17 | 2006-02-07 | Microsoft Corporation | System and method for accessing protected content in a rights-management architecture |
US20020080969A1 (en) * | 2000-12-27 | 2002-06-27 | Giobbi John J. | Digital rights management system and method |
US7302571B2 (en) * | 2001-04-12 | 2007-11-27 | The Regents Of The University Of Michigan | Method and system to maintain portable computer data secure and authentication token for use therein |
US20040203354A1 (en) * | 2002-06-29 | 2004-10-14 | Lin Yue | Bluetooth remote access device |
-
2001
- 2001-09-04 US US09/944,405 patent/US7313828B2/en not_active Expired - Fee Related
-
2002
- 2002-08-29 CN CNB028220404A patent/CN1328634C/zh not_active Expired - Fee Related
- 2002-08-29 EP EP02765167A patent/EP1423771B1/en not_active Expired - Lifetime
- 2002-08-29 AT AT02765167T patent/ATE428988T1/de not_active IP Right Cessation
- 2002-08-29 WO PCT/IB2002/003491 patent/WO2003021403A1/en not_active Application Discontinuation
- 2002-08-29 DE DE60231990T patent/DE60231990D1/de not_active Expired - Lifetime
Cited By (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101138239B (zh) * | 2005-04-08 | 2012-05-30 | 韩国电子通信研究院 | 工具包结构和内容执行装置 |
CN100401849C (zh) * | 2005-11-04 | 2008-07-09 | 中国移动通信集团公司 | 防止盗用客户端软件的双向控制方法 |
CN101149768B (zh) * | 2006-09-20 | 2011-04-27 | 展讯通信(上海)有限公司 | 一种专用处理器软件的加密和解密方法 |
CN100462991C (zh) * | 2006-12-28 | 2009-02-18 | 北京飞天诚信科技有限公司 | 还原硬件标识的方法和系统 |
CN101917300B (zh) * | 2007-05-16 | 2012-07-04 | 华为技术有限公司 | 一种控制多设备的授权方法、通信设备和服务器 |
CN101216915B (zh) * | 2008-01-21 | 2012-07-25 | 深圳市路通网络技术有限公司 | 安全移动支付方法 |
CN101441692B (zh) * | 2008-11-21 | 2014-09-03 | 北京市研祥兴业国际智能科技有限公司 | 实现计算机硬件和软件绑定的方法 |
CN102483778A (zh) * | 2009-08-28 | 2012-05-30 | 索尼爱立信移动通讯有限公司 | 对移动设备应用的有效访问 |
CN102467634A (zh) * | 2010-11-10 | 2012-05-23 | 财团法人工业技术研究院 | 软件授权系统及方法 |
CN102467634B (zh) * | 2010-11-10 | 2015-01-14 | 财团法人工业技术研究院 | 软件授权系统及方法 |
WO2012171449A1 (zh) * | 2011-06-16 | 2012-12-20 | 中兴通讯股份有限公司 | 一种功能许可的管理方法及装置 |
CN102215131A (zh) * | 2011-06-16 | 2011-10-12 | 中兴通讯股份有限公司 | 一种功能License的管理方法及装置 |
CN102215131B (zh) * | 2011-06-16 | 2017-04-12 | 中兴通讯股份有限公司 | 一种功能License的管理方法及装置 |
CN104021318B (zh) * | 2013-03-01 | 2018-04-13 | 北京大学 | 防重放攻击装置和防重放攻击方法 |
CN104021318A (zh) * | 2013-03-01 | 2014-09-03 | 北京大学 | 防重放攻击装置和防重放攻击方法 |
CN103942472A (zh) * | 2014-04-14 | 2014-07-23 | 立德高科(北京)数码科技有限责任公司 | 用于屏蔽非授权使用者启动软件的方法及装置 |
CN103942472B (zh) * | 2014-04-14 | 2016-09-14 | 立德高科(北京)数码科技有限责任公司 | 用于屏蔽非授权使用者启动软件的方法及装置 |
CN105184116A (zh) * | 2015-06-19 | 2015-12-23 | 昆山博威泰克电子科技有限公司 | 智能设备软件加密及本人认证装置及其方法 |
CN105426782A (zh) * | 2015-07-09 | 2016-03-23 | 中华电信股份有限公司 | 智能卡固件授权的系统与方法 |
CN106230777A (zh) * | 2016-07-12 | 2016-12-14 | 珠海市魅族科技有限公司 | 一种防止文件被破解的方法及终端 |
CN108259163A (zh) * | 2016-12-29 | 2018-07-06 | 北京博瑞彤芸文化传播股份有限公司 | 终端设备的授权方法 |
CN108259163B (zh) * | 2016-12-29 | 2020-10-02 | 北京博瑞彤芸文化传播股份有限公司 | 终端设备的授权方法 |
CN109302370A (zh) * | 2017-07-24 | 2019-02-01 | 上海牛卡网络科技有限公司 | 一种客户端验证方法、终端和服务器 |
CN109302370B (zh) * | 2017-07-24 | 2021-11-02 | 上海牛卡网络科技有限公司 | 一种客户端验证方法、终端和服务器 |
CN107784206A (zh) * | 2017-11-10 | 2018-03-09 | 北京深思数盾科技股份有限公司 | 软件保护方法和装置以及软件验证方法和装置 |
CN109766685A (zh) * | 2019-01-21 | 2019-05-17 | 安徽养和医疗器械设备有限公司 | 一种通过usb接口实现的硬件数字授权模块及其授权方法 |
WO2023024538A1 (zh) * | 2021-08-27 | 2023-03-02 | 华为技术有限公司 | 一种保护应用程序的方法、装置和系统 |
Also Published As
Publication number | Publication date |
---|---|
EP1423771A1 (en) | 2004-06-02 |
ATE428988T1 (de) | 2009-05-15 |
DE60231990D1 (de) | 2009-05-28 |
US7313828B2 (en) | 2007-12-25 |
US20030046566A1 (en) | 2003-03-06 |
CN1328634C (zh) | 2007-07-25 |
EP1423771B1 (en) | 2009-04-15 |
WO2003021403A8 (en) | 2004-04-01 |
WO2003021403A1 (en) | 2003-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1328634C (zh) | 防止未被授权使用软件的方法 | |
CN1218598C (zh) | 移动通信装置和数据隐蔽方法 | |
CN1155866C (zh) | 防止在计算机中未经批准地使用软件的方法和设备 | |
CN100421102C (zh) | 便携式存储装置和使用该便携式存储装置的内容管理方法 | |
US5568552A (en) | Method for providing a roving software license from one node to another node | |
CN1220121C (zh) | 程序分发设备、客户设备、程序分发系统和程序分发方法 | |
CN1125564C (zh) | 加密服务的解密方法、条件存取系统和智能卡 | |
US7809944B2 (en) | Method and apparatus for providing information for decrypting content, and program executed on information processor | |
US8543764B2 (en) | Storage device with accessible partitions | |
CN1610888A (zh) | 存储防盗版密钥加密(sake)设备以便控制用于网络的数据存取的方法和装置 | |
CN1679273A (zh) | 用于数字权利管理的集成电路 | |
CN101488111A (zh) | 一种身份认证方法和系统 | |
CN100337478C (zh) | 一种用于机顶盒的私钥的获取方法 | |
CN110856170B (zh) | 数据传输方法、装置及物联网通信系统 | |
CN1610295A (zh) | 使用便携式存储装置用于管理数字权限的方法和设备 | |
EP1471405A1 (en) | Method and device for protecting information against unauthorised use | |
CN1846399A (zh) | 数字内容保护的系统和方法 | |
US7853787B2 (en) | Peripheral device for programmable logic controller | |
US7770001B2 (en) | Process and method to distribute software product keys electronically to manufacturing entities | |
CN101057447A (zh) | 用于从服务器向移动终端设备重新分发特定编码访问对象的方法和设备 | |
CN100464341C (zh) | 基于可信计算技术的数字内容使用痕迹的产生与管理方法 | |
CN105022651B (zh) | 一种设备生产过程中的防盗版方法及固件烧写装置 | |
US20080137838A1 (en) | Portable storage device and system with hardware key and copyright management function | |
CN1864118A (zh) | 用于识别和/或验证设备中以及与设备合作的数据载体中的硬件和/或软件的电路及方法 | |
KR100585840B1 (ko) | Drm 컨텐츠 서비스 사용자 인증 방법 |
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 | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20160218 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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20070725 Termination date: 20190829 |