CN111274459B - 一种防止ipa安装包重签名的方法及其终端 - Google Patents

一种防止ipa安装包重签名的方法及其终端 Download PDF

Info

Publication number
CN111274459B
CN111274459B CN202010058904.5A CN202010058904A CN111274459B CN 111274459 B CN111274459 B CN 111274459B CN 202010058904 A CN202010058904 A CN 202010058904A CN 111274459 B CN111274459 B CN 111274459B
Authority
CN
China
Prior art keywords
character string
description file
byte stream
project
bits
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.)
Active
Application number
CN202010058904.5A
Other languages
English (en)
Other versions
CN111274459A (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.)
Fujian Tianqing Online Interactive Technology Co Ltd
Original Assignee
Fujian Tianqing Online Interactive Technology Co 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 Fujian Tianqing Online Interactive Technology Co Ltd filed Critical Fujian Tianqing Online Interactive Technology Co Ltd
Priority to CN202010058904.5A priority Critical patent/CN111274459B/zh
Publication of CN111274459A publication Critical patent/CN111274459A/zh
Application granted granted Critical
Publication of CN111274459B publication Critical patent/CN111274459B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/564Static detection by virus signature recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种防止IPA安装包重签名的方法,所述方法为:通过字节流的方式打开工程打包时用到的描述文件,并根据获取得到的字节流信息,转换为对应的字符串,根据一设定的规则截取字符串,再通过与工程中实时获取到的字符串做对比,如果对比相同,则认为IPA安装包未被重签名,否则签名已经被篡改;本发明有效防止用户对IPA安装包进行重签名,保护了用户的利益。

Description

