Atestações

Uma atestação representa uma declaração ou afirmação verificada no Sistema de Atestação Solana. As atestações são criadas por signatários autorizados sob uma credencial e seguem um esquema específico. Cada atestação contém os dados reais da declaração e metadados sobre sua criação e validade.

Estrutura

A estrutura Attestation representa uma atestação no Sistema de Atestação Solana. Cada atestação está vinculada a uma credencial, esquema, e contém os dados atestados juntamente com metadados sobre sua criação e período de validade.

Definições de Tipo

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;
};

Métodos

Buscar Atestações

MétodoDescriçãoParâmetrosRetorna
fetchAttestationBusca uma única atestação pelo seu endereçorpc: Contexto RPC, address: Endereço da atestação, config?: Configuração de buscaPromise<Account<Attestation>>
fetchMaybeAttestationBusca uma atestação com segurança, retorna null se não encontradarpc: Contexto RPC, address: Endereço da atestação, config?: Configuração de buscaPromise<MaybeAccount<Attestation>>
fetchAllAttestationBusca múltiplas atestações pelos seus endereçosrpc: Contexto RPC, addresses: Array de endereços de atestações, config?: Configuração de buscaPromise<Account<Attestation>[]>
fetchAllMaybeAttestationBusca múltiplas atestações com segurança, ignora as não encontradasrpc: Contexto RPC, addresses: Array de endereços de atestações, config?: Configuração de buscaPromise<MaybeAccount<Attestation>[]>

Serialização

MétodoDescriçãoParâmetrosRetorna
getAttestationEncoderObtém o codificador para dados de atestaçãoNenhumEncoder<AttestationArgs>
getAttestationDecoderObtém o decodificador para dados de atestaçãoNenhumDecoder<Attestation>
getAttestationCodecObtém o codec para dados de atestaçãoNenhumCodec<AttestationArgs, Attestation>

Exemplos de Uso

Buscando uma Única Atestação

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

Buscando Múltiplas Atestações

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

Busca Segura

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

Notas Importantes

  • O campo discriminator é usado internamente e não deve ser modificado
  • O nonce fornece um identificador único para cada atestação
  • Os campos credential e schema vinculam a atestação à sua credencial e esquema associados
  • O campo data contém os dados reais da atestação e deve ser devidamente codificado/decodificado de acordo com o esquema
  • signer deve ser um dos signatários autorizados da credencial associada
  • expiry determina quando a atestação se torna inválida
  • tokenAccount vincula a atestação a uma token account específica
  • As atestações só podem ser criadas por signatários autorizados da credencial associada
  • Os dados da atestação devem estar em conformidade com a estrutura definida pelo esquema associado

Is this page helpful?

Índice

Editar Página
© 2026 Fundação Solana. Todos os direitos reservados.