Xác thực tin nhắn đã ký bằng cách so sánh khóa công khai được khôi phục từ chữ ký với khóa tài khoản của tài khoản Klaytn.
Tham số
Tên
type
Mô tả
thông báo
chuỗi
Chuỗi tin nhắn thô. Nếu tin nhắn này ở dạng băm với tiền tố dành riêng cho Klaytn, tham số thứ ba sẽ được thông qua dưới dạng true.
chữ ký
đối tượng \
Mảng
address
chuỗi
Địa chỉ của tài khoản đã ký tin nhắn.
isHashed
boolean
(tùy chọn, mặc định: false) Liệu tin nhắn được truyền làm tham số có ở dạng băm với tiền tố "\x19Klaytn Signed Message:\n" + message.length + message hay không.
Giá trị trả về
Promise trả về boolean: Promise sẽ được xử lý bằng một giá trị boolean xác định chữ ký trên tin nhắn có hợp lệ hay không.
Xác thực một giao dịch. Hàm này so sánh các khóa công khai từ khóa tài khoản của tài khoản Klaytn với các khóa công khai được khôi phục từ signatures. Nếu giao dịch được ủy thác phí với biến feePayerSignatures bên trong, hàm này sẽ so sánh các khóa công khai được khôi phục từ feePayerSignatures với các khóa công khai của người trả phí.
Promise trả về boolean: Promise sẽ được xử lý bằng một giá trị boolean xác định liệu giao dịch có hợp lệ hay không.
Ví dụ
validateSender
Xác thực người gửi giao dịch. Hàm này so sánh các khóa công khai của khóa tài khoản của tài khoản Klaytn với các khóa công khai được khôi phục từ signatures.
Promise trả về boolean: Promise sẽ được xử lý bằng giá trị boolean xác định liệu giao dịch có hợp lệ hay không.
Ví dụ
validateFeePayer
Xác thực người trả phí trong giao dịch. Hàm này so sánh các khóa công khai của khóa tài khoản của người trả phí với các khóa công khai được khôi phục từ feePayerSignatures.
// Giao dịch cơ bản sẽ được xác thực bằng `signatures`.
const tx = caver.transaction.valueTransfer.create({...})
> caver.validator.validateTransaction(tx).then(console.log)
// Giao dịch ủy thác phí sẽ được xác thực bằng `signatures` và `feePayerSignatures`.
const tx = caver.transaction.feeDelegatedValueTransfer.create({...})
> caver.validator.validateTransaction(tx).then(console.log)