Menggunakan GNU Privacy Guard (GPG)

Daftar Isi

  1. Latar Belakang
  2. Instalasi GPG
  3. Penggunaan Dasar GPG
  4. Penggunaan Lanjutan
  5. Skenario
  6. Selanjutnya

Latar Belakang

Instalasi GPG

Ubuntu

Windows

ikuti langkah berikut untuk menggunakan GPG pada Sistem Operasi (OS) Windows.

1.Download GPG4win di https://www.gpg4win.org/

2.Install GPG4Win dengan memilih semua komponen kecuali GPA karena kita tidak menggunakan GUI milik GnuGP

install gpg

install gpg

3.Pilih lokasi instalasi

install gpg

4.Setelah instalasi selesai, jalankan program kleopatra untuk membuat keypair

install gpg

Mac OS X

Penggunaan Dasar GPG

Komponen dan fitur GPG

a. Membuat Keypair

Kita harus terlebih dahulu membuat dua jenis kunci atau keypair sebelum menggunakan GPG untuk enkripsi, dekripsi dan tanda tangan digital. Pembuatan keypair ini bisa melalui command prompt atau Graphical User Interface (GUI) yang telah disediakan oleh aplikasi GPG. Ikuti langkah berikut untuk membuat keypair sesuai dengan metode yang disukai.

Penggunaan command prompt tidak hanya terbatas pada Ubuntu dan Mac OSX karena GPG windows juga menyediakan executable yang memungkinkan kita untuk menggunakan perintah GPG melalui terminal.

Command Prompt:

1.Buka terminal kemudian ketik perintah berikut

gpg --gen-key

kemudian akan terlihat pilihan berikut

Please select what kind of key you want:
   (1) RSA and RSA (default)
   (2) DSA and Elgamal
   (3) DSA (sign only)
   (4) RSA (sign only)
Your selection? 

2.Pilih nomor (1) RSA and RSA atau tekan enter agar kita bisa menggunakan GPG untuk enkripsi dan juga tanda tangan digital. Setelah itu tentukan key size atau besar kunci yang ingin kita gunakan. Default key size yang direkomendasikan adalah 2048 dan masih cukup kuat saat tulisan ini dibuat

RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048) 2048
Requested keysize is 2048 bits

3.Setelah itu pilih masa berlaku key. Dengan memilih 0 atau tidak kadaluarsa akan meringankan beban administratif terhadap key seperti memperpanjang umur key. Kita akan bahas secara khusus bagaimana parameter key bisa diperbaharui agar dapat mengikuti perkembangan persyaratan keamanan cyber yang ada.

RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048) 2048
Requested keysize is 2048 bits
Key is valid for? (0) 
Key does not expire at all
Is this correct? (y/N) y

4.Kemudian isi identitas yang dibutuhkan

You need a user ID to identify your key; the software constructs the user ID
from the Real Name, Comment and Email Address in this form:
    "Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>"

Real name: Anakin Basuki
Email address: anakin.basuki78@gmail.com
Comment: 
You selected this USER-ID:
    "Anakin Basuki <anakin.basuki78@gmail.com>"

Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? 

5.Setelah itu GPG akan menanyakan passprase atau password yang akan digunakan untuk melindungi private key. Gunakan passphrase yang mudah diingat namun sulit untuk ditebak

Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
You need a Passphrase to protect your secret key.

gpg: gpg-agent is not available in this session
Repeat passphrase: 

6.Apabila terdapat pesan error berikut

We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.

Not enough random bytes available.  Please do some other work to give
the OS a chance to collect more entropy! (Need 287 more bytes)

Maka kita perlu menginstall rng-tools untuk membantu menghasilkan random bytes yang lebih banyak

sudo apt-get install rng-tools

7.Apabila berhasil, maka public/private keypair akan terbentuk dan disimpan dalam trustdb

gpg: /home/adinanta/.gnupg/trustdb.gpg: trustdb created
gpg: key 28F756E5 marked as ultimately trusted
public and secret key created and signed.

