added encryption

This commit is contained in:
panda 2023-11-03 23:36:29 +01:00
parent ba16317e7c
commit 67b75df273

View file

@ -1,35 +1,55 @@
#!/usr/bin/env bash
if [ -z "$1" ] || [ -z "$2" ] || [[ $2 != "encode" && $2 != "decode" ]]
if [ -z "$1" ] || [ -z "$2" ] || [[ $2 != "encode" && $2 != "decode" && $2 != "encode_enc" ]]
then echo "launch the script with the desired filename and operation"
echo "./AmazonPrimeWhatever.sh FILENAME OPERATION(encode or decode)"
exit
fi
if [ $2 = "encode" ]; then
imagejpg="random.jpg"
image="random.DNG"
#generate random image:
mx=320;my=256;head -c "$((3*mx*my))" /dev/urandom | convert -depth 8 -size "${mx}x${my}" RGB:- $imagejpg
mv $imagejpg $image
imagesize=$(du -b $image | cut -f1)
origsha=$(sha1sum $1 | cut -d " " -f1)
destimage="FakeKitten_"$imagesize"_"$1"_"$origsha"_"$image
mv $image $destimage
dd if=$1 bs=1M >> "$destimage"
echo "encode completed in $destimage"
if [ $2 = "encode" ] || [ $2 = "encode_enc" ]; then
imagejpg="random.jpg"
image="random.DNG"
#generate random image:
mx=320;my=256;head -c "$((3*mx*my))" /dev/urandom | convert -depth 8 -size "${mx}x${my}" RGB:- $imagejpg
mv $imagejpg $image
imagesize=$(du -b $image | cut -f1)
if [ $2 = "encode" ]; then
origsha=$(sha1sum $1 | cut -d " " -f1)
destimage="FakeKitten_"$imagesize"_"$1"_"$origsha"_"$image
mv $image $destimage
dd if=$1 bs=1M >> "$destimage"
echo "encode completed in $destimage"
fi
if [ $2 = "encode_enc" ]; then
#
gpg --symmetric --cipher-algo AES256 $1
#
origsha=$(sha1sum $1.gpg | cut -d " " -f1)
destimage="FakeKittenENC_"$imagesize"_"$1.gpg"_"$origsha"_"$image
mv $image $destimage
dd if=$1.gpg bs=1M >> "$destimage"
echo "encode completed in $destimage"
fi
fi
if [ $2 = "decode" ]; then
imageconst=$(echo $1 | cut -d "_" -f1)
imagebs=$(echo $1 | cut -d "_" -f2)
origname=$(echo $1 | cut -d "_" -f3)
origsha=$(echo $1 | cut -d "_" -f4)
origimage=$(echo $1 | cut -d "_" -f5)
dd if=$1 bs=1M skip=$imagebs iflag=skip_bytes > "$origname"
echo "decode completed in $origimage, checking file integrity"
if [ $imageconst = "FakeKittenENC" ]; then
#decrypt the file
orignamenogpg=$(echo "$origname" | sed 's/.gpg//')
gpg --output $orignamenogpg --decrypt $origname
fi
echo "decode completed in $origname, checking file integrity"
echo $origsha" "$origname > $origname".sha1"
shaoutput=$(sha1sum -c $origname".sha1")
echo $shaoutput
@ -41,6 +61,10 @@ if [ $2 = "decode" ]; then
rm $origname".sha1"
exit
fi
if [ $imageconst = "FakeKittenENC" ]; then
#remove the file that contains .gpg at the end
rm $origname
fi
rm $origname".sha1"
fi