From 08a38aea94f3247fe1334db46b45d74ebaeef892 Mon Sep 17 00:00:00 2001 From: Xavier Del Campo Romero Date: Sun, 22 Jan 2023 02:21:30 +0100 Subject: Add usergen This script takes a username and password from standard input and generates a JSON object that can be appended to the "users" object in db.json. --- usergen | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100755 usergen diff --git a/usergen b/usergen new file mode 100755 index 0000000..875ef20 --- /dev/null +++ b/usergen @@ -0,0 +1,29 @@ +#! /bin/sh + +echo Username: >&2 +read -r USER +echo Password: >&2 +read -r PWD + +PWD=$(printf '%s' $PWD | xxd -p | tr -d '\n') +SALT=$(openssl rand 32 | xxd -p | tr -d '\n') +KEY=$(openssl rand 32 | xxd -p | tr -d '\n') +PWD=$(printf '%s%s' $SALT $PWD) + +ROUNDS=1000 + +for i in $(seq $ROUNDS) +do + printf "\r%d/$ROUNDS" $i >&2 + PWD=$(printf '%s' $PWD | xxd -p -r | sha256sum | cut -d' ' -f1) +done + +echo >&2 +cat <<-EOF +{ + "name": "$USER", + "password": "$PWD", + "salt": "$SALT", + "key": "$KEY" +} +EOF -- cgit v1.2.3