Dokumentasi SolanaInstruksi
Membuat skema baru yang mendefinisikan struktur dan aturan validasi untuk atestasi. Instruksi ini memungkinkan otoritas kredensial untuk membuat skema yang menentukan field apa yang harus dimuat oleh atestasi dan bagaimana format yang seharusnya.
Parameter
| Parameter | Tipe | Deskripsi |
|---|---|---|
payer | Signer | Akun yang akan membayar transaksi |
authority | Signer | Otoritas dari kredensial |
credential | PublicKey | Pda | Akun kredensial yang akan dikaitkan dengan skema ini |
schema | PublicKey | Pda | Akun skema yang akan dibuat |
systemProgram | PublicKey | Pda | Akun System Program (default ke '11111111111111111111111111111111') |
name | string | Nama skema |
description | string | Deskripsi mendetail tentang tujuan skema |
layout | ReadonlyUint8Array | Definisi layout biner dari skema |
fieldNames | string[] | Nama-nama field dalam skema |
Hasil
Mengembalikan TransactionBuilder yang dapat digunakan untuk membangun dan
mengirim transaksi.
Contoh
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();
Catatan Penting
- Payer harus menjadi penandatangan transaksi
- Authority harus menjadi penandatangan transaksi dan harus menjadi authority dari kredensial
- Akun skema harus dapat ditulis
- Akun kredensial harus dapat dibaca
- Operasi ini memerlukan System Program untuk perhitungan pembebasan rent
- Nama skema sebaiknya deskriptif dan unik dalam kredensial
- Deskripsi harus memberikan informasi yang jelas tentang tujuan dan penggunaan skema
- Layout harus berupa format biner yang valid yang mendefinisikan struktur data atestasi
- Array fieldNames harus sesuai dengan field yang didefinisikan dalam layout
- Skema dapat dijeda nanti jika diperlukan
- Skema dapat diberi versi untuk mendukung evolusi struktur data
- Semua atestasi yang dibuat di bawah skema ini harus sesuai dengan strukturnya
Is this page helpful?