一种防止IPA安装包重签名的方法及其终端
技术领域
本发明涉及安全防护技术领域,特别是一种防止IPA安装包重签名的方法及其终端。
背景技术
IPA是iPhone平台下可执行文件iPhoneApplication的缩写,其本质是一个包含了payload文件夹的zip压缩文件。用户可以通过数字媒体播放应用程序iTunes或其他的应用程序通过IPA安装包直接将对应的应用安装到用户的手机中。
在工程代码生成IPA安装包之后,苹果允许将该IPA安装包进行重签名操作,即通过 codesign命令或者sigh等工具进行重新签名。这就造成了一个风险:破解方可以通过一定的操作,将服务软件AppStore上已经发布的app进行重签名,进而导致代码被篡改,或者在app中加入对应的漏洞并发布到越狱的平台上,导致用户利益受损。
发明内容
为克服上述问题,本发明的目的是提供一种防止IPA安装包重签名的方法,增加了安装包的安全性。
本发明采用以下方案实现:一种防止IPA安装包重签名的方法,所述方法为:通过字节流的方式打开工程打包时用到的描述文件,并根据获取得到的字节流信息,转换为对应的字符串,根据一设定的规则截取字符串,再通过与工程中实时获取到的字符串做对比,如果对比相同,则认为IPA安装包未被重签名,否则签名已经被篡改。
进一步的,所述方法进一步包括如下步骤:步骤S1:获取打包工程时所需使用到的描述文件;
步骤S2:以字节流的方式打包对应的描述文件,获取到字节流的信息,并将节流的信息转换为字符串M1,根据一设定的规则截取其中部分字符串得到字符串T1记录工程中;
步骤S3:在工程代码中,在app运行的过程中,获取到当前应用所使用的描述文件,获取到描述文件对应的字节流信息并将其转换为对应的字符串M2,按照与步骤S2中相同的规则,截取其中部分字符串得到字符串T2;
步骤S4:比较字符串T1与字符串T2是否相同,相同则断定IPA安装包未被重签名,否则即已经被重签名。
进一步的,所述步骤S1进一步具体为:通过工程的 info.plist 文件,查询到当前工程所使用的唯一标示bundleId、描述文件名称信息,通过工程的唯一标示bundleId与描述文件名称信息,在保存描述文件的路径下寻找到对应的描述文件;或者先将工程打包一次,进入到打包后生成的IPA安装包中,直接获取IPA安装包中的描述文件。
进一步的,所述S2进一步具体为:
在工程中,以字节流的方式打包对应的描述文件,读取导入的描述文件的字节流,并将字节流直接通过字符串M1的形式保存;所述设定的规则为:截取字符串M1的前128位以及后64位拼接成新的字符串,或者截取字符串M1的md5码的前16位以及M1字符串的后32位拼接成新的字符串,或者截取字符串M1的前32位以及字符串M1的Base64加密后的128位拼接成新的字符串,三种中的任意一种。
进一步的,所述S3进一步具体为:在app运行过程中,获取到当前应用程序下的embedded.mobileprovision 描述文件;获取到描述文件对应的字节流信息并将其转换为对应的字符串M2,通过描述文件获取到对应描述文件的字节流,并将字节流直接通过字符串的形式保存,截取字符串M2的前128位以及后64位拼接成新的字符串T2并作为原始串进行保存。
本发明还提供了一种防止IPA安装包重签名的系统,所述系统包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下内容:通过字节流的方式打开工程打包时用到的描述文件,并根据获取得到的字节流信息,转换为对应的字符串,根据一设定的规则截取字符串,再通过与工程中实时获取到的字符串做对比,如果对比相同,则认为IPA安装包未被重签名,否则签名已经被篡改。
进一步的,所述处理器执行所述计算机程序时进一步实现以下步骤:步骤S11:获取打包工程时所需使用到的描述文件;
步骤S12:以字节流的方式打包对应的描述文件,获取到字节流的信息,并将节流的信息转换为字符串M1,根据一设定的规则截取其中部分字符串得到字符串T1记录工程中;
步骤S13:在工程代码中,在app运行的过程中,获取到当前应用所使用的描述文件,获取到描述文件对应的字节流信息并将其转换为对应的字符串M2,按照与步骤S12中相同的规则,截取其中部分字符串得到字符串T2;
步骤S14:比较字符串T1与字符串T2是否相同,相同则断定IPA安装包未被重签名,否则即已经被重签名。
进一步的,所述步骤S11进一步具体为:通过工程的 info.plist 文件,查询到当前工程所使用的唯一标示bundleId、描述文件名称信息,通过工程的唯一标示bundleId与描述文件名称信息,在保存描述文件的路径下寻找到对应的描述文件;或者先将工程打包一次,进入到打包后生成的IPA安装包中,直接获取IPA安装包中的描述文件。
进一步的,所述S12进一步具体为:
在工程中,以字节流的方式打包对应的描述文件,读取导入的描述文件的字节流,并将字节流直接通过字符串M1的形式保存;所述设定的规则为:截取字符串M1的前128位以及后64位拼接成新的字符串,或者截取字符串M1的md5码的前16位以及M1字符串的后32位拼接成新的字符串,或者截取字符串M1的前32位以及字符串M1的Base64加密后的128位拼接成新的字符串,三种中的任意一种。
进一步的,所述S13进一步具体为:在app运行过程中,获取到当前应用程序下的embedded.mobileprovision 描述文件;获取到描述文件对应的字节流信息并将其转换为对应的字符串M2,通过描述文件获取到对应描述文件的字节流,并将字节流直接通过字符串的形式保存,截取字符串M2的前128位以及后64位拼接成新的字符串T2并作为原始串进行保存。
本发明的有益效果在于:本发明通过字节流的方式打开打包时用到的描述文件,并根据获取得到的字节流信息,转换为对应的字符串,根据一定的规律截取字符串,在通过与工程中实时获取到的字符串做对比,实现IPA安装包是否重签名的判断。上述方式在每次应用运行的时候,都会对签名做一次校验,可实现有效防止用户对IPA安装包进行重签名,解决了破解方将IPA进行重签名之后,对应用进行篡改,导致用户利益受损的问题。
附图说明
图1为本发明实施例的主要步骤示意图。
图2为本发明实施例的方法的流程图。
图3是本发明系统的结构示意图。
具体实施方式
下面结合附图对本发明做进一步说明。
请参阅图1所示,本发明的一种防止IPA安装包重签名的方法,所述方法为:通过字节流的方式打开工程打包时用到的描述文件,并根据获取得到的字节流信息,转换为对应的字符串,根据一设定的规则截取字符串,再通过与工程中实时获取到的字符串做对比,如果对比相同,则认为IPA安装包未被重签名,否则签名已经被篡改。上述方式在每次应用运行的时候,都会对签名做一次校验,可实现有效防止用户对IPA安装包进行重签名,解决了破解方将IPA进行重签名之后,对应用进行篡改,导致用户利益受损的问题。
请参阅图2所示,所述方法进一步包括如下步骤:步骤S1:获取打包工程时所需使用到的描述文件;
步骤S2:以字节流的方式打包对应的描述文件,获取到字节流的信息,并将节流的信息转换为字符串M1,根据一设定的规则截取其中部分字符串得到字符串T1记录工程中;
步骤S3:在工程代码中,在app运行的过程中,获取到当前应用所使用的描述文件,获取到描述文件对应的字节流信息并将其转换为对应的字符串M2,按照与步骤S2中相同的规则,截取其中部分字符串得到字符串T2;
步骤S4:比较字符串T1与字符串T2是否相同,相同则断定IPA安装包未被重签名,否则即已经被重签名;如果应用已经重签名,可直接关闭app,不允许使用。从上述描述可知,通过上述方法能够准确的判断出签名是否有被篡改,并如果篡改则强制关闭,保护用户的利益。
另外,所述步骤S1进一步具体为:通过工程的 info.plist 文件,查询到当前工程所使用的唯一标示bundleId、描述文件名称信息,通过工程的唯一标示bundleId与描述文件名称信息,在保存描述文件的路径下寻找到对应的描述文件;或者先将工程打包一次,进入到打包后生成的IPA安装包中,直接获取IPA安装包中的描述文件。从上述描述可知,通过上述方法能够快速准确的获取得到对应的描述文件,避免使用了错误了描述文件,达到了重签名检测的基础要求。
所述S2进一步具体为:
在工程中,以字节流的方式打包对应的描述文件,读取导入的描述文件的字节流,并将字节流直接通过字符串M1的形式保存;
所述设定的规则为
1、截取字符串M1的前128位以及后64位拼接成新的字符串;
2、截取字符串M1的md5码的前16位以及M1字符串的后32位拼接成新的字符串;
3、截取字符串M1的前32位以及字符串M1的Base64加密后的128位拼接成新的字符串。取其中的一种生成的字符串T1并作为原始串进行保存。从上述描述可知,通过上述方法,能够获取得到原始描述文件的信息,并且通过一定的规则,减少了需要比较的字符串的长度,增加的比较的效率,同时增加了破解的难度。
所述S3进一步具体为:在app运行过程中,获取到当前应用程序下的embedded.mobileprovision 描述文件;获取到描述文件对应的字节流信息并将其转换为对应的字符串M2,通过描述文件获取到对应描述文件的字节流,并将字节流直接通过字符串的形式保存,截取字符串M2的前128位以及后64位拼接成新的字符串T2并作为原始串进行保存。从上述描述可知,通过上述方法,可以获取到app运行时,当前的描述文件的信息,留待S4所使用。
请参阅图3所示,本发明还提供了一种防止IPA安装包重签名的系统,所述系统包括存储器1、处理器2及存储在存储器1上并可在处理器2上运行的计算机程序,所述处理器执行所述计算机程序时实现以下内容:通过字节流的方式打开工程打包时用到的描述文件,并根据获取得到的字节流信息,转换为对应的字符串,根据一设定的规则截取字符串,再通过与工程中实时获取到的字符串做对比,如果对比相同,则认为IPA安装包未被重签名,否则签名已经被篡改。
所述处理器执行所述计算机程序时进一步实现以下步骤:步骤S11:获取打包工程时所需使用到的描述文件;
步骤S12:以字节流的方式打包对应的描述文件,获取到字节流的信息,并将节流的信息转换为字符串M1,根据一设定的规则截取其中部分字符串得到字符串T1记录工程中;
步骤S13:在工程代码中,在app运行的过程中,获取到当前应用所使用的描述文件,获取到描述文件对应的字节流信息并将其转换为对应的字符串M2,按照与步骤S12中相同的规则,截取其中部分字符串得到字符串T2;
步骤S14:比较字符串T1与字符串T2是否相同,相同则断定IPA安装包未被重签名,否则即已经被重签名;如果应用已经重签名,可直接关闭app,不允许使用。从上述描述可知,通过上述步骤能够准确的判断出签名是否有被篡改,并如果篡改则强制关闭,保护用户的利益。
所述步骤S11进一步具体为:通过工程的 info.plist 文件,查询到当前工程所使用的唯一标示bundleId、描述文件名称信息,通过工程的唯一标示bundleId与描述文件名称信息,在保存描述文件的路径下寻找到对应的描述文件;或者先将工程打包一次,进入到打包后生成的IPA安装包中,直接获取IPA安装包中的描述文件。
所述S12进一步具体为:
在工程中,以字节流的方式打包对应的描述文件,读取导入的描述文件的字节流,并将字节流直接通过字符串M1的形式保存;
所述设定的规则为
1. 截取字符串M1的前128位以及后64位拼接成新的字符串;
2. 截取字符串M1的md5码的前16位以及M1字符串的后32位拼接成新的字符串;
3. 截取字符串M1的前32位以及字符串M1的Base64加密后的128位拼接成新的字符串。取其中的一种生成的字符串T1并作为原始串进行保存。
所述S13进一步具体为:在app运行过程中,获取到当前应用程序下的embedded.mobileprovision 描述文件;获取到描述文件对应的字节流信息并将其转换为对应的字符串M2,通过描述文件获取到对应描述文件的字节流,并将字节流直接通过字符串的形式保存,截取字符串M2的前128位以及后64位拼接成新的字符串T2并作为原始串进行保存。
下面结合具体实施例对本发明做进一步说明,实施例一为:
本发明提供了一种防止IPA安装包重签名的方法,包括以下步骤:
S1:获取打包工程时所需使用到的描述文件;
所述S1具体为:
通过工程的 info.plist 文件,查询到当前工程所使用的bundleId、描述文件名称等信息;
通过工程的bundleId与描述文件名称等信息,在路径 ~/Library/MobileDevice/Provisioning\ Profiles 中,寻找到对应的描述文件。
另外,也可选择先将工程打包一次,进入到打包后生成的IPA安装包中,直接获取安装包中的描述文件(文件名为 embedded.mobileprovision)。
S2:以字节流的方式打包对应的描述文件,获取到字节流的信息,并将直接流信息转换为字符串M1,根据一定的规律截取其中部分字符串T1记录工程中;
所述S2具体为:
在工程中,将描述文件导入到一个额外的工程中;
在工程中,读取导入的描述文件的字节流,并将字节流直接通过字符串的形式保存;
截取字符串的前128位以及后64位拼接成新的字符串并作为原始串进行保存。
S3:在工程代码中,在app运行的过程中,获取到当前应用所使用的描述文件,获取到描述文件对应的字节流信息并将其转换为对应的字符串M2,按照与S2中相同的规律,截取其中部分的字符串T2;
所述S3具体为:
在app运行过程中,获取到当前应用程序下的 embedded.mobileprovision 描述文件;
通过描述文件获取到对应描述文件的字节流,并将字节流直接通过字符串的形式保存。
从上述描述可知,通过上述方法,可以获取到app运行时,当前的描述文件的信息,留待S4所使用。;
S4:比较T1与T2是否相同,相同则可以断定未被重签名,否则即已经被重签名了;
所述S4具体为:
获取到截取S3中字符串的前128位以及后64位拼接成新的字符串并与S中保存的原始串进行对比。
如果对比相同,则可以认为是未被重签名,否则签名已经被篡改。如果应用已经重签名,可直接关闭app,不允许使用。
从上述描述可知,通过上述方法能够准确的判断出签名是否有被篡改,并如果篡改则强制关闭,保护用户的利益。
请参照图3,本发明的实施例二为:
本发明提供了一种防止IPA安装包重签名的终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:
S1:获取打包工程时所需使用到的描述文件;
所述S1具体为:
通过工程的 info.plist 文件,查询到当前工程所使用的bundleId、描述文件名称等信息;
通过工程的bundleId与描述文件名称等信息,在路径 ~/Library/MobileDevice/Provisioning\ Profiles 中,寻找到对应的描述文件。
另外,也可选择先将工程打包一次,进入到打包后生成的IPA安装包中,直接获取安装包中的描述文件(文件名为 embedded.mobileprovision)。
S2:以字节流的方式打包对应的描述文件,获取到字节流的信息,并将直接流信息转换为字符串M1,根据一定的规律截取其中部分字符串T1记录工程中;
所述S2具体为:
在工程中,将描述文件导入到一个额外的工程中;
在工程中,读取导入的描述文件的字节流,并将字节流直接通过字符串的形式保存;
截取字符串的前128位以及后64位拼接成新的字符串并作为原始串进行保存。
S3:在工程代码中,在app运行的过程中,获取到当前应用所使用的描述文件,获取到描述文件对应的字节流信息并将其转换为对应的字符串M2,按照与S2中相同的规律,截取其中部分的字符串T2;
所述S3具体为:
在app运行过程中,获取到当前应用程序下的 embedded.mobileprovision 描述文件;
通过描述文件获取到对应描述文件的字节流,并将字节流直接通过字符串的形式保存。
从上述描述可知,通过上述方法,可以获取到app运行时,当前的描述文件的信息,留待S4所使用。
S4:比较T1与T2是否相同,相同则可以断定未被重签名,否则即已经被重签名了;
所述S4具体为:
获取到截取S3中字符串的前128位以及后64位拼接成新的字符串并与S中保存的原始串进行对比。
如果对比相同,则可以认为是未被重签名,否则签名已经被篡改。如果应用已经重签名,可直接关闭app,不允许使用。
从上述描述可知,通过上述方法能够准确的判断出签名是否有被篡改,并如果篡改则强制关闭,保护用户的利益。
综上所述,本发明提供的一种防止IPA安装包重签名的方法及终端,通过字节流的方式打开打包时用到的描述文件,并根据获取得到的字节流信息,转换为对应的字符串,根据一定的规律截取字符串,在通过与工程中实时获取到的字符串做对比,实现是否重签名的判断。上述方式在每次应用运行的时候,都会对签名做一次校验,可实现有效防止用户对IPA安装包进行重签名,解决了破解方将IPA进行重签名之后,对应用进行篡改,导致用户利益受损的问题。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。

