#!/usr/bin/env bash [[ -z "$1" ]] && echo "Usage: verify.sh " && exit 1 SIG=`mktemp` RAW=`mktemp` CONTENT=$(curl --silent "$1") # Extract the signature echo "$CONTENT" | awk '/-----BEGIN PGP SIGNATURE-----/{p=1};{if (p==1){a[NR]=$0}};/-----END PGP SIGNATURE-----/{for (i in a) print a[i]}' > "$SIG" # "Re-create" the page content before the signing process echo "$CONTENT" | awk '/-----BEGIN PGP SIGNATURE-----/{p=1;f=0};{if (p!=1){print $0}; if (p==1 && f==0) {print "%%%SIGNED_PAGES_PGP_SIGNATURE%%%"; f=1}};/-----END PGP SIGNATURE-----/{p=0}' > "$RAW" GPG_OUT=`gpg --verify "$SIG" "$RAW"` RET=$? rm "$SIG" "$RAW" exit "$RET"