CN108319823A - 一种安卓app签名绑定方法及装置 - Google Patents

一种安卓app签名绑定方法及装置 Download PDF

Info

Publication number
CN108319823A
CN108319823A CN201810107514.5A CN201810107514A CN108319823A CN 108319823 A CN108319823 A CN 108319823A CN 201810107514 A CN201810107514 A CN 201810107514A CN 108319823 A CN108319823 A CN 108319823A
Authority
CN
China
Prior art keywords
app
signature
digital signature
digital
binding
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.)
Pending
Application number
CN201810107514.5A
Other languages
English (en)
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.)
Guangdong Bee Assistant Network Technology Ltd By Share Ltd
Original Assignee
Guangdong Bee Assistant Network Technology Ltd By Share Ltd
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 Guangdong Bee Assistant Network Technology Ltd By Share Ltd filed Critical Guangdong Bee Assistant Network Technology Ltd By Share Ltd
Priority to CN201810107514.5A priority Critical patent/CN108319823A/zh
Publication of CN108319823A publication Critical patent/CN108319823A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/14Protecting executable software against software analysis or reverse engineering, e.g. by obfuscation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种安卓APP签名绑定方法,包括:将软件APP与其自有正确的数字签名信息进行绑定;每次启动所述APP时,通过所述APP中的Java层代码调用由C语言编写的数字签名认证程序,获得当前数字签名数据;将所述当前数字签名数据与绑定的数字签名信息进行对比;根据对比结果判断所述APP签名是否认证成功。本发明还公开了一种安卓APP签名绑定装置。本发明能够提高签名被破解的难度,有效提高APP的安全性。

Description

