Bagaimana Enkripsi Kunci Publik Memastikan Integritas Data

Diterbitkan: 2021-07-30

Data membutuhkan keamanan, dan keamanan membutuhkan enkripsi.

Antara lain,   enkripsi   memainkan peran penting dalam memastikan keamanan data. Ini adalah proses mengubah data menjadi bentuk yang tidak dapat dipahami yang hanya dapat didekodekan atau didekripsi dengan bantuan kunci kriptografi.

Kunci kriptografi adalah urutan karakter acak yang dihasilkan dalam mekanisme enkripsi. Ini digunakan untuk mengubah plaintext menjadi ciphertext selama enkripsi. Anda dapat menggunakan kunci yang sama (enkripsi simetris) atau kunci yang berbeda (enkripsi asimetris) untuk mengubah ciphertext menjadi plaintext.

Enkripsi menyembunyikan pesan yang sebenarnya dan mengubahnya menjadi ciphertext, sehingga tidak dapat dibaca. Enkripsi kunci publik adalah salah satu metode di mana Anda dapat mengenkripsi pesan. Anggap saja sebagai kunci dengan dua kunci (kunci publik dan kunci pribadi). Jika pengguna menguncinya dengan kunci pertama, hanya kunci kedua yang dapat membukanya dan sebaliknya.

Ada metode lain, seperti enkripsi simetris atau enkripsi hibrid, tetapi untuk saat ini, mari kita lihat lebih dalam enkripsi kunci publik dan lihat bagaimana ini memberikan keamanan data yang lebih tinggi kepada pengguna.

Apa itu enkripsi kunci publik?

Enkripsi kunci publik, juga dikenal sebagai kriptografi kunci publik, adalah teknik yang menggunakan dua kunci berbeda untuk mengenkripsi dan mendekripsi data. Salah satunya adalah kunci publik, yang tersedia untuk semua orang untuk mengenkripsi data, dan yang lainnya adalah kunci pribadi yang dapat digunakan oleh inisiator untuk dekripsi.

Enkripsi kunci publik juga disebut enkripsi asimetris, dan digunakan secara luas untuk Transport Layer Security/Secure Sockets Layer (TLS/SSL), memungkinkan Hypertext Transfer Protocol Secure (HTTPS).

Komponen enkripsi kunci publik meliputi:

  • Plaintext: Data yang dapat dibaca dan dimengerti yang diberikan ke algoritma enkripsi sebagai input
  • Ciphertext: Output enkripsi dalam bentuk yang tidak dapat dipahami yang tidak dapat dipahami orang
  • Kunci pribadi: Kunci rahasia yang umumnya digunakan untuk memecahkan kode pesan terenkripsi
  • Kunci publik: Tersedia untuk semua orang dan biasanya digunakan untuk mengenkripsi pesan

Untuk mengirim pesan terenkripsi, Anda bisa mendapatkan kunci publik penerima dari direktori bersama. Gunakan kunci ini untuk mengenkripsi pesan sebelum mengirimnya, dan penerima akan dapat mendekripsinya menggunakan kunci pribadi yang sesuai.

Sebaliknya, jika Anda mengenkripsi pesan menggunakan kunci pribadi Anda, penerima hanya dapat mendekripsi dengan kunci publik Anda, memverifikasi identitas Anda. Anda dapat melakukan enkripsi dan dekripsi secara otomatis tanpa mengunci dan membuka kunci pesan secara fisik. Organisasi memanfaatkan   perangkat lunak enkripsi   untuk melakukan proses dengan mulus dan memastikan perlindungan data yang kuat.

42%

responden menggunakan enkripsi untuk data pelanggan.

Sumber: Institut Ponemon

Enkripsi kunci publik adalah proses enkripsi yang sangat aman karena tidak memerlukan siapa pun untuk membagikan kunci pribadi mereka, mencegah kebocoran dalam transmisi. Ini memberikan keamanan informasi yang substansial dan menjaga data Anda terlindungi dari akses yang tidak sah.

Komunikasi internet menggunakan infrastruktur kunci publik (PKI) untuk mengelola identitas dan keamanan. Enkripsi asimetris, atau kriptografi kunci publik, adalah teknologi inti yang memungkinkan PKI dan menawarkan perlindungan data di berbagai saluran komunikasi.

Di sisi lain, enkripsi kunci pribadi, juga dikenal sebagai enkripsi simetris, adalah teknik yang menggunakan satu kunci untuk enkripsi dan dekripsi. Keduanya   enkripsi simetris dan asimetris   memiliki manfaat dan tantangan berdasarkan kasus penggunaan, dan kekuatan enkripsi yang diperlukan.

Bagaimana cara kerja kriptografi kunci publik?