gpg: checking the trustdb
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
pub   2048R/28F756E5 2018-05-10
      Key fingerprint = 81DE A834 2BD5 55D4 E917  75E8 38B1 7ED0 28F7 56E5
uid                  Anakin Basuki <anakin.basuki78@gmail.com>
sub   2048R/2B274FD0 2018-05-10

adinanta@ubuntu:~$ 

8.Untuk memastikan keypair telah terbentuk, ketik perintah berikut untuk melihat public dan private key yang tersedia

Public key:

public key

Private Key:

secret key

Windows:

Pada prinsipnya proses pembuatan keypair menggunakan aplikasi Windows tidak berbeda dengan penggunaan command prompt karena GUI yang ada pada Windows mengeksekusi perintah GPG yang sama. Setelah melakukan instalasi Win4GPG, ikuti langkah berikut untuk membuat keypair.

1.Buka program Kleopatra

kleopatra

2.Kemudian klik New Key Pair untuk memulai pembuatan keypai

info keypair

3.Setela itu klik advanced setting untuk memilih besar kunci atau key size yang diinginkan. Default Key Size yang diberikan adalah 2048 bit

panjang key

4.Periksa parameter keypair yang akan dibuat dan apabila telah sesuai, gunakan passphrase atau password untuk melindungi private key. Gunakan passphrase yang mudah diingat namun sulit untuk ditebak.

parameter key

passphrase

5.Dalam beberapa saat keypair akan selesai terbentuk dan Wizard juga menawarkan kita untuk melakukan backup keypair, mengirim public key melalui email dan juga mengunduhnya ke key server

keypair terbentuk

b. Mendistribusikan Public Key

Seperti yang telah dijelaskan sebelumnya, public key merupakan bagian key yang perlu didistribusikan sementara private key adalah key yang perlu dilindungi kerahasiannya.

Public Key yang telah terbentuk perlu diumumkan agar dapat digunakan oleh koresponden untuk mengenkripsi data yang ditujukan untuk kita.

Ikuti langkah berikut untuk mendistribusikan public key sesuai dengan metode yang disukai.

Terdapat dua cara untuk mendisitribusikan public key seperti:

  • Mengunggah Public Key ke Key Server
  • Mengirim Public Key secara manual

Dua cara diatas boleh digunakan secara bersamaan dan terkadang perlu dilakukan untuk memastikan pihak yang ingin berkomunikasi dengan kita telah menggunakan public key yang sebenarnya. Terdapat beberapa teknik untuk memastikan ini seperti melalui web of trust, offline fingerprint verification dan lain sebagainya yang akan kita bahas pada bagian berikutnya.

Command Prompt:

Mengunggah Public Key ke Key Server

1.Gunakan perintah berikut untuk memastikan public key milik kita telah tersedia dalam lokal komputer sebelum mengunggahnya ke key server.

adinanta@ubuntu:~$ gpg --list-key

/home/adinanta/.gnupg/pubring.gpg
---------------------------------
pub   2048R/28F756E5 2018-05-10
uid                  Anakin Basuki <anakin.basuki78@gmail.com>
sub   2048R/2B274FD0 2018-05-10

adinanta@ubuntu:~$  

2.Kemudian gunakan opsi --send-key untuk mempublikasikan public key :

adinanta@ubuntu:~$ gpg --send-key --keyserver keyserver.ubuntu.com 28F756E5
gpg: sending key 28F756E5 to hkp server keyserver.ubuntu.com

Apabila keyserver tidak didefinisikan secara eksplisit, maka gpg akan menghubungi salah saatu keyserver yang tersedia

adinanta@ubuntu:~$ gpg --send-key 28F756E5
gpg: sending key 28F756E5 to hkp server keys.gnupg.net

3.Untuk memastikan public key telah berhasil diunggah, gunakan opsi --search-key

adinanta@ubuntu:~$ gpg --search-key 28F756E5
gpg: searching for "28F756E5" from hkp server keys.gnupg.net
(1) Anakin Basuki <anakin.basuki78@gmail.com>
    2048 bit RSA key 28F756E5, created: 2018-05-10