一种安卓APP签名绑定方法及装置
技术领域
本发明涉及安全、签名认证技术领域,尤其涉及一种安卓APP签名绑定方法及装置。
背景技术
在软件App开发大环境中,存在着逆向工程与安全方向。若反编译开发的App,再加上新的签名重新编译,就可发布一个一样的App。因此提高自有App的安全性成为其中的一项重要技术。
现有技术中,通过在App中的java层代码中加入自有的数字签名来实现签名认证。在App被非法开发者破解并重新加入新的签名时,App中的java层代码自动判断App的数字签名与加入的自有签名是否一致,从而达到保护自有App的作用。但是,Java层代码的安全性不高,非法开发者很容易通过反编译找到加入到App的自有数字签名数据,从而对其进行修改,实现签名认证。
发明内容
本发明针对现有技术中存在的问题,提供了一种安卓APP签名绑定方法及装置,能够提高签名被破解的难度,有效提高APP的安全性,防止修改App的数字签名。
本发明就上述技术问题而提出的技术方案如下:
一方面,本发明提供一种安卓APP签名绑定方法,包括:
将软件APP与其自有正确的数字签名信息进行绑定;
每次启动所述APP时,通过所述APP中的Java层代码调用由C语言编写的数字签名认证程序,获得当前数字签名数据;
将所述当前数字签名数据与绑定的数字签名信息进行对比;
根据对比结果判断所述APP签名是否认证成功。
进一步地,所述根据对比结果判断所述APP签名是否认证成功,具体包括:
若所述当前数字签名数据与绑定的数字签名信息相一致,则判定所述APP签名认证成功,继续运行所述APP;
若所述当前数字签名数据与绑定的数字签名信息不一致,则判定所述APP签名认证失败,停止运行所述APP。
进一步地,所述将软件APP与其自有正确的数字签名信息进行绑定,具体包括:
通过Java层代码将所述APP自有正确的数字签名数据放入C语言代码中,获得数字签名信息,以将所述APP与所述数字签名信息进行绑定。
进一步地,所述通过Java层代码将所述APP的数字签名数据放入C语言代码中,获得数字签名信息,具体包括:
通过包管理器获得指定包名的包信息;所述包信息包括签名;
通过所述包信息获得签名数组;
获取所述签名数组的第一个数字签名数据,并将所述数字签名数据放入C语言代码中,获得所述数字签名信息。
进一步地,所述由C语言编写的数字签名认证程序的运行方法包括:
获取所述APP的包管理器;
通过所述包管理器获得指定包名的包信息;所述包信息包括签名;
通过所述包信息获得签名数组;
获取所述签名数组的第一个数字签名数据,作为当前数字签名数据。
另一方面,本发明提供一种安卓APP签名绑定装置,包括:
绑定模块,用于将软件APP与其自有正确的数字签名信息进行绑定;
调用模块,用于每次启动所述APP时,通过所述APP中的Java层代码调用由C语言编写的数字签名认证程序,获得当前数字签名数据;
对比模块,用于将所述当前数字签名数据与绑定的数字签名信息进行对比;以及,
运行判断模块,用于根据对比结果判断所述APP签名是否认证成功。
进一步地,所述运行判断模块具体包括:
继续运行单元,用于在所述当前数字签名数据与绑定的数字签名信息相一致时,判定所述APP签名认证成功,继续运行所述APP;以及,
停止运行单元,用于在所述当前数字签名数据与绑定的数字签名信息不一致时,判定所述APP签名认证失败,停止运行所述APP。
进一步地,所述绑定模块具体用于:
通过Java层代码将所述APP自有正确的数字签名数据放入C语言代码中,获得数字签名信息,以将所述APP与所述数字签名信息进行绑定。
进一步地,所述绑定模块具体包括:
包信息获取单元,用于通过包管理器获得指定包名的包信息;所述包信息包括签名;
签名数组获取单元,用于通过所述包信息获得签名数组;以及,
信息获取单元,用于获取所述签名数组的第一个数字签名数据,并将所述数字签名数据放入C语言代码中,获得所述数字签名信息。
进一步地,所述由C语言编写的数字签名认证程序的运行方法包括:
获取所述APP的包管理器;
通过所述包管理器获得指定包名的包信息;所述包信息包括签名;
通过所述包信息获得签名数组;
获取所述签名数组的第一个数字签名数据,作为当前数字签名数据。
本发明实施例提供的技术方案带来的有益效果是:
在每次启动APP时,通过Java层代码调用由C语言编写的数字签名认证程序,获得当前数字签名数据,以与预先存储的数字签名信息进行对比,实现对APP签名的认证,提高签名被破解的难度,提高安全性,更好地保护APP不被非法冒充。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的安卓APP签名绑定方法的流程示意图;
图2是本发明实施例一提供的安卓APP签名绑定方法的具体流程示意图;
图3是本发明实施例二提供的安卓APP签名绑定装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
本发明实施例提供了一种安卓APP签名绑定方法,参见图1,该方法包括:
S1、将软件APP与其自有正确的数字签名信息进行绑定;
S2、每次启动所述APP时,通过所述APP中的Java层代码调用由C语言编写的数字签名认证程序,获得当前数字签名数据;
S3、将所述当前数字签名数据与绑定的数字签名信息进行对比;
S4、根据对比结果判断所述APP签名是否认证成功。
需要说明的是,通过通用方法把签名相关(即数字签名认证程序)的C语言代码打包成.so库文件:l iblocSDK7.so,并建立JNI调用关系(Java层代码调用C语言代码必须通过JNI的调用方式)。
在每次启动APP时,APP中的Java层代码通过JNI调用C语言中的数字签名程序verifySign(),即可获得当前数字签名数据s ign,将当前数字签名数据sign与预先存储的数字签名信息SIGN进行对比:
int result=strcmp(sign,SIGN)。
采用DeleteLocalRef方法对C语言的内存释放,并判断result返回结果,若返回0,则表示签名一致,反之,则表示签名不一致。本实施列采用so库的方式,使得逆向工程师只能反翻译到二进制的数据或者汇编式语言,从而有效提高签名的破解难度,提高APP安全性,更好地保护APP不被非法冒充。
进一步地,在步骤S3中,所述根据对比结果判断所述APP签名是否认证成功,具体包括:
若所述当前数字签名数据与绑定的数字签名信息相一致,则判定所述APP签名认证成功,正常运行所述APP;
若所述当前数字签名数据与绑定的数字签名信息不一致,则判定所述APP签名认证失败,停止运行所述APP。
需要说明的是,若签名一致,则正常运行APP,反之,则APP停止运行,即调用杀死程序Java代码:
android.os.Process.killProcess(android.os.Process.myPid())。
进一步地,所述将软件APP与其自有正确的数字签名信息进行绑定,具体包括:
通过Java层代码将所述APP自有正确的数字签名数据放入C语言代码中,获得数字签名信息,以将所述APP与所述数字签名信息进行绑定。
进一步地,所述通过Java层代码将所述APP的数字签名数据放入C语言代码中,获得数字签名信息,具体包括:
通过包管理器获得指定包名的包信息;所述包信息包括签名;
通过所述包信息获得签名数组;
获取所述签名数组的第一个数字签名数据,并将所述数字签名数据放入C语言代码中,获得所述数字签名信息。
具体地,通过Java把APP正确的数字签名数据放入到C语言代码中:
(1)通过包管理器获得指定包名包含签名的包信息
PackageInfopackageInfo=
context.getPackageManager().getPackageInfo(context.getPackageName(),PackageManager.GET_SIGNATURES);
(2)通过返回的包信息获得签名数组
Signature[]signatures=packageInfo.signature;
(3)根据返回签名数组获取第一个的数字签名数据
数字签名数据=signatures[0].toCharsString();
(4)放入到C语言代码中
static const char*SIGN="数字签名信息"。
进一步地,所述由C语言编写的数字签名认证程序的运行方法包括:
获取所述APP的包管理器;
通过所述包管理器获得指定包名的包信息;所述包信息包括签名;
通过所述包信息获得签名数组;
获取所述签名数组的第一个数字签名数据,作为当前数字签名数据。
具体地,用C语言编写数字签名认证方法:
(1)获取APP的application
jobject application=NULL;
jclass activity_thread_clz=env->FindClass("android/app/ActivityThread");
jmethodID currentApplication=env->GetStaticMethodID(activity_thread_clz,"currentApplication","()Landroid/app/Application;");
Jobjectapplication=
env->CallStaticObjectMethod(activity_thread_clz,currentApplication);
(2)通过APP的application获取包管理器
jclass context_clz=env->GetObjectClass(applicat ion);
jmethodID getPackageManager=
env->GetMethodID(context_clz,"getPackageManager",
"()Landroid/content/pm/PackageManager;");
jobject package_manager=
env->CallObjectMethod(application,getPackageManager);
(3)通过包管理器获得指定包名包
(4)通过包管理器和包名,获取含签名的包信息
jobject package_info=
env->CallObjectMethod(package_manager,getPackageInfo,package_nam e,64);
jclass package_info_clz=env->GetObjectClass(package_info);
(5)通过返回的包信息获得签名数组
(6)根据返回签名数组获取第一个的数据签名数据
jobject s ignature0=env->GetObjectArrayElement(s ignatures_array,0);
jclass s ignature_clz=
env->GetObjectClass(s ignature0);
jmethodID toCharsString=
env->GetMethodID(s ignature_clz,
"toCharsString","()Ljava/lang/String;");
jstring s ignature_str=
(jstring)(env->Cal lObjectMethod(s ignature0,toCharsString));
const char*s ign=env->GetStringUTFChars(s ignature_str,NULL);其中,sign即为当前数字签名数据。
参见图2,是本发明实施例提供的安卓APP签名绑定方法的具体流程示意图,所述安卓APP签名绑定方法包括:
S201、通过JAVA代码获取自有正确的数字签名数据SIGN。
S202、把数字签名数据SIGN放到C语言代码中。
S203、编写C语言方法,以获取APP的数字签名数据s ing并与SIGN对比。
S204、把C语言代码打包成SO库,并编写JNI调用。
S205、在APP每次启动时,调用C语言方法,判断APK的数字签名是否一致,若是,则执行步骤S206,若否,则执行步骤S207。
S206、正常运行。
S207、结束应用。
本发明实施例在每次启动APP时,通过Java层代码调用由C语言编写的数字签名认证程序,获得当前数字签名数据,以与预先存储的数字签名信息进行对比,实现对APP签名的认证,提高签名被破解的难度,提高安全性,更好地保护APP不被非法冒充。
实施例二
本发明实施例提供了一种安卓APP签名绑定装置,能够实现上述安卓APP签名绑定方法的所有流程,参见图3,所述安卓APP签名绑定装置包括:
绑定模块1,用于将软件APP与其自有正确的数字签名信息进行绑定;
调用模块2,用于每次启动所述APP时,通过所述APP中的Java层代码调用由C语言编写的数字签名认证程序,获得当前数字签名数据;
对比模块3,用于将所述当前数字签名数据与绑定的数字签名信息进行对比;以及,
运行判断模块4,用于根据对比结果判断所述APP签名是否认证成功。
进一步地,所述运行判断模块具体包括:
继续运行单元,用于在所述当前数字签名数据与绑定的数字签名信息相一致时,判定所述APP签名认证成功,继续运行所述APP;以及,
停止运行单元,用于在所述当前数字签名数据与绑定的数字签名信息不一致时,判定所述APP签名认证失败,停止运行所述APP。
进一步地,所述绑定模块具体用于:
通过Java层代码将所述APP自有正确的数字签名数据放入C语言代码中,获得数字签名信息,以将所述APP与所述数字签名信息进行绑定。
进一步地,所述绑定模块具体包括:
包信息获取单元,用于通过包管理器获得指定包名的包信息;所述包信息包括签名;
签名数组获取单元,用于通过所述包信息获得签名数组;以及,
信息获取单元,用于获取所述签名数组的第一个数字签名数据,并将所述数字签名数据放入C语言代码中,获得所述数字签名信息。
进一步地,所述由C语言编写的数字签名认证程序的运行方法包括:
获取所述APP的包管理器;
通过所述包管理器获得指定包名的包信息;所述包信息包括签名;
通过所述包信息获得签名数组;
获取所述签名数组的第一个数字签名数据,作为当前数字签名数据。
本发明实施例在每次启动APP时,通过Java层代码调用由C语言编写的数字签名认证程序,获得当前数字签名数据,以与预先存储的数字签名信息进行对比,实现对APP签名的认证,提高签名被破解的难度,提高安全性,更好地保护APP不被非法冒充。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种安卓APP签名绑定方法,其特征在于,包括:
将软件APP与其自有正确的数字签名信息进行绑定;
每次启动所述APP时,通过所述APP中的Java层代码调用由C语言编写的数字签名认证程序,获得当前数字签名数据;
将所述当前数字签名数据与绑定的数字签名信息进行对比;
根据对比结果判断所述APP签名是否认证成功。
2.如权利要求1所述的安卓APP签名绑定方法,其特征在于,所述根据对比结果判断所述APP签名是否认证成功,具体包括:
若所述当前数字签名数据与绑定的数字签名信息相一致,则判定所述APP签名认证成功,继续运行所述APP;
若所述当前数字签名数据与绑定的数字签名信息不一致,则判定所述APP签名认证失败,停止运行所述APP。
3.如权利要求1所述的安卓APP签名绑定方法,其特征在于,所述将软件APP与其自有正确的数字签名信息进行绑定,具体包括:
通过Java层代码将所述APP自有正确的数字签名数据放入C语言代码中,获得数字签名信息,以将所述APP与所述数字签名信息进行绑定。
4.如权利要求3所述的安卓APP签名绑定方法,其特征在于,所述通过Java层代码将所述APP的数字签名数据放入C语言代码中,获得数字签名信息,具体包括:
通过包管理器获得指定包名的包信息;所述包信息包括签名;
通过所述包信息获得签名数组;
获取所述签名数组的第一个数字签名数据,并将所述数字签名数据放入C语言代码中,获得所述数字签名信息。
5.如权利要求1所述的安卓APP签名绑定方法,其特征在于,所述由C语言编写的数字签名认证程序的运行方法包括:
获取所述APP的包管理器;
通过所述包管理器获得指定包名的包信息;所述包信息包括签名;
通过所述包信息获得签名数组;
获取所述签名数组的第一个数字签名数据,作为当前数字签名数据。
6.一种安卓APP签名绑定装置,其特征在于,包括:
绑定模块,用于将软件APP与其自有正确的数字签名信息进行绑定;
调用模块,用于每次启动所述APP时,通过所述APP中的Java层代码调用由C语言编写的数字签名认证程序,获得当前数字签名数据;
对比模块,用于将所述当前数字签名数据与绑定的数字签名信息进行对比;以及,
运行判断模块,用于根据对比结果判断所述APP签名是否认证成功。
7.如权利要求6所述的安卓APP签名绑定装置,其特征在于,所述运行判断模块具体包括:
继续运行单元,用于在所述当前数字签名数据与绑定的数字签名信息相一致时,判定所述APP签名认证成功,继续运行所述APP;以及,
停止运行单元,用于在所述当前数字签名数据与绑定的数字签名信息不一致时,判定所述APP签名认证失败,停止运行所述APP。
8.如权利要求6所述的安卓APP签名绑定装置,其特征在于,所述绑定模块具体用于:
通过Java层代码将所述APP自有正确的数字签名数据放入C语言代码中,获得数字签名信息,以将所述APP与所述数字签名信息进行绑定。
9.如权利要求8所述的安卓APP签名绑定装置,其特征在于,所述绑定模块具体包括:
包信息获取单元,用于通过包管理器获得指定包名的包信息;所述包信息包括签名;
签名数组获取单元,用于通过所述包信息获得签名数组;以及,
信息获取单元,用于获取所述签名数组的第一个数字签名数据,并将所述数字签名数据放入C语言代码中,获得所述数字签名信息。
10.如权利要求6所述的安卓APP签名绑定装置,其特征在于,所述由C语言编写的数字签名认证程序的运行方法包括:
获取所述APP的包管理器;
通过所述包管理器获得指定包名的包信息;所述包信息包括签名;
通过所述包信息获得签名数组;
获取所述签名数组的第一个数字签名数据,作为当前数字签名数据。
CN201810107514.5A 2018-02-02 2018-02-02 一种安卓app签名绑定方法及装置 Pending CN108319823A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810107514.5A CN108319823A (zh) 2018-02-02 2018-02-02 一种安卓app签名绑定方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810107514.5A CN108319823A (zh) 2018-02-02 2018-02-02 一种安卓app签名绑定方法及装置

