CN101073054B - 加载格式的程序代码的产生以及可执行程序代码的提供 - Google Patents

加载格式的程序代码的产生以及可执行程序代码的提供 Download PDF

Info

Publication number
CN101073054B
CN101073054B CN2005800419175A CN200580041917A CN101073054B CN 101073054 B CN101073054 B CN 101073054B CN 2005800419175 A CN2005800419175 A CN 2005800419175A CN 200580041917 A CN200580041917 A CN 200580041917A CN 101073054 B CN101073054 B CN 101073054B
Authority
CN
China
Prior art keywords
program code
storehouse
data carrier
pseudo
format
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
CN2005800419175A
Other languages
English (en)
Other versions
CN101073054A (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.)
Giesecke and Devrient GmbH
Original Assignee
Giesecke and Devrient GmbH
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
Application filed by Giesecke and Devrient GmbH filed Critical Giesecke and Devrient GmbH
Publication of CN101073054A publication Critical patent/CN101073054A/zh
Application granted granted Critical
Publication of CN101073054B publication Critical patent/CN101073054B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

本发明涉及一种用于为便携式数据载体(12)产生加载格式的程序代码(24,30)的方法。根据所述方法,使用伪库(20),其与存储在数据载体(12)中的库(38)的不同在于,存储在数据载体的库(38)中的至少某些内部功能,在伪库(12)中不存在或被隐藏或被编码。根据用于在便携式数据载体(12)中提供可执行程序代码(40)的所述方法,程序代码(24,30)以加载格式链接至存储在数据载体(12)中的库(38)。本发明还涉及具有相应特征的设备(10,12)以及计算机程序产品。本发明提供用来保密的保护技术,并且允许产生用于便携式数据载体(12)的加载格式的程序代码(24,30),并且提供便携式数据载体(12)中的可执行程序代码(40)。

Description

