Tác giả gốc: lightclients
Nguồn gốc: Twitter
Biên soạn bởi: MetaCat
Sau EIP-3074, chữ ký xấu có thể làm mất số dư trên tài khoản Ethereum của bạn.
Vâng đúng vậy.
Đồng tác giả EIP-3074 đang ở đây! Trước khi mọi thứ trở nên mất kiểm soát hơn nữa, hãy để tôi tạm gác lại mối lo ngại này trong giây lát.
Trước hết: Hiện tại tôi chưa nghe nói về bất kỳ ví nào hỗ trợ ký dữ liệu không có tiền tố. Điều này có nghĩa là hiện tại không có ví nào hỗ trợ EIP-3074. Bất kể bạn duyệt qua bao nhiêu bảng điều khiển hay bao nhiêu tính năng nâng cao bạn bật. Tin nhắn cho EIP-3074 không thể được ký vào lúc này.
Thông báo bạn đăng nhập để "đăng nhập" dapp sử dụng tiêu chuẩn hoàn toàn khác với EIP-3074, dựa trên EIP-191. Điều này sẽ thêm dữ liệu sau vào tin nhắn đã ký của bạn:
0x19 <0x45 (E)> <thereum Tin nhắn đã ký:\n" + len(tin nhắn)> <dữ liệu để ký
Đây là lý do tại sao không thể lừa ai đó đã đăng nhập vào dapp để thực sự ký một giao dịch Ethereum hợp lệ.
Các giao dịch được bắt đầu bằng một giá trị một byte:
0x01 - 2930 tx0x02 - 1559 tx0x03 - 4844 tx
Để biết thêm thông tin, hãy xem: https://github.com/ethereum/execution-specs/tree/master/lists/signature-types
EIP-3074 có kế hoạch sử dụng tiền tố 0x04. Điều này sẽ phân biệt nó với tất cả các loại dữ liệu có thể ký được khác trong Ethereum. Ví phải chủ động lựa chọn cho phép người dùng ký những tin nhắn này.
Dựa trên cách cụ thể mà ví tích hợp EIP-3074, nó có thể khiến người dùng dễ bị lợi dụng hơn. Để hiểu điều này, chúng tôi cần đảm bảo rằng chúng tôi hiểu cách hoạt động của chữ ký EIP-3074.
Thông báo xác thực xây dựng chữ ký có các trường sau. Điều quan trọng là nó bao gồm địa chỉ người gọi. Đây là địa chỉ duy nhất mà AUTH coi chữ ký là hợp lệ.

Để một tài khoản cạn số dư, cả hai điều sau đây phải đúng:
1) Ví cần cho phép người dùng đăng nhập vào bất kỳ địa chỉ người gọi nào,
2) Người dùng không được xác minh xem người gọi (người gọi) có đáng tin cậy hay không.
Điều này có nghĩa là sẽ không có vấn đề gì nếu người dùng thực hiện bất kỳ lệnh nào trong số chúng.
Chúng tôi muốn phần mềm ví hiểu được: EIP-3074 Invoker giống với phần mở rộng của mã phần mềm ví hơn là hợp đồng. Ví không cho phép người dùng tự do chạy mã tùy ý và truy cập PK (khóa riêng) của họ; tương tự, họ không được phép người dùng tự ý ủy quyền tài khoản Ethereum của mình.
Do đó, nếu phần mềm ví tích hợp EIP-3074 một cách không an toàn và người dùng không xác minh người gọi mà họ đang tương tác thì phần mềm đó có thể ủy quyền cho một người gọi độc hại. Tuy nhiên, nó vẫn có thể được hoàn tác bằng cách gửi một tx từ EOA. Điều này sẽ thu hồi tất cả chữ ký AUTH "đang tiến hành".
Ít nhất, phần mềm ví sẽ khiến việc ký tin nhắn EIP-3074 trở thành một vấn đề lớn, giống như việc xuất khóa riêng của bạn là một vấn đề lớn.
Giả sử ví tích hợp 3074 một cách an toàn thì tài khoản vẫn có thể bị xâm phạm. Đây là thuộc tính cơ bản của giao dịch số lượng lớn. Nó cho phép bạn gửi nhiều hành động một cách dễ dàng, giống như nó cho phép kẻ tấn công lừa bạn gửi một loạt tài sản đến địa chỉ mà chúng kiểm soát.
Phần mềm ví phải hiển thị rõ ràng mọi hành động bạn đang ký. Bằng cách này, thật dễ dàng để nhận thấy "Tôi chỉ định thực hiện một giao dịch, nhưng yêu cầu chữ ký này đã khiến tôi thực hiện thêm hàng chục giao dịch nữa". Điều này không thể được phát hiện nếu việc xử lý hàng loạt được thực hiện thông qua việc ký tên mù.
Có, EIP-3074 rất tin tưởng vào ví này. Tuy nhiên, chúng tôi đã tin tưởng họ một cách an toàn bằng khóa riêng của mình! Không có mức độ tin cậy cao hơn.
EIP-3074 có thể được tích hợp và sử dụng một cách an toàn. Nếu bất kỳ ví nào có thắc mắc về cách thực hiện việc này, vui lòng liên hệ với chúng tôi. Với tư cách là tác giả của EIP-3074, chúng tôi hiện đang xem xét cách chúng tôi có thể hỗ trợ tốt nhất trong giai đoạn tiếp theo của quá trình phát triển tiêu chuẩn.
Chúng tôi đã dành rất nhiều thời gian trong vài năm qua để phát triển các kịch bản giả định về cách nó có thể được sử dụng và lạm dụng. Chúng tôi rất vui mừng khi những ý tưởng này đang bắt đầu được đưa vào sản xuất. Nhưng chúng tôi cũng nhận ra rằng đây là phần khó nhất.
Để tóm tắt mối lo ngại sau EIP-3074 rằng một chữ ký xấu có thể làm cạn kiệt số dư tài khoản Ethereum của bạn:
- Hiện tại ví không hỗ trợ chữ ký loại EIP-3074, theo định dạng mới.
- EIP-3074 Trường người gọi trong chữ ký rất quan trọng. Một người gọi xấu có thể ăn cắp tiền của bạn.
- Ví cần đảm bảo địa chỉ người gọi là đáng tin cậy. Điều này tương tự như cách các ví hiện ngăn chặn việc thực thi mã tùy ý.
- Các giao dịch hàng loạt trong EIP-3074 vẫn mở ra một thế giới nơi các tác nhân độc hại có thể lừa bạn ký các giao dịch chuyển tài sản. Ví cần hiển thị rõ ràng điều gì sẽ xảy ra khi tin nhắn EIP-3074 được ký.
- Có, chúng tôi có mức độ tin cậy cao đối với ví, nhưng người dùng đã ủy thác cho họ khóa riêng của họ, đây là mức độ tin cậy cao nhất.

EIP-3074 và EIP-4337
EIP-3074 là một điều rất tốt cho các nhà cung cấp Trừu tượng tài khoản vì nó rất có lợi cho khách hàng của chúng tôi.
- ERC-4337 là cách tốt nhất để giới thiệu cho người dùng mới về không gian tiền điện tử.
- EIP-3074 là cách tốt nhất để đưa người dùng hiện tại vào Tài khoản thông minh.
