GNU/Linux >> Belajar Linux >  >> Linux

Cara Menandatangani File Secara Digital di Linux menggunakan GnuPg (Tanda Tangan Digital)

Karena banyak organisasi beralih dari dokumen kertas ke dokumen digital, tanda tangan digital diperlukan untuk mengelola dokumen digital sensitif apa pun. Tanda tangan digital dapat digunakan untuk mengotentikasi sumber pesan, sehingga penerima dapat memutuskan apakah akan mempercayai pengirim atau tidak. Saat ini, ini paling banyak digunakan untuk distribusi perangkat lunak dan transaksi keuangan.

Dalam kriptografi kunci publik, dimungkinkan untuk menggunakan kunci pribadi untuk menandatangani file. Siapa pun yang memiliki kunci publik terkait dapat memeriksa apakah file telah ditandatangani oleh kunci pribadi. Siapa pun yang tidak memiliki kunci pribadi tidak dapat memalsukan tanda tangan seperti itu.

Tanda tangan digital dapat digunakan untuk autentikasi pengirim dan non-penolakan. Penanda tangan tidak dapat mengklaim bahwa mereka tidak menandatangani dokumen.

Saat ini, tanda tangan digital memainkan peran kunci dalam distribusi perangkat lunak. Saat Anda menginstal perangkat lunak apa pun dari mirror debian, setelah perangkat lunak diunduh, perangkat tersebut akan memverifikasi apakah perangkat lunak tersebut berasal dari sumber tepercaya dengan memverifikasi tanda tangan, sehingga memastikan bahwa paket tersebut berasal dari sumber tepercaya.

Sekarang, kita akan melihat berbagai metode untuk menandatangani dokumen menggunakan alat GnuPG.

Jika Anda baru mengenal alat GnuPG, Anda harus terlebih dahulu memahami cara menggunakan perintah gpg dasar.

Tanda tangan digital, mengesahkan dan memberi cap waktu pada dokumen. Jika dokumen diubah dengan cara apa pun, verifikasi tanda tangan akan gagal.

1. Buat tanda tangan digital untuk sebuah file

Untuk menandatangani dokumen secara digital, opsi tanda-tanda digunakan. Anda akan diminta memasukkan frasa sandi untuk membuka kunci pribadi yang digunakan untuk menandatangani dokumen.

$ gpg --sign file.txt

You need a passphrase to unlock the secret key for
user: "lakshmanan (This is lakshmans key) "
2048-bit RSA key, ID 3630F8D6, created 2012-12-30

Enter passphrase:

Sekarang akan membuat file bernama "file.txt.gpg" dalam format biner. File input dikompresi sebelum menandatangani file.

2. Verifikasi tanda tangan digital

Diberikan dokumen yang ditandatangani, Anda dapat memverifikasi tanda tangan menggunakan opsi –verifikasi.

$ gpg --verify file.txt.gpg

gpg: Signature made Saturday 12 January 2013 11:17:46 PM IST using RSA key ID 3630F8D6
gpg: Good signature from "lakshmanan (This is lakshmans key) "

Perintah di atas memverifikasi bahwa tanda tangan yang dibuat baik.

3. Ekstrak dokumen dari file

Untuk mengekstrak dokumen asli dari file yang ditandatangani, gunakan opsi –decrypt. Anda dapat menggunakan –output untuk menentukan file output untuk menyimpan konten file yang sebenarnya.

$ gpg --output doc.txt --decrypt file.txt.gpg

gpg: Signature made Saturday 12 January 2013 11:17:46 PM IST using RSA key ID 3630F8D6
gpg: Good signature from "lakshmanan (This is lakshmans key) "

Sekarang dokumen yang sebenarnya akan disimpan dalam file doc.txt.

4. Untuk menghapus tanda tangani dokumen

Penggunaan tanda tangan digital yang umum adalah untuk mengirim E-Mail. Dalam kasus seperti itu, tidak diinginkan untuk mengompres file dalam biner dan menandatanganinya. Anda dapat menggunakan opsi –clearsign untuk membuat file dibungkus dengan tanda tangan lapis baja ASCII.