加载格式的程序代码的产生以及可执行程序代码的提供
技术领域
本发明一般涉及便携式数据载体领域和用于这种数据载体的软件的创建。特别地,本发明涉及如下领域:产生用于便携式数据载体的程序代码,将程序代码加载到数据载体中,并提供用于由数据载体的处理器执行的程序代码。为了本文的目的,便携式数据载体可以采取芯片卡(智能卡)或紧凑芯片模块的形式,并且在本发明的某些实施例中,还可以采取其他类构造的有限资源系统的形式。
背景技术
近年来,在连续的技术发展过程中,便携式数据载体已经变得日益功能强大。这对由硬件和存储空间构成可用的计算能力、以及由操作系统提供的功能都是确实的。现代便携式数据载体展现允许程序代码的后加载(即,在数据载体的运行期间加载程序代码)的功能(functionality)。应用程序可被后加载到的数据载体已经为人所知一段时间了。然而目前,数据载体还正在发展,其允许操作系统的部分例如驱动程序(driver)、库或函数模块(functionalmodule)的后加载。将期望这种后加载选项在未来将发展成用于便携式数据载体的灵活操作系统的重要部分。
通常,与便携式数据载体相关的重要因素是安全性和间谍保护方面,因为便携式数据载体经常被用于安全关键应用,并且未授权使用或窥探的结果可引起相当大的损害。允许程序代码的后加载的数据载体的特别问题在于,数据载体的内部工作必须尽可能不被暴露。特别地,必须确保要后加载的程序代码的外部开发者不需要或不能获得关于数据载体的内部结构和内部程序结构的信息。因此,例如数据载体的平台相关函数(function)必须尽可能地保持隐藏,即使要被后加载的程序代码最终使用这些函数。
发明内容
本发明的目的是全部或部分解决上述的问题。特别地,本发明旨在提供安全、保护隐私的技术,其允许产生用于便携式数据载体的加载格式的程序代码,并提供便携式数据载体中的可执行程序代码。
根据本发明,提供了一种产生加载格式的程序代码的方法,该加载格式的程序代码意图在于在便携式数据载体运行期间被加载到其中并由所述数据载体的处理器执行,以及在所述执行期间,使用位于所述数据载体上的库的函数,所述方法具有在所述数据载体外执行的下列步骤:产生目标代码格式的程序代码,以及至少部分地相对于伪库链接目标代码格式的程序代码,以便获得加载格式的程序代码,所述伪库以如下方式不同于位于所述数据载体上的库:位于所述数据载体上的库的至少一些内部函数在伪库中不存在或被隐藏或被屏蔽。
根据本发明,还提供了一种提供便携式数据载体中的可执行程序代码的方法,建立所述可执行程序代码,以便在由所述数据载体的处理器的执行期间使用位于所述数据载体上的库的函数,所述方法具有由所述数据载体的处理器执行的下列步骤:在所述数据载体的运行期间,加载加载格式的程序代码,所述加载格式的程序代码已被至少部分地相对于伪库链接,该伪库以如下方式不同于位于所述数据载体上的库:位于所述数据载体上的库的至少一些内部函数在所述伪库中不存在或被隐藏或被屏蔽,以及相对于位于所述数据载体上的库链接加载格式的所述程序代码,以便得到所述可执行的程序代码。
本发明的基本原则是仅提供数据载体外部的伪库,该伪库与位于数据载体上的库的不同在于,位于数据载体上的库的至少某些内部函数在伪库中不存在或被隐藏或被屏蔽。只有伪库—并且可选地相关联的文件—需要对于外部程序开发者可访问。这样,信息可以保密,从所述信息第三方可能得出关于数据载体的内部工作的不期望的结论。这样,本发明允许保护甚至由第三方例如由独立软件公司或数据载体的产业用户开发可后加载的程序代码。
目标代码格式的程序代码被至少部分与伪库相关地链接。这意味着,特别在本发明的某些实施例中,加载格式的程序代码仍可以包括通常包括在目标代码格式中的类型的符号信息。在其他的实施例中,相反,与伪库相关的、完全链接的程序代码以加载格式产生。
进一步的链接过程发生在数据载体上,其在优选实施例中采取动态链接过程的形式。在不同实施例中,该链接过程可以发生在加载时、或运行时、或部分地在加载时部分地在运行时。在数据载体上执行的链接过程与位于数据载体上的私有库相关地发生。
在优选实施例中,数据载体外部执行的链接是与伪库的虚拟函数相关的虚拟链接。因此,在某些实施例中,加载格式的程序代码中的虚拟函数调用,可以由位于数据载体上的库的实际函数调用在数据载体内替换。
还提供了本发明的实施例,其中加载格式的程序代码具有分支表或引用表,其由仅在数据载体上链接时引用真实的库的表项填充。特别—但不仅—在这些实施例中规定:虚拟函数调用在位于数据载体上的库中要被解决。这可以发生在加载时、或运行时、或部分地在加载时部分地在运行时。
在本发明的优选实施例中,伪库提供调用接口,其与位于数据载体上的库的调用接口不同。特别地,由伪库提供的调用接口可以是虚拟调用接口。
为了实现高等级的安全性,防止程序代码的破坏以及防止不期望地后加载未授权的程序代码,在优选实施例中创建了授权数据,并且在程序代码加载时检测该授权数据。
在优选实施例中,数据载体的操作系统和/或应用程序的后加载的程序代码的灵活和自动检测变得可能,这是由于由程序代码提供的函数被输入到数据载体的管理单元中。
产生并加载到数据载体中的程序代码可以是,例如应用程序或内核模块。在优选实施例中规定,程序代码是自然(native)程序代码。这里特别地,二进制码应该被认为是自然程序代码,所述二进制码是由数据载体的处理器可执行的,无需解释的中介并且无需虚拟机。
根据本发明的计算机程序产品包括用于实现根据本发明的方法的程序命令,或已由根据本发明的方法产生的程序命令。这样的计算机程序产品可以是物理媒体,例如,半导体存储器或软盘或CD-ROM。然而,计算机程序产品还可以是非物理媒体,例如,在计算机网络上传输的信号。特别地,计算机程序产品可以包括用于程序开发系统或便携式数据载体的软件,或与便携式数据载体的生产或初始化或个性化或操作相结合而使用。
根据本发明的设备可以具体为程序开发系统或便携式数据载体。在优选的进一步实施例中,计算机程序产品和/或设备包括对应于本说明书中提到的那些特征、和/或从属方法权利要求中提到的那些特征。
附图说明
从下面示例性实施例以及多个作为替代的实施例的描述,本发明的其他的特征、目的和优点是明显的。在示意图中:
图1是根据本发明的示例性实施例的程序开发系统和数据载体中的数据结构和数据处理阶段的概念图;
图2是在图1的程序开发系统中执行的、用于产生加载格式的程序代码的方法的流程图;
图3是在图1的数据载体中执行的、用于提供可执行程序代码的方法的流程图,以及
图4是位于数据载体上的库和伪库间的关系的示例性表示。
具体实施方式
图1是程序开发系统10和便携式数据载体12的示意表示。程序开发系统10可以采取具有合适软件的传统个人计算机或工作站的形式。在本示例性实施例中,数据载体12是具有本身众所周知的硬件的芯片卡或芯片模块。特别地,数据载体12包含单芯片微控制器,其具有处理器、多个配置用于不同技术的存储器域(field)、以及用于有线或无线通信的接口电路。
在图1中所示的示例性实施例中,程序代码的产生从源文本14开始,其由编译器16转换至对应的目标代码格式的程序代码18。在程序开发系统10中,伪库20可用,其将在下面更详细的描述。从以目标代码格式呈现的程序代码18以及伪库20,链接器22产生至少部分链接的加载格式的程序代码24。
为了防止疏忽或恶意破坏而保护程序代码24,使用了授权发生器26,其产生授权数据28—例如,用于程序代码24的合适的校验和。由授权数据28保护的加载格式的程序代码30,形成借助于程序开发系统10执行的开发过程的结果。该程序代码30被存储,用于接下来的使用。
程序代码30可以在数据载体12运行期间被加载到其中。加载过程可以例如以终端客户的前提,或者结合数据载体12的产生或初始化或个性化发生。程序代码30在这种情形出现在程序开发系统10或初始化或个性化设备或终端用户的终端中,并且被传输至数据载体12。在加载过程中,数据载体12处于运行中。这应当被理解为意味着在加载过程期间,程序代码30被数据载体12的处理器积极地处理并修改。
图1用虚线箭头表示由加载程序32将加载格式的保护的程序代码30接收—可选地经由上述中介站之一—到数据载体12中。授权检验器34确保程序代码30不被破坏并且由授权的站提供授权数据28。如果通过检验,则加载格式的程序代码24由与存储在数据载体12中的库38相关的链接器36链接。由动态链接器执行的该过程将在下文更详细描述。
链接器36产生可执行程序代码40,然后其对由数据载体12的处理器执行可用。在某些实施例中,可执行程序代码40是用于数据载体12的应用程序(应用)。相反,在此描述的示例性实施例中,可执行程序代码40是数据载体12的内核模块,即,例如操作系统、驱动程序或库的一部分。内核模块可以例如提供用于存储器管理的驱动程序或秘库或用于与各种接口(例如,USB、无线以及TCP/IP)通信的功能。
可执行程序代码40的函数被提供至数据载体12的操作系统以及存储在数据载体12上的应用程序。在某些实施例中,产生加载功能的灵活检测。为此,可执行的程序代码40—特别地,如果它是内核模块—使得之前指定的接口可用。此外,此处描述的示例性实施例,通过数据载体12的管理单元中的注册程序42,为程序代码40的入口(entry)提供已提供的函数。该管理单元可以例如是注册文件(注册(registry))或数据载体12的另一数据结构。
图2再次表示程序开发系统10中的方法序列。步骤50中,程序代码18以目标代码格式产生。步骤52和与伪库20相关的程序代码18的链接有关,以便得到加载格式的未保护的程序代码24。步骤54中,授权数据28和加载格式的保护的程序代码30最终产生。
图3中所示的流程图总结数据载体12中执行的方法步骤。步骤56中输入保护的程序代码30和步骤58中授权检验后,接下来是步骤60中链接程序代码24与存储在数据载体12中的库38相关,以便得到可执行的程序代码40。提供可执行程序代码40用于在步骤62中执行,并且可选地将其输入数据载体12的管理单元中。
此处描述的示例性实施例的必要部分是步骤52和60中的两个链接过程。在步骤52由链接器22执行的第一链接过程中,使用了伪库20(哑(dummy)库)。伪库20与存储在数据载体12中的库38的不同具体在于:伪库20不包含存储在数据载体12上的库38的实际函数,而仅有这里称为“虚拟函数”的函数。
数据载体12外部的链接过程因此虚拟地发生,即,与伪库20的虚拟函数相关,而不是与包含在数据载体12中的库38的实际函数相关。换句话说,链接发生与伪库20的虚拟调用接口相关,而不是与数据载体12中的库38的真实的调用接口相关。数据载体12的内部工作,即具体是库38的内部函数以及内部功能,因此保持隐藏。这些内部函数和功能即使通过对伪库20的分析也不可能确定。
刚刚描述的伪库20和包含在数据载体12中的库38之间的关系参照实例在图4中解释。伪库20为虚拟调用接口提供例如函数VirtFunc1、VirtFunc2和VirtFunc3。具有数据载体12的实际函数的库38的调用接口仅在数据载体12上存储。
包含在数据载体12中的库38的实际调用接口解决虚拟函数调用,并且提供例如内部函数Func1、Func2、Func3和Func4。步骤52中由链接器22的程序代码18的链接与伪库20相关地发生,这使得仅仅可用调用接口。相反,引用的实际解决在数据载体12上并不发生,直至步骤60。在这个过程期间,虚拟函数VirtFunc1-VirtFunc3由实际函数Func1-Func4替代。这在图4中以虚线箭头图示。
总而言之,因此确保在数据载体12上执行的程序代码40可以使用平台相关的和/或私有的函数。然而,通过伪库20的使用,为程序开发者所知的外部函数至平台相关的函数的变换并不需要展现,所述变换仅在数据载体12中发生。这种措施带来数据载体12的安全性的显著增加,即使后者允许自然程序代码的加载—例如,应用程序和驱动程序。
理所当然,上述的细节旨在仅作为本发明的可能的实施例的实例。进一步的变形,特别对于在数据载体12外部和数据载体12内部执行的链接过程52和60,以及对于伪库20和位于数据载体12中的库38各自的内容,对于本领域的技术人员是可能的并且明显的。

