Android 獲取android密鑰哈希碼(keytool -exportcert -alias openssl sha1 -binary | openssl base64)

由於業務需求需要集成國外的SDK,而國外的sdk需要Android端提供一個簽名哈希值

起初我以爲是跟集成國內的高德地址一樣提供個SHA1的值即可,之前我也寫過一篇博客:Android獲取SHA1值的詳細步驟
一頓操作後發現無法通過。詳細一看原來國外的sdk要求是經過openssl加密並且通過base64編碼後的值。並給出了執行命令

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

其中:

-alias後面跟的是祕鑰的別名
-keystore後面跟的就是祕鑰的文件地址

至於如果生成簽名文件就不多說了,在 Android獲取SHA1值的詳細步驟 這篇博客裏有詳細介紹

但是,當你改好後執行命令後會提示你openssl是未識別的命令,原因是windows下沒有自帶OpenSSL。需要先安裝才能使用。

windows安裝openssl

打開下面這個網址,http://slproweb.com/products/Win32OpenSSL.html

在這裏插入圖片描述

根據你的操作系統選擇合適的版本下載,比如我是win10 64位的操作系統,我就下載下面紅框勾選的即可
在這裏插入圖片描述
下載完成後,正常安裝即可,安裝路徑不用改,如果你修改了,記住安裝路徑即可。
正常安裝成功後的路徑: C:\Program Files\OpenSSL-Win64
在這裏插入圖片描述

安裝成功後配置下環境變量:
1、新建環境變量:
變量名:OPENSSL_CONF
變量值:C:\Program Files\OpenSSL-Win64\bin\openssl.cfg
在這裏插入圖片描述
2、修改添加PATH環境變量:
C:\Program Files\OpenSSL-Win64\bin

在這裏插入圖片描述

環境變量配好之後,我們來驗證下是否可以使用:
打開命令行工具,輸入 openssl dhparam -out ceshi.pem 2048 測試
在這裏插入圖片描述

出現上圖所示表示openssl就可以正常使用了。

然後我們再去執行命令即可得出祕鑰的哈希值了

keytool -exportcert -alias 你的別名 -keystore 你的簽名文件 | openssl sha1 -binary | openssl base64

如下圖所示:
在這裏插入圖片描述

紅框就是我們需要提供的祕鑰哈希碼了


如果你覺得本文對你有幫助,麻煩動動手指頂一下,算是對本文的一個認可,如果文中有什麼錯誤的地方,還望指正,轉載請註明轉自喻志強的博客 ,謝謝!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章