...
This commit is contained in:
parent
63ab39b4b1
commit
542996a0ff
54
examples/age_bash_demo.sh
Executable file
54
examples/age_bash_demo.sh
Executable file
@ -0,0 +1,54 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Start the herodb server in the background
|
||||||
|
echo "Starting herodb server..."
|
||||||
|
cargo run -- --dir /tmp/herodb_age_test --port 6382 --debug --encryption-key "testkey" &
|
||||||
|
SERVER_PID=$!
|
||||||
|
sleep 2 # Give the server a moment to start
|
||||||
|
|
||||||
|
REDIS_CLI="redis-cli -p 6382"
|
||||||
|
|
||||||
|
echo "--- Generating and Storing Encryption Keys ---"
|
||||||
|
$REDIS_CLI AGE.GENERATE_KEYPAIR alice
|
||||||
|
$REDIS_CLI AGE.GENERATE_KEYPAIR bob
|
||||||
|
|
||||||
|
echo "--- Encrypting and Decrypting a Message ---"
|
||||||
|
MESSAGE="Hello, AGE encryption!"
|
||||||
|
ALICE_PUBKEY=$($REDIS_CLI AGE.GET_PUBKEY alice)
|
||||||
|
echo "Alice's Public Key: $ALICE_PUBKEY"
|
||||||
|
|
||||||
|
echo "Encrypting message: '$MESSAGE' with Alice's public key..."
|
||||||
|
CIPHERTEXT=$($REDIS_CLI AGE.ENCRYPT "$MESSAGE" "$ALICE_PUBKEY")
|
||||||
|
echo "Ciphertext: $CIPHERTEXT"
|
||||||
|
|
||||||
|
echo "Decrypting ciphertext with Alice's private key..."
|
||||||
|
DECRYPTED_MESSAGE=$($REDIS_CLI AGE.DECRYPT "$CIPHERTEXT" alice)
|
||||||
|
echo "Decrypted Message: $DECRYPTED_MESSAGE"
|
||||||
|
|
||||||
|
echo "--- Generating and Storing Signing Keys ---"
|
||||||
|
$REDIS_CLI AGE.GENERATE_SIGN_KEYPAIR signer1
|
||||||
|
|
||||||
|
echo "--- Signing and Verifying a Message ---"
|
||||||
|
SIGN_MESSAGE="This is a message to be signed."
|
||||||
|
SIGNER1_PUBKEY=$($REDIS_CLI AGE.GET_SIGN_PUBKEY signer1)
|
||||||
|
echo "Signer1's Public Key: $SIGNER1_PUBKEY"
|
||||||
|
|
||||||
|
echo "Signing message: '$SIGN_MESSAGE' with signer1's private key..."
|
||||||
|
SIGNATURE=$($REDIS_CLI AGE.SIGN "$SIGN_MESSAGE" signer1)
|
||||||
|
echo "Signature: $SIGNATURE"
|
||||||
|
|
||||||
|
echo "Verifying signature with signer1's public key..."
|
||||||
|
VERIFY_RESULT=$($REDIS_CLI AGE.VERIFY "$SIGN_MESSAGE" "$SIGNATURE" "$SIGNER1_PUBKEY")
|
||||||
|
echo "Verification Result: $VERIFY_RESULT"
|
||||||
|
|
||||||
|
echo "--- Cleaning up keys ---"
|
||||||
|
$REDIS_CLI AGE.DELETE_KEYPAIR alice
|
||||||
|
$REDIS_CLI AGE.DELETE_KEYPAIR bob
|
||||||
|
$REDIS_CLI AGE.DELETE_SIGN_KEYPAIR signer1
|
||||||
|
|
||||||
|
echo "--- Stopping herodb server ---"
|
||||||
|
kill $SERVER_PID
|
||||||
|
wait $SERVER_PID 2>/dev/null
|
||||||
|
echo "Server stopped."
|
||||||
|
|
||||||
|
echo "Bash demo complete."
|
Loading…
Reference in New Issue
Block a user