Publications (1)

Publication Number Publication Date
CN108319823A true CN108319823A (zh) 2018-07-24

Family

ID=62903121

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810107514.5A Pending CN108319823A (zh) 2018-02-02 2018-02-02 一种安卓app签名绑定方法及装置

Country Status (1)

Country Link
CN (1) CN108319823A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109313678A (zh) * 2018-09-05 2019-02-05 福建联迪商用设备有限公司 一种调用api的方法及终端
CN110162488A (zh) * 2018-11-15 2019-08-23 深圳乐信软件技术有限公司 缓存一致性校验方法、装置、服务器和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013196123A (ja) * 2012-03-16 2013-09-30 Ntt Data Corp パッケージ生成装置、パッケージ生成方法、プログラム
CN103888252A (zh) * 2012-12-19 2014-06-25 深圳市华营数字商业有限公司 一种基于uid、pid、appid控制应用访问权限方法
CN103902887A (zh) * 2012-12-24 2014-07-02 珠海市君天电子科技有限公司 一种通过签名鉴定文件来源的方法和装置
CN104199654A (zh) * 2014-08-27 2014-12-10 百度在线网络技术(北京)有限公司 开放平台的调用方法及装置
CN106529222A (zh) * 2016-12-09 2017-03-22 北京智游网安科技有限公司 应用程序的防二次打包及破解的保护方法及保护***

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013196123A (ja) * 2012-03-16 2013-09-30 Ntt Data Corp パッケージ生成装置、パッケージ生成方法、プログラム
CN103888252A (zh) * 2012-12-19 2014-06-25 深圳市华营数字商业有限公司 一种基于uid、pid、appid控制应用访问权限方法
CN103902887A (zh) * 2012-12-24 2014-07-02 珠海市君天电子科技有限公司 一种通过签名鉴定文件来源的方法和装置
CN104199654A (zh) * 2014-08-27 2014-12-10 百度在线网络技术(北京)有限公司 开放平台的调用方法及装置
CN106529222A (zh) * 2016-12-09 2017-03-22 北京智游网安科技有限公司 应用程序的防二次打包及破解的保护方法及保护***

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109313678A (zh) * 2018-09-05 2019-02-05 福建联迪商用设备有限公司 一种调用api的方法及终端
CN109313678B (zh) * 2018-09-05 2021-11-09 福建联迪商用设备有限公司 一种调用api的方法及终端
CN110162488A (zh) * 2018-11-15 2019-08-23 深圳乐信软件技术有限公司 缓存一致性校验方法、装置、服务器和存储介质
CN110162488B (zh) * 2018-11-15 2022-02-11 深圳乐信软件技术有限公司 缓存一致性校验方法、装置、服务器和存储介质

Similar Documents

Publication Publication Date Title
CN106778103B (zh) 一种安卓应用程序防逆向破解的加固方法、***及解密方法
CN101908119B (zh) 一种动态链接库dll文件的处理方法和装置
KR101503785B1 (ko) 동적 라이브러리를 보호하는 방법 및 장치
JP5821034B2 (ja) 情報処理装置、仮想マシン生成方法及びアプリ配信システム
CN108399329B (zh) 一种提高可信应用程序安全的方法
US20100012732A1 (en) Installing a patch in a smart card module
KR101054318B1 (ko) 정보 처리 시스템 및 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체
US8205096B2 (en) Software license embedded in shell code
CN103975338A (zh) 用于根据包括待保护应用程序和初始配置文件的初始包文件生成保护该应用程序的包文件的方法以及相关的计算机程序产品和计算装置
CN107220547B (zh) 终端设备及其启动方法
US20180129794A1 (en) Method for Protecting Dex File from Decompilation in Android System
CN108763951B (zh) 一种数据的保护方法及装置
CN103065072A (zh) 提高Java软件破解难度的方法及装置、版权验证方法
CN104200153A (zh) 一种启动验证方法和***
CN101719821A (zh) 智能卡应用程序管理***及其方法
CN104199654A (zh) 开放平台的调用方法及装置
CN104008342A (zh) 一种通过bios和内核实现安全可信认证的方法
JP2013510352A (ja) 安全なポータブルオブジェクト
CN112231702B (zh) 应用保护方法、装置、设备及介质
CN108319823A (zh) 一种安卓app签名绑定方法及装置
CN108595950A (zh) 一种结合远程认证的sgx安全增强方法
CN114385189B (zh) 一种面向深度嵌入式***的函数地址空间布局随机化方法
US11269988B2 (en) Automated software application verification system
CN101888627B (zh) 一种移动终端及保护其***数据的方法
CN103034810B (zh) 一种检测方法、装置及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 510635 Room 2301-2341, 23 South Tower, 28 Longkou Hengjie, Tianhe District, Guangzhou City, Guangdong Province

Applicant after: Bee Assistant Co., Ltd.

Address before: 510635 Room 2301-2341, 23 South Tower, 28 Longkou Hengjie, Tianhe District, Guangzhou City, Guangdong Province

Applicant before: Guangdong bee assistant network technology Limited by Share Ltd

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180724