fix old version openssl issue for ecc key

This commit is contained in:
neilpang 2016-11-04 22:45:50 +08:00
parent 29b7510957
commit d22b7938da

20
acme.sh
View File

@ -891,6 +891,26 @@ _calcjwk() {
crv="$(openssl ec -in $keyfile -noout -text 2>/dev/null | grep "^NIST CURVE:" | cut -d ":" -f 2 | tr -d " \r\n")"
_debug3 crv "$crv"
if [ -z "$crv" ] ; then
_debug "Let's try ASN1 OID"
crv_oid="$(openssl ec -in $keyfile -noout -text 2>/dev/null | grep "^ASN1 OID:" | cut -d ":" -f 2 | tr -d " \r\n")"
case "${crv_oid}" in
"prime256v1")
crv="P-256"
;;
"secp384r1")
crv="P-384"
;;
"secp521r1")
crv="P-521"
;;
*)
_err "ECC oid : $crv_oid"
return 1
;;
_debug3 crv "$crv"
fi
pubi="$(openssl ec -in $keyfile -noout -text 2>/dev/null | grep -n pub: | cut -d : -f 1)"
pubi=$(_math $pubi + 1)
_debug3 pubi "$pubi"