Keys 1-1 of 1 for "28F756E5".  Enter number(s), N)ext, or Q)uit > Q
adinanta@ubuntu:~$ 

Atau sebagai alternatif, kita bisa mengunjungi salah satu situs key server seperti https://keyserver.ubuntu.com/ dan kemudian melakukan pencarian berdasarkan nama atau fingreprint public key

Mengirim Public Key secara manual

Teknik lainnya untuk mendisitribusikan public key ke pihak lain adalah dengan memanfaatkan email. Untuk memastikan keaslian dan integritas public key saat pengiriman, ada baiknya kita juga memberikan fingerprint public key kita ke penerima.

Pemberian fingerprint ini harus menggunakan jalur yang berbeda seperti SMS atau whatsapp. Lakukan langkah berikut untuk mendistribusikan public key melalui email:

1.Cetak fingerprint public key kita

adinanta@ubuntu:~$ gpg2 --list-key --fingerprint
/home/adinanta/.gnupg/pubring.gpg
---------------------------------
pub   rsa2048/28F756E5 2018-05-10
      Key fingerprint = 81DE A834 2BD5 55D4 E917  75E8 38B1 7ED0 28F7 56E5
uid         [ revoked] Anakin Basuki <anakin.basuki78@gmail.com>

Dalam contoh ini, fingerprint public key kita adalah: 81DEA8342BD555D4E91775E838B17ED028F756E5

2.Kemudian export public key milik kita dalam format ASCII agar dapat disalin dan dikirim melalui email

adinanta@ubuntu:~$ gpg --armor --export 28F756E5
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1

mQENBFr0G0kBCADpCQeacZxgmRuazJ2l8FlWKm5LFw+tuWaRxvki6IAltb4eRWid
P927k23yhj+2A3uIlWfjdYfg+lw8fIf4LsBnm5Sx0oqDHGHrdI21KFLmyd1f2Avx
WkiubNb+Wg9neKdUHhIAhJlCnQZrd2jgEHzB8M7/slQbASvGVVz/ny++ZCOMcpeb
TRj2klc8HXBqiXFIGcy7vwCInV7HL7mYBCXI+3A4gaCFoAWwngdbZvOFjl43wtQw
IrQVu367EYaW1/GoTAdRcvGj0IaL0NbGPACqIaxgWBxhblrzK/UzuzR9dcwsMHQ/
0a2ODNa14ZT4kJMebdugNVR9gvhV8koK+TYFABEBAAG0KUFuYWtpbiBCYXN1a2kg
PGFuYWtpbi5iYXN1a2k3OEBnbWFpbC5jb20+iQE4BBMBAgAiBQJa9BtJAhsDBgsJ
CAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRA4sX7QKPdW5a8TB/4lkYHXKK/9SxiQ
cWZyZrKZvVwzwcrcBLl+vlkkkhaqWa/9J4iU/i66D1Xf9a+JOq3EzXpyAo0EWjaM
K8K+JkwjyPu5CRvBdkobysfNdhy5LdYjDmwpjyY6kRO76ty5qP8shrXMvBqoZVw9
8N4J8dx8mvWTmeeRE4+85sBDXWvLBriNEj/i8+TcmFx1z5jDuSLXixIKk+l0ISrE
E77Zby/94Ds8on9XII1ojzSDcZhx+9JObPP3V6vJ8OfuQAZerPP6N/fknm25YBJz
Y1a1ZYC7CMT22fSbOFCgYmdAI1ns9Podm+kNDc1ymmiIU55uk08Hff6MUS0J8Xdl
O+RFZylzuQENBFr0G0kBCADy8HWRVJh1cQAwprkhOJjwd04H36QMscwXQLT9++92
NvQRJDdaCOCuEheHsGfOKZoI1JCOXEIj8tWESjWwJWyjbd3no91+kqNZjeE6KZt/
P0YuXBv+MaT1SQigHOjTZE75OEypBeDRmUJ719CVTZKajSEnH+nsF5ylOzwCm8RM
HK5llWeIT554Neu+BxUAZhJhYW4xLZ5DSmJVgJh/qCwQAPDYn/D5PHFAocLgSR+A
VnnJpJOChPQoFCqmcDffmMrF6s/yUWPCeVHpO557zYhknAtdv99d0ddpDksZreME
nkKp+imUsNjHS3G+pbwH2BxeujpOdap/bJ3opk+RBE9zABEBAAGJAR8EGAECAAkF
Alr0G0kCGwwACgkQOLF+0Cj3VuUAuAf/StbDuHjhvXvo83y4lEMiAjWlYUOQ61rt
xWuocN8+8CL5AdAKMQVl7AOQ0m+QCNcwqTsxvriG48ZrZOCNLwOxJDPn98eQ/GhM
3jaLzVAJfgVq+FV5mtPorP/MpcxxJm3ptK3R2q0JcQX+v/UzvrgL4FVZJYNNxh/p
Bv7XLjfm46vCDjtc/DY3jp7GYrQWf2/cio1QNor15sK7vRyz5jD4sYvtYQGTvM6k
moLMJWkM0ePhxoDHZsGN6WZcU9DxrzeGjvilyq5gCgUV656pheSlMD3KaQCw7Gs8
K1PMdjE3W5A3C9X2L72OQA7xPrxALNkixRqkm+hFi/L1rEH/N5lOew==
=+mkR
-----END PGP PUBLIC KEY BLOCK-----
adinanta@ubuntu:~$ 

