iOS證書及ipa包重簽名探究
iOS證書學習推薦部落格程式碼簽名探析,本文重點在於介紹ios8.1.3系統ipa包重簽名(如企業證書)無法安裝的問題。蘋果在iOS8.1.3系統以後加強了對ipa安裝包簽名的驗證,主要區別在於ipa唯一標識在原有Bundle Identifier的基礎上增加了證書ID,也就說安裝包和手機上已安裝APP的Bundle Identifier即使一致,如果兩者簽名的證書ID不相同,那麼安裝包也無法正常安裝。證書ID是什麼?
圖中方框裡字串就是證書ID,升級後的ipa標識就是證書ID+BundleID,只有兩者完全匹配,安裝包才能覆蓋安裝,否則就會提示安裝失敗。解決辦法就是解除安裝安裝包,重新安裝!
1 | The entitlements specified inyour application’sCode Signing Entitlements file donotmatch those specified inyour provisioning profile |
目前,重簽名主要用於企業證書重簽名個人證書釋出的ipa包,包括各種助手及企業內測包的釋出等。在重簽名前,讓我們先看看一個完整的ipa包有哪些與證書相關的東西!開啟ipa包,會發現_CodeSignature和embedded.mobileprovision兩個檔案
- _CodeSignature,ipa包簽名檔案
- embedded.mobileprovision,證書配置檔案
因此,替換上面兩個檔案就解決了ipa重簽名的主要問題。此外,程式碼簽名探析文中還提到entitlements.plist授權檔案,重簽名時也需要處理。按照下圖內容建立plist檔案,輸入相關資訊。(如果是用萬用字元的。設定成你budnle id ,要不會報錯的)
整個簽名過程如下(檔案路徑自定義)
1、解壓ipa安裝包
1 | cpolinone.ipaolinone.zip |
2、替換證書配置檔案(檔名必須為embedded,不得自定義)
1 | cp embedded.mobileprovision Payload/olinone.app |
3、重簽名(certifierName為重簽名證書檔名,可以加證書ID字尾)
1 2 | certifierName="iPhone Distribution: olinone Information Technology Limited(6a5TVN58SY)" codesign -f -s $certifierName--entitlements entitlements.plist Payload/olinone.app |
4、打包
1 | zip -r olinone.ipa Payload |
很多朋友在重簽名時會忽略第二步或者沒有指定entitlements.plist,都會造成ipa包安裝失敗。
相關推薦
iOS證書及ipa包重簽名探究
iOS證書學習推薦部落格程式碼簽名探析,本文重點在於介紹ios8.1.3系統ipa包重簽名(如企業證書)無法安裝的問題。蘋果在iOS8.1.3系統以後加強了對ipa安裝包簽名的驗證,主要區別在於ipa唯一標識在原有Bundle Identifier的基
IOS 打包、安裝、重簽名 .app & .ipa
打包與簽名方法 Xcode 工具可以直接打包,不累贅; xcrun 命令打包: 1,清理: /usr/bin/xcodebuild -target targetName clean 2,編譯: /usr/bin/xcodebuild -target
iOS導出ipa包時四個選項的意義
show sting meta p s con 蘋果 添加 簡書 針對 1. Save for iOS App Store Deployment 保存到本地 準備上傳App Store 或者在越獄的iOS設備上使用 2. Save for Ad Hoc
https域名下託管iOS企業版.ipa包
為啥要寫? 最近蘋果對app稽核愈發嚴格,漫長的等待期、未知的結果、客戶的吐槽、領導的催促,每次上線都在暗暗的祈禱,燒香拜佛。尤其是對很多亂七八糟的奇葩被拒原因真的讓人慾哭無淚。 所以,當昨天有個旅遊部的同事跑過去問我上線問題時,我告訴他,有繞過App Store的稽核,直接讓使
iOS企業版IPA包分發說明
1.選擇https伺服器(需要有服務商頒佈的https證書) 1.1通常使用startssl申請(免費) StartSSL是StartCom公司旗下的SSL證書,貌似是現在唯一一家提供免費SSL證書服務並且被主流瀏覽器支援的免費SSL,包括Chrome、Firefox、
{iOS} 出iOS越獄渠道ipa包的方法
方法1:使用Itunes匯出ipa step0. 選中要出包的target的scheme step1. edit scheme, 設定run的build config為release step2. Build for run step3. 在products裡面找到剛bul
iOS 企業級 IPA 重簽名
-s 企業證書 工具 sig 圖片 inf image git 重新安裝 最近公司客戶要求, 他們希望自己打包 IPA, 他們不提供p12和描述文件給我們, 於是我們只能用自己的證書打包好後, 做相應的處理, 然後在將 IPA 包給客戶, 讓他們用自己的證書重簽名,下面是企
iOS ipa包進行重新簽名
home all url info http 技術分享 resign 重新 image 1.安裝brew /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/ma
iOS非越獄逆向——ipa重簽名
在iOS逆向開發時需要把下載的ipa檔案安裝到iOS裝置上,才能進行動態分析,才能更好的玩別人的App。但是有經驗的同學是知道的,下載的ipa(AppStore 和自己釋出的除外) 檔案是不能直接安裝到自己的iPhone (未越獄)上的。為什麼?因為蘋果爸爸作了
iOS逆向必備絕技之ipa重簽名
2018開篇,這回要講的是iOS重簽名,網上重簽名的工具太多了,我試用了一下,都還挺好使。但是,你不知道,我是個喜歡裝逼的人嗎?用工具怎麼夠酷呢?對,裝逼得用終端。接下來的操作都是在終端中進行,開始你的裝逼之旅吧! 一、重簽名準備工作: 找到開發者
iOS ipa重簽名 、resign
iOS ipa重簽名 (個人版、企業版APP均可) 下面是個人之前使用過的方式,介紹比較詳細 注意: 在開始重籤之前你先要有一個企業證書或者個人開發者證書(個人或者公司均可)(蘋果開發證書) 重簽名:可以讓用個人開發者賬號打出來的包,不用上架A
【讀書筆記】iOS-查看一個軟件ipa包的內容
技術 -s alt dsm clas rda 軟件 選中 tun 一,打開itunes----->我的iPhone應用程序。 二,右鍵點擊app---->在Finder中顯示---->出現下圖所看到的界面。
ipa重簽名
using dem vision tin PE 文檔 ted paths 刪除 為什麽要研究重簽名問題?將程序打包成ipa包後,ipa包中會包含Provisioni
yum第三方安裝-軟件包沒簽名及更新錯誤
ini conf yum安裝 命令 簽名 安裝 dep 正常 升級 yum安裝時 後面加 --nogpgcheck yum update 錯誤提示 Error: initscripts conflicts with centos-release-7-4.1708.el7
IdentityServer4之JWT簽名(RSA加密證書)及驗籤
一、前言 在IdentityServer4中有兩種令牌,一個是JWT和Reference Token,在IDS4中預設用的是JWT,那麼這兩者有什麼區別呢? 二、JWT與Reference Token的區別 1、JWT(不可撤回)
iOS 開發ipa包瘦身 -- 可執行檔案大小
專案寫完以後打出來的包太大 分析一下 首先開啟Products下有個.app 檔案 右鍵show in finder後 再次右鍵 顯示包內容 專案打包後的檔案就會一一羅列在這裡。 這裡重點看一下 這裡有個黑色的可執行檔案,在我專案裡一開始竟然達到了50M+ 那麼這個檔
逆向-002-iOS重簽名
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px "Yuanti SC" } 在Windows環境下會有,靜默安裝。通過iOS應用重簽名(安裝app到手機上),蘋果簽名機制,防止未授權的應用進行安裝 ①獲取應用ipa ②Codesign重簽名 ③
iOS開發技巧之:如何用Xcode匯出ipa包
轉載自: https://blog.csdn.net/vkooy/article/details/65442567 我們在實際的開發中,會經常需要匯出ipa安裝包。無論我們用的是個人賬號,還是企業級賬號,都會有這個需要。接下來,我會用圖文並茂的方式,教大家如何匯出ipa包。
ipa重簽名的四種方式
一 開發者除錯安裝app到手機的簽名過程 1. Mac電腦生成公鑰M和私鑰M 2. 公鑰M傳給蘋果伺服器,蘋果伺服器的私鑰A對公鑰M進行加密生成證書返回給xcode 3. Xcode下載profile等描述檔案,用公鑰M對app進行加密生成app簽名,然後把app
關於ios的ipa包的分析之link map 檔案的分析
iOS專案的迭代的越久,專案的垃圾也就越多,我們通過link map檔案可以直觀的看到那些檔案佔用的包的大小。 這是我分析之後的檔案,可以直觀的看出那些東西佔用了多少的記憶體。 1、首先你要知道link map檔案在哪兒找到。 在xcode中設定編譯選項Write Lin