Claims (15)

1.一种产生加载格式的程序代码(24,30)的方法,该加载格式的程序代码(24,30)意图在于在便携式数据载体(12)运行期间被加载到其中并由所述数据载体(12)的处理器执行,以及在所述执行期间,使用位于所述数据载体(12)上的库(38)的函数,所述方法具有在所述数据载体(12)外执行的下列步骤:
产生目标代码格式的程序代码(18),以及
至少部分地相对于伪库(20)链接目标代码格式的程序代码(18),以便获得加载格式的程序代码(24,30),所述伪库(20)以如下方式不同于位于所述数据载体(12)上的库(38):位于所述数据载体(12)上的库(38)的至少一些内部函数在伪库(20)中不存在或被隐藏或被屏蔽。
2.如权利要求1所述的方法,其特征在于,所述链接是相对于所述伪库(20)的虚拟函数的虚拟链接。
3.如权利要求1或权利要求2所述的方法,其特征在于,创建授权数据(28)以便保护加载格式的所述程序代码(24,30)不被破坏。
4.一种提供便携式数据载体(12)中的可执行程序代码(40)的方法,建立所述可执行程序代码(40),以便在由所述数据载体(12)的处理器的执行期间使用位于所述数据载体(12)上的库(38)的函数,所述方法具有由所述数据载体(12)的处理器执行的下列步骤:
在所述数据载体(12)的运行期间,加载加载格式的程序代码(24,30),所述加载格式的程序代码(24,30)已被至少部分地相对于伪库(20)链接,该伪库(20)以如下方式不同于位于所述数据载体(12)上的库(38):位于所述数据载体(12)上的库(38)的至少一些内部函数在所述伪库(20)中不存在或被隐藏或被屏蔽,以及
相对于位于所述数据载体(12)上的库(38)链接加载格式的所述程序代码(24,30),以便得到所述可执行的程序代码(40)。
5.如权利要求4所述的方法,其特征在于,所述链接是动态链接。
6.如权利要求4所述的方法,其特征在于,在链接期间,加载格式的所述程序代码(24,30)中的虚拟函数调用被位于所述数据载体(12)上的库(38)的实际函数调用代替。
7.如权利要求4所述的方法,其特征在于,加载格式的所述程序代码(24,30)由授权数据(28)保护,并且仅在成功的授权检验后提供所述可执行的程序代码(40)用于执行。
8.如权利要求4所述的方法,其特征在于,由所述可执行程序代码(40)提供的函数被输入到所述数据载体(12)的管理单元中。
9.如权利要求4所述的方法,其特征在于,加载格式的所述程序代码(24,30)已经由根据权利要求1至3的任一方法产生。
10.如权利要求1所述的方法,其特征在于,所述伪库(20)提供调用接口,其与位于所述数据载体上的库(38)的调用接口不同。
11.如权利要求10所述的方法,其特征在于,由所述伪库(20)提供的所述调用接口是虚拟调用接口。
12.如权利要求1所述的方法,其特征在于,在位于所述数据载体(12)上的库(38)中消除虚拟函数调用。
13.如权利要求1至12中任一所述的方法,其特征在于,所述程序代码(24,30,40)是应用程序。
14.如权利要求1至12中任一所述的方法,其特征在于,所述程序代码(24,30,40)是内核模块。
15.如权利要求1至12中任一所述的方法,其特征在于,所述程序代码(24,30,40)是自然程序代码。
CN2005800419175A 2004-12-06 2005-12-01 加载格式的程序代码的产生以及可执行程序代码的提供 Expired - Fee Related CN101073054B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102004058882.1 2004-12-06
DE102004058882A DE102004058882A1 (de) 2004-12-06 2004-12-06 Erzeugen von Programmcode in einem Ladeformat und Bereitstellen von ausführbarem Programmcode
PCT/EP2005/012854 WO2006061141A1 (de) 2004-12-06 2005-12-01 Erzeugen von programmcode in einem ladeformat und bereitstellen von ausführbarem programmcode