atau export ke file

adinanta@ubuntu:~$ gpg --output anakin-public.asc --export 28F756E5

3.Kirim fingerprint ke penerima atau koresponden kita melalui jalur yang berbeda seperti SMS atau whatsapp

4.Penerima kemudian menyimpan public key kita ke dalam sebuah file dengan ekstensi .asc atau apabila sudah dikirim dalam format file dapat mengunduhnya ke lokal komputer

5.Setelah itu penerima atau koresponden kita melakukan import sesuai dengan langkah yang dijelaskan di Import Public key.

Windows:

Mendistribusikan public key menggunakan windows sangat sederhana yaitu dengan menggunakan program kleopatra. Ikuti langkah berikut untuk mendistribusikannya ke key server atau secara manual melalui email.

Mengunggah ke Key Server

1.Melalui program kleopatra, klik kanan di certificate yang baru saja kita buat dan kemudian pilih publish on server

publish ke key server

2.Kemudian akan muncul peringatan untuk membuat revocation certificate sebelum mengunggah public key ke key server. Pembuatan revocation certificate akan kita bahas pada bagian selanjutnya di Membuat Certificate Revocation

peringatan cert revoke

3.Apabila sukses, maka kleopatra akan memberikan Informasi berikut

sukses publikasi

4.Untuk memastikan public key kita telah tersedia di key server, kita bisa menggunakan fitur search key

search key

5.Apabila kita perhatikan, terdapat dua public key dengan email dan nama yang sama. Untuk memastikan validitas public key yang akan kita gunakan, klik tombol details dan more details. Status public key dapat terlihat dimana certificate anakin.basuki78@gmail.com yang diterbitkan sehari sebelumnya telah direvoke dan tidak bisa digunakan lagi

revoke kleopatra

Mengirim public key melalui email

1.Melalui program kleopatra, klik kanan certificate dan pilih menu details

detail certificate

2.Kemudian klik export untuk melihat public key dalam format ASCII.

public key export

3.Copy dan paste public key ke email atau simpan ke text file dengan ekstensi .asc kemudian kirim file tersebut ke koresponden kita

4.Catat fingerprint public key dan kemudian kirim Informasi tersebut ke koresponden melalui jalur lain seperti SMS atau whatsapp.

public key export

Validasi Public Key melalui fingerprint secara manual perlu dilakukan untuk memastikan kita mengunduh dan menggunakan Public Key milik pihak yang ingin berkomunikasi dengan kita. Teknik ini akan kita bahas secara lengkap pada bagian Import Public Key

c. Membuat Certificate Revocation

