- Cara yang digunakan Figma saat menjalankan plugin untuk menghilangkan kerentanan keamanan
- Mengompilasi QuickJS, yang ditulis dalam C oleh Fabrice Bellard, ke WebAssembly dan menyediakan binding JavaScript/TypeScript
- Dapat menjalankan JavaScript setingkat ES2020 dengan aman
- Membuat dan memanipulasi nilai di dalam runtime QuickJS
- Menggunakan fungsi host dari dalam QuickJS
- Asyncify: Memungkinkan pemanggilan kode C/C++ yang sinkron dari kode JavaScript yang asinkron serta menunggu hingga eksekusi kode JS asinkron di dalam kode C selesai
1 komentar
Menurut saya ini adalah pendekatan yang sangat bagus dari sisi keamanan untuk sistem yang menjalankan plugin JS di web.
Sepertinya ini juga terhubung dengan pemikiran Ryan Dahl tentang JavaScript Containers.
QuickJS Javascript Engine - mesin JavaScript yang kecil, cepat, dan dapat di-embed
Figma: An update on plugin security
Kode yang mirip dengan ini tetapi diimplementasikan dengan API yang lebih sederhana: define-function : quick.js based sandbox