add check-sign-file.sh
This commit is contained in:
parent
408eee9c09
commit
26f309dcd7
10
README.md
10
README.md
|
@ -1,2 +1,12 @@
|
||||||
# digital-signature
|
# digital-signature
|
||||||
Repo for public checking digital signature of my files.
|
Repo for public checking digital signature of my files.
|
||||||
|
|
||||||
|
Hello everyone!
|
||||||
|
For checking digital sign on my files feel free to use this simple shell script.
|
||||||
|
|
||||||
|
1. Download Invoice and their .signature file from email
|
||||||
|
2. Run script with filename-of-invoice-file
|
||||||
|
|
||||||
|
```
|
||||||
|
./check-sign-file.sh <filename> [filename.signature] [public-keyfile]
|
||||||
|
```
|
||||||
|
|
|
@ -0,0 +1,51 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
RED='\033[0;31m'
|
||||||
|
GRN='\033[1;32m'
|
||||||
|
YEL='\033[0;33m'
|
||||||
|
BLU='\033[1;34m'
|
||||||
|
END='\033[0m' # No Color
|
||||||
|
|
||||||
|
|
||||||
|
filename=$1
|
||||||
|
sign=${2:-"$filename.signature"}
|
||||||
|
|
||||||
|
|
||||||
|
date=$(date -I)
|
||||||
|
|
||||||
|
if [ $# -eq 0 ]
|
||||||
|
then
|
||||||
|
echo "Usage: ./check-sign-file.sh <filename> [filename.signature] [public-keyfile]"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -f $sign ]; then
|
||||||
|
printf $RED"Sign file not found!\n"$END
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Getting Aleksei Krugliak publickey..."
|
||||||
|
curl https://raw.githubusercontent.com/ksemele/digital-signature/main/akrugliak-publickey.pem > akrugliak-publickey.pem
|
||||||
|
echo "[$date] successfully get key"
|
||||||
|
|
||||||
|
public_key=akrugliak-publickey.pem
|
||||||
|
|
||||||
|
echo "Verifiying file [$filename] signed by [$public_key] sign-file [$sign]"
|
||||||
|
|
||||||
|
printf $BLU
|
||||||
|
echo "openssl dgst -sha256 -verify $public_key -signature $sign $filename"
|
||||||
|
echo ""
|
||||||
|
printf $END
|
||||||
|
|
||||||
|
result=$(openssl dgst -sha256 -verify $public_key -signature $sign $filename | awk '{print $2}')
|
||||||
|
|
||||||
|
if [ $result == "Failure" ]; then
|
||||||
|
printf $RED"Verifiying file [$filename]: $result\n"$END
|
||||||
|
else
|
||||||
|
printf $GRN"Verifiying file [$filename]: $result\n"$END
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "rm -rf akrugliak-publickey.pem"
|
||||||
|
rm -rf akrugliak-publickey.pem
|
||||||
|
printf $GRN"done.\n"$END
|
Loading…
Reference in New Issue