Langkah selanjutnya adalah membuat Certificate Revocation guna mengantisipasi hilangnya atau tercurinya private key. Sertifikat ini dibutuhkan untuk mencabut atau membatalkan public key yang telah disimpan dan tersebar di semua GPG key server.

Tanpa Certificate Revocation, kita tidak bisa membatalkan public key milik kita karena key server tidak bisa meng-authentikasi permintaan tersebut tanpa adanya Certificate Revocation.

Berikut langkah untuk membuat Certificate Revocation beradasarkan platform yang digunakan:

Setelah proses pembuatan Certificate Rovacation selesai dan tersimpan dalam file, pindahkan file tersebut ke media lain seperti USB atau print di kertas kemudian simpan di tempat aman.

Jangan pernah mempublikasikan atau memberikan revocation certificate kepada orang lain karena certificate tersebut dapat digunakan untuk membatalkan public key yang ada di key server. Dalam panduan ini saya menampilkan revocation certificate sebagai contoh dan keypair anakin.basuki78@gmail tidak pernah saya gunakan untuk berkomunikasi ke koresponden saya

Command Prompt:

Gunakan opsi --armor dan --output untuk menyimpan Revocation Certificate ke file dalam format ASCII. Pada bagian akhir, masukan alamat email yang kita gunakan saat membuat key pair sebelumnya

gpg --gen-revoke --armor --output=RevocationCertificate.asc anakin.basuki78@gmail.com  

Konfirmasi pembuatan revocation certificate untuk key ID 2048R/28F756E5 akan muncul seperti dibawah ini

sec  2048R/28F756E5 2018-05-10 Anakin Basuki <anakin.basuki78@gmail.com>

Create a revocation certificate for this key? (y/N) y

Setelah menjawab y, pilih alasan untuk membuat revocation certificate. Dalam hal ini kita akan memilih alasan nomor 1

Please select the reason for the revocation:
  0 = No reason specified
  1 = Key has been compromised
  2 = Key is superseded
  3 = Key is no longer used
  Q = Cancel
(Probably you want to select 1 here)
Your decision? 1
Enter an optional description; end it with an empty line:
> 

Kemudian gpg akan meminta kita untuk memasukan passphrase atau password yang telah dibuat sebelumnya untuk melindungi private key.

You need a passphrase to unlock the secret key for
user: "Anakin Basuki <anakin.basuki78@gmail.com>"
2048-bit RSA key, ID 28F756E5, created 2018-05-10

gpg: gpg-agent is not available in this session
Enter passphrase:

Apabila passphrase sesuai, gpg akan membuat revocation certificate dan menyimpannya dalam current directory atau lokasi dimana kita menjalankan perintah gpg dan kemudian menampilkan Informasi berikut

Revocation certificate created.

Please move it to a medium which you can hide away; if Mallory gets
access to this certificate he can use it to make your key unusable.
It is smart to print this certificate and store it away, just in case
your media become unreadable.  But have some caution:  The print system of
your machine might store the data and make it available to others!

Berikut contoh revocation certificate yang telah dibuat

adinanta@ubuntu:~$ ls
RevocationCertificate.asc

adinanta@ubuntu:~$ cat RevocationCertificate.asc 
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1
Comment: A revocation certificate should follow

iQEfBCABAgAJBQJa9Ml4Ah0CAAoJEDixftAo91blrLMH/1eHl49mMIiq68+ecXSN
FVg3dRlpShyzYU26cuYcwZvD9ukEd8LRN0iek+kpzVJIwKtk/EN2/N8VFZq08lC6
RYwdEr9QkT62ePgxepyEzaqTDJjOMS8LBff61VS/adwZdLvscyTNBDSJQEkU91xU
5nf7LgRHQELF5bcXp1D8jU6bvwW+J5D63vYh4N2hhA5crXrHO07LQkfkfdYD3uH7
3DpZhUb142Tg+iQovFkL1ZU1FmsDstcziwGdSS3RIYAK6uur40kPylXW4WKZfkNH
ZCQCa15NfA4VMbHF5+t7OwOaHnULzukwx38bUOin1NLxWmURbwxV1lff6sexUnc1
P+4=
=Xfig
-----END PGP PUBLIC KEY BLOCK-----
adinanta@ubuntu:~$ 

