mirror of
https://github.com/drduh/YubiKey-Guide.git
synced 2025-05-18 11:07:10 +02:00
gen key functions
This commit is contained in:
parent
f2c4ca3e68
commit
1ab20d5fea
1 changed files with 30 additions and 13 deletions
|
@ -11,7 +11,7 @@ export LC_ALL="C"
|
||||||
|
|
||||||
export GNUPGHOME=$(mktemp -d -t $(date +%Y.%m.%d)-XXXX)
|
export GNUPGHOME=$(mktemp -d -t $(date +%Y.%m.%d)-XXXX)
|
||||||
|
|
||||||
cd "${GNUPGHOME}" ; pwd
|
cd "${GNUPGHOME}" ; printf "saving to %s\n" "$(pwd)"
|
||||||
|
|
||||||
export IDENTITY="YubiKey User <yubikey@example.domain>"
|
export IDENTITY="YubiKey User <yubikey@example.domain>"
|
||||||
|
|
||||||
|
@ -30,23 +30,40 @@ get_pass () {
|
||||||
|
|
||||||
export CERTIFY_PASS="$(get_pass)"
|
export CERTIFY_PASS="$(get_pass)"
|
||||||
|
|
||||||
echo "$CERTIFY_PASS" | \
|
gen_key_certify () {
|
||||||
gpg --batch --passphrase-fd 0 \
|
# Generates Certify key with no expiration.
|
||||||
--quick-generate-key "$IDENTITY" "$KEY_TYPE" cert never
|
echo "$CERTIFY_PASS" | \
|
||||||
|
gpg --batch --passphrase-fd 0 \
|
||||||
|
--quick-generate-key "$IDENTITY" \
|
||||||
|
"$KEY_TYPE" "cert" "never"
|
||||||
|
}
|
||||||
|
|
||||||
export KEYID=$(gpg -k --with-colons "$IDENTITY" | \
|
set_key_id_fp () {
|
||||||
awk -F: '/^pub:/ { print $5; exit }')
|
# Sets Key ID and Fingerprint environment vars.
|
||||||
|
export KEYID=$(gpg -k --with-colons "$IDENTITY" | \
|
||||||
|
awk -F: '/^pub:/ { print $5; exit }')
|
||||||
|
export KEYFP=$(gpg -k --with-colons "$IDENTITY" | \
|
||||||
|
awk -F: '/^fpr:/ { print $10; exit }')
|
||||||
|
}
|
||||||
|
|
||||||
export KEYFP=$(gpg -k --with-colons "$IDENTITY" | \
|
gen_key_certify
|
||||||
awk -F: '/^fpr:/ { print $10; exit }')
|
|
||||||
|
set_key_id_fp
|
||||||
|
|
||||||
printf "\nKey ID: %40s\nKey FP: %40s\n\n" "$KEYID" "$KEYFP"
|
printf "\nKey ID: %40s\nKey FP: %40s\n\n" "$KEYID" "$KEYFP"
|
||||||
|
|
||||||
for SUBKEY in sign encrypt auth ; do \
|
gen_key_subs () {
|
||||||
echo "$CERTIFY_PASS" | \
|
# Generates Subkeys with specified expiration.
|
||||||
gpg --batch --pinentry-mode=loopback --passphrase-fd 0 \
|
for SUBKEY in sign encrypt auth ; do \
|
||||||
--quick-add-key "$KEYFP" "$KEY_TYPE" "$SUBKEY" "$KEY_EXPIRATION"
|
echo "$CERTIFY_PASS" | \
|
||||||
done
|
gpg --batch --passphrase-fd 0 \
|
||||||
|
--pinentry-mode=loopback \
|
||||||
|
--quick-add-key "$KEYFP" \
|
||||||
|
"$KEY_TYPE" "$SUBKEY" "$KEY_EXPIRATION"
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
gen_key_subs
|
||||||
|
|
||||||
gpg -K
|
gpg -K
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue