FAQ

技術規範 (1)

該技術規範完全遵循國際國內相關公開標準. 同時, 為了保障本次試點的順利, 我們未對涉及到本次試點技術規範的任何內容申請專利。

Please log in to rate this.
0 people found this helpful.


SDK (4)

  1. APK包中的.RSA或.DSA文件是遵循ASN.1編碼的文件結構,副署簽名作為屬性保存在其中的一個集合裏麵,這個集合是無序的,也就是說進入到這個集合的先後順序與最終呈現在這個集合的順序無關。
  2. TTSDK中 TTCounterSignatureInfo 類實現了排序接口,Trust Tracker 中顯示副署簽名的順序,是在獲取到副署簽名集合後做了排序,因此顯示順序會有不同。
  3. 獲得副署簽名集合並做排序的實現代碼如下:
//獲得TTCounterSignatureVerifier 對象
TTCounterSignatureVerifier ttcsVerifier =...;
List<TTCounterSignatureInfo> ttcsInfoList = ttcsVerifier.getCounterSignatureInfos();
//排序
Collections.sort(ttcsInfoList); 
//ttcsInfoList 按照副署簽名時間排序完成

Please log in to rate this.
0 people found this helpful.


通過安裝APK來判斷Android原生簽名的正確性這一做法既繁瑣又不友好,從TTSDK V1.0.8開始,增加了直接驗證APK原生簽名的接口。
示例代碼如下:

//首先獲得未安裝APK的全路徑
String apkPath ="../../XXX.apk";

//然後調用TTAPKSignatureVerifier的靜態函數驗證即可
boolean result = TTAPKSignatureVerifier. verifySignature (apkPath);

Please log in to rate this.
0 people found this helpful.


在TTSDK V1.0.8中,對於未安裝的APK,使用以下代碼可以直接判斷其是否含有副署簽名

//判斷 一個Apk 是否包含副署簽名,但並不驗證簽名的正確性
String apkPath= "../../xxx.apk";//獲得APK的全路徑

booean result = TTCounterSignatureTracker.hasCounterSignature(apkPath);

Please log in to rate this.
0 people found this helpful.


TTSDK目前有兩個版本:TTSDK-Android和TTSDK-PC。兩者的API接口基本一致,但設計目的不同。一個用於在Android終端驗證移動應用副署簽名,一個用於在PC端(J2EE)環境下驗證應用應用副署簽名,因此兩者不能通用,請根據實際使用的環境來選擇TTSDK的版本。

Please log in to rate this.
0 people found this helpful.


APKSign (1)

證書選擇框列表為空,說明目前沒有可用來簽名的數字證書.

apksign.exe (Windows)使用了Windows操作係統自身的證書庫. Windows操作係統當前的證書庫可以從以下的步驟看到:
打開IE -> IE右上角的配置圖標 -> 選擇菜單中的[Internet 選項] -> 選擇對話框中的[內容]頁 -> 點擊內容頁裏麵的[證書]按鈕
wincertstore
如果經過上麵的步驟, 在最後出現的證書對話框裏麵, [個人]頁裏麵是空白的, 就說明當前Windows證書庫裏麵沒有可以用來簽名的證書.

對於此種情況,如果僅僅是出於測試目的, 可以選擇生成一張自簽名證書(pfx格式), 並導入到Windows證書庫中. 如果是用於正式產品發布, 則需要首先到第3方可信CA機構申請一張“代碼簽名證書”,在成功安裝第3方可信CA機構提供的驅動或者客戶端軟件後,代碼簽名證書將自動導入,至此再使用apksign簽名時,就可以在證書選擇框中看到可用的數字證書。

Please log in to rate this.
1 person found this helpful.


用戶指南 (2)

對於安卓應用開發者, 請參考下麵的流程:

  1. 去可信CA機構申請您的開發者證書
  2. 下載apksign工具包
  3. 使用標準的安卓應用發布流程生成apk包並完成原始簽名 (Android SDK, keytool等)
  4. 用apksign + 您的開發者證書對原始apk包做副署簽名. 例如: apksign.exe -i xx.apk -o xx.signed.apk
  5. 發布xx.signed.apk (apk的名稱無所謂, 您也可以把xx.signed.apk改名成xx.apk後發布)
  6. 特別提醒: 如果需要在百度應用商店上架, 請參閱百度應用商店安卓副署應用上架指南, 其它應用商店目前無此特別要求.

Please log in to rate this.
1 person found this helpful.


對於安卓應用商店, 請參考下麵的流程:

  1. 下載最新版本TTSDK-AndroidTTSDK-PC《Android應用程序開發者第三方數字證書簽名、驗證和標識規範(試行版)》
  2. 根據規範修改應用商店上架及展示部分:
    • 應用上架時,應驗證開發者提交移動應用程序的簽名信息。
    • 若移動應用程序是經數字簽名認證的,應用商店須向用戶提示該移動應用程序經數字簽名認證,向用戶顯示移動應用程序簽名信息,並根據規範將數字簽名認證標識放在應用商店網站及移動客戶端的指定位置。
    • TTSDK-PC提供了完成上述要求的相關接口.
  3. 根據規範修改應用商店客戶端:
    • 用戶在安裝移動應用程序時,應用商店客戶端應驗證移動應用程序的簽名信息。
    • 若移動應用程序經數字簽名認證,且在安裝過程中簽名驗證成功並可正常安裝的情況下,移動終端須向用戶提示該移動應用程序經數字簽名認證,並向用戶顯示移動應用程序簽名的詳細信息。
    • TTSDK-Android提供了完成上述要求的相關接口.
  4. 為鼓勵開發者使用數字證書,應用商店可以在首頁開設“簽名認證應用”專欄專區,集中放置和優先推薦采用第三方數字簽名認證後的應用程序。

Please log in to rate this.
0 people found this helpful.