diff options
author | Laurent Ghigonis <laurent@p1sec.com> | 2013-06-16 20:41:12 +0200 |
---|---|---|
committer | Laurent Ghigonis <laurent@p1sec.com> | 2013-06-16 20:41:12 +0200 |
commit | 7604ea1493afbbb74b482d02a748875a4768ae58 (patch) | |
tree | 7854d358422a5fd770626b611d938839db4f8839 /jsaccess/encrypt.sh | |
parent | jsaccess: naming (diff) | |
download | laurent-tools-7604ea1493afbbb74b482d02a748875a4768ae58.tar.xz laurent-tools-7604ea1493afbbb74b482d02a748875a4768ae58.zip |
jsaccess: now with dynamic file list and file name obfuscation
Diffstat (limited to 'jsaccess/encrypt.sh')
-rwxr-xr-x | jsaccess/encrypt.sh | 43 |
1 files changed, 34 insertions, 9 deletions
diff --git a/jsaccess/encrypt.sh b/jsaccess/encrypt.sh index 9635cbb..001d994 100755 --- a/jsaccess/encrypt.sh +++ b/jsaccess/encrypt.sh @@ -1,15 +1,40 @@ #!/bin/sh -TMP=./jsa-encrypt.tmp +cleanup() { + rm -f $tmp + umask $sumask + exit 0 +} -if [ $# -ne 2 ]; then - echo "usage: encrypt.sh <in-file> <out-file>" +if [ $# -ne 1 ]; then + echo "usage: encrypt.sh <myfile>" exit 1 fi -in=$1 -out=$2 +myfile=$1 -base64 -w0 $in > $TMP -openssl enc -e -a -aes-256-cbc -in $TMP -out $out ||exit $? -rm $TMP -echo "created $out OK" +sumask=$(umask) +umask 077 +tmp=`mktemp ./jsaXXXXXXXX` +trap cleanup INT TERM EXIT + +echo -n "Enter passphrase used to encrypt: " +read pass +dirhash=`echo -n $pass |openssl rmd160 |cut -d' ' -f2` +dir="jsa/files/$dirhash" +file=`echo -n ${dirhash}${myfile} |openssl rmd160 |cut -d' ' -f2` +echo $dir +mkdir -p $dir + +base64 -w0 $myfile > $tmp +echo -n $pass |openssl enc -e -a -aes-256-cbc -in $tmp -out $dir/$file -pass stdin ||exit $? +echo "CREATED $dir/$file" + +if [ -f $dir/index.txt ]; then + echo -n $pass |openssl enc -d -a -aes-256-cbc -in $dir/index.txt -out $tmp -pass stdin ||exit $? +else + echo > $tmp +fi +echo $myfile >> $tmp +rm -f $dir/index.txt +echo -n $pass |openssl enc -e -a -aes-256-cbc -in $tmp -out $dir/index.txt -pass stdin ||exit $? +echo "UPDATED $dir/index.txt" |