pgp.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Tue, 11 Oct 2016 21:34:05 +0300
changeset 2040 850213dfd351
parent 1912 8b81a8f0f692
child 2041 c9c950bc5487
permissions -rw-r--r--
How to backup private key?
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1792
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     1
.. -*- coding: utf-8; -*-
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     2
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     3
==========
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     4
 PGP/GPG.
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     5
==========
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     6
.. contents::
1905
fba288d59662 Include only local subsections into TOC. This prevent duplication of
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1797
diff changeset
     7
   :local:
1792
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     8
2040
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
     9
Documentation
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
    10
=============
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
    11
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
    12
https://wiki.archlinux.org/index.php/GnuPG
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
    13
  ArchLinux wiki.
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
    14
1792
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    15
What preffered client?
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    16
======================
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    17
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    18
GNU gpg.
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    19
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    20
How import keys from key-server?
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    21
================================
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    22
::
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    23
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    24
  $  gpg --keyserver pgp.mit.edu --recv-keys $KEYID
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    25
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    26
How mark key as trusted?
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    27
========================
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    28
::
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    29
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    30
  $ gpg --edit-key $KEYID trust
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    31
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    32
How export key?
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    33
===============
1796
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    34
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    35
Export public key in binary (OpenGPG) form::
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    36
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    37
  $ gpg --export $KEYID >$PUBKEY.asc
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    38
  $ gpg --output $PUBKEY.asc --export $KEYID
1792
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    39
1796
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    40
Export public key in text form::
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    41
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    42
  $ gpg -a --export $KEYID >$PUBKEY.asc
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    43
  $ gpg --armor --export $KEYID >$PUBKEY.asc
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    44
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    45
Export private key (it still encrypted by pass-phrase)::
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    46
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    47
  $ gpg --output $PRIVKEY.gpg --export-secret-key $KEYID
1792
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    48
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    49
How create own PGP key?
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    50
=======================
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    51
::
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    52
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    53
  $ gpg --gen-key   # answer the question
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    54
  ...
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    55
  $ gpg -o $keyfile --export-secret-keys $NAME
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    56
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    57
How import keys from file?
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    58
==========================
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    59
::
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    60
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    61
  $ gpg --import $keyfile
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    62
1796
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    63
How to get public key from private without importing to local storage?
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    64
======================================================================
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    65
::
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    66
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    67
  tmp=$(mktemp -d)
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    68
  gpg --homedir $tmp --import $SECKEY
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    69
  gpg --homedir $tmp --export $ID > $PUBKEY
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    70
  rm -rf $tmp
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    71
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    72
..
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    73
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    74
  http://stackoverflow.com/questions/7661500/how-to-get-public-key-from-private-in-gpg-without-using-local-storage-under
c15cf5f1132c How to get public key from private without importing to local storage?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1792
diff changeset
    75
1792
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    76
How submit public key to key server?
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    77
====================================
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    78
::
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    79
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    80
  $ gpg --keyserver pgp.mit.edu --send-key $KEYID
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    81
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    82
What keys in local db?
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    83
======================
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    84
::
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    85
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    86
  $ gpg --list-keys
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    87
  $ gpg --list-keys $KEYID
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    88
  $ gpg --list-keys $EMAIL
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    89
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    90
  $ gpg --list-secret-keys
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    91
1797
912e278e4896 Making revocation certificate.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1796
diff changeset
    92
Making revocation certificate.
912e278e4896 Making revocation certificate.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1796
diff changeset
    93
==============================
912e278e4896 Making revocation certificate.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1796
diff changeset
    94
::
912e278e4896 Making revocation certificate.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1796
diff changeset
    95
912e278e4896 Making revocation certificate.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1796
diff changeset
    96
  $ gpg --armor --output $KEYID.rev --gen-revoke $KEYID
912e278e4896 Making revocation certificate.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1796
diff changeset
    97
1792
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    98
How delete key?
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    99
===============
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   100
::
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   101
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   102
  $ gpg --delete-key $KEYID
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   103
  $ gpg --delete-key $USER
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   104
  $ gpg --delete-key $EMAIL
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   105
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   106
  $ gpg --delete-secret-key $KEYID
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   107
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   108
Dump content of key or signture.
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   109
================================
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   110
::
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   111
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   112
  $ gpg --list-packets $FILE.sig
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   113
  $ gpg --list-packets $FILE.key
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   114
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   115
  $ sudo apt-get install pgpdump
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   116
  $ pgpdump $FILE.sig
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   117
  $ pgpdump $FILE.key
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   118
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   119
How sign file?
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   120
==============
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   121
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   122
To sign with first key::
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   123
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   124
  $ gpg -o $file.sig --sign $file
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   125
  $ gpg --default-key $NAME -o $file.sig --sign $file
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   126
  $ gpg -u ${USER_NAME} -o $file.sig --sign $file
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   127
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   128
How verify signature?
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   129
=====================
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   130
::
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   131
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   132
  $ gpg --verify $file.sig
76efdcf0aa3e Dump content of key or signture.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   133
2040
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   134
How to backup private key?
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   135
==========================
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   136
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   137
Make a copy::
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   138
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   139
  $ gpg --export-secret-keys --armor $KEYID > privkey.asc
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   140
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   141
Restore from copy::
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   142
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   143
  $ gpg --allow-secret-key-import --import privkey.asc
850213dfd351 How to backup private key?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   144