[New Script]: bashpass: Generates a random password using sha256 and custom length

This commit is contained in:
mollusk 2016-07-11 04:21:59 -07:00
parent e6a28a23eb
commit 64566f7585

87
bashpass.sh Executable file
View File

@ -0,0 +1,87 @@
#!/bin/bash
## Functions
shaStatic(){
#hashes date with SHA
local charSize=20
echo
echo "${charSize} character password generated using SHA256 with date"
echo "***************************************************"
date +%s | sha256sum | base64 | head -c ${charSize} ; echo
echo "***************************************************"
}
shaWithNum(){
#hashes date with SHA
if [ $1 -ge 255 ];then
echo
echo "Error : $0 : Please choose a number lower than 255"
echo
else
echo
echo "$1 character password generated using SHA256 with date"
echo "***************************************************"
date +%s | sha256sum | base64 | head -c $1 ; echo
echo "***************************************************"
fi
}
leftHand(){
echo
echo "8 character password easy to type with left hand"
echo "**************************************************"
</dev/urandom tr -dc '12345!@#$%qwertQWERTasdfgASDFGzxcvbZXCVB' | head -c8; echo ""
echo "**************************************************"
}
leftHandNum(){
if [ $1 -ge 255 ];then
echo
echo "Error : $0 : Please choose a number lower than 255"
echo
else
echo
echo "$1 character password easy to type with left hand"
echo "**************************************************"
</dev/urandom tr -dc '12345!@#$%qwertQWERTasdfgASDFGzxcvbZXCVB' | head -c$1; echo ""
echo "**************************************************"
fi
}
## Main
case "$1" in
-cs | --char-size ) shaWithNum $2
;;
-l | --left-hand ) leftHand
;;
-lcs | --left-char-size ) leftHandNum $2
;;
"") shaStatic
;;
* | -h | --help ) echo
echo "NAME"
echo " bashpass"
echo
echo "SYNOPSIS"
echo " bashpass [-h] [--help] [-cs <integer>] [-l] [-lcs <integer>]"
echo
echo "-cs <integer> | --char-size <integer>"
echo " specify password length"
echo
echo "-l | --left-hand"
echo " left handed password"
echo
echo "-lcs <integer> | --left-char-size <integer>"
echo " left hand password with length"
echo
;;
esac