Enkripsi kunci publik memungkinkan pengguna untuk mengirim dan menerima pesan secara diam-diam. Ini memungkinkan setiap pengguna untuk membuat sepasang kunci: kunci publik dan kunci pribadi . Kedua kunci memiliki hubungan matematis di antara mereka. Tetapi kunci pribadi tidak dapat secara praktis diturunkan dari kunci publik.

Dalam enkripsi, seseorang dapat menggunakan kunci publik untuk mengenkripsi pesan, yang hanya dapat didekode oleh kunci pribadi penerima. Selain itu, jika pengirim mengenkripsi pesan menggunakan kunci pribadinya, penerima yang dituju dapat memverifikasi identitas pengirim dengan kunci publik.

Enkripsi kunci publik menggunakan panjang kunci yang lebih panjang yang mengurangi kerumitan manajemen kunci karena tidak perlu bertukar kunci. Setelah kunci digunakan untuk mengenkripsi pesan, itu tidak dapat digunakan untuk mendekripsi.

Beberapa properti penting dari sistem enkripsi kunci publik meliputi:

  • Enkripsi dan dekripsi menggunakan kunci yang berbeda
  • Penerima memiliki kunci pribadi unik mereka yang digunakan untuk mendekripsi pesan
  • Penerima mempublikasikan kunci publik mereka, yang tersedia untuk semua orang
  • Pihak ketiga yang tepercaya memastikan bahwa kunci publik milik orang atau entitas tertentu untuk menghindari spoofing
  • Menurunkan kunci pribadi dari kunci publik tidak dimungkinkan dalam enkripsi kunci publik

Aplikasi kriptografi kunci publik

Kriptografi kunci publik biasanya digunakan dalam tanda tangan elektronik. Tanda tangan elektronik adalah metode matematika untuk mengotentikasi identitas pengguna dan menjaga integritas dokumen, pesan, atau perangkat lunak. Bisnis umumnya menggunakan   perangkat lunak tanda tangan elektronik   untuk mendistribusikan dokumen yang sensitif secara hukum dan mengumpulkan tanda tangan digital.

Selain tanda tangan digital, kriptografi kunci publik digunakan untuk berbagai tujuan lain.

Keamanan server web

Kriptografi kunci publik adalah inti dari protokol kriptografi TLS/SSL yang memastikan keamanan di HTTPS. Ini melindungi server web dan klien dari   serangan dunia maya   seperti serangan man-in-the-middle, di mana penyerang memotong komunikasi dan mengakses konten dalam pesan. Enkripsi simetris juga merupakan bagian dari HTTPS, di mana enkripsi kunci publik digunakan untuk bertukar kunci antara dua pihak, dan kunci enkripsi simetris digunakan untuk melakukan proses enkripsi.

Enkripsi kunci publik memungkinkan pengirim dan penerima memverifikasi identitas mereka dan membantu mereka bertahan dari serangan man-in-the-middle. Keamanan server web juga memberikan keuntungan tambahan dalam memberi peringkat situs web yang lebih tinggi di mesin pencari seperti Google atau Bing.

Otentikasi identitas

Data kini telah melampaui jaringan tradisional ke cloud, perangkat seluler, perangkat Internet of Things (IoT), dan berbagai teknologi lainnya, sehingga sangat penting bagi perusahaan untuk mengamankan identitas. Kriptografi kunci publik memungkinkan organisasi menggunakan sertifikat identitas digital dan mengganti kata sandi untuk mencegah   serangan kekerasan.

Enkripsi email

Enkripsi email menggunakan kriptografi kunci publik untuk mengotentikasi dan mengenkripsi pesan. Ini membantu melindungi pesan dari entitas yang tidak sah atau peretas jahat. Bahkan jika penyerang memecahkan sandi server surat, mereka tidak akan dapat melihat konten email karena enkripsi.

Kamu dapat memakai   perangkat lunak enkripsi email   untuk melindungi email dengan menandatanganinya secara digital untuk membuktikan identitas Anda dan mengenkripsi konten dan lampiran saat transit atau disimpan di server.

Metode enkripsi email aman seperti sertifikat ekstensi surat internet (S/MIME) aman/multiguna menggunakan infrastruktur kunci publik untuk memverifikasi identitas digital dan memfasilitasi enkripsi.

Cryptocurrency

Cryptocurrency terkemuka seperti Bitcoin mengandalkan kriptografi kunci publik untuk transaksi. Pengguna memiliki kunci publik yang tersedia untuk semua orang, dan kunci pribadi dirahasiakan, yang digunakan untuk melakukan transaksi.

Misalnya, dalam buku besar Bitcoin, output transaksi yang tidak terpakai (UTXO) ditautkan ke kunci publik. Saat pengguna A ingin menandatangani transaksi dengan pengguna B, pengguna A menggunakan kunci pribadi mereka untuk membelanjakan UTXO dan menghasilkan UTXO baru yang ditautkan ke kunci publik pengguna B.

