Cryptosim: coba API Cryptosat

Dec 05 2022
Cryptosat membangun dan meluncurkan satelit kecil ke Low-Earth Orbits (LEO). Di sana, secara fisik di luar jangkauan siapa pun, mereka berfungsi sebagai modul kriptografi paling aman yang melindungi operasi dan protokol sensitif, dan menjalankan fungsi seperti memanen entropi, penyiapan tepercaya untuk protokol kriptografi, atau menandatangani transaksi dan data dari luar angkasa.

Cryptosat membangun dan meluncurkan satelit kecil ke Low-Earth Orbits (LEO). Di sana, secara fisik di luar jangkauan siapa pun, mereka berfungsi sebagai modul kriptografi paling aman yang melindungi operasi dan protokol sensitif, dan menjalankan fungsi seperti memanen entropi, penyiapan tepercaya untuk protokol kriptografi, atau menandatangani transaksi dan data dari luar angkasa.

Sebagian besar pengembang dan pengguna jauh dari industri luar angkasa dan tidak pernah berinteraksi langsung dengan satelit. Inilah sebabnya kami pikir akan sangat membantu untuk memberi pengembang gambaran tentang beberapa kemungkinan, serta kendala bekerja dengan konstelasi satelit.

Dalam postingan ini, kami menyelami Cryptosim (Cryptosat Simulator) — simulator kotak pasir dan tutorial interaktif yang telah kami kembangkan sejak kami memulai Cryptosat. Cryptosim dapat diakses menggunakan browser modern apa pun dan memungkinkan pengembang mempelajari fungsionalitas satelit kami sebelum integrasi aktual apa pun dengan saluran produksi kami.

Tangkapan layar versi pertama Cryptosim yang dikembangkan oleh Gil Shotan.

UI simulator dibagi antara tutorial (di sisi kanan) yang menjelaskan fungsi API yang didukung oleh Cryptosat, peta yang menunjukkan lintasan satelit, dan konsol JS tempat pengguna dapat mencoba API secara terprogram dan berinteraksi dengan yang disimulasikan. satelit untuk meminta statusnya, menandatangani pesan, meminta keacakan, menghasilkan pasangan kunci Delay-Encryption dan banyak lagi.
Tutorial menjelaskan premis umum Cryptosat, mengajarkan tentang jendela komunikasi dan ketersediaan satelit, antarmuka asinkron ke satelit, dan menampilkan berbagai fungsi kriptografi yang didukung oleh Cryptosat, serta cara menggunakannya dalam konteks.
Mari kita lihat contoh Keacakan Publik , juga dikenal sebagai Suar Acak atau VRF(Fungsi Acak yang Dapat Diverifikasi).

Contoh Keacakan Publik. Catatan: di sini, kami menggunakan metode untuk mendapatkan kunci verifikasi respons, tetapi kenyataannya, kunci publik satelit akan disediakan melalui saluran berbeda yang tidak dapat dikontrol oleh man-in-the-middle.

Cryptosat secara berkala menyiarkan suar acak — urutan bit tak terduga yang dihasilkan dari entropi yang diambil dari satelit. Suar ini dapat digunakan untuk menjalankan lotere, menghasilkan pengocokan NFT acak, dan banyak lagi. Memanggil cryptosat.getPublicRandom()mengembalikan suar terbaru yang diterima dari konstelasi satelit Cryptosat.

Dari perspektif fisika, ini sebenarnya menunjukkan pada peta lintasan sebenarnya dari satelit pertama kami, Crypto1, berdasarkan data ( TLE ) yang diambil dari NORAD, sebuah badan AS yang memantau semua objek bergerak di orbit. Saat kami meluncurkan lebih banyak satelit, kami akan menambahkannya di Cryptosim dengan lintasannya masing-masing.

API asinkron

Karena satelit tidak terlihat oleh stasiun bumi 100% dari waktu, terkadang ada penundaan yang signifikan dalam mengeksekusi permintaan pengguna. Oleh karena itu, API satelit tidak sinkron. Fungsi mengembalikan objek permintaan, yang dapat Anda kueri untuk status penyelesaian permintaan dengan memanggil .status()metode. Status permintaan akan tetap Pendingselama satelit berada di luar jangkauan stasiun bumi mana pun. Segera setelah dieksekusi, status akan berubah menjadi Ready. Pengguna kemudian dapat dengan aman memanggil .result()metode tersebut untuk mendapatkan respons satelit.

Menggunakan API permintaan asinkron

Gunakan contoh kasus

Cryptosim menampilkan beberapa kasus penggunaan di mana pengguna mungkin ingin menggunakan layanan Cryptosat. Tema umum untuk mereka semua adalah menggunakan satelit Cryptosat sebagai root-of-trust kriptografi yang tahan rusak, dapat dipercaya, dan aman yang dapat dipercaya untuk beroperasi dengan benar dan memberikan integritas kriptografi karena mereka secara fisik berada di luar jangkauan bahkan sebagian besar musuh yang canggih.

Versi Cryptosim saat ini menyertakan contoh untuk:

  • Keacakan publik (Suar Acak)
  • Keacakan Pribadi — di mana pengguna dapat meminta bit acak untuk dienkripsi ke kunci publik yang mereka berikan dalam permintaan.
  • Mengambil stempel waktu yang ditandatangani — yang dapat digunakan oleh aplikasi yang memerlukan sumber waktu tepercaya atau kontrak pintar yang perlu memastikan waktu tertentu telah berlalu di dunia nyata.
  • Menandatangani data apa pun di luar angkasa
  • Delay Encryption — di mana satelit menghasilkan pasangan kunci kriptografi dan menerbitkan kunci publik. Kunci privat tidak dirilis sebelum jangka waktu tertentu berlalu, mencegah dekripsi prematur dari data apa pun yang dienkripsi ke kunci publik yang dipublikasikan. Ini dapat digunakan, misalnya, dalam lelang, skema pemungutan suara, dan lainnya (kirimkan kepada kami kasus penggunaan yang ANDA sukai!).

API tenang

Selain simulasi mandiri berbasis browser, kami berupaya untuk membuka akses ke RESTful API. API akan memungkinkan akses ke satelit produksi untuk pengguna resmi, serta konstelasi simulasi untuk tujuan pengembangan dan pengujian.

Kontribusi sumber terbuka

Jika Anda tertarik untuk menyumbangkan ide tambahan dan menyarankan kasus penggunaan untuk Cryptosat, Anda dapat bermain dengan kode sumber Cryptosim, yang tersedia di Github kami . Repositori utama adalah cryptosim-tutorialtetapi, tergantung pada bagian yang ingin Anda sesuaikan, Anda mungkin juga ingin memeriksa cryptosimdan cryptosim-visualizationrepositori.

Menggunakan satelit Cryptosat

Ingatlah bahwa intinya adalah mempelajari cara menggunakan API dan kemudian menggunakan satelit Cryptosat yang sebenarnya dan mendapatkan permintaan yang dilayani dari luar angkasa. Hubungi kami di [email protected] untuk informasi lebih lanjut tentang cara berintegrasi dengan sistem produksi kami. Informasi teknis lebih lanjut tentang Cryptosat dan API-nya ada di portal dokumentasi kami .