Claims (6)

1.一种防止IPA安装包重签名的方法,其特征在于:所述方法为:通过字节流的方式打开工程打包时用到的描述文件,并根据获取得到的字节流信息,转换为对应的字符串,根据一设定的规则截取字符串,再通过与工程中实时获取到的字符串做对比,如果对比相同,则认为IPA安装包未被重签名,否则签名已经被篡改;
所述方法进一步包括如下步骤:步骤S1:获取打包工程时所需使用到的描述文件;
步骤S2:以字节流的方式打包对应的描述文件,获取到字节流的信息,并将节流的信息转换为字符串M1,根据一设定的规则截取其中部分字符串得到字符串T1记录工程中;
步骤S3:在工程代码中,在app运行的过程中,获取到当前应用所使用的描述文件,获取到描述文件对应的字节流信息并将其转换为对应的字符串M2,按照与步骤S2中相同的规则,截取其中部分字符串得到字符串T2;
步骤S4:比较字符串T1与字符串T2是否相同,相同则断定IPA安装包未被重签名,否则即已经被重签名;
所述步骤S2进一步具体为:
在工程中,以字节流的方式打包对应的描述文件,读取导入的描述文件的字节流,并将字节流直接通过字符串M1的形式保存;所述设定的规则为:截取字符串M1的前128位以及后64位拼接成新的字符串,或者截取字符串M1的md5码的前16位以及M1字符串的后32位拼接成新的字符串,或者截取字符串M1的前32位以及字符串M1的Base64加密后的128位拼接成新的字符串,三种中的任意一种。
2.根据权利要求1所述的一种防止IPA安装包重签名的方法,其特征在于:所述步骤S1进一步具体为:通过工程的 info.plist 文件,查询到当前工程所使用的唯一标示bundleId、描述文件名称信息,通过工程的唯一标示bundleId与描述文件名称信息,在保存描述文件的路径下寻找到对应的描述文件;或者先将工程打包一次,进入到打包后生成的IPA安装包中,直接获取IPA安装包中的描述文件。
3.根据权利要求1所述的一种防止IPA安装包重签名的方法,其特征在于:所述S3进一步具体为:在app运行过程中,获取到当前应用程序下的 embedded.mobileprovision 描述文件;获取到描述文件对应的字节流信息并将其转换为对应的字符串M2,通过描述文件获取到对应描述文件的字节流,并将字节流直接通过字符串的形式保存,截取字符串M2的前128位以及后64位拼接成新的字符串T2并作为原始串进行保存。
4.一种防止IPA安装包重签名的系统,其特征在于:所述系统包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下内容:通过字节流的方式打开工程打包时用到的描述文件,并根据获取得到的字节流信息,转换为对应的字符串,根据一设定的规则截取字符串,再通过与工程中实时获取到的字符串做对比,如果对比相同,则认为IPA安装包未被重签名,否则签名已经被篡改;
所述处理器执行所述计算机程序时进一步实现以下步骤:步骤S11:获取打包工程时所需使用到的描述文件;
步骤S12:以字节流的方式打包对应的描述文件,获取到字节流的信息,并将节流的信息转换为字符串M1,根据一设定的规则截取其中部分字符串得到字符串T1记录工程中;
步骤S13:在工程代码中,在app运行的过程中,获取到当前应用所使用的描述文件,获取到描述文件对应的字节流信息并将其转换为对应的字符串M2,按照与步骤S12中相同的规则,截取其中部分字符串得到字符串T2;
步骤S14:比较字符串T1与字符串T2是否相同,相同则断定IPA安装包未被重签名,否则即已经被重签名;
所述S12进一步具体为:
在工程中,以字节流的方式打包对应的描述文件,读取导入的描述文件的字节流,并将字节流直接通过字符串M1的形式保存;所述设定的规则为:截取字符串M1的前128位以及后64位拼接成新的字符串,或者截取字符串M1的md5码的前16位以及M1字符串的后32位拼接成新的字符串,或者截取字符串M1的前32位以及字符串M1的Base64加密后的128位拼接成新的字符串,三种中的任意一种。
5.根据权利要求4所述的一种防止IPA安装包重签名的系统,其特征在于:所述步骤S11进一步具体为:通过工程的 info.plist 文件,查询到当前工程所使用的唯一标示bundleId、描述文件名称信息,通过工程的唯一标示bundleId与描述文件名称信息,在保存描述文件的路径下寻找到对应的描述文件;或者先将工程打包一次,进入到打包后生成的IPA安装包中,直接获取IPA安装包中的描述文件。
6.根据权利要求4所述的一种防止IPA安装包重签名的系统,其特征在于:所述S13进一步具体为:在app运行过程中,获取到当前应用程序下的 embedded.mobileprovision 描述文件;获取到描述文件对应的字节流信息并将其转换为对应的字符串M2,通过描述文件获取到对应描述文件的字节流,并将字节流直接通过字符串的形式保存,截取字符串M2的前128位以及后64位拼接成新的字符串T2并作为原始串进行保存。
CN202010058904.5A 2020-01-19 2020-01-19 一种防止ipa安装包重签名的方法及其终端 Active CN111274459B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010058904.5A CN111274459B (zh) 2020-01-19 2020-01-19 一种防止ipa安装包重签名的方法及其终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010058904.5A CN111274459B (zh) 2020-01-19 2020-01-19 一种防止ipa安装包重签名的方法及其终端

