Attestasyonlar

Bir attestasyon, Solana Attestasyon Sisteminde doğrulanmış bir iddiayı veya beyanı temsil eder. Attestasyonlar, bir kimlik belgesi altında yetkili imzalayıcılar tarafından oluşturulur ve belirli bir şemayı takip eder. Her attestasyon, iddianın gerçek verilerini ve oluşturulması ile geçerliliğine ilişkin meta verileri içerir.

Yapı

Attestation yapısı, Solana Attestasyon Sistemindeki bir attestasyonu temsil eder. Her attestasyon bir kimlik belgesine ve şemaya bağlanır, attestasyonlu verileri ve oluşturulması ile geçerlilik süresine ilişkin meta verileri içerir.

Tür Tanımları

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

Metodlar

Attestasyonları Getirme

MetodAçıklamaParametrelerDöndürür
fetchAttestationAdresi ile tek bir attestasyonu getirirrpc: RPC bağlamı, address: Attestasyon adresi, config?: Getirme yapılandırmasıPromise<Account<Attestation>>
fetchMaybeAttestationGüvenli şekilde bir attestasyon getirir, bulunamazsa null döndürürrpc: RPC bağlamı, address: Attestasyon adresi, config?: Getirme yapılandırmasıPromise<MaybeAccount<Attestation>>
fetchAllAttestationAdresleri ile birden fazla attestasyon getirirrpc: RPC bağlamı, addresses: Attestasyon adresleri dizisi, config?: Getirme yapılandırmasıPromise<Account<Attestation>[]>
fetchAllMaybeAttestationGüvenli şekilde birden fazla attestasyon getirir, bulunamayanları atlarrpc: RPC bağlamı, addresses: Attestasyon adresleri dizisi, config?: Getirme yapılandırmasıPromise<MaybeAccount<Attestation>[]>

Serileştirme

MetodAçıklamaParametrelerDöndürür
getAttestationEncoderAttestasyon verileri için kodlayıcıyı alırYokEncoder<AttestationArgs>
getAttestationDecoderAttestasyon verileri için kod çözücüyü alırYokDecoder<Attestation>
getAttestationCodecAttestasyon verileri için codec'i alırYokCodec<AttestationArgs, Attestation>

Kullanım Örnekleri

Tek Bir Doğrulamayı Getirme

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

Birden Fazla Doğrulamayı Getirme

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

Güvenli Getirme

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

Önemli Notlar

  • discriminator alanı dahili olarak kullanılır ve değiştirilmemelidir
  • nonce her doğrulama için benzersiz bir tanımlayıcı sağlar
  • credential ve schema alanları, doğrulamayı ilişkili kimlik bilgisi ve şema ile bağlar
  • data alanı gerçek doğrulama verilerini içerir ve şemaya göre uygun şekilde kodlanmalı/çözülmelidir
  • signer ilişkili kimlik bilgisinin yetkili imzalayıcılarından biri olmalıdır
  • expiry doğrulamanın ne zaman geçersiz hale geleceğini belirler
  • tokenAccount doğrulamayı belirli bir token account ile bağlar
  • Doğrulamalar yalnızca ilişkili kimlik bilgisinin yetkili imzalayıcıları tarafından oluşturulabilir
  • Doğrulama verileri, ilişkili şema tarafından tanımlanan yapıya uygun olmalıdır

Is this page helpful?

İçindekiler

Sayfayı Düzenle
© 2026 Solana Vakfı. Tüm hakları saklıdır.