CN101777103A - 验证计算机程序的方法、提供计算机程序的方法及其装置 - Google Patents
验证计算机程序的方法、提供计算机程序的方法及其装置 Download PDFInfo
- Publication number
- CN101777103A CN101777103A CN201010121290A CN201010121290A CN101777103A CN 101777103 A CN101777103 A CN 101777103A CN 201010121290 A CN201010121290 A CN 201010121290A CN 201010121290 A CN201010121290 A CN 201010121290A CN 101777103 A CN101777103 A CN 101777103A
- Authority
- CN
- China
- Prior art keywords
- computer program
- unit
- hashed
- hashed value
- value
- 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
- 238000004590 computer program Methods 0.000 title claims abstract description 97
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000015654 memory Effects 0.000 claims description 14
- 238000012360 testing method Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 17
- 230000008569 process Effects 0.000 description 17
- 238000012795 verification Methods 0.000 description 11
- 238000007789 sealing Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 241000700605 Viruses Species 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000007796 conventional method 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
- 238000009434 installation Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 239000002699 waste material Substances 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/54—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by adding security routines or objects to programs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
Abstract
本发明公开了一种用于验证计算机程序的方法、提供计算机程序的方法及其装置。本发明首先以增量方式用数字签名来加封计算机程序。具体地说,计算机程序被分解为一组页面,并且为每一个页面计算一个散列值。散列值的集合被形成为一个散列值阵列,然后用数字签名来加封散列值阵列。接着,计算机程序连同散列值阵列和数字签名一起分发。为了验证计算机程序,接收者首先通过数字签名和公钥来验证散列值阵列的真实性。一旦散列值阵列已经被验证,接收者随后可通过计算待装载的一个页面的散列值,然后与已验证的散列值阵列中的一个相关散列值进行比较,来验证计算机程序的每个页面的真实性。如果散列值不匹配,则停止执行。
Description
本申请是申请日是2004年9月10日、申请号是200480021611.9、发明名称为“用于增量代码签署的方法和装置”的发明专利申请的分案申请。
技术领域
本发明涉及计算机安全领域,特别是,本发明公开了一种用于证实未经授权方没有篡改计算机程序代码的系统。
背景技术
计算机安全是计算机软件生产商所面临的最迫切的问题之一。随着因特网的普及浪潮的兴起,几乎每一个个人计算机系统都在这一点或那一点上联网。这种巨大的连接能力已经给个人计算机带来许多好处。然而,它也已经给计算机用户带来许多新问题。最大的问题之一就是从因特网传送的病毒、蠕虫、特洛伊木马和其它恶意的程序。
恶作剧的计算机编程者,有时被称为“黑客”,经常尝试去侵入计算机系统以便窃取信息或者作出未经授权的改动。黑客使用多种不同类型的攻击,企图侵入计算机系统。计算机黑客使用的一般方法包括特洛伊木马(一种表面上为良性的计算机程序,里面含有隐藏的议程),计算机病毒(一段软件,它能在宿主程序内复制它本身),计算机蠕虫(一段软件,它能在计算机网络上复制它本身),以及社会工程(用授权代码来欺骗人,使其泄露那些已授权的代码)。
这些恶作剧的计算机编程者经常通过添加程序代码来改变现有合法程序以执行未经授权的功能。通过在合法程序内放置这样的已授权程序代码,所述恶作剧的计算机编程者由此将未经授权的程序代码隐藏起来。因此,未经授权的代码能长期驻留在人们的个人计算机系统内而不被人察觉。未经授权的程序代码可以破坏有价值的数据,浪费计算机资源(CPU周期、网络带宽、存储空间等等),或者窃取保密信息。
为了保护合法程序免遭这样的未经授权的搀杂,某些软件制造商生成所述程序代码的校验和。校验和是使用所述程序代码作为输入值而计算出来的值,使得每一个不同的计算机程序都趋向于具有一个不同的校验和值。然后,软件制造商用私钥对校验和进行数字“签署”。在运行所述计算机程序代码之前,用户必须验证所述程序代码。具体地说,用户用软件制造商的公钥对所述程序代码进行解密之后,让个人计算机系统计算所述程序代码的校验和,然后将计算出来的校验和值与软件制造商计算出来的校验和进行比较。如果这两个校验和匹配,则所述计算机程序被认为是真实的。
这些现有的基于校验和的保护系统已经被认为工作得很好。然而,为了验证大型计算机程序,这些现有的基于校验和的保护系统可能要用很长的时间。因此,人们希望提供一种用于验证大型计算机程序的更快的系统。
发明内容
本发明公开了一种用于快速地和容易地验证大型计算机程序的方法。本方法是这样运行的:首先以增量方式用数字签名来加封计算机程序。具体地说,所述计算机程序被分为一组程序块,并且为每一个程序块计算一个散列值。所述散列值的集合被形成为一个散列值阵列,然后用数字签名来加封所述散列值阵列。接着,所述计算机程序连同所述散列值阵列和所述数字签名一起分发。为了验证所述计算机程序,接收者首先通过数字签名和公钥来验证散列值阵列的真实性。一旦所述散列值阵列已经通过验证,接收者随后通过计算待装载的一个程序块的散列值,然后与已验证的散列值阵列中的一个相关散列值进行比较,来验证每一个计算机程序块的真实性。如果这两个散列值不匹配,则可以停止执行。
在随后的实施例和附图所描述和图示的本发明的实施方式中,将达到上述和其它目标。
附图说明
通过以下的结合附图的详细说明,将使本发明变得易于理解,其中,相同的参考数字表示相同的结构元件,在附图中:
图1是表示如何用数字签名来加封计算机程序的概念图。
图2是流程图,说明计算机系统在执行所述计算机程序之前,如何验证用数字签名加封的计算机程序。
图3是描述如何使用增量代码签署通过数字签名来加封计算机程序的概念图。
图4是流程图,说明如何使用增量代码签署通过数字签名和散列值阵列来加封计算机程序。
图5是流程图,说明计算机系统如何验证并执行已经通过增量代码签署加封的计算机程序。
具体实施方式
表示法和术语表
在以下的关于本发明的详细说明中,陈述了许多专门的细节,以便提供对本发明的透彻理解。然而,对本领域的技术人员来说,显而易见的是,没有这些专门的细节,也可以实施本发明。在其它实例中,对众所周知的方法、过程、部件和电路不进行详细说明,以避免不必要地使本发明的一些方面变得含糊不清。
下面,本发明的详细说明在很大程度上以过程、步骤、逻辑块、处理和描述被连接到网络的数据处理装置的其它符号表示的形式来提供。这些过程描述和表示是本领域的技术人员用来向本领域的其它技术人员最有效地传递它们的工作内容的方法。下面详细说明的方法和装置是导致所期望的结果的过程或步骤的一个首尾一贯的序列。这些步骤或过程是各种物理量的所需的物理操作。通常,虽然不一定是这样,这些量采取可以被存储、传送、组合、比较、显示以及可以在计算机系统或电子计算装置中进行其它操作的电信号的形式。它证明经常都是方便的,主要地由于通用的原因,把这些信号表示为比特、数值、元素、符号、运算、消息、项、数目等。应当记住,所有这些相似的术语都跟适当的物理量有关,并且是被施加到这些量的仅有的方便的标记。除了像下面的明显描述那样另有说明的情形以外,应当理解,本发明从头到尾都利用诸如“处理”或“计算”或“验证”或“显示”等那样的术语,指的都是一个计算装置的动作和过程,上述计算装置把在所述计算装置的寄存器和存储器中被表示为物理量的数据操作和变换为在所述计算装置或其它电子装置中类似地被表示为各种物理量的其它数据。
采用数字签名的计算机程序安全
为了保护计算机程序免遭未经授权的篡改,软件制造商可以为计算机程序生成一种特殊的“封条”,在程序被执行之前,必须对所述封条进行测试。如果所述封条或计算机程序代码已经被篡改,则测试将失败,从而拒绝执行所述程序。
生成这样一种封条的通用方法就是使用众所周知的“公钥”加密技术。下面将参照图1和2来说明使用公钥加密技术的这样一个系统。
数字加封计算机程序
现在参照附图,在所有的图中,相同的数字指相同的部件,图1从概念上说明为计算机程序100生成数字封条或数字签名的过程。首先,使用一个散列函数110为整个计算机程序100计算一个散列值,从而计算程序散列值120。所述程序散列值120是从所述计算机程序100导出的一个小的代表,诸如校验和。然后,使用数字签名函数130用可信实体的私钥140对所述程序散列值120进行数字签署,生成用于程序散列的数字签名150。用于程序散列的数字签名150就是当程序被分发时与之相伴随的数字封条(或数字签名)。
验证数字加封的计算机程序的真实性
图2是流程图,说明在图1中用于程序散列的数字签名150如何被用来验证程序的真实性。参照图2,在步骤210,使用计算机程序100的计算机系统首先装载整个计算机程序100。然后,在步骤220,计算机系统为整个计算机程序100计算一个程序散列值(如同在图1中由散列函数110所做的那样)。
其次,在步骤230和240,所述计算机系统使用生成数字签名的可信实体的公知公钥235,将与计算机程序100相伴随的用于程序散列的数字签名150与来自步骤220的已计算的程序散列值进行比较。具体地说,由数字签名函数用公钥235来处理用于程序散列的数字签名150,然后将其结果与来自步骤220的已计算的程序散列值进行比较。
如果来自步骤220的已计算的散列函数匹配于用公钥235处理之后的用于程序散列的数字签名150,则计算机系统进入步骤250,程序在此开始执行。然而,如果来自步骤220的已计算的散列函数不匹配于用公钥235处理之后的用于程序散列的数字签名150,则计算机系统进入步骤260,并且拒绝执行计算机程序100。
图1和2的验证系统对小型程序来说工作得很满意,然而它不适用于大型的计算机程序。在图2的流程图的步骤210和220中,可以发现图1和2的验证系统存在的一个重大问题。步骤210和220要求把整个计算机程序100装入存储器,然后在整个计算机程序100上计算一个散列值。对大型程序来说,这个过程将占用十分长的时间。因此,用户被迫等待耗时的整个装载和计算过程。今天的不耐烦的计算机用户将简单地不能耐受这样长的装载时间。
需要保护的一个特别大的计算机程序就是用于计算机系统的操作系统。操作系统有权控制所有的计算机输入/输出设备,诸如盘驱动器、网络连接、显示器、备份系统等。因此,人们非常希望能有一个计算机程序验证系统,它能快速地和有效地保护一个计算机操作系统。
增量代码签署
本发明引入了一种对计算机程序进行数字签署用于安全的改进方法,它不引入在现有系统中出现的长装载时间。本发明通过把计算机程序分解为一些被单独验证的较小单元来进行工作。
通过增量代码签署数字加封计算机程序
图3和图4表示本发明的系统如何为程序生成数字封条,使之能够以更快和更有效的方式被使用。图3表示如何生成数字封条的概念图。图4是详细的流程图,说明用于生成数字封条的方法。
参照图3和图4,在步骤410中,本发明首先将计算机程序300分解为许多“页面”(380至389)。大多数计算机系统已经使用分页存储器组织来实现虚拟存储器系统。因此,本发明可以使用由特定的处理器和/或操作系统提供的现有存储器分页系统。存储页面的大小典型地为4千字节(4k)或8k。
其次,在步骤420和430中,所述系统使用散列函数310,为计算机程序300的每一个存储页面计算一个散列值。散列函数310可以是任何散列函数,诸如公知的SHA或MD5散列函数。如图3所示,散列函数310将为计算机程序300的每一个存储页面(380至389)生成一个相关的散列值(390至399)。在一个实施例中,输出散列值的大小为20字节。然而,可以使用多种不同大小的散列值。
在步骤440中,本发明的系统将计算的散列值(390至399)安排到被称为散列值阵列373的散列值阵列中。然后,在步骤450中,所述系统使用散列函数370为整个散列值阵列373计算一个阵列散列值360。在一个实施例中,散列函数370相同于散列函数310。然而,可以使用不同的散列函数。
然后,在步骤460中,加封程序的可信实体使用签名函数330,通过它的私钥340对阵列散列值360进行数字签署,以便生成用于散列值阵列的数字签名350。最后,在步骤470,散列值阵列373以及用于散列值阵列的数字签名350,连同计算机程序300一起被存储。散列值阵列373以及用于散列值阵列的数字签名350也随同计算机程序300一起被分发,使得计算机程序300的任何接收者都能验证其真实性。
验证数字加封的计算机程序的真实性
一旦为一段计算机程序生成一个散列值阵列373以及用于散列值阵列的数字签名350,就可以向用户分发所述计算机程序,使用户可以快速地和有效地验证所述计算机程序。图5是流程图,说明已经通过增量代码签署数字加封的计算机程序的接收者如何验证并执行已经数字加封的计算机程序。
参照图5,在步骤510,接收者的个人计算机系统首先装载伴随所述计算机程序的散列值阵列。在步骤515,计算机系统为整个散列值阵列计算一个散列值。由于散列值的阵列不是很大,所以这种特定的散列计算可以非常迅速地完成。
其次,在步骤520和525,所述计算机系统使用加封所述计算机程序的可信实体的公知公钥,比较计算的散列值和伴随所述计算机程序100的散列值阵列的数字签名。
如果所述数字签名不匹配于从散列值阵列计算的散列值,则计算机系统进入步骤580,在此它拒绝执行所述计算机程序。由于未经授权的实体已经损坏了数字签名和/或散列值阵列,所以执行被拒绝。
回到步骤525,如果所述数字签名匹配于从散列值阵列计算的散列值,则计算机系统进入步骤530,在此它装载计算机程序的一个页面。然后,在步骤540,所述计算机系统为装载的计算机程序页面计算一个散列值。可以在计算机的操作系统的存储器分页机构内进行此种计算。在步骤550和555,比较针对已装载计算机程序页面的已计算散列值与特定存储页面相关的散列值阵列中的散列值。
如果针对已装载计算机程序的已计算散列值不匹配于来自散列值阵列的相关散列值,则计算机系统进入步骤580,在此它拒绝继续执行。此种拒绝继续执行可以被实现为所述计算机系统的虚拟存储器系统内的页面故障。告知此种失败的其它可能的方法可以是指出所述页面不可读、已经出现验证差错,或者简单地中止。
回到步骤555,如果针对已装载的计算机程序页面的已计算散列值匹配于来自散列值阵列的相关散列值,则计算机系统进入步骤560,在此开始执行所述程序的已装载页面。最后,所述程序将完成所述已装载的页面(以及先前已装载的页面)中的代码的执行,并将完全地完成执行,或者需要计算机程序的另一个页面,如步骤570所述那样。如果所述程序已被完全地完成执行,则计算机简单地进入步骤590,在此它已被完成。
在步骤570,如果需要计算机程序的另一个页面,则计算机系统返回到步骤530,以便装载计算机程序的所需页面。新装载的页面必须通过步骤540、550和555被验证。
要注意的是,计算机系统利用先前已验证的散列值阵列来进一步地验证装载的每一个存储页面。因此,计算机必须保证在程序执行过程中,已验证的散列值阵列没有受到损坏。例如,如果操作系统将已验证的散列值阵列交换到受保护的存储器以外,则一旦所述散列值阵列被装回,它必须被重新验证以保证其真实性。
该书面的说明书和附图已经足够详细地公开了本发明,并且带有一定程度的特殊性。本领域的技术人员应当理解,已经作出的各实施例的公开内容仅借助于实例,并且在各部件的安排、组合和步骤方面可以作出各种各样的改变而不离开所主张的本发明的精神实质和范围。因此,本发明的范围由所附的权利要求书来规定,而不是由前面的实施例的说明来规定。
Claims (23)
1.一种用于验证包括多个单元的计算机程序的方法,所述方法包括:
装载所述计算机程序的至少一个单元;以及
在装载所述计算机程序的所有单元之前,一次一个单元地递增地验证所述计算机程序。
2.如权利要求1所述的方法,其中,递增地验证所述计算机程序包括:
使用多个散列值,其中,所述多个散列值中的至少一个散列值与所述计算机程序的单元相关。
3.如权利要求2所述的方法,其中,所述多个散列值被存储在一个散列值阵列中。
4.如权利要求1所述的方法,其中,递增地验证所述计算机程序的至少一次迭代包括:
为特定单元计算一个散列值;以及
确定计算出的散列值是否匹配于与所述特定单元相关的散列值。
5.如权利要求1所述的方法,其中,递增地验证所述计算机程序包括:
当确定特定单元不真实时,停止所述递增验证。
6.如权利要求1所述的方法,进一步包括:
在已经验证了所有单元之后,执行所述计算机程序。
7.如权利要求1所述的方法,进一步包括:
在已经验证了所述至少一个单元之后,执行所述计算机程序的至少一部分。
8.如权利要求1所述的方法,其中,仅验证所述计算机程序执行所需的特定单元组。
9.如权利要求1所述的方法,进一步包括:
当确定至少一个单元不真实时,产生一个错误。
10.如权利要求1所述的方法,所述方法还包括:
在装载所述单元之前,验证为第二组散列值计算的第一组散列值,所述第二组散列值包括多个第二散列值,所述多个第二散列值中的至少一个第二散列值与所述计算机程序的特定单元相关。
11.如权利要求10所述的方法,其中,验证所述计算机程序的所述特定单元包括:
验证计算机程序的所装载的单元。
12.如权利要求11所述的方法,其中,验证所装载的单元包括:
为计算机程序的所装载的单元计算特定散列值;以及
确定为所装载的单元计算的特定散列值是否匹配于所述多个第二散列值中的特定第二散列值,其中所述特定第二散列值与计算机程序的所装载的单元相关。
13.如权利要求12所述的方法,其中,在存储器分页系统中执行所述为所装载的单元计算所述特定散列值的步骤。
14.如权利要求12所述的方法,进一步包括:
迭代地验证所述计算机程序的一组单元,其中,当确定所述单元之一不真实时,结束对所述一组单元的迭代验证。
15.如权利要求10所述的方法,进一步包括:
将所述多个第二散列值装入受保护的存储器系统中。
16.如权利要求10所述的方法,其中,验证所述多个第二散列值包括:
针对所述多个第二散列值使用数字签名。
17.如权利要求16所述的方法,其中,所述数字签名是用于所述多个第二散列值的加密散列值。
18.如权利要求17所述的方法,其中,使用所述数字签名包括:
解密用于所述多个第二散列值的加密散列值。
19.一种用于提供计算机程序的方法,所述方法包括:
将所述计算机程序分解为多个单元以便验证所述计算机程序,其中每个单元具有相同的大小;
为所述多个单元计算多个散列值;以及
分发带有所计算的散列值的所述计算机程序。
20.如权利要求19所述的方法,还包括:
分发所述计算机程序和所述多个散列值。
21.如权利要求19所述的方法,其中,所述多个散列值被存储在散列值阵列中。
22.如权利要求19所述的方法,其中,至少一个特定单元的大小基于存储器系统中的存储器的大小。
23.一种包括用于执行根据权利要求1-22中的任一个所述的方法的装置的设备。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/666,847 | 2003-09-18 | ||
US10/666,847 US7103779B2 (en) | 2003-09-18 | 2003-09-18 | Method and apparatus for incremental code signing |
CN2004800216119A CN1842757B (zh) | 2003-09-18 | 2004-09-10 | 用于增量代码签署的方法和装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2004800216119A Division CN1842757B (zh) | 2003-09-18 | 2004-09-10 | 用于增量代码签署的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101777103A true CN101777103A (zh) | 2010-07-14 |
CN101777103B CN101777103B (zh) | 2017-03-01 |
Family
ID=34313207
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010121290.7A Expired - Fee Related CN101777103B (zh) | 2003-09-18 | 2004-09-10 | 验证计算机程序的方法、提供计算机程序的方法及其装置 |
CN2004800216119A Expired - Fee Related CN1842757B (zh) | 2003-09-18 | 2004-09-10 | 用于增量代码签署的方法和装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2004800216119A Expired - Fee Related CN1842757B (zh) | 2003-09-18 | 2004-09-10 | 用于增量代码签署的方法和装置 |
Country Status (8)
Country | Link |
---|---|
US (3) | US7103779B2 (zh) |
EP (3) | EP2634959B1 (zh) |
JP (2) | JP4373442B2 (zh) |
CN (2) | CN101777103B (zh) |
AU (2) | AU2004275264B2 (zh) |
CA (3) | CA2531363C (zh) |
HK (1) | HK1092234A1 (zh) |
WO (1) | WO2005029223A2 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105637516A (zh) * | 2013-08-16 | 2016-06-01 | Inka安特沃客有限公司 | 使用散列对动态代码的完整性进行验证的方法 |
CN106372505A (zh) * | 2016-08-23 | 2017-02-01 | 北京航空航天大学 | 一种针对嵌入式系统代码攻击的快速恢复方法 |
CN106462676A (zh) * | 2014-02-28 | 2017-02-22 | 威步系统股份公司 | 用于保护计算机程序免受影响的方法和计算机系统 |
CN113239330A (zh) * | 2021-06-10 | 2021-08-10 | 杭州安恒信息技术股份有限公司 | 一种基于散列算法的反调试方法及相关装置 |
Families Citing this family (84)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080313282A1 (en) | 2002-09-10 | 2008-12-18 | Warila Bruce W | User interface, operating system and architecture |
US7548986B1 (en) * | 2003-03-17 | 2009-06-16 | Hewlett-Packard Development Company, L.P. | Electronic device network providing streaming updates |
US7103779B2 (en) | 2003-09-18 | 2006-09-05 | Apple Computer, Inc. | Method and apparatus for incremental code signing |
EP1538509A1 (fr) * | 2003-12-04 | 2005-06-08 | Axalto S.A. | Procédé de sécurisation de l'éxécution d'un programme contre des attaques par rayonnement |
US7831838B2 (en) * | 2004-03-05 | 2010-11-09 | Microsoft Corporation | Portion-level in-memory module authentication |
US7904895B1 (en) | 2004-04-21 | 2011-03-08 | Hewlett-Packard Develpment Company, L.P. | Firmware update in electronic devices employing update agent in a flash memory card |
US7644287B2 (en) * | 2004-07-29 | 2010-01-05 | Microsoft Corporation | Portion-level in-memory module authentication |
US8526940B1 (en) | 2004-08-17 | 2013-09-03 | Palm, Inc. | Centralized rules repository for smart phone customer care |
US7577848B2 (en) * | 2005-01-18 | 2009-08-18 | Microsoft Corporation | Systems and methods for validating executable file integrity using partial image hashes |
US7934256B2 (en) * | 2005-06-01 | 2011-04-26 | Panasonic Corporation | Electronic device, update server device, key update device |
US7669242B2 (en) * | 2005-06-30 | 2010-02-23 | Intel Corporation | Agent presence monitor configured to execute in a secure environment |
US7953980B2 (en) * | 2005-06-30 | 2011-05-31 | Intel Corporation | Signed manifest for run-time verification of software program identity and integrity |
US8839450B2 (en) | 2007-08-02 | 2014-09-16 | Intel Corporation | Secure vault service for software components within an execution environment |
JP4792876B2 (ja) * | 2005-08-30 | 2011-10-12 | 株式会社日立製作所 | 情報処理装置及び情報処理方法 |
JP4527640B2 (ja) * | 2005-09-15 | 2010-08-18 | 株式会社ソニー・コンピュータエンタテインメント | データ読出装置 |
JP4947978B2 (ja) * | 2006-01-05 | 2012-06-06 | 株式会社アルファシステムズ | 認証システム及び認証方法 |
US7574479B2 (en) * | 2006-01-24 | 2009-08-11 | Novell, Inc. | Techniques for attesting to content |
KR100746033B1 (ko) * | 2006-02-17 | 2007-08-06 | 삼성전자주식회사 | 무결성 측정 장치 및 방법 |
US8364965B2 (en) * | 2006-03-15 | 2013-01-29 | Apple Inc. | Optimized integrity verification procedures |
JP4767057B2 (ja) * | 2006-03-27 | 2011-09-07 | 富士通株式会社 | ハッシュ値生成プログラム、ストレージ管理プログラム、判定プログラム及びデータ変更検証装置 |
CN100428261C (zh) * | 2006-05-22 | 2008-10-22 | 北京易恒信科技认证有限公司 | 基于cpk的可信认证系统 |
US8209676B2 (en) | 2006-06-08 | 2012-06-26 | Hewlett-Packard Development Company, L.P. | Device management in a network |
JP5002205B2 (ja) * | 2006-07-10 | 2012-08-15 | 任天堂株式会社 | データ認証方法およびデータ認証システム |
EP2047420A4 (en) | 2006-07-27 | 2009-11-18 | Hewlett Packard Development Co | USER EXPERIENCE AND DEPENDENCE MANAGEMENT IN A MOBILE DEVICE |
US7882318B2 (en) * | 2006-09-29 | 2011-02-01 | Intel Corporation | Tamper protection of software agents operating in a vitual technology environment methods and apparatuses |
US7802050B2 (en) * | 2006-09-29 | 2010-09-21 | Intel Corporation | Monitoring a target agent execution pattern on a VT-enabled system |
JP4288292B2 (ja) * | 2006-10-31 | 2009-07-01 | 株式会社エヌ・ティ・ティ・ドコモ | オペレーティングシステム監視設定情報生成装置及びオペレーティングシステム監視装置 |
US8453206B2 (en) * | 2006-11-09 | 2013-05-28 | Panasonic Corporation | Detecting unauthorized tampering of a program |
US8375458B2 (en) | 2007-01-05 | 2013-02-12 | Apple Inc. | System and method for authenticating code executing on computer system |
US8209540B2 (en) * | 2007-06-28 | 2012-06-26 | Apple Inc. | Incremental secure backup and restore of user settings and data |
GB0719250D0 (en) * | 2007-10-02 | 2007-11-14 | Iti Scotland Ltd | Anti-hack method |
IL187039A0 (en) * | 2007-10-30 | 2008-02-09 | Sandisk Il Ltd | Secure overlay manager protection |
US8099718B2 (en) * | 2007-11-13 | 2012-01-17 | Intel Corporation | Method and system for whitelisting software components |
EP2232397B1 (en) * | 2008-01-20 | 2011-10-05 | NDS Limited | Secure data utilization |
US9143329B2 (en) * | 2008-01-30 | 2015-09-22 | Adobe Systems Incorporated | Content integrity and incremental security |
KR101426270B1 (ko) * | 2008-02-13 | 2014-08-05 | 삼성전자주식회사 | 소프트웨어의 전자 서명 생성 방법, 검증 방법, 그 장치,및 그 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로읽을 수 있는 기록매체 |
KR101252921B1 (ko) * | 2008-03-04 | 2013-04-09 | 애플 인크. | 사업자에게 부여된 자격들에 기초하여 장치 내의 소프트웨어 코드의 실행을 인가하는 시스템 및 방법 |
US20090228868A1 (en) * | 2008-03-04 | 2009-09-10 | Max Drukman | Batch configuration of multiple target devices |
AU2009222007A1 (en) * | 2008-03-04 | 2009-09-11 | Apple Inc. | System and method of authorizing execution of software code based on accessible entitlements |
EP2250604B1 (en) * | 2008-03-04 | 2017-12-27 | Apple Inc. | System and method of authorizing execution of software code based on at least one installed profile |
WO2009111405A1 (en) * | 2008-03-04 | 2009-09-11 | Apple Inc. | System and method of authorizing execution of software code based on a trusted cache |
US9081962B2 (en) | 2008-04-30 | 2015-07-14 | Graeme Harkness | Anti-tamper techniques |
JP2010146110A (ja) * | 2008-12-16 | 2010-07-01 | Ricoh Co Ltd | 情報処理装置、プログラム実行方法及びプログラム |
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 |
US9086913B2 (en) * | 2008-12-31 | 2015-07-21 | Intel Corporation | Processor extensions for execution of secure embedded containers |
KR101685633B1 (ko) * | 2009-01-05 | 2016-12-12 | 삼성전자주식회사 | 메모리 시스템 |
US9805196B2 (en) | 2009-02-27 | 2017-10-31 | Microsoft Technology Licensing, Llc | Trusted entity based anti-cheating mechanism |
US9058491B1 (en) | 2009-03-26 | 2015-06-16 | Micron Technology, Inc. | Enabling a secure boot from non-volatile memory |
US9336410B2 (en) * | 2009-12-15 | 2016-05-10 | Micron Technology, Inc. | Nonvolatile memory internal signature generation |
US8510569B2 (en) * | 2009-12-16 | 2013-08-13 | Intel Corporation | Providing integrity verification and attestation in a hidden execution environment |
US9202015B2 (en) | 2009-12-31 | 2015-12-01 | Intel Corporation | Entering a secured computing environment using multiple authenticated code modules |
US8453237B2 (en) * | 2010-06-03 | 2013-05-28 | International Business Machines Corporation | Verification of a segmented program on a parallel processing computing system |
KR101687439B1 (ko) * | 2010-07-22 | 2016-12-16 | 나그라비젼 에스에이 | 소프트웨어 무결성을 보장하기위한 프로세서 실행 방법 |
DE102010033229A1 (de) * | 2010-08-03 | 2012-02-09 | Siemens Aktiengesellschaft | Verfahren und System zur manipulationssicheren Übertragung von Steuerdaten |
GB2485241A (en) | 2010-11-05 | 2012-05-09 | Bluecava Inc | Incremental browser-based fingerprinting of a computing device |
US9111099B2 (en) * | 2011-05-31 | 2015-08-18 | Red Hat, Inc. | Centralized kernel module loading |
JP4894970B2 (ja) * | 2011-06-10 | 2012-03-14 | 株式会社日立製作所 | 情報処理装置 |
US20120328148A1 (en) * | 2011-06-27 | 2012-12-27 | Grey William Doherty | Method and system for secure image management |
CN102314578B (zh) * | 2011-09-26 | 2015-10-28 | 浪潮(北京)电子信息产业有限公司 | 一种实现软件保护的系统及方法 |
WO2013059368A1 (en) * | 2011-10-17 | 2013-04-25 | Intertrust Technologies Corporation | Systems and methods for protecting and governing genomic and other information |
US20130138969A1 (en) * | 2011-11-28 | 2013-05-30 | Mocana Corporation | Preventing glitching of a firmware image using one or more layers of randomness |
JP5315422B2 (ja) * | 2012-01-10 | 2013-10-16 | 任天堂株式会社 | データ認証方法およびデータ認証システム |
JP2015084006A (ja) * | 2012-02-13 | 2015-04-30 | 三菱電機株式会社 | 動的リンクライブラリ保護方法、動的リンクライブラリ認証方法、動的リンクライブラリ保護装置、動的リンクライブラリ認証装置、プログラム管理システム、プログラムおよび動的リンクライブラリ保護方法、プログラムおよび動的リンクライブラリ認証方法 |
WO2013161371A1 (ja) * | 2012-04-27 | 2013-10-31 | 日本電気株式会社 | プログラム提供装置、システム、プログラム提供方法およびプログラム |
US8972715B2 (en) * | 2012-07-13 | 2015-03-03 | Securerf Corporation | Cryptographic hash function |
CA2789936C (en) * | 2012-09-14 | 2020-02-18 | Ibm Canada Limited - Ibm Canada Limitee | Identification of sequential browsing operations |
JP5574550B2 (ja) * | 2012-11-22 | 2014-08-20 | 京セラドキュメントソリューションズ株式会社 | 情報秘匿化方法および情報秘匿化装置 |
US9424200B2 (en) | 2013-03-15 | 2016-08-23 | Freescale Semiconductor, Inc. | Continuous run-time integrity checking for virtual memory |
JP6244759B2 (ja) * | 2013-09-10 | 2017-12-13 | 株式会社ソシオネクスト | セキュアブート方法、半導体装置、及び、セキュアブートプログラム |
CN105632330B (zh) * | 2014-10-27 | 2019-03-19 | 上海锐帆信息科技有限公司 | 一种可视化数字封条装置 |
CN104506503B (zh) * | 2014-12-08 | 2019-11-05 | 北京北邮国安技术股份有限公司 | 一种基于广电单向传输网络的安全认证系统 |
EP3299986A4 (en) | 2015-05-20 | 2018-05-16 | Fujitsu Limited | Program verification method, verification program, and information processing device |
SG11201803707PA (en) | 2015-11-19 | 2018-06-28 | Nagravision Sa | Method to verify the execution integrity of an application in a target device |
CN106953730B (zh) * | 2016-01-07 | 2021-01-05 | 格尔软件股份有限公司 | 物理隔离网络环境下实现含时间戳的Windows代码签名的安全方法 |
US10637877B1 (en) * | 2016-03-08 | 2020-04-28 | Wells Fargo Bank, N.A. | Network computer security system |
KR102538096B1 (ko) * | 2016-09-13 | 2023-05-31 | 삼성전자주식회사 | 어플리케이션을 검증하는 디바이스 및 방법 |
CN108257197A (zh) * | 2016-12-28 | 2018-07-06 | 航天信息股份有限公司 | 一种用于在电子文档分页处设置骑缝章的方法及系统 |
WO2019151013A1 (ja) * | 2018-02-02 | 2019-08-08 | 日本電気株式会社 | 情報処理装置、情報処理方法及び記録媒体 |
EP3667505B1 (en) | 2018-12-14 | 2021-11-10 | Nxp B.V. | Memory system with an incremental hashing operation and method |
US11068269B1 (en) * | 2019-05-20 | 2021-07-20 | Parallels International Gmbh | Instruction decoding using hash tables |
JP7270511B2 (ja) * | 2019-09-10 | 2023-05-10 | ボッシュ株式会社 | 制御装置及び方法 |
US20210382706A1 (en) * | 2020-06-03 | 2021-12-09 | Vmware, Inc. | Automated configuration of attestation nodes using a software depot |
JP2022122553A (ja) * | 2021-02-10 | 2022-08-23 | キヤノン株式会社 | 画像形成装置、その制御方法、およびプログラム |
US20220300452A1 (en) * | 2021-03-18 | 2022-09-22 | Sony Group Corporation | Fixity data processing |
Family Cites Families (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4868877A (en) | 1988-02-12 | 1989-09-19 | Fischer Addison M | Public key/signature cryptosystem with enhanced digital signature certification |
US5454000A (en) | 1992-07-13 | 1995-09-26 | International Business Machines Corporation | Method and system for authenticating files |
FR2731163B1 (fr) | 1995-03-03 | 1997-06-20 | Air Liquide | Procede et installation de separation d'un melange gazeux par permeation |
US5625693A (en) | 1995-07-07 | 1997-04-29 | Thomson Consumer Electronics, Inc. | Apparatus and method for authenticating transmitting applications in an interactive TV system |
US6202203B1 (en) | 1995-12-06 | 2001-03-13 | International Business Machines Corporation | Method of, system for, and computer program product for providing global value numbering |
US5673316A (en) | 1996-03-29 | 1997-09-30 | International Business Machines Corporation | Creation and distribution of cryptographic envelope |
US5757919A (en) | 1996-12-12 | 1998-05-26 | Intel Corporation | Cryptographically protected paging subsystem |
JP4187285B2 (ja) | 1997-04-10 | 2008-11-26 | 富士通株式会社 | 認証子付与方法および認証子付与装置 |
US6092147A (en) * | 1997-04-15 | 2000-07-18 | Sun Microsystems, Inc. | Virtual machine with securely distributed bytecode verification |
US6560706B1 (en) * | 1998-01-26 | 2003-05-06 | Intel Corporation | Interface for ensuring system boot image integrity and authenticity |
US6263348B1 (en) * | 1998-07-01 | 2001-07-17 | Serena Software International, Inc. | Method and apparatus for identifying the existence of differences between two files |
US7194092B1 (en) | 1998-10-26 | 2007-03-20 | Microsoft Corporation | Key-based secure storage |
WO2000049764A1 (en) * | 1999-02-18 | 2000-08-24 | Sun Microsystems, Inc. | Data authentication system employing encrypted integrity blocks |
JP3893245B2 (ja) | 1999-02-24 | 2007-03-14 | 三菱電機株式会社 | 無線端末装置 |
JP4049498B2 (ja) | 1999-11-18 | 2008-02-20 | 株式会社リコー | 原本性保証電子保存方法、装置及びコンピュータ読み取り可能な記録媒体 |
US6618769B1 (en) * | 1999-05-27 | 2003-09-09 | Sun Microsystems, Inc. | Module-by-module verification |
US6785815B1 (en) | 1999-06-08 | 2004-08-31 | Intertrust Technologies Corp. | Methods and systems for encoding and protecting data using digital signature and watermarking techniques |
JP2001034470A (ja) | 1999-07-22 | 2001-02-09 | Fujitsu Ltd | 管理自動化機構を有するサーバ |
US7430670B1 (en) | 1999-07-29 | 2008-09-30 | Intertrust Technologies Corp. | Software self-defense systems and methods |
WO2001010076A2 (en) * | 1999-07-29 | 2001-02-08 | Intertrust Technologies Corp. | Systems and methods for protecting secure and insecure computing environments using cryptography |
US6658556B1 (en) | 1999-07-30 | 2003-12-02 | International Business Machines Corporation | Hashing a target address for a memory access instruction in order to determine prior to execution which particular load/store unit processes the instruction |
US6324637B1 (en) | 1999-08-13 | 2001-11-27 | Sun Microsystems, Inc. | Apparatus and method for loading objects from a primary memory hash index |
US7406603B1 (en) | 1999-08-31 | 2008-07-29 | Intertrust Technologies Corp. | Data protection systems and methods |
US20010034839A1 (en) * | 1999-12-24 | 2001-10-25 | Guenter Karjoth | Method and apparatus for secure transmission of data and applications |
GB0003920D0 (en) | 2000-02-21 | 2000-04-05 | Ncipher Corp Limited | Computer system |
US6986046B1 (en) | 2000-05-12 | 2006-01-10 | Groove Networks, Incorporated | Method and apparatus for managing secure collaborative transactions |
US6954747B1 (en) | 2000-11-14 | 2005-10-11 | Microsoft Corporation | Methods for comparing versions of a program |
JP2004514214A (ja) | 2000-11-17 | 2004-05-13 | ビットフォン コーポレイション | 情報をアップデートおよび配布するシステムおよび方法 |
US7478243B2 (en) * | 2001-03-21 | 2009-01-13 | Microsoft Corporation | On-disk file format for serverless distributed file system with signed manifest of file modifications |
JP2002353960A (ja) | 2001-05-30 | 2002-12-06 | Fujitsu Ltd | コード実行装置およびコード配布方法 |
US7729495B2 (en) | 2001-08-27 | 2010-06-01 | Dphi Acquisitions, Inc. | System and method for detecting unauthorized copying of encrypted data |
US7310821B2 (en) | 2001-08-27 | 2007-12-18 | Dphi Acquisitions, Inc. | Host certification method and system |
KR20040029957A (ko) | 2001-09-14 | 2004-04-08 | 소니 가부시끼 가이샤 | 기록매체의 재생방법과 재생장치 및 기록매체의기록방법과 기록장치 |
US20030084298A1 (en) | 2001-10-25 | 2003-05-01 | Messerges Thomas S. | Method for efficient hashing of digital content |
US20030126453A1 (en) * | 2001-12-31 | 2003-07-03 | Glew Andrew F. | Processor supporting execution of an authenticated code instruction |
US7240205B2 (en) | 2002-01-07 | 2007-07-03 | Xerox Corporation | Systems and methods for verifying documents |
JP2003202929A (ja) | 2002-01-08 | 2003-07-18 | Ntt Docomo Inc | 配信方法および配信システム |
US7529929B2 (en) | 2002-05-30 | 2009-05-05 | Nokia Corporation | System and method for dynamically enforcing digital rights management rules |
DE10239062A1 (de) | 2002-08-26 | 2004-04-01 | Siemens Ag | Verfahren zum Übertragen von verschlüsselten Nutzdatenobjekten |
US20040064457A1 (en) | 2002-09-27 | 2004-04-01 | Zimmer Vincent J. | Mechanism for providing both a secure and attested boot |
FR2845493A1 (fr) | 2002-10-04 | 2004-04-09 | Canal Plus Technologies | Logiciel embarque et procede d'authentification de celui-ci |
US7165076B2 (en) | 2002-11-15 | 2007-01-16 | Check Point Software Technologies, Inc. | Security system with methodology for computing unique security signature for executable file employed across different machines |
US7491122B2 (en) | 2003-07-09 | 2009-02-17 | Wms Gaming Inc. | Gaming machine having targeted run-time software authentication |
GB2404488B (en) | 2003-07-31 | 2006-05-31 | Sony Uk Ltd | Access control for digital content |
GB2404489A (en) | 2003-07-31 | 2005-02-02 | Sony Uk Ltd | Access control for digital storage medium content |
US7103779B2 (en) | 2003-09-18 | 2006-09-05 | Apple Computer, Inc. | Method and apparatus for incremental code signing |
US20050071274A1 (en) | 2003-09-27 | 2005-03-31 | Utstarcom, Inc. | Method and Apparatus in a Digital Rights Client and a Digital Rights Source and associated Digital Rights Key |
US7921300B2 (en) | 2003-10-10 | 2011-04-05 | Via Technologies, Inc. | Apparatus and method for secure hash algorithm |
US20060259781A1 (en) | 2005-04-29 | 2006-11-16 | Sony Corporation/Sony Electronics Inc. | Method and apparatus for detecting the falsification of metadata |
US8364965B2 (en) | 2006-03-15 | 2013-01-29 | Apple Inc. | Optimized integrity verification procedures |
-
2003
- 2003-09-18 US US10/666,847 patent/US7103779B2/en not_active Expired - Lifetime
-
2004
- 2004-09-10 CN CN201010121290.7A patent/CN101777103B/zh not_active Expired - Fee Related
- 2004-09-10 WO PCT/US2004/029470 patent/WO2005029223A2/en active Application Filing
- 2004-09-10 EP EP13169962.1A patent/EP2634959B1/en not_active Expired - Lifetime
- 2004-09-10 JP JP2006526940A patent/JP4373442B2/ja not_active Expired - Fee Related
- 2004-09-10 CN CN2004800216119A patent/CN1842757B/zh not_active Expired - Fee Related
- 2004-09-10 CA CA002531363A patent/CA2531363C/en not_active Expired - Fee Related
- 2004-09-10 AU AU2004275264A patent/AU2004275264B2/en not_active Ceased
- 2004-09-10 CA CA2894105A patent/CA2894105C/en not_active Expired - Fee Related
- 2004-09-10 EP EP13169965.4A patent/EP2634960B1/en not_active Expired - Lifetime
- 2004-09-10 EP EP04783639.0A patent/EP1695169B1/en not_active Expired - Lifetime
- 2004-09-10 CA CA2632076A patent/CA2632076C/en not_active Expired - Fee Related
-
2006
- 2006-07-20 US US11/458,992 patent/US8341422B2/en active Active
- 2006-11-15 HK HK06112544.0A patent/HK1092234A1/xx not_active IP Right Cessation
-
2008
- 2008-06-24 JP JP2008165033A patent/JP4664398B2/ja not_active Expired - Fee Related
-
2009
- 2009-11-06 AU AU2009233685A patent/AU2009233685B2/en not_active Ceased
-
2012
- 2012-12-21 US US13/725,957 patent/US8880897B2/en not_active Expired - Fee Related
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105637516A (zh) * | 2013-08-16 | 2016-06-01 | Inka安特沃客有限公司 | 使用散列对动态代码的完整性进行验证的方法 |
CN106462676A (zh) * | 2014-02-28 | 2017-02-22 | 威步系统股份公司 | 用于保护计算机程序免受影响的方法和计算机系统 |
CN106462676B (zh) * | 2014-02-28 | 2019-09-20 | 威步系统股份公司 | 用于保护计算机程序免受影响的方法和计算机系统 |
CN106372505A (zh) * | 2016-08-23 | 2017-02-01 | 北京航空航天大学 | 一种针对嵌入式系统代码攻击的快速恢复方法 |
CN106372505B (zh) * | 2016-08-23 | 2018-12-28 | 北京航空航天大学 | 一种针对嵌入式系统代码攻击的快速恢复方法 |
CN113239330A (zh) * | 2021-06-10 | 2021-08-10 | 杭州安恒信息技术股份有限公司 | 一种基于散列算法的反调试方法及相关装置 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1842757B (zh) | 用于增量代码签署的方法和装置 | |
US8850221B2 (en) | Protection against side channel attacks with an integrity check | |
RU2696425C1 (ru) | Способ двумерного контроля и обеспечения целостности данных | |
US8392713B2 (en) | Secure offline activation process for licensed software application programs | |
US20100303229A1 (en) | Modified counter mode encryption | |
CN115048652A (zh) | 针对运行已验证软件的硬件的端到端安全性 | |
US20040054901A1 (en) | Creating and verifying a sequence of consecutive data | |
WO1998047259A2 (en) | File encryption method and system | |
CN101369889A (zh) | 一种对文档进行电子签名的系统和方法 | |
EP3637674A1 (en) | Computer system, secret information verification method, and computer | |
Cortez et al. | Cryptographic randomness test of the modified hashing function of SHA256 to address length extension attack | |
Saxena et al. | Collaborative approach for data integrity verification in cloud computing | |
CN116781265A (zh) | 一种数据加密的方法和装置 | |
Borselius et al. | A pragmatic alternative to undetachable signatures | |
Rahouma | Reviewing and applying security services with non-english letter coding to secure software applications in light of software trade-offs | |
CN117216813B (zh) | 用于读写数据的方法、装置和安全芯片 | |
US10970407B2 (en) | Processes and related apparatus for secure access control | |
Tritilanunt et al. | A secure authentication protocol using HOTP on USB storage devices | |
JP2002006739A (ja) | 認証情報生成装置およびデータ検証装置 | |
Darmawan et al. | Beccak: Combination of Blockchain and Keccak Algorithm for Improved Digital Signature Performace | |
Park et al. | Cloning Hardware Wallet without Valid Credentials Through Side-Channel Analysis of Hash Function | |
CN115605869A (zh) | 用于在安全元件中安全地处理数字信息的方法 | |
CN118573388A (zh) | 一种基于逻辑运算文件块的加解密方法及设备 | |
Tarman et al. | Principles of Faithful Execution in the implementation of trusted objects. | |
Liu | The Investigation of Industry Application Scenarios in Digital Signature |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170301 |
|
CF01 | Termination of patent right due to non-payment of annual fee |