object capability demonstration using secure VATs
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 25/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Cần làm rõ
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- javascript
- Lĩnh vực
- distributed-systems, security
Hướng nghiên cứu
Không có tệp dự án hoặc kiểm thử nào được nêu tên. Hãy bắt đầu bằng cách xem xét các ví dụ Dstack hiện có và Endo ocap sandbox, sau đó xác định một minh họa tối thiểu về các vats tách biệt và các tham chiếu đối tượng giữa các instance. Phần hoàn thành phải bao gồm một ví dụ hoạt động cho thấy mã đã được tuần tự hóa hoặc hardened và các tham chiếu nhạy cảm hoạt động như thế nào giữa các sandbox.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
There's a great body of work on object capability languages as a way of managing the risk of running untrusted code modules by only exposing limited fine-grained capabilities to the untrusted code.
But, while the subject is untrusted code, the environment itself in which the code runs, called a "Vat", must be considered trusted.
This is problematic when using cross-vat distributed code, because one malicious vat can steal the "Swiss number" references (random unguessable strings, effectively symmetric keys).
This makes it hard to reconcile object capability languages with smart contracts. In smart contracts we go out of our way to run consensus protocols so that a trusted environment can be built on untrusted nodes, but we can't assume privacy and so we can't use Swiss number references.
So now, by instantiating the vat with Dstack, we might be able to close this gap and draw some more insights or better composition / better hardening as a result.
As a starting point, we might simply run existing ocap sandbox in Dstack, possibly adding a new shim for referencing objects in different Dstack instances as different vats
https://github.com/endojs/endo
A more thoughtful example probably needs to illustrate some pattern of passing serialized/hardened code, containing Swiss numbers or even private keys, between such sandboxes. Needs more thought though
chatgpt discussion:
https://chatgpt.com/share/67ff0b25-b580-8009-a13b-d5ca70cb5fb7
- Ngôn ngữ chính
- Python
- Star
- 27
- Fork
- 26
- Merge trung bình
- 1 ngày 6 giờ
- Pull request đã merge (30 ngày)
- 12
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của Dstack-TEE/dstack-examples
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
Dstack-TEE/dstack-examples#87 · 2 bình luận ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 28/100
Dstack-TEE/dstack-examples#106 · 3 bình luận ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 45/100
Dstack-TEE/dstack-examples#103 · 1 bình luận ·
-
example with use of client sdk Đang mở
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 45/100
-
enhancement help wanted
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
Tất cả issue của Dstack-TEE/dstack-examples
Issue tương tự
-
bug confirmed issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
open-webui/open-webui#30750 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
OpenwaterHealth/openmotion-bloodflow-app#604 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
good first issue
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100