Shima Capital CTO: Phản ánh về sự kiện Curve, tại sao chúng ta cần Bảo vệ thời gian chạy?

Tác giả gốc: Carl Hua, đối tác và CTO của Shima Capital

Sau lần khai thác lại Curve gần đây, tôi ngẫm nghĩ về khoảng thời gian làm việc tại JPL NASA, nơi tôi đã học được các nguyên tắc chính để phát triển phần mềm đáng tin cậy và linh hoạt. Đối với ngành công nghiệp tiền điện tử, những hiểu biết sâu sắc này hiện quan trọng hơn bao giờ hết và đây là lý do tại sao:

Cuối cùng, chỉ có hai loại phần mềm mà mọi người thực sự quan tâm: phần mềm có thể giết chết bạn và phần mềm có thể khiến bạn mất tiền.

Phần lớn ngân sách (80%+) dành cho phần mềm quan trọng của bất kỳ máy hàng không vũ trụ nào không được phân bổ cho việc phát triển mà dành cho việc tích hợp và thử nghiệm. Nếu phần mềm bị lỗi, các phương tiện bay sẽ từ trên trời rơi xuống - máy bay chiến đấu, máy bay không người lái, tàu vũ trụ, v.v.

Hầu hết mã trong phần mềm hàng không vũ trụ (nếu được phân loại là mô-đun quan trọng) đều tuân thủ các tiêu chuẩn phát triển/kiểm tra cực kỳ nghiêm ngặt, chẳng hạn như DO-178 Cấp BA. Không chỉ mỗi dòng mã cần được kiểm tra mà nếu có logic lồng nhau thì từng điều kiện logic cũng được kiểm tra cụ thể.

Tại JPL NASA, triết lý viết phần mềm du hành vũ trụ tiên tiến không phải là viết mã đẹp nhất, sạch nhất mà là viết mã dễ kiểm tra đơn vị. Tại sao? Rất đơn giản: khi bạn gửi một con tàu vũ trụ vào không gian, bạn chỉ có một cơ hội và không ai muốn mạo hiểm với xác suất thất bại cao. Đây là logic tương tự như các chuỗi khối, vì mã bất biến là tính năng quan trọng của chúng và chúng ta chỉ có một cơ hội duy nhất để chi tiêu tiền của mình một cách chính xác trong mỗi giao dịch, vậy tại sao chúng ta không coi trọng quá trình phát triển dApps hơn?

Mặc dù có các quy trình kiểm tra mã, kiểm tra và phát triển nghiêm ngặt, những phương tiện này rõ ràng là không đủ để giảm thiểu tất cả các lỗi và cuộc tấn công, vì trên thực tế, việc loại bỏ tất cả các lỗi thời gian chạy thông qua kiểm tra và kiểm tra là không thể. Vậy làm thế nào để chúng ta bảo vệ phần mềm của mình khỏi bị lỗi?

Bảo vệ thời gian chạy

Bảo vệ thời gian chạy là một kỹ thuật bảo mật giúp bảo vệ các ứng dụng phần mềm khỏi các cuộc tấn công độc hại trong khi chúng đang chạy. Nguyên tắc của nó là thực hiện phát hiện theo thời gian thực khi mã thực sự đang chạy và phân tích hành vi thực tế của chương trình để bảo vệ chương trình khỏi các cuộc tấn công và dữ liệu độc hại.

Các biện pháp bảo vệ trong thời gian chạy cho phần mềm có độ tin cậy cao đòi hỏi nỗ lực và thiết kế đáng kể vì chúng là tuyến phòng thủ cuối cùng để đảm bảo rằng phần mềm không rơi vào trạng thái không xác định hoặc bị lỗi. Đây không chỉ là một lập luận, mà là thực tiễn đã được chứng minh qua nhiều thập kỷ.

Ngày nay trong Web3, tôi nghĩ các ứng dụng DeFi cần có độ tin cậy cao như nhau và nên xem xét cách tiếp cận tương tự. Tuy nhiên, do những hạn chế tiềm tàng của nó, EVM không được thiết kế để xử lý các tác vụ phức tạp như bảo vệ thời gian chạy. Vì vậy, làm thế nào để chúng tôi cung cấp bảo vệ thời gian chạy?

Một cách là thông qua lập trình Aspect, Aspects được thiết kế bởi mạng chuỗi khối Artela, có thể chuyển ngữ cảnh thực thi trong vòng đời của bất kỳ giao dịch hợp đồng thông minh nào để thực hiện kiểm tra nâng cao về trạng thái thời gian thực của chương trình. Artela cung cấp một thiết kế bảo vệ thời gian chạy độc đáo thông qua khả năng tương thích Aspect và EVM, đồng thời nó có cơ hội trở thành nền tảng tương lai của bảo mật hợp đồng thông minh được mã hóa.

Artela đã công bố cách sử dụng cụ thể của Aspect trong việc ngăn chặn các cuộc tấn công vào lại Curve trong bài viết sau và hy vọng có thể giao tiếp cùng nhau!

"Lỗ hổng trình biên dịch chưa được giải quyết? Runtime Protection hiện thực hóa việc kiểm soát và bảo vệ rủi ro trên chuỗi DeFi》

liên kết gốc

Xem bản gốc
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
  • Phần thưởng
  • Bình luận
  • Chia sẻ
Bình luận
0/400
Không có bình luận
  • Ghim
Giao dịch tiền điện tử mọi lúc mọi nơi
qrCode
Quét để tải xuống ứng dụng Gate
Cộng đồng
Tiếng Việt
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)