Program Derived Address (PDA) - Il Cuore dell'AA Nativo di Solana
Un parallelo molto vicino al concetto di "account contrattuale come iniziatore di transazione" di ERC-4337 è la funzionalità Program Derived Address (PDA) di Solana. Un PDA è un indirizzo generato dal programma Solana stesso, anziché derivato da una chiave privata. Questo ha implicazioni fondamentali:
Nessuna Chiave Privata Necessaria
- Un PDA può effettivamente "firmare" istruzioni onchain senza possedere una chiave privata. Il runtime di Solana riconosce che un programma specifico è autorizzato ad agire per conto di questo indirizzo.
Regole e Logica Personalizzate
- Poiché un PDA è legato a un programma specifico, gli sviluppatori possono incorporare regole come limiti di spesa, whitelist/blacklist, meccanismi di recupero sociale o permessi simili a sessioni, direttamente nella logica onchain.
Contratti Auto-Eseguibili
- Su Ethereum, l'account abstraction richiede generalmente chiamate esterne (da un EOA o tramite il bundler ERC-4337) affinché il contratto possa eseguire azioni. Su Solana, un programma che controlla un PDA può gestire autonomamente le transizioni di stato entro i vincoli del runtime di Solana.
Dal pagamento delle commissioni di transazione per conto degli utenti all'abilitazione di flussi multisig avanzati o al riequilibrio automatizzato nei protocolli DeFi, i PDA offrono una gamma di possibilità native di Solana.
Entrambi gli approcci mirano a migliorare l'esperienza utente e ad ampliare lo scopo delle applicazioni onchain. Ma il design di Solana è nativo e non richiede standard o proposte aggiuntive per ottenere funzionalità simili.