Todistukset

Todistus edustaa vahvistettua väitettä tai lausuntoa Solana Attestation System -järjestelmässä. Todistukset luovat valtuutetut allekirjoittajat tunnistetiedon alla, ja ne noudattavat tiettyä skeemaa. Jokainen todistus sisältää väitteen varsinaisen datan ja metatiedot sen luomisesta ja voimassaolosta.

Rakenne

Attestation-rakenne edustaa todistusta Solana Attestation System -järjestelmässä. Jokainen todistus linkittyy tunnistetietoon, skeemaan ja sisältää todistetun datan yhdessä metatietojen kanssa sen luomisesta ja voimassaoloajasta.

Tyyppimäärittelyt

Attestation

export type Attestation = {
discriminator: number; // Internal discriminator
nonce: Address; // Unique identifier for the attestation
credential: Address; // Associated credential address
schema: Address; // Associated schema address
data: ReadonlyUint8Array; // Attestation data
signer: Address; // Address of the signer who created the attestation
expiry: bigint; // Expiration timestamp
tokenAccount: Address; // Associated token account
};

AttestationArgs

export type AttestationArgs = {
discriminator: number;
nonce: Address;
credential: Address;
schema: Address;
data: ReadonlyUint8Array;
signer: Address;
expiry: number | bigint; // Can be either number or bigint
tokenAccount: Address;
};

Metodit

Todistusten hakeminen

MetodiKuvausParametritPalauttaa
fetchAttestationHakee yksittäisen todistuksen sen osoitteellarpc: RPC-konteksti, address: Todistuksen osoite, config?: HakukonfiguraatioPromise<Account<Attestation>>
fetchMaybeAttestationHakee todistuksen turvallisesti, palauttaa null jos ei löydyrpc: RPC-konteksti, address: Todistuksen osoite, config?: HakukonfiguraatioPromise<MaybeAccount<Attestation>>
fetchAllAttestationHakee useita todistuksia niiden osoitteillarpc: RPC-konteksti, addresses: Todistusten osoitteiden taulukko, config?: HakukonfiguraatioPromise<Account<Attestation>[]>
fetchAllMaybeAttestationHakee useita todistuksia turvallisesti, ohittaa löytymättömätrpc: RPC-konteksti, addresses: Todistusten osoitteiden taulukko, config?: HakukonfiguraatioPromise<MaybeAccount<Attestation>[]>

Serialisointi

MetodiKuvausParametritPalauttaa
getAttestationEncoderHakee todistusdatan enkooderinEi mitäänEncoder<AttestationArgs>
getAttestationDecoderHakee todistusdatan dekooderinEi mitäänDecoder<Attestation>
getAttestationCodecHakee todistusdatan koodekkinEi mitäänCodec<AttestationArgs, Attestation>

Käyttöesimerkit

Yhden todistuksen hakeminen

const attestation = await fetchAttestation(rpc, attestationAddress);
console.log("Attestation nonce:", attestation.nonce);

Useiden todistusten hakeminen

const attestations = await fetchAllAttestation(rpc, [
attestation1Address,
attestation2Address
]);
attestations.forEach((attestation) =>
console.log("Attestation:", attestation.nonce)
);

Turvallinen haku

const attestation = await fetchMaybeAttestation(rpc, attestationAddress);
if (attestation) {
console.log("Attestation found:", attestation.nonce);
} else {
console.log("Attestation not found");
}

Tärkeää huomioitavaa

  • discriminator-kenttää käytetään sisäisesti, eikä sitä tule muokata
  • nonce tarjoaa yksilöllisen tunnisteen jokaiselle todistukselle
  • credential- ja schema-kentät linkittävät todistuksen siihen liittyvään valtuutustietoon ja skeemaan
  • data-kenttä sisältää varsinaisen todistustiedon ja se tulee koodata/purkaa asianmukaisesti skeeman mukaisesti
  • signer:n on oltava yksi liittyvän valtuutustiedon valtuutetuista allekirjoittajista
  • expiry määrittää, milloin todistus vanhenee
  • tokenAccount linkittää todistuksen tiettyyn token account-tiliin
  • Todistuksia voivat luoda ainoastaan liittyvän valtuutustiedon valtuutetut allekirjoittajat
  • Todistustiedon on oltava liittyvän skeeman määrittämän rakenteen mukainen

Is this page helpful?

Sisällysluettelo

Muokkaa sivua

Hallinnoi

© 2026 Solana Foundation.
Kaikki oikeudet pidätetään.
Yhdistä