summaryrefslogtreecommitdiffstats
path: root/src/etc
diff options
context:
space:
mode:
authorstilez <stilez@users.noreply.github.com>2016-06-06 06:52:13 +0100
committerstilez <stilez@users.noreply.github.com>2016-06-06 06:52:13 +0100
commit4945841d6c574102a8aff465c11c3558d71c0e49 (patch)
tree62f52a020106105ae4038154686cbb52774f870e /src/etc
parenta0e2eb01edaafa4ef2e578e07a218bfc0473aff8 (diff)
downloadpfsense-4945841d6c574102a8aff465c11c3558d71c0e49.zip
pfsense-4945841d6c574102a8aff465c11c3558d71c0e49.tar.gz
Get modulus keysize
Useful utility function when it's necessary to verify that existing keys meets current practices
Diffstat (limited to 'src/etc')
-rw-r--r--src/etc/inc/certs.inc8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/etc/inc/certs.inc b/src/etc/inc/certs.inc
index d49f478..a07c682 100644
--- a/src/etc/inc/certs.inc
+++ b/src/etc/inc/certs.inc
@@ -582,6 +582,14 @@ function cert_get_modulus($str_crt, $decode = true, $type = "crt") {
}
return $modulus;
}
+
+/* Same but returns modulus keysize not modulus itself */
+function cert_get_modulus_keysize($str_crt, $decode = true, $type = "crt") {
+ // modulus usually returned as "modulus=.....". Remove anything before an "=" and return 4 x (hex string length)
+ $raw_modulus = explode('=', cert_get_modulus($str_crt, $decode, $type));
+ return strlen(array_pop($raw_modulus))*4;
+}
+
function csr_get_modulus($str_crt, $decode = true) {
return cert_get_modulus($str_crt, $decode, "csr");
}
OpenPOWER on IntegriCloud