18

我是密碼學證書的新手,我試圖找出Android應用程序的「./META-INF」文件夾下「CERT.RSA」文件的組件。Android應用程序的「./META-INF/CERT.RSA」文件中包含什麼?

據我瞭解,「CERT.RSA」用於驗證同一目錄下「CERT.SF」文件的簽名。它應該包括證書元信息(主題,頒發者,系列號等),由開發者私鑰簽名的「CERT.SF」簽名以及用於驗證簽名的公鑰。

如何從「CERT.RSA」文件中導出上述組件?特別是,如何從「CERT.RSA」中檢索公鑰?

我試圖使用以下命令來顯示簽名證書。當人們談論簽名證書時,它是(以下輸出)公鑰還是簽名簽名?

>> openssl pkcs7 -inform DER -print_certs -out cert.pem -in CERT.RSA 
>> cat cert.pem 

subject=/C=SE/ST=Kista/L=Kista/O=Javsym/OU=Mobile Visuals/CN=Eyvind Almqvist 
issuer=/C=SE/ST=Kista/L=Kista/O=Javsym/OU=Mobile Visuals/CN=Eyvind Almqvist 
-----BEGIN CERTIFICATE----- 
MIICWzCCAcSgAwIBAgIETVPFgjANBgkqhkiG9w0BAQUFADBxMQswCQYDVQQGEwJT 
RTEOMAwGA1UECBMFS2lzdGExDjAMBgNVBAcTBUtpc3RhMQ8wDQYDVQQKEwZKYXZz 
eW0xFzAVBgNVBAsTDk1vYmlsZSBWaXN1YWxzMRgwFgYDVQQDEw9FeXZpbmQgQWxt 
cXZpc3QwIBcNMTEwMjEwMTEwMTIyWhgPMjA2MTAxMjgxMTAxMjJaMHExCzAJBgNV 
BAYTAlNFMQ4wDAYDVQQIEwVLaXN0YTEOMAwGA1UEBxMFS2lzdGExDzANBgNVBAoT 
BkphdnN5bTEXMBUGA1UECxMOTW9iaWxlIFZpc3VhbHMxGDAWBgNVBAMTD0V5dmlu 
ZCBBbG1xdmlzdDCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAjwLlwflQ2zoC 
1EeCkICSqYTSkdv6Xj0YCqoQsuLJw0pwDbz5qRos61Ub0ZxWCa4TfXu1NJmuD4j+ 
LwQYvAR6JO985y4zjH1Ee5qZmHDC5yoSRko6P8B4KfmBm8E8CryhUjN7vNLUfG2o 
XrmXK+g5KKTx3wzWlb4+AdAS7/NlDVkCAwEAATANBgkqhkiG9w0BAQUFAAOBgQAS 
CxdfvR/LHPlULkCsoGw9/Q2ZhsTlPr7fZw32sef9vnz1hqd6iMDsLC2c34yRVJfb 
t6dZCVO9/gWMURIZ7NmT36uBFAUB+XkGK+5/ot3YEJicEwmk/Nvj1Tzo3PjBX3ZD 
lLBpEPgc3IUOhgMyzDR+ytgFlH0MkDps6FApunUpiQ== 
-----END CERTIFICATE----- 

通過使用下面的命令,我能得到這個證書的元信息:

>> keytool -printcert -file CERT.RSA 

Owner: CN=Eyvind Almqvist, OU=Mobile Visuals, O=Javsym, L=Kista, ST=Kista, C=SE 
Issuer: CN=Eyvind Almqvist, OU=Mobile Visuals, O=Javsym, L=Kista, ST=Kista, C=SE 
Serial number: 4d53c582 
Valid from: Thu Feb 10 06:01:22 EST 2011 until: Fri Jan 28 06:01:22 EST 2061 
Certificate fingerprints: 
    MD5: 58:94:63:63:C1:ED:4C:02:CE:90:CE:64:DA:D7:4A:E4 
    SHA1: 17:5C:44:E3:A6:1A:F2:4F:A5:78:6E:C7:F0:42:4C:AD:E6:F5:CA:DF 
    Signature algorithm name: SHA1withRSA Version: 3 

是否有其他工具/命令我可以用它來獲得更全面的信息來自「CERT.RSA」?

非常感謝您的任何意見!

+0

可能的[從apk獲取證書詳細信息]的副本(http://stackoverflow.com/questions/11361452/getting-certificate-details-from-an-apk) –

回答

7

一旦你有cert.pem文件可以使用下面的命令將公鑰:

openssl x509 -in cert.pem -noout -text

問候,

朱塞佩

10

如果你只是想獲得部分公鑰出CERT.RSA文件,你可以試試以下方法:

  1. 轉換CERT.RSA到標準PEM文件:

openssl pkcs7 -in CERT.RSA -inform DER -print_certs -out cert.pem

  • 得到從PEM文件公鑰:
  • openssl x509 -in cert.pem -pubkey -noout

    相關問題