Chủ đề thịnh hành
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Ít hơn là an toàn hơn: cách Obsidian giảm thiểu rủi ro từ các cuộc tấn công chuỗi cung ứng
Các cuộc tấn công chuỗi cung ứng là những bản cập nhật độc hại lén lút xâm nhập vào mã nguồn mở được sử dụng bởi nhiều ứng dụng. Đây là cách chúng tôi thiết kế Obsidian để đảm bảo rằng ứng dụng là một môi trường an toàn và riêng tư cho những suy nghĩ của bạn.
Ít hơn là an toàn hơn
Có thể nghe có vẻ hiển nhiên nhưng cách chính mà chúng tôi giảm thiểu rủi ro từ các cuộc tấn công chuỗi cung ứng là tránh phụ thuộc vào mã của bên thứ ba. Obsidian có số lượng phụ thuộc thấp hơn so với các ứng dụng khác trong danh mục của chúng tôi. Xem danh sách các thư viện mã nguồn mở trên trang Credits của chúng tôi.
Các tính năng như Bases và Canvas được triển khai từ đầu thay vì nhập khẩu các thư viện có sẵn. Điều này cho phép chúng tôi kiểm soát hoàn toàn những gì chạy trong Obsidian.
- Đối với các chức năng tiện ích nhỏ, chúng tôi gần như luôn tái triển khai chúng trong mã của mình.
- Đối với các mô-đun trung bình, chúng tôi phân nhánh chúng và giữ chúng trong mã nguồn của mình nếu giấy phép cho phép.
- Đối với các thư viện lớn như pdf.js, Mermaid và MathJax, chúng tôi bao gồm các tệp đã biết tốt, khóa phiên bản và chỉ nâng cấp thỉnh thoảng, hoặc khi có bản sửa lỗi bảo mật. Chúng tôi đọc ghi chú phát hành, xem các thay đổi từ upstream và kiểm tra kỹ lưỡng trước khi chuyển đổi.
Cách tiếp cận này giữ cho đồ thị phụ thuộc của chúng tôi nông với ít phụ thuộc con. Một diện tích bề mặt nhỏ hơn làm giảm khả năng một bản cập nhật độc hại lọt qua.
Những gì thực sự được phát hành trong ứng dụng
Chỉ một vài gói là một phần của ứng dụng bạn chạy, ví dụ: Electron, CodeMirror, moment.js. Các gói khác giúp chúng tôi xây dựng ứng dụng và không bao giờ được phát hành cho người dùng, ví dụ: esbuild hoặc eslint.
Khóa phiên bản và tệp khóa
Tất cả các phụ thuộc đều được khóa phiên bản nghiêm ngặt và cam kết với một tệp khóa. Tệp khóa là nguồn thông tin chính xác cho các bản dựng để chúng tôi có được các cài đặt xác định. Điều này cung cấp cho chúng tôi một dấu vết kiểm toán đơn giản khi xem xét các thay đổi.
Chúng tôi không chạy các kịch bản postinstall. Điều này ngăn các gói thực thi mã tùy ý trong quá trình cài đặt.
Nâng cấp chậm, có chủ đích
Khi chúng tôi thực hiện cập nhật phụ thuộc, chúng tôi:
...

Hàng đầu
Thứ hạng
Yêu thích