Diese Seite wurde mit KI automatisch übersetzt. Maßgeblich ist stets die englische Version.Englische Version ansehen →
Miete ist eine rückforderbare Kaution, keine Gebühr. SIMD-0437 senkt die Kaution, die jedes Konto halten muss, in fünf unabhängig gesteuerten Schritten. Konten, die vor einem Schritt erstellt wurden, behalten den Saldo, mit dem sie finanziert wurden, sodass jeder Schritt sie überfinanziert hinterlässt. Die SPL Token- und Token-2022-Programme können diese Differenz durch
WithdrawExcessLamports zurückgeben, ohne das Konto zu schließen oder seinen Token-Saldo zu ändern. Nichts verfällt — der Überschuss bleibt in Ihren eigenen Konten, bis Sie ihn verschieben möchten.Was Miete wirklich ist
Jedes Konto auf Solana hält eine SOL-Kaution, deren Größe vom Speicherplatz abhängt, den es einnimmt. Sie wird nicht ausgegeben — sie wird vollständig zurückgegeben, wenn das Konto geschlossen wird. Die Formel lautet:ACCOUNT_STORAGE_OVERHEAD sind feste 128 Bytes, die jedes Konto unabhängig von seiner Nutzlast zahlt. lamports_per_byte ist die netzwerkweite Konstante, die SIMD-0437 ändert.
Ein Standard-SPL-Token-Konto mit 165 Bytes kostet daher immer (128 + 165) × 6.960 = 2.039.280 Lamports — die ~0,00203928 SOL, die Sie abgezogen sehen, wenn eine Wallet ein zugehöriges Token-Konto öffnet.
Was SIMD-0437 ändert
SIMD-0437 senktlamports_per_byte von 6.960 auf 696 — eine 90%-Reduktion — verteilt über fünf separate Feature Gates, damit Validatoren die Auswirkungen auf das Zustandswachstum nacheinander absorbieren können.
Schritt 1 wurde am 3. September 2026 im Mainnet aktiviert. Die verbleibenden Schritte werden aktiviert, wenn ihre Feature Gates freigegeben werden; behandeln Sie den Zeitplan als änderbar und lesen Sie den aktuellen Wert vom Cluster, anstatt ihn fest zu codieren.
SIMD-0437 hängt von SIMD-0194 ab, das die Rent-Exemption-Schwelle veraltet macht, „um unnötige Gleitkommaarithmetik bei der Einstellung der Rent-Parameter bei Feature-Aktivierung zu vermeiden”. In der Praxis trägt die
Rent-Sysvar jetzt lamports_per_byte_year = 6.333 mit exemption_threshold = 1,0, anstelle der alten 3.480 × 2-Aufteilung, die 6.960 ergab. Multiplizieren Sie diese beiden Felder nicht selbst — rufen Sie getMinimumBalanceForRentExemption auf und lassen Sie den Cluster antworten.Warum bestehende Konten zu viel halten
Das Senken der Konstante ändert, was ein Konto braucht. Es ändert nicht, was ein Konto hat. Ein Konto, das mit 6.960 Lamports pro Byte finanziert wurde, behält diesen Saldo, nachdem Schritt 1 aktiviert wird, sodass es überfinanziert ist um:293 × (6.960 − 6.333) = 183.711 Lamports, oder ~0,000184 SOL pro Konto. Ein Token-2022-Konto mit Erweiterungen ist größer, daher hält es proportional mehr — ein 182-Byte-Konto ist überfinanziert um 310 × 627 = 194.370 Lamports.
Einzeln ist das Kleingeld. Eine Wallet, die im Laufe der Jahre mit einigen hundert Token interagiert hat, hält ein aussagekräftiges Vielfaches davon, und nach Schritt 5 hat jedes 165-Byte-Konto 1.835.352 Lamports (~0,00184 SOL) über seinem Minimum.
Welche Konten können es zurückgeben
Überschüssige Lamports in einem programmgesteuerten Konto können nur von diesem Programm verschoben werden. Ob Sie Miete ohne Schließung des Kontos zurückfordern können, hängt daher vollständig davon ab, welches Programm es besitzt.SPL Token und Token-2022
Beide stellen
WithdrawExcessLamports bereit. Das Konto bleibt offen, behält seinen Token-Saldo und sinkt einfach auf das aktuelle Minimum.Alles andere
Keine entsprechende Anweisung. Die Miete wird nur freigegeben, wenn das Konto geschlossen wird — eine destruktive Operation mit ihren eigenen Vorbedingungen, keine Miet-Sweep.
Wrapped SOL-Konten sind die eine Token-Programm-Ausnahme: ihr Lamport-Saldo ist ihr Token-Saldo, daher lehnen beide Programme sie mit
TokenError::NativeNotSupported ab. Token-2022 hat UnwrapLamports (Diskriminant 45) für diesen Fall hinzugefügt; @solana/spl-token liefert createUnwrapLamportsInstruction dafür ab Version 0.4.15. Überspringen Sie native Konten in einer Miet-Sweep und behandeln Sie sie bewusst.
Die WithdrawExcessLamports-Anweisung
Diskriminant 38 in den Anweisungs-Enums beider Token-Programme. Aus spl-token-interface:
- Sie nimmt keinen Betrag. Das Programm berechnet
source.lamports − rent.minimum_balance(source.data_len())selbst, sodass es ein Konto niemals unter das aktuelle Minimum bringen kann, und es bleibt korrekt, wenn später Schritte aktiviert werden. - Es schließt nichts. Das Konto behält seine Daten, seinen Besitzer und seinen Token-Saldo.
- Es ist idempotent. Das Ausführen gegen ein Konto, das bereits am Minimum ist, verschiebt null Lamports und erfolgreich.
Anweisung erstellen
@solana/spl-token exportiert keinen Builder dafür. Ab 0.4.15 ist der Enum-Eintrag noch auskommentiert:
programId jedes Kontos. SPL Token- und Token-2022-Anweisungen können eine Transaktion teilen, aber jede muss an das Programm adressiert werden, das sein Quellkonto besitzt.
Gemessen im Mainnet kostet die Anweisung 270 Compute Units im SPL Token-Programm und 1.414 in Token-2022 — in beiden Fällen vernachlässigbar. Die echte Einschränkung ist die Transaktionsgröße, nicht Compute.
Rückforderbare Konten finden
Leiten Sie den Überschuss nicht von einer fest codierten Rate ab. Fragen Sie den Cluster, was jedes Konto gerade jetzt braucht, damit derselbe Code durch alle fünf Schritte funktioniert:getMinimumBalanceForRentExemption(0) ist ein nützlicher Seitenkanal: es gibt genau 128 × lamports_per_byte zurück, sodass die Division durch 128 Ihnen sagt, in welchem Rollout-Schritt sich der Cluster befindet, ohne die Rent-Sysvar zu analysieren.
Batching: wie viele passen in eine Transaktion
JedeWithdrawExcessLamports-Anweisung trägt einen eindeutigen beschreibbaren Kontoschlüssel bei — 32 Bytes in der kompilierten Nachricht — plus etwa 7 Bytes Anweisungs-Codierung. Ziel, Autorität und Gebührenzahler sind alle dieselbe Wallet, daher kosten sie einen Schlüssel zusammen.
Gegen das 1.232-Byte-Transaktionslimit passen ungefähr 26 Anweisungen, wenn Compute-Budget-Anweisungen und der Blockhash gezählt werden. Zwanzig pro Transaktion ist die sichere Arbeitszahl, und das ist, was Raydiums eigene Implementierung verwendet. Eine Wallet mit 116 rückforderbaren Konten fegt daher in sechs Transaktionen, jeweils mit einer 5.000-Lamport-Basisgebühr.
Beachten Sie die Wirtschaft: die Gebühr wird pro Transaktion berechnet, nicht pro Konto. Das Zurückfordern weniger Konten kostet nicht weniger, weshalb eine teilweise Sweep selten die zusätzlichen Roundtrips wert ist.
Rückforderung durch Raydium
Die Seite raydium.io/reclaim-rent scannt die SPL Token- und Token-2022-Konten der verbundenen Wallet, zeigt die Gesamtsumme aufgeteilt nach Programm und fegt alles in Batch-Transaktionen. Der Scan ist schreibgeschützt — keine Signatur, bis Sie Reclaim all rent drücken. Die Seite behandelt absichtlich nur Token-Konten. Kontotypen, die Miete nur durch Schließen freigeben können, werden ausgeschlossen, anstatt als nicht verfügbar aufgelistet zu werden, da das Schließen eines Kontos eine andere, destruktive Aktion ist.Rückforderung aus der SDK-Demo
Versionsbanner. Demos zielen auf
@raydium-io/raydium-sdk-v2@0.2.42-alpha gegen Solana mainnet-beta, verifiziert 2026-09. WithdrawExcessLamports wird von Hand codiert und ist unabhängig von der SDK-Version; das SDK wird nur für Transaktionserstellung und Batching verwendet.raydium-sdk-V2-demo/src/rent:
reclaimRent.ts batched bei 20 Konten pro Transaktion und signiert alle Batches in einem Durchgang:
simulateTransaction mit accounts.addresses gibt Post-Execution-Lamport-Salden zurück, was die billigste Möglichkeit ist, zu bestätigen, dass die Arithmetik dem entspricht, was der Cluster tatsächlich tun wird.
Sollten Sie jetzt zurückfordern oder warten?
Beides ist in Ordnung, und der Unterschied ist in beiden Fällen klein:- Der Überschuss geht nirgendwohin. Er bleibt in Ihren eigenen Konten. Nichts verfällt, nichts wird gefegt, kein Stichtag gilt.
- Warten verstärkt sich. Jeder Schritt gibt mehr aus denselben Konten frei, und eine Sweep nach Schritt 5 kostet in Gebühren genauso viel wie eine Sweep heute.
- Jetzt zurückfordern verzichtet nicht auf spätere Schritte. Ein Konto, das Sie heute fegen, ist einfach am aktuellen Minimum; der nächste Schritt macht es wieder überfinanziert und Sie können es erneut fegen.
Weitere Lektüre
SIMD-0437
Der Vorschlag selbst — die fünf Feature Gates und die Begründung für die schrittweise Reduktion.
Reduzierte Miete
Solanas Rollout-Seite: aktueller Schritt, Zeitplan und was sich für neue Konten ändert.
Mietreduktion: eine datengestützte Analyse
Die Wirtschaft und das Zustandswachstum-Risiko, das der schrittweise Rollout verwalten soll.
Account-Modell
Wie Solana-Konten finanziert, besessen und geschlossen werden — der Hintergrund für alles oben.

