Poświadczenia

Poświadczenie reprezentuje organ atestacyjny w systemie atestacji Solana. Poświadczenia określają, kto może wydawać atestacje i jakie typy atestacji może wydawać. Każde poświadczenie ma zestaw autoryzowanych podpisujących, którzy mogą tworzyć atestacje pod jego autorytetem.

Struktura

Struktura Credential reprezentuje poświadczenie w systemie atestacji Solana. Każde poświadczenie definiuje organ, który może wydawać atestacje oraz podpisujących autoryzowanych do tego celu.

Definicje typów

Credential

export type Credential = {
discriminator: number; // Internal discriminator
authority: Address; // Authority public key
name: ReadonlyUint8Array; // Credential name
authorizedSigners: Array<Address>; // List of authorized signers
};

Metody

Pobieranie poświadczeń

MetodaOpisParametryZwraca
fetchCredentialPobiera pojedyncze poświadczenie po jego adresierpc: Kontekst RPC, address: Adres poświadczenia, config?: Konfiguracja pobieraniaPromise<Account<Credential>>
fetchMaybeCredentialBezpiecznie pobiera poświadczenie, zwraca null jeśli nie znalezionorpc: Kontekst RPC, address: Adres poświadczenia, config?: Konfiguracja pobieraniaPromise<MaybeAccount<Credential>>
fetchAllCredentialPobiera wiele poświadczeń po ich adresachrpc: Kontekst RPC, addresses: Tablica adresów poświadczeń, config?: Konfiguracja pobieraniaPromise<Account<Credential>[]>
fetchAllMaybeCredentialBezpiecznie pobiera wiele poświadczeń, pomija te nieznalezionerpc: Kontekst RPC, addresses: Tablica adresów poświadczeń, config?: Konfiguracja pobieraniaPromise<MaybeAccount<Credential>[]>

Serializacja

MetodaOpisParametryZwraca
getCredentialEncoderPobiera enkoder dla danych poświadczeniaBrakEncoder<CredentialArgs>
getCredentialDecoderPobiera dekoder dla danych poświadczeniaBrakDecoder<Credential>
getCredentialCodecPobiera kodek dla danych poświadczeniaBrakCodec<CredentialArgs, Credential>

Przykłady użycia

Pobieranie pojedynczego poświadczenia

const credential = await fetchCredential(rpc, credentialAddress);
console.log("Credential name:", credential.name);

Pobieranie wielu poświadczeń

const credentials = await fetchAllCredential(rpc, [
credential1Address,
credential2Address
]);
credentials.forEach((credential) =>
console.log("Credential:", credential.name)
);

Bezpieczne pobieranie

const credential = await fetchMaybeCredential(rpc, credentialAddress);
if (credential) {
console.log("Credential found:", credential.name);
} else {
console.log("Credential not found");
}

Ważne uwagi

  • Pole discriminator jest używane wewnętrznie i nie powinno być modyfikowane
  • Pole authority określa, kto ma kontrolę nad poświadczeniem
  • authorizedSigners to tablica adresów, które są upoważnione do tworzenia atestacji w ramach tego poświadczenia
  • Pole name jest przechowywane jako tablica bajtów i powinno być odpowiednio zakodowane/odkodowane zgodnie z wymaganiami Twojej aplikacji
  • Tylko autoryzowani sygnatariusze mogą tworzyć atestacje w ramach poświadczenia
  • Uprawniony może modyfikować listę autoryzowanych sygnatariuszy

Is this page helpful?

Spis treści

Edytuj stronę

Zarządzane przez

© 2026 Solana Foundation.
Wszelkie prawa zastrzeżone.
Bądź na bieżąco