Publications (2)

Publication Number Publication Date
CN101073054A CN101073054A (zh) 2007-11-14
CN101073054B true CN101073054B (zh) 2011-01-26

Family

ID=35788755

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005800419175A Expired - Fee Related CN101073054B (zh) 2004-12-06 2005-12-01 加载格式的程序代码的产生以及可执行程序代码的提供

Country Status (6)

Country Link
US (1) US8332834B2 (zh)
EP (1) EP1839136A1 (zh)
JP (2) JP2008523480A (zh)
CN (1) CN101073054B (zh)
DE (1) DE102004058882A1 (zh)
WO (1) WO2006061141A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8452981B1 (en) * 2006-03-01 2013-05-28 Nvidia Corporation Method for author verification and software authorization
US20120023483A1 (en) * 2010-07-20 2012-01-26 Dan Welchman System and method for use in indicating execution of application code
DE102012024250B4 (de) * 2012-08-02 2023-04-13 Masktech International Gmbh Verfahren zur Bereitstellung von Chips mit hoher Kopierschutzfunktion, insbesondere für digitale Authentifizierungssysteme, wie Chipkarten oder dergleichen, sowie danach hergestellte Chips
WO2019148470A1 (zh) * 2018-02-02 2019-08-08 深圳配天智能技术研究院有限公司 一种可编程逻辑芯片的保护电路及控制系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6405316B1 (en) * 1997-01-29 2002-06-11 Network Commerce, Inc. Method and system for injecting new code into existing application code
CN1373418A (zh) * 2001-02-28 2002-10-09 无敌科技(西安)有限公司 抽换可携式执行文件格式文件资料的方法
CN1537273A (zh) * 2001-05-31 2004-10-13 �����ɷ� 无线环境中安全的应用程序分配与执行法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2143488C (en) * 1995-02-27 2000-01-11 Robert Paul Duncan Dynamic link libraries without linker or loader support
CA2171898C (en) * 1996-03-15 2000-02-01 Brian Ward Thomson Linker optimization for compiled object oriented programs
JPH09258969A (ja) * 1996-03-21 1997-10-03 Toshiba Corp プログラム開発装置及びプログラム開発方法
WO1999001815A1 (en) 1997-06-09 1999-01-14 Intertrust, Incorporated Obfuscation techniques for enhancing software security
HUP0101368A3 (en) * 1998-03-23 2004-04-28 Ibm Java runtime system with modified constant pool
DE19840029C1 (de) 1998-09-02 2000-04-20 Siemens Ag Verfahren zum Linken von in einen Arbeitsspeicher eines Prozessors nachgeladenen Programmodulen auf einer Chipkarte
GB9920676D0 (en) * 1999-09-01 1999-11-03 Tao Group Ltd Translating and executing object-oriented computer programs
GB9921720D0 (en) * 1999-09-14 1999-11-17 Tao Group Ltd Loading object-oriented computer programs
US20010047512A1 (en) * 2000-03-23 2001-11-29 Leland Szewerenko Method and system for linking multiple processors having shared memory
JP2002132364A (ja) * 2000-10-19 2002-05-10 Yutaka Iizuka プログラムを内部解析から保護する方法、コンピュータ読み取り可能な記録媒体及びプログラムの配布方法
WO2002097619A2 (en) * 2001-05-30 2002-12-05 Research In Motion Limited A mobile communications device application processing system
JP2003140758A (ja) * 2001-11-07 2003-05-16 Hitachi Ltd プログラム暗号化方法、復号化方法および実行方法
NL1019876C2 (nl) * 2002-01-31 2003-08-04 Chess Embedded Technology B V Systeem en werkwijze voor het laden van een programmacode in een inrichting alsmede een werkwijze voor het voeden van een programmacode aan een inrichting.
JP2003337629A (ja) * 2002-05-18 2003-11-28 Mitsuko Miyaji プログラム難読化方法及び装置
JP4115759B2 (ja) 2002-07-01 2008-07-09 株式会社東芝 耐タンパプロセッサにおける共有ライブラリの使用方法およびそのプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6405316B1 (en) * 1997-01-29 2002-06-11 Network Commerce, Inc. Method and system for injecting new code into existing application code
CN1373418A (zh) * 2001-02-28 2002-10-09 无敌科技(西安)有限公司 抽换可携式执行文件格式文件资料的方法
CN1537273A (zh) * 2001-05-31 2004-10-13 �����ɷ� 无线环境中安全的应用程序分配与执行法

