Kunci antarmuka pemrograman aplikasi (API) adalah kode unik yang digunakan oleh API untuk mengidentifikasi aplikasi atau pengguna. Kunci API digunakan untuk melacak dan mengontrol siapa yang menggunakan API dan bagaimana caranya, serta untuk mengautentikasi dan mengotorisasi aplikasi dengan cara yang mirip dengan kata sandi dan login. Kunci API dapat berupa satu kunci atau sekumpulan beberapa kunci. Pengguna harus memperhatikan keamanan mereka untuk melindungi diri dari pencurian dan kebocoran data.

API dan kunci API

Untuk memahami apa itu kunci API, Anda harus melihat API itu sendiri terlebih dahulu. Antarmuka pemrograman aplikasi, atau API, adalah perantara perangkat lunak yang memungkinkan pertukaran informasi antara dua atau lebih aplikasi. Misalnya, API CoinMarketCap memungkinkan aplikasi lain mengambil dan menggunakan data mata uang kripto seperti harga, volume, dan kapitalisasi pasar.

Kunci API dapat berupa satu kunci atau sekumpulan beberapa kunci. Berbagai sistem menggunakan kunci ini untuk mengautentikasi dan mengotorisasi aplikasi, seperti login dan kata sandi. Kunci API digunakan oleh klien API untuk mengautentikasi aplikasi yang memanggil API.

Misalnya, jika Binance Academy ingin menggunakan API CoinMarketCap, maka CoinMarketCap akan membuat kunci API dan menggunakannya untuk mengautentikasi Binance Academy (klien API) yang meminta akses ke API. Saat Binance Academy mengakses API CoinMarketCap, kunci API dikirim ke CoinMarketCap bersama dengan permintaannya.

Dalam contoh ini, hanya Binance Academy yang dapat menggunakan kunci API tanpa membagikannya kepada pihak ketiga. Membagikan kunci API ini akan memungkinkan pihak ketiga mengakses CoinMarketCap dan melakukan tindakan atas nama Binance Academy.

Selain itu, API CoinMarketCap dapat menggunakan kunci API untuk memverifikasi bahwa aplikasi berwenang untuk mengakses sumber daya yang diminta. Pemilik API juga dapat menggunakan kunci API untuk melacak aktivitas API, termasuk jenis permintaan, lalu lintas, dan volume.

Apa itu kunci API

Kunci API digunakan untuk mengontrol dan melacak siapa yang menggunakan API dan bagaimana caranya. Istilah “kunci API” sendiri dapat memiliki beberapa arti. Beberapa sistem hanya memiliki satu kode, sementara sistem lainnya memiliki beberapa kode untuk satu kunci API.

Dengan kata lain, kunci API adalah kode unik atau kumpulan kode unik yang digunakan oleh API untuk mengautentikasi dan mengotorisasi pengguna atau aplikasi yang memanggil. Beberapa kode digunakan untuk otentikasi, sementara yang lain digunakan untuk membuat tanda tangan kriptografi yang mengonfirmasi keabsahan permintaan.

Kode autentikasi ini disebut "kunci API", sedangkan kode untuk membuat tanda tangan kriptografi memiliki berbagai nama seperti "kunci rahasia", "kunci publik", atau "kunci pribadi". Otentikasi melibatkan identifikasi entitas yang terlibat dan mengonfirmasi identitas.

Otorisasi, pada gilirannya, menentukan layanan API yang aksesnya diizinkan. Kunci API berfungsi serupa dengan login dan kata sandi akun, dan juga dapat dihubungkan ke fitur keamanan lainnya untuk meningkatkan keamanan secara keseluruhan.

Pemilik API menghasilkan setiap kunci API khusus untuk entitas tertentu (lebih lanjut tentang ini di bawah), dan setiap kali titik akhir API dipanggil yang memerlukan autentikasi dan/atau otorisasi pengguna, kunci terkait akan digunakan.

Tanda tangan kriptografi

Beberapa kunci API menggunakan tanda tangan kriptografi sebagai lapisan verifikasi tambahan. Saat pengguna ingin meneruskan data tertentu ke API, tanda tangan digital yang dihasilkan oleh kunci berbeda dapat ditambahkan ke permintaan. Dengan menggunakan kriptografi, pemilik API akan dapat memverifikasi bahwa tanda tangan digital cocok dengan data yang dikirim.

Tanda tangan simetris dan asimetris

Kategori kunci kriptografi berikut digunakan untuk menandatangani data yang dikirim melalui API:

Kunci simetris

Mereka melibatkan penggunaan satu kunci rahasia untuk menandatangani data dan memverifikasi tanda tangan. Saat menggunakan kunci simetris, pemilik API menghasilkan kunci API dan kunci rahasia, yang digunakan untuk verifikasi tanda tangan oleh layanan API. Keuntungan utama menggunakan satu kunci adalah mempercepat pembuatan tanda tangan dan proses verifikasi serta memerlukan lebih sedikit daya komputasi. Contoh kunci simetris yang baik adalah HMAC.

Kunci asimetris

