CN1220121C - 程序分发设备、客户设备、程序分发系统和程序分发方法 - Google Patents

程序分发设备、客户设备、程序分发系统和程序分发方法 Download PDF

Info

Publication number
CN1220121C
CN1220121C CNB011045124A CN01104512A CN1220121C CN 1220121 C CN1220121 C CN 1220121C CN B011045124 A CNB011045124 A CN B011045124A CN 01104512 A CN01104512 A CN 01104512A CN 1220121 C CN1220121 C CN 1220121C
Authority
CN
China
Prior art keywords
communication path
processor
program
intervening
public keys
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
CNB011045124A
Other languages
English (en)
Other versions
CN1309355A (zh
Inventor
桥本幹生
藤本谦作
白川健治
寺本圭一
齐藤健
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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
Priority claimed from JP2000035898A external-priority patent/JP3801833B2/ja
Priority claimed from JP2000135010A external-priority patent/JP4226760B2/ja
Application filed by Toshiba Corp filed Critical Toshiba Corp
Publication of CN1309355A publication Critical patent/CN1309355A/zh
Application granted granted Critical
Publication of CN1220121C publication Critical patent/CN1220121C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/123Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting 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/72Protecting 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 in cryptographic circuits
    • 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]
    • G06F21/109Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by using specially-adapted hardware at the client

Abstract

本发明公开了一种方案,用于通过网络将可执行程序自程序分发设备分发至具有抗干预处理器的客户设备,该抗干预处理器事先配备有一个独一的保密密钥和一个独一的对应于该独一保密密钥的公共密钥。在此方案中,在程序分发设备与客户设备之间设置一条第一通信路径,及在第一通信路径之上设置一条用于直接连接程序分发设备与抗干预处理器的第二通信路径。然后通过第二通信路径将加密程序自程序分发设备传输至抗干预处理器。

Description

