1. 程式人生 > >iOS證書及ipa包重簽名探究

iOS證書及ipa包重簽名探究

        iOS證書學習推薦部落格程式碼簽名探析,本文重點在於介紹ios8.1.3系統ipa包重簽名(如企業證書)無法安裝的問題。蘋果在iOS8.1.3系統以後加強了對ipa安裝包簽名的驗證,主要區別在於ipa唯一標識在原有Bundle Identifier的基礎上增加了證書ID,也就說安裝包和手機上已安裝APP的Bundle Identifier即使一致,如果兩者簽名的證書ID不相同,那麼安裝包也無法正常安裝。證書ID是什麼?

圖中方框裡字串就是證書ID,升級後的ipa標識就是證書ID+BundleID,只有兩者完全匹配,安裝包才能覆蓋安裝,否則就會提示安裝失敗。解決辦法就是解除安裝安裝包,重新安裝!

1The entitlements specified inyour applicationsCode 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,不得自定義)

1cp 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

關於iosipa的分析之link map 檔案的分析

iOS專案的迭代的越久,專案的垃圾也就越多,我們通過link map檔案可以直觀的看到那些檔案佔用的包的大小。 這是我分析之後的檔案,可以直觀的看出那些東西佔用了多少的記憶體。 1、首先你要知道link map檔案在哪兒找到。 在xcode中設定編譯選項Write Lin