Mereka melibatkan penggunaan dua kunci: privat dan publik, yang berbeda satu sama lain, namun memiliki koneksi kriptografi. Kunci pribadi digunakan untuk menghasilkan tanda tangan, dan kunci publik digunakan untuk memverifikasinya. Pemilik API membuat kunci API, dan pengguna membuat kunci pribadi dan publik. Untuk memverifikasi tanda tangan, pemilik API hanya menggunakan kunci publik, sedangkan kunci privat dirahasiakan.

Keuntungan utama menggunakan kunci asimetris adalah peningkatan keamanan dengan memisahkan tugas pembuatan tanda tangan dan verifikasi tanda tangan. Hal ini memungkinkan sistem eksternal untuk memverifikasi tanda tangan tanpa dapat membuatnya. Selain itu, beberapa sistem enkripsi asimetris mendukung penambahan kata sandi ke kunci pribadi. Contohnya adalah pasangan kunci RSA.

Keamanan Kunci API

Keamanan kunci API adalah tanggung jawab pengguna. Kunci API bertindak sebagai kata sandi dan memerlukan perhatian yang sama. Anda tidak boleh membagikan kunci API Anda kepada pihak ketiga, karena hal ini serupa dengan membagikan kata sandi Anda dan dapat membahayakan akun Anda.

Kunci API sering kali menjadi sasaran serangan dunia maya karena dapat digunakan untuk melakukan operasi sistem yang sensitif, seperti meminta informasi pribadi atau melakukan transaksi keuangan. Ada beberapa kasus ketika penyerang menyerang database online dengan kode dan mencuri kunci API.

Pencurian kunci API dapat menimbulkan konsekuensi negatif dan kerugian finansial yang signifikan. Selain itu, beberapa kunci API tidak kedaluwarsa, sehingga penyerang dapat menggunakannya sebelum kunci tersebut dinonaktifkan.

Kiat untuk menggunakan kunci API dengan aman

Kunci API memberikan akses ke data sensitif, sehingga sangat penting untuk menggunakannya dengan aman. Ikuti panduan berikut untuk penggunaan kunci API yang aman:

  1. Cobalah untuk mengubah kunci API secara berkala. Untuk mengubah kunci, Anda harus menghapus kunci API saat ini dan membuat yang baru. Saat menggunakan banyak sistem, menghapus dan membuat kunci API tidaklah sulit. Sama seperti beberapa sistem yang memerlukan perubahan kata sandi setiap 30 hingga 90 hari, pemilik kunci harus mengubah kunci API pada frekuensi yang sama jika memungkinkan.

  2. Buat daftar putih alamat IP. Saat membuat kunci API baru, buat daftar alamat IP yang diizinkan untuk menggunakan kunci ini (daftar putih IP). Selain itu, Anda juga dapat menentukan daftar alamat IP yang diblokir (IP blacklist). Lalu, jika kuncinya dicuri, alamat IP yang tidak dikenal tidak akan bisa menggunakannya.

  3. Gunakan beberapa kunci API. Memiliki beberapa kunci dan mendistribusikan tugas di antara kunci tersebut mengurangi risiko, karena keamanan akun tidak akan bergantung pada satu kunci yang digunakan untuk semua tugas sekaligus. Selain itu, untuk setiap kunci Anda dapat membuat daftar putih alamat IP yang berbeda, sehingga meningkatkan tingkat keamanan secara signifikan.

  4. Pastikan kunci API disimpan dengan aman. Jangan menyimpan kunci di tempat umum, di komputer umum, atau dalam format teks biasa. Untuk meningkatkan keamanan setiap kunci, gunakan enkripsi atau layanan manajemen data rahasia dan berhati-hatilah agar tidak mengungkapkannya secara tidak sengaja.

  5. Jangan bagikan kunci API Anda dengan siapa pun. Memberi seseorang kunci API sama dengan memberi mereka kata sandi. Dalam hal ini, pihak ketiga menerima kemampuan otentikasi dan otorisasi yang sama seperti Anda. Jika terjadi kebocoran data, kunci API dapat dicuri dan digunakan untuk meretas akun Anda. Kunci API hanya boleh digunakan oleh Anda dan sistem yang menghasilkannya.

Jika kunci API Anda jatuh ke tangan pihak ketiga, pastikan untuk menonaktifkannya untuk mencegah kerusakan lebih lanjut. Jika terjadi kerugian finansial, ambil tangkapan layar informasi penting tentang insiden tersebut dan hubungi organisasi terkait, serta ajukan laporan polisi. Dengan cara ini Anda dapat meningkatkan peluang Anda untuk mendapatkan kembali dana yang hilang.

Kesimpulannya

Kunci API menyediakan fungsi autentikasi dan otorisasi, sehingga pengguna harus menyimpannya dengan aman dan menggunakannya dengan hati-hati. Ada banyak tingkatan dan cara untuk mengamankan kunci API. Kunci API harus diperlakukan dengan cara yang sama seperti kata sandi akun Anda.

Bacaan yang direkomendasikan

  • Prinsip keselamatan umum

  • 5 Jenis Penipuan Mata Uang Kripto yang Umum dan Cara Menghindarinya