50 lines
1.4 KiB
Bash
50 lines
1.4 KiB
Bash
|
#!/bin/bash
|
||
|
|
||
|
QUESTTEXT='Wie ist dein Name/Nick?'
|
||
|
HELPTEXT="Nickname"
|
||
|
|
||
|
DLG=`which zenity`
|
||
|
if [[ $? -ne 0 ]] ; then
|
||
|
if [[ "$1" == "" ]] ; then
|
||
|
echo "Passphrasengenerierung abgebrochen. Bitte einen Nutzernamen als Kommandoparameter angeben."
|
||
|
exit 1
|
||
|
else
|
||
|
USER=$1
|
||
|
DIALOG=cmd
|
||
|
fi
|
||
|
else
|
||
|
if [[ "$1" == "" ]] ; then
|
||
|
USER=`zenity --entry --text="$QUESTTEXT" --entry-text=$HELPTEXT`
|
||
|
else
|
||
|
USER=`zenity --entry --text="$QUESTTEXT" --entry-text="$1"`
|
||
|
fi
|
||
|
if [[ $? -ne 0 || "$USER" == "$HELPTEXT" ]] ; then
|
||
|
echo "Passphrasengenerierung abgebrochen."
|
||
|
exit 1
|
||
|
fi
|
||
|
DIALOG=zenity
|
||
|
fi
|
||
|
|
||
|
STAMP=`date +%Y-%m-%dT%T`
|
||
|
FILE="$PWD/$USER.$STAMP.keyhash"
|
||
|
PASSPHRASE=`tr -dc _a-z0-9 </dev/urandom | head -c 78`
|
||
|
PPHASH=`echo "$PASSPHRASE" | sha512sum | tr --delete " -"`
|
||
|
|
||
|
echo "$USER;$STAMP;$PPHASH">>$FILE
|
||
|
|
||
|
# Ausgabe
|
||
|
TEXT="Hallo $USER,\ndeine neue Passphrase ist:\n\n\t$PASSPHRASE\n
|
||
|
Hinweis:\tDie Passphrase erscheint nur in diesem Dialog und im Terminal\n\t\tund wird sonst nirgendwo gespeichert. Sichere sie dir bitte!\n\n
|
||
|
Es wurde eine Datei mit deinen Schlüsseldaten generiert. Ihr Name lautet:
|
||
|
\n\t$FILE\n\nÜbergib sie bitte vertrauensvoll an einen Schließsystemverantwortlichen.\n"
|
||
|
|
||
|
case "$DIALOG" in
|
||
|
zenity)
|
||
|
zenity --info --text="$TEXT" --window-icon=warning
|
||
|
;;
|
||
|
*)
|
||
|
;;
|
||
|
esac
|
||
|
|
||
|
echo -e "$TEXT"
|