diff --git a/astgenkey b/astgenkey
new file mode 100755
index 0000000000000000000000000000000000000000..31873e88d2936f8c863a1c646b00d5e7c66367bd
--- /dev/null
+++ b/astgenkey
@@ -0,0 +1,47 @@
+#!/bin/sh
+#
+# Usage: astgenkey [ -q ] [keyname]
+#
+if [ "$1" = "-q" ]; then
+	QUIET='y'
+	KEY=$2
+else
+	KEY=$1
+fi
+
+if [ "$QUIET" != 'y' ]; then
+	echo ""
+	echo "This script generates an RSA private and public key pair"
+	echo "in PEM format for use by Asterisk.  You will be asked to"
+	echo "enter a passcode for your key multiple times.  Please"
+	echo "enter the same code each time.  The resulting files will"
+	echo "need to be moved to /var/lib/asterisk/keys if you want"
+	echo "to use them, and any private keys (.key files) will"
+	echo "need to be initialized at runtime either by running"
+	echo "Asterisk with the '-i' option, or with the 'init keys'"
+	echo "command once Asterisk is running."
+	echo ""
+	echo "Press ENTER to continue or ^C to cancel."
+	read BLAH
+fi
+
+while [ "$KEY" = "" ]; do
+	echo -n "Enter key name: "
+	read KEY
+done
+
+rm -f ${KEY}.key ${KEY}.pub
+
+echo "Generating SSL key '$KEY': "
+openssl genrsa -out ${KEY}.key -des3 1024
+openssl rsa -in ${KEY}.key -pubout -out ${KEY}.pub
+
+if [ -f "${KEY}.key" ] && [ -f "${KEY}.pub" ]; then
+	if [ "$QUIET" != 'y' ]; then
+		echo "Key creation successful."
+		echo "Public key:  ${KEY}.pub"
+		echo "Private key: ${KEY}.key"
+	fi
+else
+	echo "Unknown error creating keys."
+fi
diff --git a/contrib/scripts/astgenkey b/contrib/scripts/astgenkey
new file mode 100755
index 0000000000000000000000000000000000000000..31873e88d2936f8c863a1c646b00d5e7c66367bd
--- /dev/null
+++ b/contrib/scripts/astgenkey
@@ -0,0 +1,47 @@
+#!/bin/sh
+#
+# Usage: astgenkey [ -q ] [keyname]
+#
+if [ "$1" = "-q" ]; then
+	QUIET='y'
+	KEY=$2
+else
+	KEY=$1
+fi
+
+if [ "$QUIET" != 'y' ]; then
+	echo ""
+	echo "This script generates an RSA private and public key pair"
+	echo "in PEM format for use by Asterisk.  You will be asked to"
+	echo "enter a passcode for your key multiple times.  Please"
+	echo "enter the same code each time.  The resulting files will"
+	echo "need to be moved to /var/lib/asterisk/keys if you want"
+	echo "to use them, and any private keys (.key files) will"
+	echo "need to be initialized at runtime either by running"
+	echo "Asterisk with the '-i' option, or with the 'init keys'"
+	echo "command once Asterisk is running."
+	echo ""
+	echo "Press ENTER to continue or ^C to cancel."
+	read BLAH
+fi
+
+while [ "$KEY" = "" ]; do
+	echo -n "Enter key name: "
+	read KEY
+done
+
+rm -f ${KEY}.key ${KEY}.pub
+
+echo "Generating SSL key '$KEY': "
+openssl genrsa -out ${KEY}.key -des3 1024
+openssl rsa -in ${KEY}.key -pubout -out ${KEY}.pub
+
+if [ -f "${KEY}.key" ] && [ -f "${KEY}.pub" ]; then
+	if [ "$QUIET" != 'y' ]; then
+		echo "Key creation successful."
+		echo "Public key:  ${KEY}.pub"
+		echo "Private key: ${KEY}.key"
+	fi
+else
+	echo "Unknown error creating keys."
+fi