Programy podstawowe

Podsumowanie

Programy podstawowe zapewniają fundamentalną funkcjonalność sieci: zarządzanie kontami (System Program), konsensus (Vote, Stake), optymalizację transakcji (Compute Budget, Address Lookup Table) oraz prywatność (ZK ElGamal Proof). Zawiera referencję instrukcji System Program oraz linki do źródeł wszystkich 7 programów.

System Program

System Program (11111111111111111111111111111111) jest jedynym programem, który może tworzyć nowe konta. Wszystkie nowe konta są początkowo własnością System Program, choć własność zazwyczaj jest zmieniana podczas tworzenia. System Program zużywa DEFAULT_COMPUTE_UNITS (150 CU) na instrukcję.

Referencja instrukcji System Program

InstrukcjaOpis
CreateAccountTworzy nowe konto. Alokuje space bajtów, przypisuje owner i transferuje lamports od płatnika. Nowe konto i płatnik muszą podpisać.
CreateAccountWithSeedTak samo jak CreateAccount, ale adres nowego konta jest wyprowadzany z pubkey konta, ciągu seed oraz programu właściciela. Konto, którego pubkey został użyty do wyprowadzenia adresu, oraz płatnik muszą podpisać.
AssignUstawia właściciela konta. Konto musi podpisać. Brak efektu, jeśli już jest tym właścicielem.
AssignWithSeedTak samo jak Assign, ale dla adresu wyprowadzonego z seed. Konto, którego pubkey został użyty do wyprowadzenia adresu, musi podpisać.
TransferTransferuje lamporty między kontami. Nadawca musi podpisać.
TransferWithSeedTak samo jak Transfer, ale z adresu wyprowadzonego z seed. Konto, którego pubkey został użyty do wyprowadzenia adresu, musi podpisać.
AllocateUstawia długość danych konta. Konto musi podpisać, mieć puste dane i być własnością System Program. Maksymalnie 10 MiB.
AllocateWithSeedTak samo jak Allocate, ale dla adresu wyprowadzonego z seed. Dodatkowo przypisuje właściciela. Konto, którego pubkey został użyty do wyprowadzenia adresu, musi podpisać.
AdvanceNonceAccountZwiększa wartość nonce do bieżącego blockhash. Uprawniony do nonce musi podpisać.
InitializeNonceAccountInicjalizuje konto jako konto nonce z podanym uprawnionym. Konto musi być zwolnione z opłaty rent.
AuthorizeNonceAccountZmienia uprawnionego do nonce. Obecny uprawniony musi podpisać.
WithdrawNonceAccountWypłaca lamporty z konta nonce. Uprawniony musi podpisać. Jeśli konto nie jest zamykane, pozostałe saldo musi pokrywać rent.
UpgradeNonceAccountUaktualnia konto nonce ze starego do bieżącego formatu wersji. Konto musi być zapisywalne i zawierać starą wersję nonce.

Wszystkie podstawowe programy

ProgramID programuOpisŹródło
System11111111111111111111111111111111Tworzy konta, przesyła SOL, alokuje dane i przypisuje własnośćŹródło
VoteVote111111111111111111111111111111111111111Tworzy i zarządza kontami śledzącymi stan głosowania validatorów i nagrodyŹródło
StakeStake11111111111111111111111111111111111111Tworzy i zarządza delegacjami stake do validatorówŹródło
ConfigConfig1111111111111111111111111111111111111Przechowuje dane konfiguracyjne on-chain z kontrolą dostępu na podstawie kluczaŹródło
Compute BudgetComputeBudget111111111111111111111111111111Ustawia limity jednostek obliczeniowych i priorytety opłat za transakcjeŹródło
Address Lookup TableAddressLookupTab1e1111111111111111111111111Zarządza tabelami wyszukiwania adresów dla transakcji odwołujących się do wielu kontŹródło
ZK ElGamal ProofZkE1Gama1Proof11111111111111111111111111111Weryfikuje dowody zerowej wiedzy dla danych zaszyfrowanych ElGamalaŹródło

Programy loaderów

Każdy program jest własnością programu loadera. Loadery odpowiadają za wdrażanie, aktualizację i wykonywanie programów, które posiadają. Pełną listę loaderów i ich adresów znajdziesz w sekcji Programy loaderów.

Is this page helpful?

Spis treści

Edytuj stronę

Zarządzane przez

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