Publications (2)

Publication Number Publication Date
CN111274459A CN111274459A (zh) 2020-06-12
CN111274459B true CN111274459B (zh) 2022-08-09

Family

ID=71001999

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010058904.5A Active CN111274459B (zh) 2020-01-19 2020-01-19 一种防止ipa安装包重签名的方法及其终端

Country Status (1)

Country Link
CN (1) CN111274459B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116755727B (zh) * 2023-08-21 2023-11-03 湖南博匠信息科技有限公司 一种嵌入式设备固件智能升级方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7454418B1 (en) * 2003-11-07 2008-11-18 Qiang Wang Fast signature scan
CN104298915A (zh) * 2014-10-16 2015-01-21 厦门美图之家科技有限公司 一种防止安装包被篡改的方法
CN109409034A (zh) * 2018-09-17 2019-03-01 东软集团股份有限公司 应用程序的验证方法、平台、终端、系统、介质和设备
CN110096870A (zh) * 2019-04-12 2019-08-06 上海瀚银信息技术有限公司 一种防止应用程序被二次打包的方法及系统
CN110321669A (zh) * 2019-06-04 2019-10-11 平安科技(深圳)有限公司 应用程序重签名的方法、装置、设备及存储介质
CN110348178A (zh) * 2019-06-27 2019-10-18 绿漫科技有限公司 一种对iOS系统应用重签名的方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7454418B1 (en) * 2003-11-07 2008-11-18 Qiang Wang Fast signature scan
CN104298915A (zh) * 2014-10-16 2015-01-21 厦门美图之家科技有限公司 一种防止安装包被篡改的方法
CN109409034A (zh) * 2018-09-17 2019-03-01 东软集团股份有限公司 应用程序的验证方法、平台、终端、系统、介质和设备
CN110096870A (zh) * 2019-04-12 2019-08-06 上海瀚银信息技术有限公司 一种防止应用程序被二次打包的方法及系统
CN110321669A (zh) * 2019-06-04 2019-10-11 平安科技(深圳)有限公司 应用程序重签名的方法、装置、设备及存储介质
CN110348178A (zh) * 2019-06-27 2019-10-18 绿漫科技有限公司 一种对iOS系统应用重签名的方法