Simpan file RevocationCertificate.asc di tempat yang aman dan kemudian hapus dari tempat dimana kita membuat sertifikat ini.

Windows:

Berikut langkah untuk membuat Certificate Revocation melalui program kleopatra

1.Melalui program kleopatra, klik kanan certificate dan pilih menu details

detail certificate

2.Klik “Generate Revocation Certificate”

generate revoke

3.Simpan Certificate Revocation ke file

generate revoke

4.Masukan passphrase untuk membuka private key kita

generate revoke

5.Pembuatan Certificate Revocation berhasil

generate revoke

d. Backup Keypair

Backup terhadap keypair perlu dilakukan untuk memastikan ketersediannya. Apabila keypair hilang maka kita tidak bisa melakukan dekripsi terhadap data yang telah dienkripsi menggunakan public key kita.

e. Import Public Key

Agar kita bisa mengenkripsi data yang ditujukan untuk pihak lain, kita harus terlebih dahulu import public key yang bersangkutan. Proses import harus dilakukan dengan baik agar kita bisa memastikan bahwa Public Key ini sesungguhnya milik koresponden yang dimaksud.

Salah satu metodenya adalah dengan membandingkan fingerprint yang dikirim melalui SMS atau whatsapp dengan hasil fingerprint atas public key yang baru saja diimport.

Ikuti langkah berikut untuk import public key sesuai dengan metode yang diinginkan.

Pengecekan fingerprint dilakukan secara manual yaitu membandingkan fingerprint yang diberikan oleh responden dengan hasil fingerprint yang tecetak saat proses import.

Command Prompt:

a.Import key

Harrys-MacBook-Pro:~ harryadinanta$ gpg --import anakin-public.asc 
gpg: key 38B17ED028F756E5: public key "Anakin Basuki <anakin.basuki78@gmail.com>" imported
gpg: Total number processed: 1
gpg:               imported: 1
Harrys-MacBook-Pro:~ harryadinanta$ 

b.Periksa fingerprint

Harrys-MacBook-Pro:~ harryadinanta$ gpg --fingerprint  anakin.basuki78@gmail.com
pub   rsa2048 2018-05-10 
      81DE A834 2BD5 55D4 E917  75E8 38B1 7ED0 28F7 56E5
uid           Anakin Basuki <anakin.basuki78@gmail.com>

Penerima memastikan nilai yang berada di tengah sesuai dengan nilai fingerprint yang dikirim melalui SMS atau whatsapp yaitu 81DEA8342BD555D4E91775E838B17ED028F756E5

Windows:

Menggunakan program kleoptra, lakukan langkah berikut

1.Klik “File” dan kemudian “Import”

import key

2.Pilih file Public Key yang ingin diimport

import key

3.Kemudian akan tampil proses sertifikasi untuk memastikan public key yang bersangkutan adalah benar

import key

4.Klik “yes” dan akan terlihat Informasi berikut

import key

5.Apabila kita telah memvalidasi keabsahan public key yang ingin diimport dengan membandingkan fingerprint serta informasi yang terkait lainnya, klik “Next”

6.Kemudian pilih “Certify for myself”

import key

7.Masukan passphrase agar kita dapat menggunakan private key kita untuk menandatangani public key koresponden yang kita import.

import key

8.Proses import dan sertifikasi telah selesai

f. Mengenkripsi & Mendekripsi

Fungsi utama dari GPG adalah mengenkripsi dan mendekripsi data. Fitur tambahan seperti tanda tangan digital juga merupakan bagian penting dari GPG yang akan kita bahas selanjutnya.

Seperti yang telah dijelaskan pada bagian awal panduan, GPG menyediakan dua sistem enkripsi yaitu Asymmetric atau Public-key Encryption dan Symetric atau shared-key Encryption. Dalam bagian ini kita akan menggunakan Public-Key untuk mengenkripsi dan mendekripsi data.

