Create a file
echo -e "password\n" | gpg --encrypt -o .file.gpg``
Create an encrypted file (containing e.g. a password)
Edit
vim mypw; gpg -e mypw; rm mypw
Read
gpg2 -q --for-your-eyes-only --no-tty -d mypw.gpg
Backup keys
gpg --output mygpgkey_pub-71CB6801.gpg --export 08352695F97D0952469752239A2E09E771CB6801
gpg --output mygpgkey_sec-71CB6801.gpg --export-secret-keys 08352695F97D0952469752239A2E09E771CB6801
Import keys
gpg --import mygpgkey_sec-71CB6801.gpg
Remote import and export
Export the GPG key
First list the gpg keys available in the system:
$ gpg --list-keys
/home/user/.gnupg/pubring.gpg
--------------------------------
pub 1024D/ABCDFE01 2008-04-13
uid firstname lastname (description) <email@example.com>
sub 2048g/DEFABC01 2008-04-13
Let’s import key ABCDFE01:
$ gpg --output mygpgkey_pub.gpg --armor --export ABCDFE01
$ gpg --output mygpgkey_sec.gpg --armor --export-secret-key ABCDFE01
and copy those files over to the remote host:
$ scp mygpgkey_pub.gpg mygpgkey_sec.gpg user@remotehost:~/
Import the GPG key
Now, log in the remote host:
$ ssh user@remotehost
import:
user@remotehost:~$ gpg --import ~/mygpgkey_pub.gpg
user@remotehost:~$ gpg --allow-secret-key-import --import ~/mygpgkey_sec.gpg
user@remotehost:~$ gpg --list-keys
/home/user/.gnupg/pubring.gpg
--------------------------------
pub 1024D/ABCDFE01 2008-04-13
uid firstname lastname (description) <email@example.com>
sub 2048g/DEFABC01 2008-04-13
and then clean up:
user@remotehost:~$ rm ~/mygpgkey_sec.gpg ~/mygpgkey_pub.gpg