#newt $NEWT @NewtonProtocol
#newt $JCT
Hari ini saya sedang membaca panduan multi-oracle Newton dan satu kalimat kecil mengubah cara saya berpikir tentang komposisi kebijakan.
Saat sebuah kebijakan mereferensikan beberapa data oracle, Newton menjalankan setiap oracle WASM yang direferensikan terlebih dahulu, menggabungkan semua outputnya menjadi "data.wasm", lalu hanya kemudian mengevaluasi kebijakan Rego.
Jadi menambahkan oracle lain bukan hanya menambahkan kondisi lain.
Itu menambahkan dependensi langsung lain ke jalur otorisasi.
Newton menyarankan menangani kebijakan multi-oracle melalui deny set, di mana setiap oracle dapat memberikan alasan penolakan sendiri dan transaksi hanya diizinkan saat tidak ada yang menolak. Newton juga menyarankan gagal tertutup (fail closed) ketika sebuah oracle mengembalikan error.
Desain itu masuk akal dari perspektif keamanan. Penyedia sanksi yang offline mungkin seharusnya tidak diam-diam mematikan pemeriksaan sanksi. Feed risiko yang rusak seharusnya tidak diperlakukan sebagai bukti bahwa risiko dapat diterima.
Tapi tradeoff-nya terasa berbeda bagi saya hari ini.
Semakin banyak sinyal independen yang diperlukan sebuah kebijakan, semakin kuat cakupannya bisa menjadi, sementara ketersediaannya dapat bergerak ke arah yang berlawanan. Di bawah desain fail-closed, satu penyedia yang tidak tersedia bisa menghentikan seluruh otorisasi bahkan ketika semua sinyal lain terlihat baik.
Belum tentu sebuah kekurangan.
Lebih seperti biaya memperlakukan informasi yang hilang sebagai risiko, bukan sebagai izin.
Saya masih penasaran apakah Newton pada akhirnya akan mendukung eksekusi oracle bersyarat, di mana tipe transaksi menentukan penyedia mana yang benar-benar perlu dijalankan, atau apakah institusi perlu membuat kebijakan terpisah untuk menghindari agar setiap aksi bergantung pada semua oracle.
Apakah komposisi kebijakan yang lebih kuat pada akhirnya menciptakan keamanan yang lebih baik, atau hanya kumpulan sistem yang lebih besar yang semuanya harus tetap online sekaligus?
#Newt @NewtonProtocol
#newt $JCT
Hari ini saya sedang membaca panduan multi-oracle Newton dan satu kalimat kecil mengubah cara saya berpikir tentang komposisi kebijakan.
Saat sebuah kebijakan mereferensikan beberapa data oracle, Newton menjalankan setiap oracle WASM yang direferensikan terlebih dahulu, menggabungkan semua outputnya menjadi "data.wasm", lalu hanya kemudian mengevaluasi kebijakan Rego.
Jadi menambahkan oracle lain bukan hanya menambahkan kondisi lain.
Itu menambahkan dependensi langsung lain ke jalur otorisasi.
Newton menyarankan menangani kebijakan multi-oracle melalui deny set, di mana setiap oracle dapat memberikan alasan penolakan sendiri dan transaksi hanya diizinkan saat tidak ada yang menolak. Newton juga menyarankan gagal tertutup (fail closed) ketika sebuah oracle mengembalikan error.
Desain itu masuk akal dari perspektif keamanan. Penyedia sanksi yang offline mungkin seharusnya tidak diam-diam mematikan pemeriksaan sanksi. Feed risiko yang rusak seharusnya tidak diperlakukan sebagai bukti bahwa risiko dapat diterima.
Tapi tradeoff-nya terasa berbeda bagi saya hari ini.
Semakin banyak sinyal independen yang diperlukan sebuah kebijakan, semakin kuat cakupannya bisa menjadi, sementara ketersediaannya dapat bergerak ke arah yang berlawanan. Di bawah desain fail-closed, satu penyedia yang tidak tersedia bisa menghentikan seluruh otorisasi bahkan ketika semua sinyal lain terlihat baik.
Belum tentu sebuah kekurangan.
Lebih seperti biaya memperlakukan informasi yang hilang sebagai risiko, bukan sebagai izin.
Saya masih penasaran apakah Newton pada akhirnya akan mendukung eksekusi oracle bersyarat, di mana tipe transaksi menentukan penyedia mana yang benar-benar perlu dijalankan, atau apakah institusi perlu membuat kebijakan terpisah untuk menghindari agar setiap aksi bergantung pada semua oracle.
Apakah komposisi kebijakan yang lebih kuat pada akhirnya menciptakan keamanan yang lebih baik, atau hanya kumpulan sistem yang lebih besar yang semuanya harus tetap online sekaligus?
#Newt @NewtonProtocol