$ gpg --output file.sig --clearsign file.txt

Sekarang file ASCII bernama file.sig akan dibuat yang berisi tanda tangan digital dan file itu sendiri.

$ cat file.sig

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

This is a test file
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)

iQEcBAEBAgAGBQJQ8af1AAoJEHUf3BE2MPjWJ6QIAIoM7vZlvVD4PR4TgqKkUAr5
S4Pc/7tjkEquBcPfzHgm6MPdTd7kIvUzwHNkkST0FyB2cLzvx8wNf7Zp/kDYL0Uz
/7UCocMPsDBYHasUY4XRfCDUkF0ER/NAFdiL9AUTvQf6oQxwuQG9sWxb6tcK8eiV
U7BBvQvMl6RszP+e7VXgcDbNeYMrTDwrivP9BKwAFuBtZmRg0vQKnjenUyVJL6gJ
tndkwtOd1XGpc5ZKCTRSKOoTonuUQAD1q0Pi6nmeaNskSqwVOxzQcV6lQ8nHJTh2
XfKSAopNriv405YfC1KO5H2Ffzee2jx+o3HqxfU1vQbHtP7uf4QqxUc2HtDnRNQ=
=PN+K
-----END PGP SIGNATURE-----

Memverifikasi dokumen bertanda tangan jelas mirip dengan memverifikasi dokumen bertanda biner.

5. Buat tanda tangan terpisah

Dalam kasus tanda tangan terpisah, file baru dibuat sebagai tanda tangan. Anda dapat menggunakan opsi –detach-sign untuk membuat tanda tangan terpisah.

$ gpg --armor --detach-sig file.txt

Sekarang file ASCII bernama file.txt.asc akan dibuat yang berisi tanda tangan terpisah. Anda dapat menggunakan –output untuk mengubah nama file tanda tangan yang terpisah.

6. Verifikasi tanda tangan yang terpisah

Untuk memverifikasi tanda tangan yang terpisah, Anda harus memiliki file tanda tangan dan file data.

$ gpg --verify file.txt.asc file.txt

gpg: Signature made Sunday 13 January 2013 12:13:59 AM IST using RSA key ID 3630F8D6
gpg: Good signature from "lakshmanan (This is lakshmans key) "

Mari kita coba mengedit file.txt. Tambahkan beberapa konten ke file.txt dan coba verifikasi tanda tangan.

$ echo "Append" >> file.txt

$ gpg --verify file.txt.asc file.txt
gpg: Signature made Sunday 13 January 2013 12:13:59 AM IST using RSA key ID 3630F8D6
gpg: BAD signature from "lakshmanan (This is lakshmans key) "

Sekarang verifikasi gagal mengatakan tanda tangan BURUK karena kontennya dimodifikasi.

7. Mengenkripsi dan Menandatangani dokumen

Di salah satu postingan kami sebelumnya, kami juga membahas secara detail tentang cara mengenkripsi dan mendekripsi file menggunakan GnuPG. Namun, jika Anda ingin mengenkripsi dan menandatangani dokumen secara bersamaan, lakukan hal berikut:

$ gpg --sign --encrypt --recipient raman file.txt

Perintah di atas mengenkripsi file.txt dan menandatangani dokumen secara digital. Penerima dapat memverifikasi tanda tangan dan mendekripsi dokumen menggunakan opsi –dekripsi.


Linux
  1. Cara membagi iso atau file menggunakan perintah 'split' di Linux

  2. Cara membuat file sparse di Linux menggunakan perintah 'dd'

  3. Bagaimana cara melampirkan file menggunakan perintah mail di Linux?

  1. Cara Enkripsi dan Dekripsi file/folder di Linux menggunakan GnuPG

  2. Bagaimana Mengganti Nama File di Linux?

  3. Cara Mengenkripsi dan Mendekripsi File menggunakan GnuPG di Linux

  1. Cara memindahkan file di Linux

  2. Bagaimana cara menyalin file melalui FTP menggunakan Ubuntu Linux?

  3. Cara edit file excel (xlsx) menggunakan shell linux