#!/bin/bash if [ $# -lt 2 ] then echo "Usage: ./`basename $0` HASHUTIL PUBKEY.TXT < ENCODED.TXT > HEXPAYLOAD" exit 1 fi bits="" while read -u 3 pkl; do if ! read el then break fi bits="$bits$( case $(echo -n $el | xxd -r -p | $1 | cut -d ' ' -f1) in $(echo $pkl | cut -d ' ' -f1)) echo "0" ;; $(echo $pkl | cut -d ' ' -f2)) echo "1" ;; *) exit 1; break ;; esac)" if [[ $? == 1 ]] then echo False >&2; exit 1 fi done 3<$2 echo "ibase=2;obase=10000;$bits" | bc | tr -d '\\\n' | tr '[:upper:]' '[:lower:]' echo