This repository has been archived on 2024-02-04. You can view files and clone it, but cannot push or open issues or pull requests.
blog.polynom.me/assets/files/verify.sh

19 lines
639 B
Bash
Raw Normal View History

#!/usr/bin/env bash
[[ -z "$1" ]] && echo "Usage: verify.sh <url>" && 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"