Also Published As

Publication number Publication date
EP1839136A1 (de) 2007-10-03
US20090044172A1 (en) 2009-02-12
CN101073054A (zh) 2007-11-14
JP2013041598A (ja) 2013-02-28
DE102004058882A1 (de) 2006-06-08
WO2006061141A1 (de) 2006-06-15
US8332834B2 (en) 2012-12-11
JP2008523480A (ja) 2008-07-03

Similar Documents

Publication Publication Date Title
CN106250124B (zh) 功能模块跨平台运行的实现方法和装置
US8196131B1 (en) Payment application lifecycle management in a contactless smart card
JP4303284B2 (ja) セキュリティエレメントにコマンドを出す方法及び移動端末
CN104182662B (zh) 隐藏应用程序的隐藏和打开方法、系统以及移动终端
US20080216071A1 (en) Software Protection
CN103065072B (zh) 提高Java软件破解难度的方法及装置、版权验证方法
CN103413073B (zh) 一种保护java可执行程序的方法及设备
EP1512057B1 (en) Trusted user interface for a secure mobile wireless device
CN109871704B (zh) 基于Hook的安卓资源文件防护方法、设备和存储介质
CN106203006A (zh) 基于dex与so文件动态执行的Android应用加固方法
CN105391840A (zh) 自动创建目标应用程序
CN108055133A (zh) 一种基于区块链技术的密钥安全签名方法
CN101483658B (zh) 浏览器输入内容保护的系统和方法
CN102955915B (zh) 一种Java应用安全访问控制方法及其装置
CN103975338A (zh) 用于根据包括待保护应用程序和初始配置文件的初始包文件生成保护该应用程序的包文件的方法以及相关的计算机程序产品和计算装置
CN101965553A (zh) 虚拟应用程序系统、存储设备、虚拟应用程序的运行方法及虚拟环境的保护方法
CN102467628A (zh) 一种基于浏览器内核拦截技术的数据保护方法
CN103329139A (zh) 在具有随机分配的存储范围的安全系统中支持jit的系统和方法
CN105843653A (zh) 一种安全应用配置方法及装置
CN1869927B (zh) 设备控制器、控制设备的方法及其程序
CN105608391A (zh) 多elf文件保护方法及系统
CN101073054B (zh) 加载格式的程序代码的产生以及可执行程序代码的提供
CN108322458B (zh) Web应用入侵检测方法、系统、计算机设备和存储介质
CN110502423A (zh) 固件的漏洞识别方法、装置、设备和存储介质
Faugeron Manipulating the frame information with an underflow attack

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110126

Termination date: 20171201

CF01 Termination of patent right due to non-payment of annual fee