Friday, May 12, 2006

Script shell pour crypter et décrypter (avec passphrase) facilement utilisant gpg [v1]

Pour chiffrer...


#!/bin/sh

FROM="$1"
TMP="`mktemp /tmp/crypt.$$.XXXXXX`" || exit 1
OUT="`dirname "$FROM"`/`basename "$FROM"`.crypted"
if [ ! -f "$OUT" ]
then
gpg --symmetric --armor < "$FROM" > "$TMP"
if [ $? -ne 0 ]
then
rm -- "$TMP"
exit 1
fi
mv -- "$TMP" "$OUT"
echo "OK, crypted file $OUT."
else
rm -- "$TMP"
echo "FAILED, crypted file already exists $OUT."
fi




Pour déchiffrer...


#!/bin/sh

FROM="$1"
TMP="`mktemp /tmp/decrypt.$$.XXXXXX`" || exit 1

if [ "`basename $FROM .crypted`" != "`basename $FROM`" ]
then
OUT="`dirname "$FROM"`/`basename "$FROM" .crypted`"
else
OUT="`dirname "$FROM"`/`basename "$FROM"`.decrypted"
fi

if [ ! -f "$OUT" ]
then
gpg --decrypt "$FROM" > "$TMP"
if [ $? -ne 0 ]
then
rm -- "$TMP"
exit 1
fi
mv -- "$TMP" "$OUT"
echo "OK, crypted file $OUT."
else
rm -- "$TMP"
echo "FAILED, crypted file already exists $OUT."
fi