Also Published As

Publication number Publication date
CN111274459A (zh) 2020-06-12

Similar Documents

Publication Publication Date Title
US10114946B2 (en) Method and device for detecting malicious code in an intelligent terminal
US7613918B2 (en) System and method for enforcing a security context on a downloadable
KR101503785B1 (ko) 동적 라이브러리를 보호하는 방법 및 장치
CN108683502B (zh) 一种数字签名验证方法、介质及设备
US10372444B2 (en) Android dynamic loading file extraction method, recording medium and system for performing the method
US20150095653A1 (en) Method and apparatus of creating application package, method and apparatus of executing application package, and recording medium storing application package
US9754104B2 (en) Method for securing Java bytecode
CN106529218B (zh) 一种应用校验方法和装置
CN107301343B (zh) 安全数据处理方法、装置及电子设备
CN107870793B (zh) 一种应用程序中加载so文件的方法及装置
CN104866739A (zh) 安卓系统中应用程序加密方法及系统
CN107092816B (zh) 一种Android应用程序加固方法
KR101861341B1 (ko) 애플리케이션 코드의 역난독화 장치 및 이를 이용한 애플리케이션 코드의 역난독화 방법
CN108536451A (zh) 应用程序的埋点注入方法和装置
CN109241707A (zh) 应用程序的混淆方法、装置和服务器
CN111274459B (zh) 一种防止ipa安装包重签名的方法及其终端
JP4664055B2 (ja) プログラム分割装置、プログラム実行装置、プログラム分割方法及びプログラム実行方法
CN111737718A (zh) 一种jar包的加解密方法、装置、终端设备和存储介质
CN111382447B (zh) 安装包的加密方法、存储介质及计算机设备
CN110602051B (zh) 基于共识协议的信息处理方法及相关装置
CN104504324B (zh) 移动应用认证加固方法和系统
CN111159712A (zh) 检测方法、设备及存储介质
CN109165512A (zh) 一种应用程序的意图协议url漏洞检测方法及装置
CN114238940A (zh) 软件安装包的处理方法、装置及可读存储介质
JP2022553498A (ja) イベント・ログの改竄耐性

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
GR01 Patent grant
GR01 Patent grant