#!/bin/sh
# $Id: encrypt-file.sh 396 2005-10-21 20:57:43Z taal $
[ -z "$1" ] && exit 1

file="$1"
# The public key
key="/home/backup-key.pub"

if [ ! -f "$key" ]; then
  echo "Could not find public key: $key"
  exit 2
fi

enc_key="${file}.key"
enc_key_enc="${file}.key.enc"
enc_file="${file}.enc"

echo -n "Making random encryption key..."
dd if=/dev/urandom "of=${enc_key}" bs=1 count=32 2> /dev/null
echo "done."
echo -n "Encrypting $file..."
openssl enc -bf -in "$file" -out "$enc_file"  -pass "file:${enc_key}"
echo "done."
echo -n "Encrypting encryption key..."
openssl rsautl -encrypt -pubin -inkey "$key"  -in "$enc_key"  -out "$enc_key_enc"
echo "done."
rm -P "$enc_key"

ls -la "$enc_file" "$enc_key_enc"

exit 0
