Tài liệu SolanaHướng dẫn
Tạo một schema mới định nghĩa cấu trúc và các quy tắc xác thực cho attestation. Lệnh này cho phép các tổ chức cấp chứng chỉ tạo schema để chỉ định các trường mà một attestation nên chứa và cách chúng được định dạng.
Tham số
| Tham số | Loại | Mô tả |
|---|---|---|
payer | Signer | Tài khoản sẽ thanh toán cho giao dịch |
authority | Signer | Quyền hạn của chứng chỉ |
credential | PublicKey | Pda | Tài khoản chứng chỉ mà schema này sẽ được liên kết với |
schema | PublicKey | Pda | Tài khoản schema cần tạo |
systemProgram | PublicKey | Pda | Tài khoản System Program (mặc định là '11111111111111111111111111111111') |
name | string | Tên của schema |
description | string | Mô tả chi tiết về mục đích của schema |
layout | ReadonlyUint8Array | Định nghĩa bố cục nhị phân của schema |
fieldNames | string[] | Tên của các trường trong schema |
Kết quả trả về
Trả về một TransactionBuilder có thể được sử dụng để xây dựng và gửi giao
dịch.
Ví dụ
import { getCreateSchemaInstruction } from "sas-lib";const transaction = getCreateSchemaInstruction({payer: payerSigner,authority: authoritySigner,credential: credentialPublicKey,schema: schemaPublicKey,systemProgram: systemProgramPublicKey,name: "Identity Verification",description: "Schema for verifying user identity information",layout: schemaLayoutBytes,fieldNames: ["fullName", "dateOfBirth", "nationality"]});// Send the transactionawait transaction.sendAndConfirm();
Lưu ý quan trọng
- Người thanh toán phải là người ký giao dịch
- Quyền hạn phải là người ký giao dịch và phải là quyền hạn của chứng chỉ
- Tài khoản schema phải có thể ghi được
- Tài khoản chứng chỉ phải có thể đọc được
- Thao tác này yêu cầu System Program để tính toán miễn trừ rent
- Tên schema nên mang tính mô tả và duy nhất trong chứng chỉ
- Mô tả nên cung cấp thông tin rõ ràng về mục đích và cách sử dụng của schema
- Bố cục phải là định dạng nhị phân hợp lệ xác định cấu trúc của dữ liệu attestation
- Mảng fieldNames phải khớp với các trường được định nghĩa trong bố cục
- Schema có thể được tạm dừng sau này nếu cần
- Schema có thể được phiên bản hóa để hỗ trợ sự phát triển của cấu trúc dữ liệu
- Tất cả attestation được tạo theo schema này phải tuân thủ cấu trúc của nó
Is this page helpful?