Tôi đã xem một trình xác thực DUSK bị loại khỏi tập hoạt động trên testnet. Không bị hack. Không bị slash. Chỉ bị loại bỏ. Lý do là tính sẵn sàng (liveness): đã bỏ lỡ quá nhiều phiếu bầu finality trong một khung 28 giờ.
Hệ thống hoạt động đúng như thiết kế. Đó là điều khiến tôi bất an.
Trình xác thực không hề mất phần stake đã khóa của nó. Không có hình phạt mật mã. Không có khóa riêng bị lộ. Chỉ là một lần rời đi yên lặng khỏi vòng đồng thuận. Và đây là phần đã bám lấy tôi: thời gian jailing được đo tương đối so với giá trị StartHeight, giá trị này được đặt lại mỗi lần nhà cung cấp (provider) quay trở lại. Rời đi tạm thời, quay lại, đặt lại đồng hồ, lặp lại. Một người vận hành không ổn định mãn tính có thể né việc bị loại bỏ vĩnh viễn mãi mãi bằng cách không bao giờ ở ngoại tuyến đủ lâu để kích hoạt toàn bộ hình phạt. Con đường thực thi mềm (soft enforcement) là nơi có lỗ hổng.
Tôi cứ nghĩ về lỗ hổng đó khi xem cộng đồng DUSK tranh luận rằng các nhà cung cấp finality nên được xem như hạ tầng (infrastructure) hay như đối tác (partners). Có người trong chat nói: "Nếu hình phạt cho sự không đáng tin là một khoảng thời gian chờ (timeout), thì sự không đáng tin chỉ là một chiến lược với các bước bổ sung." Không ai cười. Bởi ai cũng biết một trình xác thực tự đặt lại đồng hồ jail của mình thì không phải là vi phạm quy định. Đó là việc 'câu giờ' theo nhịp thực thi.
Khoảng cách đó nằm giữa bảo mật kỹ thuật và bảo mật thực tiễn. Cơ chế kích hoạt mật mã cho hành vi double-signing là tuyệt đối, không khoan nhượng, tự động. Còn cơ chế kích hoạt mang tính xã hội cho sự lười biếng là một máy trạng thái (state machine) với nút reset. Một cơ chế bảo vệ mạng khỏi ác ý. Cơ chế kia bảo vệ nó khỏi sự lơ là. Và hiện tại, nút reset lại thuộc về chính người vận hành mà hệ thống được cho là phải kiềm chế.
#dusk $DUSK @Dusk $EDEN $AKE
Hệ thống hoạt động đúng như thiết kế. Đó là điều khiến tôi bất an.
Trình xác thực không hề mất phần stake đã khóa của nó. Không có hình phạt mật mã. Không có khóa riêng bị lộ. Chỉ là một lần rời đi yên lặng khỏi vòng đồng thuận. Và đây là phần đã bám lấy tôi: thời gian jailing được đo tương đối so với giá trị StartHeight, giá trị này được đặt lại mỗi lần nhà cung cấp (provider) quay trở lại. Rời đi tạm thời, quay lại, đặt lại đồng hồ, lặp lại. Một người vận hành không ổn định mãn tính có thể né việc bị loại bỏ vĩnh viễn mãi mãi bằng cách không bao giờ ở ngoại tuyến đủ lâu để kích hoạt toàn bộ hình phạt. Con đường thực thi mềm (soft enforcement) là nơi có lỗ hổng.
Tôi cứ nghĩ về lỗ hổng đó khi xem cộng đồng DUSK tranh luận rằng các nhà cung cấp finality nên được xem như hạ tầng (infrastructure) hay như đối tác (partners). Có người trong chat nói: "Nếu hình phạt cho sự không đáng tin là một khoảng thời gian chờ (timeout), thì sự không đáng tin chỉ là một chiến lược với các bước bổ sung." Không ai cười. Bởi ai cũng biết một trình xác thực tự đặt lại đồng hồ jail của mình thì không phải là vi phạm quy định. Đó là việc 'câu giờ' theo nhịp thực thi.
Khoảng cách đó nằm giữa bảo mật kỹ thuật và bảo mật thực tiễn. Cơ chế kích hoạt mật mã cho hành vi double-signing là tuyệt đối, không khoan nhượng, tự động. Còn cơ chế kích hoạt mang tính xã hội cho sự lười biếng là một máy trạng thái (state machine) với nút reset. Một cơ chế bảo vệ mạng khỏi ác ý. Cơ chế kia bảo vệ nó khỏi sự lơ là. Và hiện tại, nút reset lại thuộc về chính người vận hành mà hệ thống được cho là phải kiềm chế.
#dusk $DUSK @Dusk $EDEN $AKE