2011-03-15 136 views
3

我爲我的一個項目使用signapk版本。我使用公鑰,私鑰對(.pk8 &.pem)簽名我的apk。如何從公鑰私鑰對檢索Facebook的簽名哈希?

我的應用程序使用facebook單點登錄機制,我需要用Facebook註冊的簽名證書的散列,以確保正確的應用程序正在啓動單點登錄過程。 的Facebook給出了下面的示例代碼生成此哈希:

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore 
| openssl sha1 -binary 
| openssl base64 

我對如何從我的公鑰,我使用的簽名私鑰對相應的哈希有點困惑。

+0

你有沒有下載Open SSl? – Venky

+0

我正在使用mac os openssl已經安裝,並且我沒有在上面的代碼中看到錯誤。我根本沒有密鑰庫文件。 – Janusz

回答

-1

下載Open SSl並安裝在你的電腦。檢查這個我問這個問題已經有一些答案爲Question ..

+0

我的機器上有openssl。而你的問題是關於從密鑰庫獲取散列。我沒有簽名密鑰庫。 – Janusz

+0

http://www.londatiga.net/it/how-to-sign-apk-zip-files/ ..請檢查這個鏈接.. – Venky

4

此方法適用於您的APK與PK8 + PEM密鑰對簽名。或與任何其他(正常)簽署APK

  1. 證書可以從* .apk文件被稱爲

    1. 解壓apk文件,並提取META-INF \文件CERT.RSA
    2. 執行:

      keytool -printcert -file CERT.RSA 
      

      檢查SHA1字節

  2. 在SHA1指紋簽名字節需要寫sha1.bin(你可以使用一個十六進制編輯)

  3. 只是執行:

    openssl base64 -in sha1.bin -out base64.txt 
    

所以,base64.txt包含APK的FB KeyHash