程序分发设备、客户设备、程序分发系统和程序分发方法
技术领域
本发明涉及一种通过公共网络例如因特网将加密的可执行程序分发至具有内装微处理器例如PC的硬件设备的方法和系统。
背景技术
近年以来,微处理器的性能大有改进,因此微处理器能够在传统功能例如计算和图形处理之外还能重现和编辑视频图像和音频声音。通过在为终端用户(今后将称为PC)设计的系统中实施这类微处理器,用户能够在监视器上欣赏各种视频图像和音频声音。还有,通过将用于重现视频图像和音频声音的功能与PC的计算能力结合起来,可以改进游戏及类似内容的可应用性。这类微处理器不是为任何专用硬件设计的,它可以实施于不同硬件中,因此其优点是已经拥有PC的用户只需简单地改变微处理器以使之用于执行程序,就能够花费很少而欣赏视频图像和音频声音的重现和编辑功能。
当在PC上处理视频图像和音频声音时,产生一个保护原始图像和音乐的版权的问题。在MD或数字视频重放设备中,可以在这些设备中预先实施一个用于防止非法复制的机理来防止无限制的复制。通过拆卸和修改这些设备而试图进行非法复制的情况比较少,以及即使做出这些设备,也有全球性的努力来按照法律禁止制造和销售那些为非法复制而修改的设备。因此,由于使用硬件进行非法复制而造成的损害并不很严重。
然而,更多的是在PC上使用软件而不是硬件来实际地处理图像数据和音乐数据,而终端用户可以自由地修改PC上的软件。也即,如果用户具有一定知识水平,则很可能他会分析程序并且将可执行软件重写来进行非法复制。此外,不像硬件那样,如此产生的用于非法复制的软件能够通过媒体例如网络非常迅速地散布开来。
为解决这些问题,有过一些建议,使微处理器具有防止分析和修改程序的功能(R.Hartman,美国专利号5,224,166;T.Gilmont等,“用于支持软件私有权的硬件安全性”,Electronic Letters,Vol.35,No.24,pp.2096-2098,November 1999;M.Hashimoto等,日本专利申请号2000-135010)。具体地,在由日本专利申请号2000-135010建议的微处理器中,在多任务环境下将组成程序的三类元素即指令、执行状态和数据全部加密,从而防止分析和修改程序。
在这些微处理器中,在处理器内部提供一个保密密钥和使用该保密密钥的解密功能,以使这些加密程序可供外部处理器读取,而可使用对应于该保密密钥的公共密钥来或者直接地或者间接地将这些程序解密和执行。与抗干预软件技术比较,使用这些微处理器可以使这些程序的分析和修改在原理上要难得多。以下将具有此功能的微处理器称为抗干预微处理器。
现在,在使用这些处理器的情况下,必须由程序供应商使用处理器的公共密钥来或者直接地或者间接地将程序加密后提供出来。然而,尚无已知的可用于安全地实现这类程序分发的方案。
发明内容
因此本发明的一个目的是提供一种程序分发设备,能够用于通过网络安全地将程序分发至客户侧设备。
本发明的另外一个目的是提供一种客户侧设备,能够用于通过网络安全地接收分发的程序。
本发明的又一个目的是提供一种程序分发系统,能够用于通过网络安全地分发程序。
本发明还有一个目的是提供一种程序分发方法,用于通过公共网络安全地分发程序。
本发明提供一种用于通过网络分发可执行程序至具有抗干预处理器的客户设备的程序分发设备,该抗干预处理器事先配备有独一的保密密钥和对应于该独一的保密密钥的独一的公共密钥,该程序分发设备包括:一个第一通信路径设置单元,配置为在程序分发设备与客户设备之间设置一条第一通信路径;一个第二通信路径设置单元,配置为设置一条用于直接连接程序分发设备与抗干预处理器的第二通信路径,该第一通信路径和该第二通信路径被设置为同一通信线路上的不同信道或被设置为不同的通信线路;一个加密处理单元,配置为使用抗干预处理器的独一的公共密钥将准备分发至客户设备并在抗干预处理器中执行的可执行程序加密从而产生一个加密程序;及一个传输单元,配置为通过第二通信路径将加密程序传输至抗干预处理器,从而将该被加密的程序直接交付给抗干预处理器,并且仅能在该抗干预处理器中解密和执行该被加密的程序,该抗干预处理器是具有对应于该独一的公共密钥的独一的保密密钥的唯一实体。
本发明提供一种用于通过网络接收由程序分发设备所分发的程序的客户设备,该客户设备包括:一个抗干预处理器,事先配备有一个独一的保密密钥和一个对应于该独一的保密密钥的独一的公共密钥;一个第一通信路径设置单元,配置为在程序分发设备与客户设备之间设置一条第一通信路径;一个第二通信路径设置单元,配置为设置一条用于直接连接程序分发设备与抗干预处理器的第二通信路径,该第一通信路径和该第二通信路径被设置为同一通信线路上的不同信道或被设置为不同的通信线路;及一个程序接收单元,配置为通过第二通信路径接收来自程序分发设备使用抗干预处理器的独一的公共密钥将准备分发给客户设备并在抗干预处理器中执行的可执行程序进行加密所获得的加密程序,从而将该被加密的程序直接交付给抗干预处理器,并且仅能在该抗干预处理器中解密和执行该被加密的程序,该抗干预处理器是具有对应于该独一的公共密钥的独一的保密密钥的唯一实体。
本发明提供一种程序分发系统,包括:一个连至网络的程序分发设备,用于通过网络分发可执行程序;及一个连至网络的客户设备,用于通过网络接收由程序分发设备分发的可执行程序;其中该客户设备具有:一个抗干预处理器,事先配备有一个独一的保密密钥和一个对应于该独一的保密密钥的独一的公共密钥;一个客户侧第一通信路径设置单元,配置为在程序分发设备与客户设备之间设置一条第一通信路径;一个客户侧第二通信路径设置单元,配置为设置一条用于直接连接该程序分发设备与抗干预处理器的第二通信路径,该第一通信路径和该第二通信路径被设置为同一通信线路上的不同信道或被设置为不同的通信线路;及一个程序接收单元,配置为通过第二通信路径接收来自程序分发设备的加密程序;以及该程序分发设备具有:一个服务器侧第一通信路径设置单元,配置为在程序分发设备与客户设备之间设置一条第一通信路径;一个服务器侧第二通信路径设置单元,配置为在第一通信路径之上设置一条用于直接连接程序分发设备与抗干预处理器的第二通信路径;一个加密处理单元,配置为使用抗干预处理器的独一的公共密钥将准备分发至客户设备并在抗干预处理器中执行的可执行程序加密从而产生一个加密程序;及一个传输单元,配置为通过第二通信路径将加密程序传输至抗干预处理器,从而将该被加密的程序直接交付给抗干预处理器,并且仅能在该抗干预处理器中解密和执行该被加密的程序,该抗干预处理器是具有对应于该独一的公共密钥的独一的保密密钥的唯一实体。
本发明提供一种分发可执行程序的方法,它是用于通过网络自程序分发设备分发可执行程序至具有抗干预处理器的客户设备的方法,该抗干预处理器事先配备有独一的保密密钥和对应于该独一的保密密钥的独一的公共密钥,该方法包括以下步骤:设置一条程序分发设备与客户设备之间的第一通信路径;设置一条用于直接连接程序分发设备和抗干预处理器的第二通信路径,该第一通信路径和该第二通信路径被设置为同一通信线路上的不同信道或被设置为不同的通信线路;在程序分发设备处通过使用抗干预处理器的独一的公共密钥将准备分发至客户设备并在抗干预处理器中执行的可执行程序加密,从而产生一个加密程序;及通过第二通信路径将加密程序自程序分发设备传输至抗干预处理器,从而将该被加密的程序直接交付给抗干预处理器,并且仅能在该抗干预处理器中解密和执行该被加密的程序,该抗干预处理器是具有对应于该独一的公共密钥的独一的保密密钥的唯一实体。
结合附图进行的以下描述将使本发明的其他特征和优点更为明显。
附图说明
图1是用于显示根据一个本发明实施例的程序分发系统的配置的框图。
图2是图1的程序分发设备中程序分发操作顺序的顺序图。
图3是图2的操作顺序中客户设备的处理过程的流程图。
图4是图2的操作顺序中程序分发设备(服务器)的处理过程的流程图。
图5是图2的操作顺序中微处理器的处理过程的流程图。
具体实施方式
首先,简要地描述本发明的主要特征。
本发明提供了一种程序分发设备,用于通过网络将可执行程序分发至具有内装抗干预微处理器的客户设备,其中该微处理器事先配备有一个独一的保密密钥和一个独一的对应于该独一的保密密钥的公共密钥。此程序分发设备具有一个加密处理单元,它使用自客户设备的微处理器送来的独一公共密钥将程序加密,或者使用任意加保密密密钥将程序加密并且使用自客户设备的微处理器送来的独一公共密钥将该加保密密密钥加密。加密的密码密钥然后与加密的程序一起分发至客户设备。
在本发明的程序分发方法中,通过网络设置一条自客户设备至程序分发设备的第一通信路径。然后在第一通信路径之上设置一条用于直接将微处理器连至该程序分发设备的第二通信路径。通过第二通信路径将独一的公共密钥自微处理器送至程序分发设备。在程序分发设备处接收通过网络送来的该独一的公共密钥,以及该程序分发设备将程序加密。然后通过第二通信路径将加密的程序直接送至客户设备的微处理器。
以此方式分发的程序或者使用客户设备的微处理器的独一公共密钥进行加密,或者使用普通密钥进行加密,而此普通密钥又由微处理器的独一公共密钥加密。该程序直接传输至微处理器而不被任何计算机截留,并且只能由具有对应于此公共密钥的独一的保密密钥的微处理器来解密。以此方式,有可能有效地防止第三方非法解密。
现在参照图1至图5来详细地描述根据本发明的程序分发设备的一个实施例。
图1显示根据此实施例的程序分发系统,它基本上设计为将程序分发至一个具有内装抗干预微处理器的计算机系统。因此,准备分发的可执行程序或者使用对于微处理器是独一的保密密钥直接加密,或者使用任意普通密钥加密并且使用对于微处理器是独一的保密密钥将该普通密钥本身加密及将其依附于可执行程序上。在此情况下,不可能使用相同程序记录媒体的复制副本例如大批产生的CD-ROM来分发程序,以使程序通过网络来分发。
图1的程序分发系统90包括一个网络95,一个连至网络95以便通过网络95分发可执行程序的程序分发设备93,一个连至网络95以便通过网络95接收自程序分发设备93分发来的可执行程序的客户设备91。
程序分发设备93具有一个用于在程序分发设备93与客户设备91之间设置第一通信路径的第一通信路径设置单元932,一个用于通过第一通信路径对使用客户设备91的用户进行用户证实的用户证实单元933,一个用于设置直接连至配备于客户设备91内的微处理器的第二通信路径的第二通信路径设置单元934,一个用于通过第二通信路径对客户设备91的微处理器901进行证实的处理器证实单元935,一个使用对应于客户设备91的微处理器的密码密钥将可执行程序加密从而产生一个加密程序的程序加密处理单元936,一个用于通过第二通信路径将加密程序分发至客户设备91的网络接口931,以及一个付费处理单元937。
客户设备91具有一个其中事先配备有一个独一的保密密钥和公共密钥的微处理器901,一个网络接口903,一个用于在客户设备91与程序分发设备93之间设置第一通信路径的第一通信路径设置单元905,一个用于通过第一通信路径传输正在使用客户设备91的用户的用户ID的用户证实单元910,一个用于设置直接将微处理器901连至程序分发设备93的第二通信路径的第二通信路径设置单元906,一个用于传输证书至程序分发设备93的证书单元,其中该证书确认微处理器901的确具有只对此微处理器901是独一的保密密钥和公共密钥,一个用于通过第二通信路径接收加密的可执行程序的程序接收单元908,一个程序传输单元909,以及一个付费处理证实单元912。
可以在同一传输线的不同信道上,也可在不同传输线上设置第一和第二通信路径。在对微处理器901进行证实之后,通过直接连至微处理器901的第二通信路径将加密程序传输至微处理器901,以便保证程序分发的安全性以及防止用户的非法操作。
程序分发设备(服务器)93具有在世界上是独一的一对公共密钥K′p和保密密钥K′s以及作为准备分发的程序的原始形式的非加密程序文件。另一方面,客户设备91所具有的微处理器901中配备有一个专用于通过网络将程序下载的专用程序。下载用的程序既可在购买微处理器901时也可在购买包含微处理器901的系统时提供,也可使用任何方法例如邮寄来单独地分发至每个用户。
在下载程序内埋嵌着一些信息,例如对于微处理器901是独一的公共密钥Kp和证书。更具体地,这个用于确认微处理器901的公共密钥Kp是对应于实际存在的微处理器的证书是存于下载程序内的。提供此证书的目的在于防止用户通过使用不对应于实际微处理器901的公共密钥和保密密钥的已知集合而获得加密程序及使用已知保密密钥将加密程序解密,进而非法地获得普通文本程序内容。
该证书包含公共密钥Kp和一个值SKcert[Kp],它是一个使用公共密钥Kp上的证书权威的密钥Kcert来预先计算的电子签字。Kcert的值由证书权威秘密地进行管理并且不包含于下载程序内。通过使用供证实用的公共密钥Kval来证实包含于证书中的公共密钥Kp和签字SKcert[Kp],有可能证明Kp是由证书权威所赋予的无法使用已知密钥集合的恰当的公共密钥。
此证书可以事先在微处理器内提供。然而,在下载程序中存储带有有效期限的证书和销售微处理器时一起销售下载程序,可以进一步改进安全性。在此情况下,存有经常更新的证书的下载程序可以分送至微处理器的买主。
准备用于下载过程的保密密钥Ks是在下载程序的数据区内加密和存储的。将加密的保密密钥Ks解密时所需密钥作为常量分布式地埋嵌于下载程序代码内。准备由下载程序使用于证实过程中的保密密钥Ks与对微处理器901是独一的保密密钥Ks一样地具有相同的值,但它不是通过从微处理器901中读取保密密钥Ks而获得的,因为对微处理器901是独一的的保密密钥Ks不能由程序读出。
一般而言,证书权威CA应用于证明一定的主人具有具体公共密钥。在使用本系统的证书权威的情况下,或者在购买微处理器901时,或者稍后通过在线处理,将微处理器901和用户(购买者)的公共密钥的组合向证书权威登记。在此情况下,可以省略由程序分发设备对证书的证实。
然而,证书权威的使用对用户带来不方便,即用户必须将购买的微处理器901向证书权威登记。由于这个原因,在此实施例中将加密的证书存于下载程序中,以便单独由程序分发设备93和客户设备91实行证实操作。
注意到,在此实施例中假设程序分发设备83是值得信赖的,即程序分发设备93不会进行非法活动例如盗窃证书,并且事先由证书权威或类似机构确认以下事实:程序分发设备93具有一对在世界中是独一的密钥K′p和K′s。
图2显示图1的程序分发设备90中程序分发处理的操作顺序。下面将程序分发设备93也称为服务器93。
在图2的操作顺序中,由相应的设备的第一通信路径设置单元在客户设备91与服务器93之间设置一条安全的第一通信路径(步骤1001)。更具体地,通过网络95自客户设备91分发一个开始通信请求至服务器93,并且实行密钥分享以便保持通信路径处于秘密状态中。这可由已知的密钥分享协议或DH(Diffie Hellman)方案来实现。随后通过以此方式设置的同时对于窃听而言是安全的这条通信路径实行客户设备91与服务器93之间的通信。
在设置第一通信路径之后,客户设备91请求将文件(程序)下载至服务器93(步骤1002),以及服务器93在用户级别上执行的与客户设备91证实和付费处理操作。在下载过程中为对用户保持处理的秘密,至少一部分将于下面描述的客户设备91处的下载顺序将要使用加密代码来执行。此处将要使用加密代码来执行的部分将被描述为微处理器901的操作。
然后在第一通信路径之上设置一条用于直接连接客户设备91的微处理器901与服务器93的安全的第二通信路径(步骤1003)。
在本发明中,为防止用户非法地获得在下载过程中一部分处理过的数据,在处理期间准备放置于存储器内的不仅代码而且数据所具有的形式都是用户在下载程序内难以读取和理解的。此外,在步骤1003中执行服务器93与微处理器901之间的使用保密密钥的密码通信,以便改进防止用户非法操作的保护措施。
采取此措施是因为如果不采用保密密钥共享,则有可能发生以下情况:用户通过非法操作在服务器93和微处理器901之间的通信消息内使用一个伪装公共密钥来替代微处理器901的公共密钥Kp从而获得加密程序,以及通过使用对应于伪装公共密钥的已知的保密密钥来将加密程序解密从而获得普通文本程序。通过使用保密密钥将服务器93与微处理器901之间的通信加用密码,有可能防止以上所述的用户非法操作。此处在微处理器901与服务器93之间的通信意味着受保护的通信,它使用一个由微处理器901中的抗干预程序与服务器93所共享的密码密钥来将通信进行加密。
在设置安全的第二通信路径之后,微处理器901和服务器93执行相互证实操作。也即,微处理器901生成一个随机数Rc,作为对服务器93的竞争,并且通过第二通信路径将此随机数Rc与对于微处理器901是独一的公共密钥Kp一起传输至服务器93(步骤1004)。在收到该竞争后,服务器93将一个使用服务器93的保密密钥K′s将随机数Rc加密而获得的签字SK′s[Rc]与服务器93的竞争Rs和服务器93的公共密钥K′p一起传输至微处理器901(步骤1005)。注意到在图2中SK′s[Rc]标为S[Rc](K′s)以及类似标记用于其他类似表示。
微处理器901检查自服务器93传输来的签字SK′s[Rc]是否与使用服务器93的公共密钥K′p将Rc进行散列函数计算所得VK′p[Rc]重合。如果它们不重合,则服务器93的证实操作失败,因而将随后的处理过程中断。如果证实操作成功,则根据服务器93的竞争Rs计算一个响应SK′s[Rs]并且将它与证书E[Cert]一起传输至服务器93(步骤1006)。
服务器93将响应SK′s[Rs]与VK′p[Rs]进行比较,并且如果它们不重合则将处理过程中断。如果它们重合,则根据微处理器901的公共密钥Kp和证书权威的公共密钥Kval计算VKval[Kp],并且将它与对应于自证书Cert获得的公共密钥的VKcert[Kp]进行比较。如果它们不重合,则证实操作失败,从而将处理过程中断。如果它们重合,则通过将EK′p[Cert]解密而获得证书Cert并且对它进行证实。如果证实操作失败,则将处理过程中断。
如果证实操作成功从而由证书确认微处理器901具有公共密钥Kp这一事实,则服务器93使用微处理器901的公共密钥Kp自可执行程序中产生加密程序EK′p[Prog]。在此处使用微处理器901的公共密钥Kp将程序的代码部分加密。在此加密操作中,由跳转表的具有普通文本形式的“.IAT(输入地址表)”部分将程序本身的“.text”部分加密。
服务器93然后通过第二通信路径将加密程序EK′p[Prog]与使用服务器93的保密密钥K′s所获得的签字SK′s[EK′p[Prog]]传输至微处理器901(步骤1007)。这些加密的程序和签字通过直接在微处理器901与服务器93之间建立起来的第二通信路径进行传输,从而使客户设备91无法窃听它们。
当完成程序的接收后,微处理器901向客户设备91通知下载完毕(步骤1008)。客户设备91然后向服务器93请求实行付费处理,以及服务器93向客户设备91传输一个收据Rcpt,一个使用服务器93的保密密钥K′s所获得收据的签字SK′p[Rcpt]和一个程序的签字SK′s[EK′p[Prog]](步骤1009)。客户设备91保持收到的收据及其签字,同时将自服务器93收到的程序签字SK′s[EK′p[Prog]]分发至微处理器901(步骤1010)。
微处理器901使用服务器93的公共密钥K′p来证实自客户设备91收到的程序签字SK′s[EK′p[Prog]],以及如果它是恰当的则微处理器901将加密的可执行程序EK′p[Prog]送至客户设备91(步骤1011)。在收到加密的可执行程序EK′p[Prog]后,客户设备91执行相对于服务器93的通信信道的结束处理过程(步骤1012)。
此后,微处理器901按照规定方式执行加密程序。
图3显示图2的操作顺序中客户设备91的处理过程。此处理过程已经基本上参照图2解释过,它如下进行:
首先,在客户设备91与服务器93之间设置第一通信路径(步骤1101)。然后提出相对于服务器93的程序下载请求,并且执行以上所述的证实处理过程(步骤1103)。然后实行微处理器901与服务器93之间的证实操作及将该程序传输至微处理器901(步骤1105)。然后自微处理器901接收一个接收完成通知(步骤1107),使用服务器93实行付费处理过程(步骤1109),以及自服务器93接收收据和签字(步骤1111)。然后将签字送至微处理器901(步骤1113),自微处理器901接收加密程序(步骤1115),以及结束客户设备91与服务器93之间的通信信道(步骤1117)。
图4显示图2的操作顺序中服务器93的处理过程,它如下进行。
首先,响应于来自客户设备91的请求而设置第一通信路径(步骤1201)。然后接收来自客户设备91的程序下载请求,以及为付费或类似目的而实行客户证实(步骤1203)。然后设置服务器93与微处理器901之间的第二通信路径(步骤1205),以及自微处理器901接收竞争Rc和公共密钥Kp(步骤1207)。然后生成服务器侧竞争Rs和响应SK′s[Rc]并且将它们与服务器93的公共密钥K′p一起传输至微处理器901(步骤1209)。然后自微处理器901接收响应SK′s[Rs]和证书E[Cert](步骤1211),以及对自微处理器901收到的SK′s[Rs]和E[Cert]进行证实(步骤1213)。当证实操作失败时,即将处理过程中断。当证实操作成功时,生成加密程序和对应于微处理器901的签字并且将它们传输至微处理器901(步骤1215),以及结束服务器93与微处理器901之间的程序传输(步骤1217)。然后执行相对于客户设备91的付费处理过程并且传输收据和签字(步骤1219),以及结束服务器93与客户设备91之间的通信信道(步骤1221)。
图5显示图2的操作顺序中微处理器901的处理过程,它如下进行。
首先,在微处理器901与服务器93之间设置第二通信路径(步骤1301)。然后生成竞争Rc并且将它与对于微处理器901是独一的公共密钥Kp一起传输至服务器93(步骤1303)。当传输成功时,自服务器93接收响应SK′s[Rc]、竞争Rs和公共密钥K′p(步骤1305)。然后判断该响应是否恰当(步骤1307)。如果它不恰当则将处理过程中断。如果它是恰当的,则生成相对于服务器93的响应和对应于服务器93的证书并且将它们传输(步骤1309)。然后自服务器93接收加密程序(步骤1311),以及当接收完毕时,向客户设备91通知下载完成(步骤1313)。然后自客户设备91接收签字(步骤1315)并且证实该签字(步骤1317)。如果证实操作失败则将处理过程中断。如果证实操作成功,则将加密程序传输至客户设备91(步骤1319)。
在图2的操作顺序中,如果在完成付费处理过程之后由于下载程序的非正常结束而无法获得加密程序E[prog],则客户有权根据所保留的收据来再次从服务器93下载该程序。在此情况下,将不再进行付费操作,但无法获得微处理器901的加密程序之外的其他程序。
还有,在图2的操作顺序中,服务器93可以使用普通密钥将程序加密而不用微处理器901的公共密钥。在此情况下,服务器93选择普通密钥Kx和加密算法,使用普通密钥Kx将程序加密,使用对于微处理器901是独一的公共密钥来将普通密钥Kx加密,以及在将服务器93与微处理器901之间的通信加用密码之后将该程序传输至微处理器901。在此处可以增加一个步骤,即在设置第二通信路径之后由服务器93向微处理器901查询在微处理器901中提供的加密/解密功能,从而使服务器93可以从可由微处理器901处理的加密算法中选择一个加密算法。
在此情况下,每个程序的临时使用的普通密钥可用于将执行代码解密以便将密钥长度缩短及将客户设备91的存储器中所构造的页表减小或者微处理器901的高速缓存缩小。
以上所述的下载过程也可用于处理秘密信息例如数据库或顾客信息。此下载过程也可扩展而应用于除可执行程序以外的任何音乐或视频数据,其中与执行程序的情况的唯一差别是在执行程序的情况下程序如此加密以致程序只能由目标微处理器执行。
根据本发明的程序分发设备,可以通过网络安全地和肯定地将加密程序自程序分发设备分发至客户设备。还有,通过使用准备在微处理器处执行的抗干预下载程序,可以直接在程序分发设备与微处理器之间安全地和有效地下载程序而不受第三方的干预。
还有,通过在计算机可读记录媒体中以加密形式记录程序代码部分及以非加密普通文本形式存储直接涉及外部程序的IAT区域,可以在执行程序期间正确地执行重定位操作。
应该注意到,以上实施例用于描述一个使用抗干预微处理器的示例,但很清楚本发明同样可以应用于使用抗干预处理器的一般情况。
还应该注意到,除以上所述以外,可以在不背离本发明的新颖和有利的特征的情况下对以上各实施例作出许多修改和变动。因此,所有这些修改和变动都会包括于所附权利要求书的范围之内。