Ikuti langkah berikut untuk mengenkripsi dan mendekripsi data menggunakan metode yang diinginkan.

Proses enkripsi dan dekripsi menggunakan sistem Public-Key dapat diringkas sebagai berikut:

  1. Budi yang ingin mengirim data rahasi ke wati akan terlebih dahulu melakukan enkripsi terhadap data tersebut menggunakan Public Key milik wati. Public key ini telah diimport oleh Budi ke laptopnya dengan cara yang telah dijelaskan sebelumnya
  2. Budi kemudian mengirim data yang telah dienkripsi ke Wati
  3. Wati kemudian menerima data tersebut dari Budi dan kemudian mendekripsinya menggunakan Private key milik Wati

Command Prompt:

Enkripsi

Windows:

Enkripsi

Lakukan langkah berikut dari “File Explorer”

1.Klik kanan file yang ingin dienkripsi dan kemudian pilih “More GpgEX option” dan “Encrypt”

Enkrip

2.Kemudian pastikan “Enrypt for others” diisi dengan email atau nama penerima data yang akan dienkripsi dan juga lokasi output file yang telah dienkripsi. Nama penerima atau recipient yang diingikan hanya muncul apabila public key milik yang bersangkutan telah diimport

Enkrip

3.Kemudian masukan passphrase untuk membuka private key milik kita untuk melakukan signing atau tanda tangan digital.

Enkrip

4.Kemudian akan tampil konfirmasi bahwa proses enkripsi selesai dan file sudah bisa dikirim ke pihak yang dituju

Enkrip

Enkrip

Dekripsi

Langkah selanjutnya adalah proses dekripsi terhadap data yang ditujukan untuk kita. Data ini tentunya berasal dari pihak lain yang mengenkripsinya menggunakan public key kita. Untuk itu kita perlu melakukan dekripsi menggunakan private key milik kita

Lakukan langkah berikut dari “File Explorer”

1.Klik kanan file yang ingin didekripsi dan kemudian pilih “More GpgEX option” dan “Decrypt and verify”

Dekripsi

2.Kemudian akan tampil konfirmasi lokasi direktori yang ingin kita gunakan untuk menyimpan hasil dekripsi

Dekripsi

3.Setelah proses dekripsi selesai, kita dapat membaca file tersebut dalam format plaintext. GPG kemungkinan akan menanyakan passphrase sebelum proses dekripsi

Dekripsi

e. Revoke Public Key

list fingerprint key id

adinanta@ubuntu:~$ gpg --fingerprint anakin.basuki78@gmail.com
pub   2048R/28F756E5 2018-05-10
      Key fingerprint = 81DE A834 2BD5 55D4 E917  75E8 38B1 7ED0 28F7 56E5
uid                  Anakin Basuki <anakin.basuki78@gmail.com>
sub   2048R/2B274FD0 2018-05-10

adinanta@ubuntu:~$

revoke public key

adinanta@ubuntu:~$ ls
RevocationCertificate.asc
adinanta@ubuntu:~$ 
adinanta@ubuntu:~$ gpg --import RevocationCertificate.asc 
gpg: key 28F756E5: "Anakin Basuki <anakin.basuki78@gmail.com>" revocation certificate imported
gpg: Total number processed: 1
gpg:    new key revocations: 1
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
adinanta@ubuntu:~$ 

Memastikan public key telah direvoke

adinanta@ubuntu:~$ gpg --list-key anakin.basuki78@gmail.com
pub   2048R/28F756E5 2018-05-10 [revoked: 2018-05-10]
uid                  Anakin Basuki <anakin.basuki78@gmail.com>

adinanta@ubuntu:~$ 

search key server

public key belum direvoke di key server

syncronize hasil revoke ke key server

adinanta@ubuntu:~$ gpg --send-keys 28F756E5
gpg: sending key 28F756E5 to hkp server keys.gnupg.net
adinanta@ubuntu:~$ 

check hasil revoke di key server

public key telah direvoke di key server

Import Key