h2b: my own hex to bin. remove dependency to xxd tool

pull/38/head
neil 9 years ago
parent de8090f57e
commit a179e5fc97

29
le.sh

@ -43,6 +43,21 @@ _err() {
fi 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] #domain [2048]
createAccountKey() { createAccountKey() {
if [ -z "$1" ] ; then if [ -z "$1" ] ; then
@ -506,11 +521,11 @@ issue() {
fi fi
_debug pub_exp "$pub_exp" _debug pub_exp "$pub_exp"
e=$(echo $pub_exp | xxd -r -p | base64) e=$(echo $pub_exp | _h2b | base64)
_debug e "$e" _debug e "$e"
modulus=$(openssl rsa -in $ACCOUNT_KEY_PATH -modulus -noout | cut -d '=' -f 2 ) 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'"}' jwk='{"e": "'$e'", "kty": "RSA", "n": "'$n'"}'
@ -519,7 +534,7 @@ issue() {
_debug HEADER "$HEADER" _debug HEADER "$HEADER"
accountkey_json=$(echo -n "$jwk" | sed "s/ //g") 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" _info "Registering account"
@ -592,7 +607,7 @@ issue() {
dnsadded='0' dnsadded='0'
txtdomain="_acme-challenge.$d" txtdomain="_acme-challenge.$d"
_debug txtdomain "$txtdomain" _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" _debug txt "$txt"
#dns #dns
#1. check use api #1. check use api
@ -935,12 +950,6 @@ install() {
_err "CentOs: yum -y install openssl" _err "CentOs: yum -y install openssl"
return 1 return 1
fi 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" _info "Installing to $WORKING_DIR"

Loading…
Cancel
Save