Claims (19)

1.一种用于通过网络分发可执行程序至具有抗干预处理器的客户设备的程序分发设备,该抗干预处理器事先配备有独一的保密密钥和对应于该独一的保密密钥的独一的公共密钥,该程序分发设备包括:
一个第一通信路径设置单元,配置为在程序分发设备与客户设备之间设置一条第一通信路径;
一个第二通信路径设置单元,配置为设置一条用于直接连接程序分发设备与抗干预处理器的第二通信路径,该第一通信路径和该第二通信路径被设置为同一通信线路上的不同信道或被设置为不同的通信线路;
一个加密处理单元,配置为使用抗干预处理器的独一的公共密钥将准备分发至客户设备并在抗干预处理器中执行的可执行程序加密从而产生一个加密程序;及
一个传输单元,配置为通过第二通信路径将加密程序传输至抗干预处理器,从而将该被加密的程序直接交付给抗干预处理器,并且仅能在该抗干预处理器中解密和执行该被加密的程序,该抗干预处理器是具有对应于该独一的公共密钥的独一的保密密钥的唯一实体。
2.权利要求1的程序分发设备,还包括:
一个用户证实单元,配置为使用通过第一通信路径自客户设备接收的用户的用户ID来证实正在使用客户设备的用户。
3.权利要求1的程序分发设备,还包括:
一个处理器证实单元,配置为通过验证一个证书来证实该抗干预处理器,其中该证书确认该抗干预微处理器的确具有通过第二通信路径自客户设备接收的独一的保密密钥和独一的公共密钥。
4.权利要求1的程序分发设备,其中加密处理单元使用通过第二通信路径自抗干预处理器接收的独一的公共密钥将可执行程序加密。
5.权利要求1的程序分发设备,其中加密处理单元使用普通密钥将可执行程序加密,以及使用通过第二通信路径自抗干预处理器接收的独一的公共密钥将该普通密钥加密;及
该传输单元通过第二通信路径将加密程序与加密的普通密钥一起传输至抗干预处理器。
6.权利要求1的程序分发设备,其中通过第二通信路径的通信是密码通信。
7.一种用于通过网络接收由程序分发设备所分发的程序的客户设备,该客户设备包括:
一个抗干预处理器,事先配备有一个独一的保密密钥和一个对应于该独一的保密密钥的独一的公共密钥;
一个第一通信路径设置单元,配置为在程序分发设备与客户设备之间设置一条第一通信路径;
一个第二通信路径设置单元,配置为设置一条用于直接连接程序分发设备与抗干预处理器的第二通信路径,该第一通信路径和该第二通信路径被设置为同一通信线路上的不同信道或被设置为不同的通信线路;及
一个程序接收单元,配置为通过第二通信路径接收来自程序分发设备使用抗干预处理器的独一的公共密钥将准备分发给客户设备并在抗干预处理器中执行的可执行程序进行加密所获得的加密程序,从而将该被加密的程序直接交付给抗干预处理器,并且仅能在该抗干预处理器中解密和执行该被加密的程序,该抗干预处理器是具有对应于该独一的公共密钥的独一的保密密钥的唯一实体。
8.权利要求7的客户设备,还包括:
一个用户证实单元,配置为通过第一通信路径传输正在使用客户设备的用户的用户ID至程序分发设备而相对于该程序分发设备来证实该用户。
9.权利要求7的客户设备,还包括:
一个确认单元,配置为通过第二通信路径传输一个证书,其中该证书确认该抗干预处理器的确具有独一的保密密钥和独一的公共密钥,从而相对于程序分发设备而证实该抗干预处理器。
10.权利要求7的客户设备,其中程序接收单元接收使用自抗干预处理器通过第二通信路径通知至程序分发设备的独一的公共密钥而加密的加密程序。
11.权利要求7的客户设备,其中程序接收单元接收使用普通密钥加密的加密程序以及使用自抗干预处理器通过第二通信路径通知至程序分发设备的独一的公共密钥而加密的加密的普通密钥。
12.权利要求7的客户设备,其中通过第二通信路径的通信是密码通信。
13.一种程序分发系统,包括:
一个连至网络的程序分发设备,用于通过网络分发可执行程序;及
一个连至网络的客户设备,用于通过网络接收由程序分发设备分发的可执行程序;
其中该客户设备具有:
一个抗干预处理器,事先配备有一个独一的保密密钥和一个对应于该独一的保密密钥的独一的公共密钥;
一个客户侧第一通信路径设置单元,配置为在程序分发设备与客户设备之间设置一条第一通信路径;
一个客户侧第二通信路径设置单元,配置为设置一条用于直接连接该程序分发设备与抗干预处理器的第二通信路径,该第一通信路径和该第二通信路径被设置为同一通信线路上的不同信道或被设置为不同的通信线路;及
一个程序接收单元,配置为通过第二通信路径接收来自程序分发设备的加密程序;
以及该程序分发设备具有:
一个服务器侧第一通信路径设置单元,配置为在程序分发设备与客户设备之间设置一条第一通信路径;
一个服务器侧第二通信路径设置单元,配置为在第一通信路径之上设置一条用于直接连接程序分发设备与抗干预处理器的第二通信路径;
一个加密处理单元,配置为使用抗干预处理器的独一的公共密钥将准备分发至客户设备并在抗干预处理器中执行的可执行程序加密从而产生一个加密程序;及
一个传输单元,配置为通过第二通信路径将加密程序传输至抗干预处理器,从而将该被加密的程序直接交付给抗干预处理器,并且仅能在该抗干预处理器中解密和执行该被加密的程序,该抗干预处理器是具有对应于该独一的公共密钥的独一的保密密钥的唯一实体。
14.一种分发可执行程序的方法,它是用于通过网络自程序分发设备分发可执行程序至具有抗干预处理器的客户设备的方法,该抗干预处理器事先配备有独一的保密密钥和对应于该独一的保密密钥的独一的公共密钥,该方法包括以下步骤:
设置一条程序分发设备与客户设备之间的第一通信路径;
设置一条用于直接连接程序分发设备和抗干预处理器的第二通信路径,该第一通信路径和该第二通信路径被设置为同一通信线路上的不同信道或被设置为不同的通信线路;
在程序分发设备处通过使用抗干预处理器的独一的公共密钥将准备分发至客户设备并在抗干预处理器中执行的可执行程序加密,从而产生一个加密程序;及
通过第二通信路径将加密程序自程序分发设备传输至抗干预处理器,从而将该被加密的程序直接交付给抗干预处理器,并且仅能在该抗干预处理器中解密和执行该被加密的程序,该抗干预处理器是具有对应于该独一的公共密钥的独一的保密密钥的唯一实体。
15.权利要求14的方法,还包括以下步骤:
使用通过第一通信路径自程序分发设备接收的正在使用客户设备的用户的用户ID来证实该用户。
16.权利要求14的方法,还包括以下步骤:
通过验证一个通过第二通信路径自客户设备接收的证书而证实该抗干预处理器,其中该证书确认该抗干预处理器的确具有独一的保密密钥和独一的公共密钥。
17.权利要求14的方法,其中该产生步骤使用通过第二通信路径自抗干预处理器接收的独一的公共密钥将可执行程序加密。
18.权利要求14的方法,其中该产生步骤使用普通密钥将可执行程序加密,以及使用通过第二通信路径自抗干预处理器接收的独一的公共密钥将该普通密钥加密;
该传输步骤通过第二通信路径将加密程序与加密的普通密钥一起传输至抗干预处理器。
19.权利要求14的方法,其中通过第二通信路径的通信是密码通信。
CNB011045124A 2000-02-14 2001-02-14 程序分发设备、客户设备、程序分发系统和程序分发方法 Expired - Fee Related CN1220121C (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2000035898A JP3801833B2 (ja) 2000-02-14 2000-02-14 マイクロプロセッサ
JP035898/2000 2000-02-14
JP135010/2000 2000-05-08
JP2000135010A JP4226760B2 (ja) 2000-05-08 2000-05-08 マイクロプロセッサ、これを用いたマルチタスク実行方法、およびマルチレッド実行方法

Publications (2)

Publication Number Publication Date
CN1309355A CN1309355A (zh) 2001-08-22
CN1220121C true CN1220121C (zh) 2005-09-21

Family

ID=26585335

Family Applications (2)

Application Number Title Priority Date Filing Date
CNB011045124A Expired - Fee Related CN1220121C (zh) 2000-02-14 2001-02-14 程序分发设备、客户设备、程序分发系统和程序分发方法
CNB011030003A Expired - Fee Related CN1189819C (zh) 2000-02-14 2001-02-14 抗干预微处理器

Family Applications After (1)

Application Number Title Priority Date Filing Date
CNB011030003A Expired - Fee Related CN1189819C (zh) 2000-02-14 2001-02-14 抗干预微处理器

Country Status (5)

Country Link
US (3) US6983374B2 (zh)
EP (2) EP1126356B1 (zh)
KR (2) KR100362219B1 (zh)
CN (2) CN1220121C (zh)
DE (1) DE60135695D1 (zh)

Families Citing this family (208)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7996670B1 (en) 1999-07-08 2011-08-09 Broadcom Corporation Classification engine in a cryptography acceleration chip
US6983374B2 (en) 2000-02-14 2006-01-03 Kabushiki Kaisha Toshiba Tamper resistant microprocessor
US6895506B1 (en) * 2000-05-16 2005-05-17 Loay Abu-Husein Secure storage and execution of processor control programs by encryption and a program loader/decryption mechanism
US6986052B1 (en) 2000-06-30 2006-01-10 Intel Corporation Method and apparatus for secure execution using a secure memory partition
FR2817067B1 (fr) * 2000-11-21 2003-02-21 Cyber Comm Procede et dispositif d'authentification de documents electroniques au moyen d'une signature numerique
US20020114457A1 (en) * 2001-01-26 2002-08-22 Takahiro Sato LSI having interpreter function and information recording/reproducing apparatus using the same
US7260820B1 (en) 2001-04-26 2007-08-21 Vm Ware, Inc. Undefeatable transformation for virtual machine I/O operations
US7428636B1 (en) * 2001-04-26 2008-09-23 Vmware, Inc. Selective encryption system and method for I/O operations
CN1212565C (zh) * 2001-05-14 2005-07-27 株式会社Ntt都科摩 应用程序发送系统和应用程序管理方法
US7051332B2 (en) * 2001-05-21 2006-05-23 Cyberscan Technology, Inc. Controller having a restart engine configured to initiate a controller restart cycle upon receipt of a timeout signal from a watchdog timer
US7979740B2 (en) * 2001-05-21 2011-07-12 Mudalla Technology, Inc. Gaming machine having game play suspension and resumption features using biometrically-based authentication and method of operating same
US7478266B2 (en) * 2001-05-21 2009-01-13 Mudalla Technology, Inc. Method and apparatus for fast transaction commit over unreliable networks
US7237121B2 (en) * 2001-09-17 2007-06-26 Texas Instruments Incorporated Secure bootloader for securing digital devices
US7181530B1 (en) * 2001-07-27 2007-02-20 Cisco Technology, Inc. Rogue AP detection
JP2003051819A (ja) * 2001-08-08 2003-02-21 Toshiba Corp マイクロプロセッサ
CA2461408C (en) * 2001-09-28 2012-06-05 High Density Devices As Method and device for encryption/decryption of data on mass storage device
JP4226816B2 (ja) * 2001-09-28 2009-02-18 株式会社東芝 マイクロプロセッサ
US20040255136A1 (en) * 2001-11-12 2004-12-16 Alexey Borisovich Fadyushin Method and device for protecting information against unauthorised use
US20030115471A1 (en) * 2001-12-19 2003-06-19 Skeba Kirk W. Method and apparatus for building operational radio firmware using incrementally certified modules
KR100458515B1 (ko) * 2001-12-21 2004-12-03 한국전자통신연구원 무선 인터넷을 통한 이동 단말용 응용프로그램 설치시스템 및 그 방법
US7305567B1 (en) * 2002-03-01 2007-12-04 Cavium Networks, In. Decoupled architecture for data ciphering operations
KR20030075018A (ko) * 2002-03-15 2003-09-22 주식회사 셈틀로미디어 변조 방지용 소프트웨어 파일 생성 장치와 그 소프트웨어파일의 자가 무결성 검증 방법 및 클라이언트-서버환경에서의 소프트웨어 파일의 자가 무결성 검증 방법
US7900054B2 (en) * 2002-03-25 2011-03-01 Intel Corporation Security protocols for processor-based systems
JP2003330365A (ja) * 2002-05-09 2003-11-19 Toshiba Corp コンテンツ配布/受信方法
CN1296790C (zh) 2002-06-05 2007-01-24 富士通株式会社 存储器管理单元、代码验证装置以及代码译码装置
US7392415B2 (en) * 2002-06-26 2008-06-24 Intel Corporation Sleep protection
JP4073913B2 (ja) * 2002-07-09 2008-04-09 富士通株式会社 開放型汎用耐攻撃cpu及びその応用システム
JP2004054834A (ja) 2002-07-24 2004-02-19 Matsushita Electric Ind Co Ltd プログラム開発方法、プログラム開発支援装置およびプログラム実装方法
US20040017918A1 (en) * 2002-07-24 2004-01-29 Christophe Nicolas Process for point-to-point secured transmission of data and electronic module for implementing the process
EP1429224A1 (en) * 2002-12-10 2004-06-16 Texas Instruments Incorporated Firmware run-time authentication
JP4099039B2 (ja) * 2002-11-15 2008-06-11 松下電器産業株式会社 プログラム更新方法
US7137109B2 (en) * 2002-12-17 2006-11-14 Hewlett-Packard Development Company, L.P. System and method for managing access to a controlled space in a simulator environment
US20040123120A1 (en) * 2002-12-18 2004-06-24 Broadcom Corporation Cryptography accelerator input interface data handling
US7434043B2 (en) 2002-12-18 2008-10-07 Broadcom Corporation Cryptography accelerator data routing unit
US7568110B2 (en) 2002-12-18 2009-07-28 Broadcom Corporation Cryptography accelerator interface decoupling from cryptography processing cores
US20040123123A1 (en) * 2002-12-18 2004-06-24 Buer Mark L. Methods and apparatus for accessing security association information in a cryptography accelerator
US7512811B2 (en) 2003-01-14 2009-03-31 Canon Kabushiki Kaisha Encryption/decryption method for data limited in value range, apparatus and program therefor
JP3880933B2 (ja) * 2003-01-21 2007-02-14 株式会社東芝 耐タンパマイクロプロセッサ及びキャッシュメモリ搭載プロセッサによるデータアクセス制御方法
US8225290B2 (en) * 2003-02-11 2012-07-17 V. i. Laboratories, Inc. Systems and methods for regulating execution of computer software
US7370319B2 (en) * 2003-02-11 2008-05-06 V.I. Laboratories, Inc. System and method for regulating execution of computer software
US8060755B2 (en) * 2003-04-18 2011-11-15 Via Technologies, Inc Apparatus and method for providing user-generated key schedule in a microprocessor cryptographic engine
US7519833B2 (en) * 2003-04-18 2009-04-14 Via Technologies, Inc. Microprocessor apparatus and method for enabling configurable data block size in a cryptographic engine
US7925891B2 (en) * 2003-04-18 2011-04-12 Via Technologies, Inc. Apparatus and method for employing cryptographic functions to generate a message digest
US7539876B2 (en) * 2003-04-18 2009-05-26 Via Technologies, Inc. Apparatus and method for generating a cryptographic key schedule in a microprocessor
US7529368B2 (en) * 2003-04-18 2009-05-05 Via Technologies, Inc. Apparatus and method for performing transparent output feedback mode cryptographic functions
US7844053B2 (en) * 2003-04-18 2010-11-30 Ip-First, Llc Microprocessor apparatus and method for performing block cipher cryptographic functions
US7321910B2 (en) * 2003-04-18 2008-01-22 Ip-First, Llc Microprocessor apparatus and method for performing block cipher cryptographic functions
US7536560B2 (en) * 2003-04-18 2009-05-19 Via Technologies, Inc. Microprocessor apparatus and method for providing configurable cryptographic key size
US7392400B2 (en) * 2003-04-18 2008-06-24 Via Technologies, Inc. Microprocessor apparatus and method for optimizing block cipher cryptographic functions
US7502943B2 (en) * 2003-04-18 2009-03-10 Via Technologies, Inc. Microprocessor apparatus and method for providing configurable cryptographic block cipher round results
US7900055B2 (en) * 2003-04-18 2011-03-01 Via Technologies, Inc. Microprocessor apparatus and method for employing configurable block cipher cryptographic algorithms
US7532722B2 (en) * 2003-04-18 2009-05-12 Ip-First, Llc Apparatus and method for performing transparent block cipher cryptographic functions
US7542566B2 (en) * 2003-04-18 2009-06-02 Ip-First, Llc Apparatus and method for performing transparent cipher block chaining mode cryptographic functions
US7529367B2 (en) * 2003-04-18 2009-05-05 Via Technologies, Inc. Apparatus and method for performing transparent cipher feedback mode cryptographic functions
GB2403562A (en) * 2003-07-04 2005-01-05 Hewlett Packard Development Co Secure processing environment in which executable code for services is only received by a secure loading process through the service request interface
US7366302B2 (en) * 2003-08-25 2008-04-29 Sony Corporation Apparatus and method for an iterative cryptographic block
WO2005020043A2 (en) 2003-08-26 2005-03-03 Matsushita Electric Industrial Co., Ltd. Program execution device
JP4263976B2 (ja) * 2003-09-24 2009-05-13 株式会社東芝 オンチップマルチコア型耐タンパプロセッサ
US7681046B1 (en) 2003-09-26 2010-03-16 Andrew Morgan System with secure cryptographic capabilities using a hardware specific digital secret
TWI247241B (en) * 2003-09-29 2006-01-11 Ip First Llc Microprocessor apparatus and method for performing block cipher cryptographic functions
TWI274280B (en) * 2003-09-29 2007-02-21 Via Tech Inc Microprocessor apparatus and method for employing configurable block cipher cryptographic algorithms
US7694151B1 (en) * 2003-11-20 2010-04-06 Johnson Richard C Architecture, system, and method for operating on encrypted and/or hidden information
US8156343B2 (en) * 2003-11-26 2012-04-10 Intel Corporation Accessing private data about the state of a data processing machine from storage that is publicly accessible
TWI274281B (en) * 2003-12-04 2007-02-21 Ip First Llc Apparatus and method for performing transparent block cipher cryptographic functions
JP4282472B2 (ja) * 2003-12-26 2009-06-24 株式会社東芝 マイクロプロセッサ
CN1661958B (zh) * 2004-03-15 2010-04-28 威盛电子股份有限公司 区块密码功能的微处理器及方法
US20070245419A1 (en) * 2004-04-29 2007-10-18 Padraig Omahony Intrusion detection during program execution in a computer
US9219729B2 (en) * 2004-05-19 2015-12-22 Philip Drope Multimedia network system with content importation, content exportation, and integrated content management
JP2005346182A (ja) * 2004-05-31 2005-12-15 Fujitsu Ltd 情報処理装置、耐タンパ方法、耐タンパプログラム
US20050276413A1 (en) * 2004-06-14 2005-12-15 Raja Neogi Method and apparatus to manage heterogeneous cryptographic operations
JP4559794B2 (ja) * 2004-06-24 2010-10-13 株式会社東芝 マイクロプロセッサ
JP4612461B2 (ja) * 2004-06-24 2011-01-12 株式会社東芝 マイクロプロセッサ
CN100354787C (zh) * 2004-06-24 2007-12-12 株式会社东芝 微处理器
CN100353276C (zh) * 2004-06-24 2007-12-05 株式会社东芝 微处理器
JP4447977B2 (ja) 2004-06-30 2010-04-07 富士通マイクロエレクトロニクス株式会社 セキュアプロセッサ、およびセキュアプロセッサ用プログラム。
JP4490192B2 (ja) * 2004-07-02 2010-06-23 株式会社エヌ・ティ・ティ・ドコモ マルチタスク実行システム
JP4204522B2 (ja) * 2004-07-07 2009-01-07 株式会社東芝 マイクロプロセッサ
JP2006023957A (ja) * 2004-07-07 2006-01-26 Sony Corp 半導体集積回路及び情報処理装置
US20060136717A1 (en) 2004-12-20 2006-06-22 Mark Buer System and method for authentication via a proximate device
US8295484B2 (en) * 2004-12-21 2012-10-23 Broadcom Corporation System and method for securing data from a remote input device
JP2006202017A (ja) * 2005-01-20 2006-08-03 Sharp Corp 情報処理装置、情報記憶装置、情報処理装置の機能拡張システム、情報処理装置の機能拡張方法及び機能削除方法、並びに情報処理装置の機能拡張プログラム及び機能削除プログラム
EP1717723A1 (en) 2005-04-29 2006-11-02 ST Incard S.r.l. Improved virtual machine or hardware processor for IC-card portable electronic devices
JP2006311462A (ja) * 2005-05-02 2006-11-09 Toshiba Corp コンテンツ検索装置及びその方法
US9633213B2 (en) * 2005-05-16 2017-04-25 Texas Instruments Incorporated Secure emulation logic between page attribute table and test interface
US20060259828A1 (en) 2005-05-16 2006-11-16 Texas Instruments Incorporated Systems and methods for controlling access to secure debugging and profiling features of a computer system
CN101233525A (zh) * 2005-05-26 2008-07-30 松下电器产业株式会社 数据处理装置
US7953980B2 (en) * 2005-06-30 2011-05-31 Intel Corporation Signed manifest for run-time verification of software program identity and integrity
US7669242B2 (en) * 2005-06-30 2010-02-23 Intel Corporation Agent presence monitor configured to execute in a secure environment
US8839450B2 (en) 2007-08-02 2014-09-16 Intel Corporation Secure vault service for software components within an execution environment
US7571298B2 (en) * 2005-06-30 2009-08-04 Intel Corporation Systems and methods for host virtual memory reconstitution
US20070006307A1 (en) * 2005-06-30 2007-01-04 Hahn Scott D Systems, apparatuses and methods for a host software presence check from an isolated partition
EP1752937A1 (en) 2005-07-29 2007-02-14 Research In Motion Limited System and method for encrypted smart card PIN entry
JP2007058588A (ja) * 2005-08-24 2007-03-08 Toshiba Corp プログラム保護機能を持つプロセッサ
US8171268B2 (en) * 2005-09-19 2012-05-01 Intel Corporation Technique for context state management to reduce save and restore operations between a memory and a processor using in-use vectors
US20070067590A1 (en) * 2005-09-22 2007-03-22 Uday Savagaonkar Providing protected access to critical memory regions
US7496727B1 (en) 2005-12-06 2009-02-24 Transmeta Corporation Secure memory access system and method
US20070168680A1 (en) * 2006-01-13 2007-07-19 Lockheed Martin Corporation Anti-tamper system
US7428306B2 (en) * 2006-04-18 2008-09-23 International Business Machines Corporation Encryption apparatus and method for providing an encrypted file system
US7681047B2 (en) * 2006-04-18 2010-03-16 International Business Machines Corporation Decryption of data in storage systems
US8095802B2 (en) 2006-09-12 2012-01-10 International Business Machines Corporation System and method for securely saving a program context to a shared memory
US7660769B2 (en) 2006-09-12 2010-02-09 International Business Machines Corporation System and method for digital content player with secure processing vault
US7945789B2 (en) * 2006-09-12 2011-05-17 International Business Machines Corporation System and method for securely restoring a program context from a shared memory
US8190917B2 (en) 2006-09-12 2012-05-29 International Business Machines Corporation System and method for securely saving and restoring a context of a secure program loader
US8583938B2 (en) * 2006-09-20 2013-11-12 Kam Fu Chan From polymorphic executable to polymorphic operating system
US7802050B2 (en) * 2006-09-29 2010-09-21 Intel Corporation Monitoring a target agent execution pattern on a VT-enabled system
US7882318B2 (en) * 2006-09-29 2011-02-01 Intel Corporation Tamper protection of software agents operating in a vitual technology environment methods and apparatuses
US20080141382A1 (en) * 2006-12-12 2008-06-12 Lockheed Martin Corporation Anti-tamper device
US8495383B2 (en) * 2006-12-14 2013-07-23 Nokia Corporation Method for the secure storing of program state data in an electronic device
US8245307B1 (en) * 2006-12-18 2012-08-14 Nvidia Corporation Providing secure access to a secret
US20080148061A1 (en) * 2006-12-19 2008-06-19 Hongxia Jin Method for effective tamper resistance
US20080155273A1 (en) * 2006-12-21 2008-06-26 Texas Instruments, Inc. Automatic Bus Encryption And Decryption
US7949130B2 (en) 2006-12-28 2011-05-24 Intel Corporation Architecture and instruction set for implementing advanced encryption standard (AES)
US20080229117A1 (en) * 2007-03-07 2008-09-18 Shin Kang G Apparatus for preventing digital piracy
EP1978466A1 (en) * 2007-04-05 2008-10-08 STMicroelectronics (Research & Development) Limited Integrated circuit and method for secure execution of software
KR101405915B1 (ko) 2007-04-26 2014-06-12 삼성전자주식회사 데이터의 암호화 저장 방법 및 암호화된 데이터의 판독방법
US20100088528A1 (en) * 2007-05-03 2010-04-08 Radu Sion Method and apparatus for tamper-proof wirte-once-read-many computer storage
EP2015561A1 (fr) * 2007-07-10 2009-01-14 Nagracard S.A. Procédé d'envoi d'un code exécutable à un dispositif de réception et procédé d'exécution de ce code
US8312518B1 (en) * 2007-09-27 2012-11-13 Avaya Inc. Island of trust in a service-oriented environment
JP5201716B2 (ja) * 2007-09-28 2013-06-05 東芝ソリューション株式会社 暗号モジュール配信システム、暗号管理サーバ装置、暗号処理装置、クライアント装置、暗号管理プログラム、暗号処理プログラム、およびクライアントプログラム
US8539098B2 (en) 2007-10-17 2013-09-17 Dispersive Networks, Inc. Multiplexed client server (MCS) communications and systems
US8560634B2 (en) 2007-10-17 2013-10-15 Dispersive Networks, Inc. Apparatus, systems and methods utilizing dispersive networking
US8099718B2 (en) * 2007-11-13 2012-01-17 Intel Corporation Method and system for whitelisting software components
JP4976991B2 (ja) * 2007-11-22 2012-07-18 株式会社東芝 情報処理装置、プログラム検証方法及びプログラム
US8819839B2 (en) * 2008-05-24 2014-08-26 Via Technologies, Inc. Microprocessor having a secure execution mode with provisions for monitoring, indicating, and managing security levels
US7788433B2 (en) * 2008-05-24 2010-08-31 Via Technologies, Inc. Microprocessor apparatus providing for secure interrupts and exceptions
US8175265B2 (en) 2008-09-02 2012-05-08 Apple Inc. Systems and methods for implementing block cipher algorithms on attacker-controlled systems
US8745411B2 (en) * 2008-11-07 2014-06-03 Broadcom Corporation Protecting external volatile memories using low latency encryption/decryption
JP5322620B2 (ja) 2008-12-18 2013-10-23 株式会社東芝 情報処理装置、プログラム開発システム、プログラム検証方法及びプログラム
US8364601B2 (en) * 2008-12-31 2013-01-29 Intel Corporation Methods and systems to directly render an image and correlate corresponding user input in a secure memory domain
US9298894B2 (en) 2009-06-26 2016-03-29 International Business Machines Corporation Cache structure for a computer system providing support for secure objects
US9846789B2 (en) 2011-09-06 2017-12-19 International Business Machines Corporation Protecting application programs from malicious software or malware
US9954875B2 (en) 2009-06-26 2018-04-24 International Business Machines Corporation Protecting from unintentional malware download
US8954752B2 (en) 2011-02-23 2015-02-10 International Business Machines Corporation Building and distributing secure object software
US8819446B2 (en) * 2009-06-26 2014-08-26 International Business Machines Corporation Support for secure objects in a computer system
US8578175B2 (en) 2011-02-23 2013-11-05 International Business Machines Corporation Secure object having protected region, integrity tree, and unprotected region
US8812872B2 (en) 2010-02-08 2014-08-19 Hypertech Co., Ltd. Memory managment method
WO2011101972A1 (ja) 2010-02-18 2011-08-25 株式会社東芝 プログラム
DE102010010851A1 (de) * 2010-03-10 2011-09-15 Giesecke & Devrient Gmbh Ausspähungsschutz bei der Ausführung einer Operationssequenz in einem tragbaren Datenträger
US8370648B1 (en) * 2010-03-15 2013-02-05 Emc International Company Writing and reading encrypted data using time-based encryption keys
US20110258430A1 (en) * 2010-04-15 2011-10-20 Nokia Corporation Method and apparatus for applying execution context criteria for execution context sharing
TWI497344B (zh) * 2010-05-17 2015-08-21 Via Tech Inc 微處理器及產生不可預測之鑰的方法
US9892283B2 (en) 2010-05-25 2018-02-13 Via Technologies, Inc. Decryption of encrypted instructions using keys selected on basis of instruction fetch address
US9967092B2 (en) 2010-05-25 2018-05-08 Via Technologies, Inc. Key expansion logic using decryption key primitives
US9798898B2 (en) 2010-05-25 2017-10-24 Via Technologies, Inc. Microprocessor with secure execution mode and store key instructions
US9911008B2 (en) 2010-05-25 2018-03-06 Via Technologies, Inc. Microprocessor with on-the-fly switching of decryption keys
US8683225B2 (en) 2010-05-25 2014-03-25 Via Technologies, Inc. Microprocessor that facilitates task switching between encrypted and unencrypted programs
US8812871B2 (en) * 2010-05-27 2014-08-19 Cisco Technology, Inc. Method and apparatus for trusted execution in infrastructure as a service cloud environments
US8990582B2 (en) * 2010-05-27 2015-03-24 Cisco Technology, Inc. Virtual machine memory compartmentalization in multi-core architectures
JP5171907B2 (ja) * 2010-09-13 2013-03-27 株式会社東芝 情報処理装置、情報処理プログラム
JP2012080295A (ja) * 2010-09-30 2012-04-19 Toshiba Corp 情報記憶装置、情報記憶方法、及び電子機器
JP2012084071A (ja) * 2010-10-14 2012-04-26 Toshiba Corp デジタルコンテンツの保護方法、復号方法、再生装置、記憶媒体、暗号装置
US8955110B1 (en) 2011-01-14 2015-02-10 Robert W. Twitchell, Jr. IP jamming systems utilizing virtual dispersive networking
US8941659B1 (en) 2011-01-28 2015-01-27 Rescon Ltd Medical symptoms tracking apparatus, methods and systems
US9864853B2 (en) 2011-02-23 2018-01-09 International Business Machines Corporation Enhanced security mechanism for authentication of users of a system
US8839001B2 (en) * 2011-07-06 2014-09-16 The Boeing Company Infinite key memory transaction unit
US8661527B2 (en) 2011-08-31 2014-02-25 Kabushiki Kaisha Toshiba Authenticator, authenticatee and authentication method
US9166953B2 (en) 2011-10-31 2015-10-20 Nokia Technologies Oy Method and apparatus for providing identity based encryption in distributed computations
US20130108038A1 (en) * 2011-11-01 2013-05-02 Apple Inc. System and method for a collatz based hash function
JP5275432B2 (ja) 2011-11-11 2013-08-28 株式会社東芝 ストレージメディア、ホスト装置、メモリ装置、及びシステム
CN102509048A (zh) * 2011-11-14 2012-06-20 西安电子科技大学 防止操作系统中断流程被非法转移的方法
JP5204290B1 (ja) 2011-12-02 2013-06-05 株式会社東芝 ホスト装置、システム、及び装置
JP5100884B1 (ja) 2011-12-02 2012-12-19 株式会社東芝 メモリ装置
JP5112555B1 (ja) 2011-12-02 2013-01-09 株式会社東芝 メモリカード、ストレージメディア、及びコントローラ
JP5204291B1 (ja) 2011-12-02 2013-06-05 株式会社東芝 ホスト装置、装置、システム
CN102521037B (zh) * 2011-12-05 2013-12-25 晶门科技(深圳)有限公司 使用双上下文存储的密码学算法协处理器及数据流处理方法
JP5275482B2 (ja) 2012-01-16 2013-08-28 株式会社東芝 ストレージメディア、ホスト装置、メモリ装置、及びシステム
US8954755B2 (en) 2012-01-23 2015-02-10 International Business Machines Corporation Memory address translation-based data encryption with integrated encryption engine
EP2653992A1 (en) * 2012-04-17 2013-10-23 Itron, Inc. Microcontroller configured for external memory decryption
JP6201298B2 (ja) * 2012-11-14 2017-09-27 オムロン株式会社 コントローラおよびプログラム
US9183161B2 (en) * 2012-12-28 2015-11-10 Intel Corporation Apparatus and method for page walk extension for enhanced security checks
US9201811B2 (en) 2013-02-14 2015-12-01 Kabushiki Kaisha Toshiba Device and authentication method therefor
US8984294B2 (en) 2013-02-15 2015-03-17 Kabushiki Kaisha Toshiba System of authenticating an individual memory device via reading data including prohibited data and readable data
US11044076B2 (en) * 2013-02-25 2021-06-22 Hecusys, LLC Encrypted data processing
US9280490B2 (en) * 2013-04-17 2016-03-08 Laurence H. Cooke Secure computing
US9846656B2 (en) 2013-04-17 2017-12-19 Laurence H. Cooke Secure computing
US10055588B2 (en) * 2013-11-13 2018-08-21 Via Technologies, Inc. Event-based apparatus and method for securing BIOS in a trusted computing system during execution
US9547767B2 (en) * 2013-11-13 2017-01-17 Via Technologies, Inc. Event-based apparatus and method for securing bios in a trusted computing system during execution
US9223965B2 (en) 2013-12-10 2015-12-29 International Business Machines Corporation Secure generation and management of a virtual card on a mobile device
US9235692B2 (en) 2013-12-13 2016-01-12 International Business Machines Corporation Secure application debugging
TWI712915B (zh) 2014-06-12 2020-12-11 美商密碼研究公司 執行一密碼編譯操作之方法,以及電腦可讀非暫時性儲存媒體
US9954849B2 (en) * 2014-06-27 2018-04-24 Oath (Americas) Inc. Systems and methods for managing secure sharing of online advertising data
EP3183685A1 (en) * 2014-08-20 2017-06-28 Intel Corporation Encrypted code execution
US9967319B2 (en) * 2014-10-07 2018-05-08 Microsoft Technology Licensing, Llc Security context management in multi-tenant environments
GB2531770A (en) * 2014-10-30 2016-05-04 Ibm Confidential Extracting System Internal Data
US9418246B2 (en) * 2014-12-15 2016-08-16 Freescale Semiconductor, Inc. Decryption systems and related methods for on-the-fly decryption within integrated circuits
US9729319B2 (en) * 2014-12-15 2017-08-08 Nxp Usa, Inc. Key management for on-the-fly hardware decryption within integrated circuits
JP2016181836A (ja) * 2015-03-24 2016-10-13 キヤノン株式会社 情報処理装置、暗号装置、情報処理装置の制御方法、およびプログラム
US10311229B1 (en) * 2015-05-18 2019-06-04 Amazon Technologies, Inc. Mitigating timing side-channel attacks by obscuring alternatives in code
US10868665B1 (en) * 2015-05-18 2020-12-15 Amazon Technologies, Inc. Mitigating timing side-channel attacks by obscuring accesses to sensitive data
CN105530088A (zh) * 2015-09-01 2016-04-27 北京中电华大电子设计有限责任公司 一种安全的java卡密钥存储方法
US10297003B2 (en) * 2015-09-21 2019-05-21 Qualcomm Incorporated Efficient saving and restoring of context information for context switches
US9449189B1 (en) 2015-11-03 2016-09-20 International Business Machines Corporation Protection of state data in computer system code
US10210040B2 (en) 2016-01-28 2019-02-19 Nxp Usa, Inc. Multi-dimensional parity checker (MDPC) systems and related methods for external memories
US9418327B1 (en) 2016-01-29 2016-08-16 International Business Machines Corporation Security key system
US9866563B2 (en) * 2016-04-12 2018-01-09 Gaurdknox Cyber Technologies Ltd. Specially programmed computing systems with associated devices configured to implement secure communication lockdowns and methods of use thereof
KR101855905B1 (ko) * 2016-07-15 2018-06-19 주식회사 마크애니 영상 반출 처리 서버, 영상 반출 웹 서버 및 영상 반출 관리 시스템, 및 암호화 영상에 대한 무결성 검증 방법
DE102016009439A1 (de) * 2016-08-03 2018-02-08 Giesecke+Devrient Mobile Security Gmbh Individuelles Verschlüsseln von Steuerbefehlen
CN107066331B (zh) * 2016-12-20 2021-05-18 华为技术有限公司 一种基于TrustZone的资源分配方法及设备
DE102017212618B3 (de) 2017-07-21 2018-12-13 Bundesdruckerei Gmbh Hardwaresystem mit Blockchain
FR3069935A1 (fr) * 2017-08-01 2019-02-08 Maxim Integrated Products, Inc. Dispositifs et procedes de protection de propriete intellectuelle de logiciel pour des plates-formes integrees
KR20190075363A (ko) * 2017-12-21 2019-07-01 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 모듈
GB2572579B (en) * 2018-04-04 2020-09-16 Advanced Risc Mach Ltd Speculative side-channel hint instruction
US11113424B2 (en) 2019-05-07 2021-09-07 Motorola Solutions, Inc. Device, system and method for installing encrypted data
JP7249968B2 (ja) * 2020-03-09 2023-03-31 株式会社東芝 情報処理装置およびストレージ
US11502832B2 (en) 2020-06-04 2022-11-15 PUFsecurity Corporation Electronic device capable of protecting confidential data
KR102512342B1 (ko) * 2021-02-23 2023-03-22 엘아이지넥스원 주식회사 캐시 메모리에 비밀키를 저장하여 암복호화를 처리하는 점검 대상 점검 방법 및 그를 위한 장치
US20220414270A1 (en) * 2021-06-24 2022-12-29 International Business Machines Corporation Encrypted data processing design including cleartext register files
US11868275B2 (en) 2021-06-24 2024-01-09 International Business Machines Corporation Encrypted data processing design including local buffers

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4168396A (en) 1977-10-31 1979-09-18 Best Robert M Microprocessor for executing enciphered programs
US4558176A (en) * 1982-09-20 1985-12-10 Arnold Mark G Computer systems to inhibit unauthorized copying, unauthorized usage, and automated cracking of protected software
US4847902A (en) * 1984-02-10 1989-07-11 Prime Computer, Inc. Digital computer system for executing encrypted programs
GB2163577B (en) * 1984-08-23 1988-01-13 Nat Res Dev Software protection device
US4757533A (en) * 1985-09-11 1988-07-12 Computer Security Corporation Security system for microcomputers
US5123045A (en) * 1989-08-18 1992-06-16 Massachusetts Institute Of Technology Comprehensive software protection system
JPH0770629B2 (ja) 1990-03-20 1995-07-31 株式会社東芝 不揮発性半導体記憶装置の製造方法
JPH0520197A (ja) 1991-07-09 1993-01-29 Hitachi Ltd 記憶管理システム及びマイクロプロセツサ
US5224166A (en) * 1992-08-11 1993-06-29 International Business Machines Corporation System for seamless processing of encrypted and non-encrypted data and instructions
US5495411A (en) * 1993-12-22 1996-02-27 Ananda; Mohan Secure software rental system using continuous asynchronous password verification
US5666411A (en) * 1994-01-13 1997-09-09 Mccarty; Johnnie C. System for computer software protection
US6473860B1 (en) * 1994-04-07 2002-10-29 Hark C. Chan Information distribution and processing system
US5805706A (en) * 1996-04-17 1998-09-08 Intel Corporation Apparatus and method for re-encrypting data without unsecured exposure of its non-encrypted format
US5701343A (en) 1994-12-01 1997-12-23 Nippon Telegraph & Telephone Corporation Method and system for digital information protection
CA2683230C (en) * 1995-02-13 2013-08-27 Intertrust Technologies Corporation Systems and methods for secure transaction management and electronic rights protection
US6246767B1 (en) * 1995-04-03 2001-06-12 Scientific-Atlanta, Inc. Source authentication of download information in a conditional access system
JPH08305558A (ja) 1995-04-27 1996-11-22 Casio Comput Co Ltd 暗号化プログラム演算装置
US6006328A (en) * 1995-07-14 1999-12-21 Christopher N. Drake Computer software authentication, protection, and security system
US5894516A (en) * 1996-07-10 1999-04-13 Ncr Corporation Broadcast software distribution
US5825878A (en) * 1996-09-20 1998-10-20 Vlsi Technology, Inc. Secure memory management unit for microprocessor
JP2980576B2 (ja) 1997-09-12 1999-11-22 株式会社東芝 物理乱数発生装置及び方法並びに物理乱数記録媒体
US6429879B1 (en) * 1997-09-30 2002-08-06 Compaq Computer Corporation Customization schemes for content presentation in a device with converged functionality
US6003117A (en) * 1997-10-08 1999-12-14 Vlsi Technology, Inc. Secure memory management unit which utilizes a system processor to perform page swapping
US6237137B1 (en) 1997-10-15 2001-05-22 Dell Usa, L.P. Method and system for preventing unauthorized access to a computer program
US6330549B1 (en) * 1997-10-30 2001-12-11 Xerox Corporation Protected shareware
JPH11282667A (ja) 1998-03-31 1999-10-15 Nakamichi Corp 多重鍵方式の暗号処理機能を有するマイクロプロセッサ
JP3713141B2 (ja) * 1998-05-19 2005-11-02 インターナショナル・ビジネス・マシーンズ・コーポレーション プログラムの不正実行防止方法
US6385727B1 (en) * 1998-09-25 2002-05-07 Hughes Electronics Corporation Apparatus for providing a secure processing environment
AU743775B2 (en) 1998-09-25 2002-02-07 Hughes Electronics Corporation An apparatus for providing a secure processing environment
US6567915B1 (en) * 1998-10-23 2003-05-20 Microsoft Corporation Integrated circuit card with identity authentication table and authorization tables defining access rights based on Boolean expressions of authenticated identities
US6836847B1 (en) * 1999-03-05 2004-12-28 The Johns Hokins University Software protection for single and multiple microprocessor systems
US6691226B1 (en) * 1999-03-16 2004-02-10 Western Digital Ventures, Inc. Computer system with disk drive having private key validation means for enabling features
US6651171B1 (en) * 1999-04-06 2003-11-18 Microsoft Corporation Secure execution of program code
US6468160B2 (en) * 1999-04-08 2002-10-22 Nintendo Of America, Inc. Security system for video game system with hard disk drive and internet access capability
AU5910800A (en) * 1999-06-30 2001-01-31 Accenture Llp A system, method and article of manufacture for tracking software sale transactions of an internet-based retailer for reporting to a software publisher
US6983374B2 (en) 2000-02-14 2006-01-03 Kabushiki Kaisha Toshiba Tamper resistant microprocessor
JP4153653B2 (ja) 2000-10-31 2008-09-24 株式会社東芝 マイクロプロセッサおよびデータ保護方法

Also Published As

Publication number Publication date
US6983374B2 (en) 2006-01-03
EP1126356A2 (en) 2001-08-22
CN1309355A (zh) 2001-08-22
KR100375158B1 (ko) 2003-03-08
CN1189819C (zh) 2005-02-16
US7353404B2 (en) 2008-04-01
US7270193B2 (en) 2007-09-18
US20050166069A1 (en) 2005-07-28
KR100362219B1 (ko) 2002-11-23
DE60135695D1 (de) 2008-10-23
EP1126356A3 (en) 2003-01-08
KR20010082632A (ko) 2001-08-30
KR20010082631A (ko) 2001-08-30
US20010014157A1 (en) 2001-08-16
US20010018736A1 (en) 2001-08-30
EP1126356B1 (en) 2008-09-10
EP1126355A1 (en) 2001-08-22
CN1309351A (zh) 2001-08-22

Similar Documents

Publication Publication Date Title
CN1220121C (zh) 程序分发设备、客户设备、程序分发系统和程序分发方法
US7051211B1 (en) Secure software distribution and installation
EP1942430B1 (en) Token Passing Technique for Media Playback Devices
US8660964B2 (en) Secure device licensing
AU2006200096B2 (en) Flexible licensing architecture in content rights management systems
US7480802B2 (en) License-based cryptographic technique, particularly suited for use in a digital rights management system, for controlling access and use of bore resistant software objects in a client computer
US6233567B1 (en) Method and apparatus for software licensing electronically distributed programs
KR100467929B1 (ko) 디지털 컨텐츠의 보호 및 관리를 위한 시스템
TWI420339B (zh) 軟體授權系統及方法
CN100338905C (zh) 具有硬件适应性的数字内容与硬件绑定的方法
US20030120605A1 (en) System and method for preventing unauthorized use of protected software utilizing a portable security device
JP2013059078A (ja) マルチメディア・データの保護
CN1326629A (zh) 鉴定及利用计算机系统安全资源的方法和系统
CN101142599A (zh) 基于硬件识别的数字权利管理系统
WO1998042098A1 (en) Digital product rights management technique
JP4470982B2 (ja) 情報処理装置及び情報処理プログラム
CN110996319A (zh) 一种对软件服务做激活授权管理的系统及方法
US20060230271A1 (en) Process and method to distribute software product keys electronically to manufacturing entities
CN1559026A (zh) 防止非法使用信息的方法和装置
JP2005174359A (ja) 保護情報の使用を権限付与する携帯用権限付与装置及び関連方法
US20190044709A1 (en) Incorporating software date information into a key exchange protocol to reduce software tampering
CN1361481A (zh) 基于网络浏览器插件的版权保护方法
KR101415786B1 (ko) 온라인 실행 코드 기술과 암호화 기반 불법 복제 방지 시스템 및 그 방법
EP2998895B1 (en) Technique for enabling nominal flow of an executable file
US11748459B2 (en) Reducing software release date tampering by incorporating software release date information into a key exchange protocol

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20050921

Termination date: 20110214