|
|
@ -43,6 +43,21 @@ _err() { |
|
|
|
fi |
|
|
|
} |
|
|
|
|
|
|
|
_h2b() { |
|
|
|
hex=$(cat) |
|
|
|
i=1 |
|
|
|
j=2 |
|
|
|
while [ '1' ] ; do |
|
|
|
h=$(printf $hex | cut -c $i-$j) |
|
|
|
if [ -z "$h" ] ; then |
|
|
|
break; |
|
|
|
fi |
|
|
|
printf "\x$h" |
|
|
|
let "i+=2" |
|
|
|
let "j+=2" |
|
|
|
done |
|
|
|
} |
|
|
|
|
|
|
|
#domain [2048] |
|
|
|
createAccountKey() { |
|
|
|
if [ -z "$1" ] ; then |
|
|
@ -500,11 +515,11 @@ issue() { |
|
|
|
fi |
|
|
|
_debug pub_exp "$pub_exp" |
|
|
|
|
|
|
|
e=$(echo $pub_exp | xxd -r -p | base64) |
|
|
|
e=$(echo $pub_exp | _h2b | base64) |
|
|
|
_debug e "$e" |
|
|
|
|
|
|
|
modulus=$(openssl rsa -in $ACCOUNT_KEY_PATH -modulus -noout | cut -d '=' -f 2 ) |
|
|
|
n=$(echo $modulus| xxd -r -p | base64 -w 0 | _b64 ) |
|
|
|
n=$(echo $modulus| _h2b | base64 -w 0 | _b64 ) |
|
|
|
|
|
|
|
jwk='{"e": "'$e'", "kty": "RSA", "n": "'$n'"}' |
|
|
|
|
|
|
@ -513,7 +528,7 @@ issue() { |
|
|
|
_debug HEADER "$HEADER" |
|
|
|
|
|
|
|
accountkey_json=$(echo -n "$jwk" | sed "s/ //g") |
|
|
|
thumbprint=$(echo -n "$accountkey_json" | sha256sum | xxd -r -p | base64 -w 0 | _b64) |
|
|
|
thumbprint=$(echo -n "$accountkey_json" | sha256sum | _h2b | base64 -w 0 | _b64) |
|
|
|
|
|
|
|
|
|
|
|
_info "Registering account" |
|
|
@ -586,7 +601,7 @@ issue() { |
|
|
|
dnsadded='0' |
|
|
|
txtdomain="_acme-challenge.$d" |
|
|
|
_debug txtdomain "$txtdomain" |
|
|
|
txt="$(echo -e -n $keyauthorization | sha256sum | xxd -r -p | base64 -w 0 | _b64)" |
|
|
|
txt="$(echo -e -n $keyauthorization | sha256sum | _h2b | base64 -w 0 | _b64)" |
|
|
|
_debug txt "$txt" |
|
|
|
#dns |
|
|
|
#1. check use api |
|
|
@ -941,12 +956,6 @@ install() { |
|
|
|
return 1 |
|
|
|
fi |
|
|
|
|
|
|
|
if ! command -v "xxd" > /dev/null ; then |
|
|
|
_err "Please install xxd first." |
|
|
|
_err "CentOs: yum install vim-common" |
|
|
|
return 1 |
|
|
|
fi |
|
|
|
|
|
|
|
_info "Installing to $WORKING_DIR" |
|
|
|
|
|
|
|
#try install to /bin if is root |
|
|
|