Skip to content

Commit

Permalink
Add SHA-1 signature to App Details screen
Browse files Browse the repository at this point in the history
  • Loading branch information
balazsgerlei authored and MartinStyk committed Jun 1, 2024
1 parent b680bbb commit 6d6b4d8
Show file tree
Hide file tree
Showing 7 changed files with 19 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,11 @@ class AppCertificateDetailsFragmentViewModel @AssistedInject constructor(
TextInfo.from(data.certificateHashMd5),
TextInfo.from(R.string.cert_md5_description),
),
DetailInfoAdapter.DetailInfo(
TextInfo.from(R.string.cert_sha1),
TextInfo.from(data.certificateHashSha1),
TextInfo.from(R.string.cert_sha1_description),
),
DetailInfoAdapter.DetailInfo(
TextInfo.from(R.string.cert_sha256),
TextInfo.from(data.certificateHashSha256),
Expand Down
2 changes: 2 additions & 0 deletions app/src/main/res/values-ja/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,7 @@
<string name="start_date">開始 : </string>
<string name="end_date">有効期限 : </string>
<string name="cert_md5">MD5証明書</string>
<string name="cert_sha1">SHA-1証明書</string>
<string name="cert_sha256">SHA-256証明書</string>
<string name="issuer_name">発行者名</string>
<string name="issuer_organization">発行組織</string>
Expand All @@ -138,6 +139,7 @@
<string name="start_date_description">証明書の有効期間の開始</string>
<string name="end_date_description">証明書の有効期間の終了</string>
<string name="cert_md5_description">証明書のMD5ハッシュ</string>
<string name="cert_sha1_description">証明書のSHA-1ハッシュ</string>
<string name="cert_sha256_description">証明書のSHA-256ハッシュ</string>
<string name="issuer_name_description">証明書の発行者の名前</string>
<string name="issuer_organization_description">証明書の組織の名前</string>
Expand Down
2 changes: 2 additions & 0 deletions app/src/main/res/values-zh-rTW/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,7 @@
<string name="start_date">有效日期</string>
<string name="end_date">截止日期</string>
<string name="cert_md5">MD5 憑證</string>
<string name="cert_sha1">SHA-1 憑證</string>
<string name="cert_sha256">SHA-256 憑證</string>
<string name="issuer_name">發行者名稱</string>
<string name="issuer_organization">發行機構</string>
Expand All @@ -203,6 +204,7 @@
<string name="start_date_description">憑證生效起始日期。</string>
<string name="end_date_description">憑證效力截止日期。</string>
<string name="cert_md5_description">憑證的 MD5 雜湊值。</string>
<string name="cert_sha1_description">憑證的 SHA-1 雜湊值。</string>
<string name="cert_sha256_description">憑證的 SHA-256 雜湊值。</string>
<string name="issuer_name_description">憑證發行者名稱。</string>
<string name="issuer_organization_description">憑證發行機構名稱。</string>
Expand Down
2 changes: 2 additions & 0 deletions app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,7 @@
<string name="start_date">Valid from</string>
<string name="end_date">Valid to</string>
<string name="cert_md5">Certificate MD5</string>
<string name="cert_sha1">Certificate SHA-1</string>
<string name="cert_sha256">Certificate SHA-256</string>
<string name="issuer_name">Issuer name</string>
<string name="issuer_organization">Issuer organization</string>
Expand All @@ -166,6 +167,7 @@
<string name="start_date_description">Start of validity period of the certificate.</string>
<string name="end_date_description">End of validity period of the certificate.</string>
<string name="cert_md5_description">MD5 hash of the certificate.</string>
<string name="cert_sha1_description">SHA-1 hash of the certificate.</string>
<string name="cert_sha256_description">SHA-256 hash of the certificate.</string>
<string name="issuer_name_description">Name of issuer of the certificate</string>
<string name="issuer_organization_description">Name of organization of issuer of the certificate</string>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,10 @@ class CertificateManager @Inject internal constructor(private val digestManager:
CertificateData(
signAlgorithm = certificate.sigAlgName,
certificateHashMd5 = digestManager.md5Digest(certificate.encoded),
certificateHashSha1 = digestManager.sha1Digest(certificate.encoded),
certificateHashSha256 = digestManager.sha256Digest(certificate.encoded),
publicKeyMd5 = digestManager.md5Digest(digestManager.byteToHexString(certificate.publicKey.encoded)),
publicKeySha1 = digestManager.sha1Digest(digestManager.byteToHexString(certificate.publicKey.encoded)),
publicKeySha256 = digestManager.sha256Digest(digestManager.byteToHexString(certificate.publicKey.encoded)),
startDate = certificate.notBefore,
endDate = certificate.notAfter,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,10 @@ import java.util.Date
data class CertificateData(
val signAlgorithm: String,
val certificateHashMd5: String,
val certificateHashSha1: String,
val certificateHashSha256: String,
val publicKeyMd5: String,
val publicKeySha1: String,
val publicKeySha256: String,
val startDate: Date,
val endDate: Date,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,10 @@ class DigestManager @Inject constructor() {

fun md5Digest(input: String): String = md5Digest(input.toByteArray())

fun sha1Digest(input: ByteArray): String = computeHash(algorithm = "SHA-1", input)

fun sha1Digest(input: String): String = sha1Digest(input.toByteArray())

fun sha256Digest(input: ByteArray): String = computeHash(algorithm = "SHA-256", input)

fun sha256Digest(input: String): String = sha256Digest(input.toByteArray())
Expand Down

0 comments on commit 6d6b4d8

Please sign in to comment.