Algoritma kriptografi kunci publik

Algoritma kriptografi kunci publik adalah fungsi matematika yang digunakan untuk mengenkripsi pesan atau memverifikasi asal pesan dan identitas pengirim.

Beberapa algoritma kriptografi kunci publik yang populer disebutkan di bawah ini.

Algoritma Rivest-Shamir-Adleman (RSA)

Algoritma RSA memungkinkan orang untuk menggunakan kunci publik dan pribadi untuk mengenkripsi pesan. Ketika kunci publik digunakan untuk enkripsi, kunci pribadi akan memfasilitasi dekripsi dan sebaliknya. Karena properti ini, ia telah menjadi algoritma enkripsi asimetris yang populer. RSA membantu organisasi memastikan kerahasiaan, integritas, non-penyangkalan, dan keaslian informasi dalam penyimpanan atau transit.

Algoritma RSA menghasilkan kunci publik dan kunci pribadi melalui proses kompleks yang melibatkan pemfaktoran bilangan bulat besar, yang merupakan produk dari dua bilangan prima besar.

Mari kita ambil contoh untuk melihat bagaimana algoritma RSA bekerja. Pertimbangkan dua bilangan prima, p dan q, yang dibangkitkan menggunakan algoritma uji primalitas Rabin-Miller. Algoritma uji primalitas Rabin-Miller menentukan apakah suatu bilangan prima. Gunakan dua bilangan prima dan hitung modulusnya, n.

Modulus, N = pxq

Kunci publik terdiri dari modulus (n) dan eksponen publik, e. Nilai eksponen publik tidak perlu menjadi rahasia karena kunci publik dapat diakses oleh semua orang. Biasanya diambil sebagai 65537.

Kunci privat terdiri dari modulus (n) dan eksponen privat, d (dihitung dari algoritma Extended Euclidean untuk menemukan invers perkalian terhadap jumlah n).

Tahukah kamu? Itu   Algoritma Euclidean yang diperluas   merupakan perpanjangan dari algoritma Euclidean. Ini menghitung pembagi persekutuan terbesar dari dua bilangan bulat (a,b) dan koefisien identitas Bezout (x, y) sehingga ax + by = Pembagi persekutuan terbesar (a,b).

Kunci RSA biasanya panjangnya 1024 bit, tetapi pemerintah dan beberapa industri menginstruksikan untuk menggunakan panjang kunci minimum 2048-bit untuk keamanan lebih.

Algoritma Tanda Tangan Digital (DSA)

Algoritma tanda tangan digital adalah jenis algoritma enkripsi kunci publik yang digunakan untuk menghasilkan tanda tangan elektronik. Ini memungkinkan penerima untuk mengotentikasi identitas pengirim dan memverifikasi asal pesan.

Menariknya, pengirim menempatkan tanda tangan elektronik mereka menggunakan kunci pribadi, yang diverifikasi oleh penerima dengan bantuan kunci publik yang sesuai. Sederhananya, kunci pribadi itu unik; satu orang atau entitas dapat menggunakannya. Namun, siapa pun dapat mengautentikasi asal pesan dengan menggunakan kunci publik karena tersedia untuk semua orang.

Algoritma tanda tangan digital memiliki kekuatan yang cukup besar, tetapi panjang tanda tangan lebih kecil dibandingkan dengan algoritma tanda tangan lainnya. Kecepatan komputasinya lebih sedikit dan membutuhkan lebih sedikit ruang penyimpanan untuk bekerja.

Kriptografi kurva eliptik (ECC)

Kriptografi kurva eliptik adalah jenis kriptografi kunci publik yang memanfaatkan teori kurva eliptik untuk menghasilkan kunci kriptografi yang efisien dan efektif. ECC menghasilkan kunci melalui sifat persamaan kurva eliptik daripada memfaktorkan dua bilangan prima besar.

Ini populer di aplikasi seluler karena memberikan tingkat keamanan yang sama dengan kunci 256-bit yang diberikan oleh sistem enkripsi lain seperti RSA dalam kunci 3072-bit saat menggunakan daya komputasi yang lebih rendah dan sumber daya baterai yang lebih sedikit.

Dengan terus berkembangnya komputasi kuantum, algoritme enkripsi yang bergantung pada pemfaktoran dua bilangan prima besar akan lebih mudah diuraikan. Distribusi kunci ECC dan Quantum mungkin merupakan alternatif terbaik yang masuk akal untuk mengenkripsi data di masa mendatang.

Enkripsi kunci publik di TLS/SSL

