summaryrefslogtreecommitdiffstats
path: root/verifier.h
diff options
context:
space:
mode:
authorTianjie Xu <xunchang@google.com>2018-10-24 08:31:43 +0200
committerTianjie Xu <xunchang@google.com>2018-10-25 01:25:09 +0200
commitb5110de1b3a159dad898b0b0636bc7fb8f582faf (patch)
treec5d9117bdbd15c95b135becd471c3cb41d5983cc /verifier.h
parentMerge "Add a function to construct the GRSurface in test" (diff)
downloadandroid_bootable_recovery-b5110de1b3a159dad898b0b0636bc7fb8f582faf.tar
android_bootable_recovery-b5110de1b3a159dad898b0b0636bc7fb8f582faf.tar.gz
android_bootable_recovery-b5110de1b3a159dad898b0b0636bc7fb8f582faf.tar.bz2
android_bootable_recovery-b5110de1b3a159dad898b0b0636bc7fb8f582faf.tar.lz
android_bootable_recovery-b5110de1b3a159dad898b0b0636bc7fb8f582faf.tar.xz
android_bootable_recovery-b5110de1b3a159dad898b0b0636bc7fb8f582faf.tar.zst
android_bootable_recovery-b5110de1b3a159dad898b0b0636bc7fb8f582faf.zip
Diffstat (limited to 'verifier.h')
-rw-r--r--verifier.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/verifier.h b/verifier.h
index b7924c71f..944823293 100644
--- a/verifier.h
+++ b/verifier.h
@@ -72,6 +72,12 @@ int verify_file(const unsigned char* addr, size_t length, const std::vector<Cert
bool load_keys(const char* filename, std::vector<Certificate>& certs);
+// Checks that the RSA key has a modulus of 2048 bits long, and public exponent is 3 or 65537.
+bool CheckRSAKey(const std::unique_ptr<RSA, RSADeleter>& rsa);
+
+// Checks that the field size of the curve for the EC key is 256 bits.
+bool CheckECKey(const std::unique_ptr<EC_KEY, ECKEYDeleter>& ec_key);
+
// Parses a PEM-encoded x509 certificate from the given buffer and saves it into |cert|. Returns
// false if there is a parsing failure or the signature's encryption algorithm is not supported.
bool LoadCertificateFromBuffer(const std::vector<uint8_t>& pem_content, Certificate* cert);