Protokol TLS/SSL memastikan komunikasi terenkripsi melalui jaringan dengan memanfaatkan enkripsi asimetris dan simetris sambil memberikan keamanan data ujung ke ujung. Dalam jabat tangan TLS/SSL, server menyetujui algoritma enkripsi. Situs web memiliki sertifikat TLS/SSL yang menyimpan kunci publik, sedangkan kunci pribadi dipasang di server.

Komunikasi antara klien dan server kemudian dienkripsi menggunakan algoritma enkripsi yang ditentukan dan kunci yang sesuai. Ini membantu melindungi pesan dari peretas jahat dan memastikan saluran komunikasi yang aman antara klien dan server.

Dalam keseluruhan proses, tidak perlu berbagi kunci kriptografi. Kunci publik penerima digunakan untuk mengenkripsi pesan yang hanya dapat didekripsi oleh kunci pribadi penerima.

Apakah enkripsi kunci publik lebih baik?

Enkripsi kunci publik terdiri dari penggunaan dua kunci, menyediakan metode enkripsi yang lebih aman dibandingkan dengan kriptografi simetris. Tidak ada pertukaran kunci pribadi dalam enkripsi kunci publik yang menghilangkan kerumitan manajemen kunci. Sebaliknya, jika kunci pribadi yang dipertukarkan dicuri atau hilang dalam enkripsi simetris, itu dapat membahayakan seluruh sistem.

Enkripsi kunci publik mengikuti proses enkripsi pesan yang kompleks. Dibutuhkan lebih banyak waktu dan terkadang sumber daya daripada enkripsi simetris, tetapi menawarkan keamanan yang lebih besar. Itu juga mengenkripsi sertifikat digital sehingga peretas jahat tidak dapat mengaksesnya bahkan jika mereka disusupi.

Pilihan enkripsi akan tergantung pada penggunaannya, sifat perangkat, penyimpanan, daya komputasi, tingkat keamanan, dan elemen lainnya. Tergantung pada parameter ini, baik sistem kriptografi simetris dan asimetris akan memiliki kelebihan dan kekurangannya masing-masing.

Manfaat kriptografi kunci publik

Keuntungan utama menggunakan kriptografi kunci publik adalah keamanan data yang lebih kuat. Karena pengguna tidak perlu membagikan, mengirimkan, atau mengungkapkan kunci pribadi mereka kepada siapa pun, ini mengurangi risiko penjahat dunia maya mencegat kunci pribadi dan mengeksploitasinya untuk mendekripsi komunikasi.

Ini membantu pengguna untuk mengatasi tantangan distribusi utama yang dihadapi saat menggunakan enkripsi kunci pribadi. Ini memungkinkan organisasi untuk menjaga kerahasiaan dan integritas data, menghasilkan keamanan informasi yang lebih kuat.

Terlepas dari kekuatan enkripsi, kriptografi kunci publik juga memungkinkan pengguna untuk memverifikasi identitas digital sambil memastikan tidak ada penolakan. Manfaat ini telah menjadikan kriptografi asimetris sebagai pilihan enkripsi yang populer, mulai dari Pretty Good Privacy (PGP) dan HTTPS hingga OpenID Connect (OIDC) dan WebAuthN.

Tantangan enkripsi kunci publik

Kerugian utama dari enkripsi kunci publik adalah kecepatan rendah di mana proses enkripsi dilakukan. Dibutuhkan lebih banyak daya komputasi dan penyimpanan untuk menghasilkan sepasang kunci publik dan kunci pribadi, menggunakan operasi matematika kompleks yang melibatkan faktorisasi bilangan prima yang cukup besar.

Beberapa tantangan umum dari enkripsi kunci publik adalah:

  • Serangan brute force: Komputer dengan daya komputasi tinggi dapat menemukan detail kunci pribadi dengan menjalankan pencarian ekstensif.
  • Tantangan pemrograman: Pengguna mungkin harus melalui kurva pembelajaran yang curam sebelum menerapkan kriptografi kunci publik.
  • Manajemen kunci : Meskipun tidak diperlukan pertukaran kunci antara pengirim dan penerima, inisiator tetap harus mengelola kunci pribadi mereka sendiri.

Lengkapi untuk mengenkripsi

Lengkapi tumpukan keamanan Anda dengan perangkat lunak enkripsi dan lindungi setiap komunikasi yang perlu dijaga kerahasiaannya. Enkripsi kunci publik akan membantu Anda memberikan perlindungan yang kuat pada data Anda dengan mekanisme enkripsi yang kompleks.

Bersamaan dengan enkripsi dan pertahanan keamanan lainnya, Anda akan dapat memastikan keamanan informasi dan mematuhi standar peraturan.

Temukan apa lagi yang Anda perlukan untuk memperkuat keamanan informasi di organisasi Anda.