The Solana Signature SDK is a developer-centric toolkit designed to integrate Solana wallets—such as Phantom, Backpack, and Solflare—into Ethereum-compatible dApps deployed on Solana via Neon EVM.
Key Takeaways:
With the release of the Solana Signature Wallet SDK, we take an important transformative step toward enabling Solana-native integration and simplifying user interactions on the Solana environment for Ethereum-compatible dApps, as is highlighted in our whitepaper.
The Solana Signature Wallet SDK toolkit enables developers to build dApps that allow Solana users to interact with smart contracts deployed on Neon EVM. Ethereum-compatible dApps have historically depended on Ethereum-like signatures (secp256k1) for transaction authentication. This dependency has created obstacles for Solana users, requiring them to use additional tools like MetaMask and engage in complex liquidity transfers. The Solana Signature Wallet SDK together with Neon Proxy, resolves this. By matching Solana’s ed25519 signature scheme and Ethereum’s transaction requirements, this SDK simplifies wallet integration and asset accessibility across ecosystems.
At its core, this SDK simplifies transaction management as follows:
By abstracting the complexity of transaction conversion and enhancing compatibility between the two networks, it allows developers to focus on building and interacting with decentralized applications (dApps) without worrying about underlying infrastructural hurdles.
Let’s dive into the details, technical overview, token management flow, benefits, limitations, and future prospects.
The Neon EVM Solana Signature Wallet SDK is a modular and flexible solution designed to benefit both developers and users.
Benefits:
For users
For developers
A standout feature of the Neon EVM Solana Signature Wallet SDK is its ability to validate Solana transactions using Solana’s ed25519 signature system. This enhancement is crucial for ensuring that transactions initiated via Solana wallets—such as Phantom, Solflare, and Backpack—are processed accurately and securely on the Neon EVM network.
The validation process occurs in real-time within the Neon Proxy, which checks the authenticity of Solana signatures before executing any transaction on the Neon EVM. By validating Solana’s ed25519 signatures natively, the Neon Proxy eliminates the need for manual signature verification or the use of intermediary layers. This means transactions are securely processed with minimal delay, ensuring that every transaction is authenticated and recorded properly.
This real-time validation mechanism is integral to enabling Solana wallet users to interact directly with Ethereum-compatible dApps deployed on Neon EVM without needing separate authentication methods or additional tools like MetaMask.
For the SDK, to ensure a smooth user experience, two key focus areas include:
Read on to see how Neon Proxy supports this and how the ERC20ForSPL contract manages token balances and transfers between Solana and an Ethereum-compatible environment.
Neon Proxy is pivotal for facilitating interactions. It packs Ethereum-like transactions into Solana transactions, removing the burden of implementing conversion logic. Recent updates to the proxy architecture introduce new functionalities, optimize transaction handling, and ensure compatibility with existing systems while incorporating Solana-signature infra.
To implement an on-chain mempool, Neon introduces the concept of a tree of NeonTxs. This splits a single large transaction into smaller, manageable units (NeonTxs) while maintaining overall logic.
1. Tree of Transactions:
2. Parallel Execution:
3. Error Handling:
4. Final Aggregation:
Transaction Creation:
On-Chain Scheduling and Mapping:
Transaction Execution:
Post-Execution Cleanup:
While the Neon Proxy works as the enabler for interaction between Solana wallets and the Neon EVM ecosystem, unlocking the full market potential requires eliminating asset management fragmentation. Unified asset management across networks is key to driving adoption and a more integrated user experience.
A primary feature of the SDK is its refined ERC20ForSPL contract logic, addressing interoperability challenges between Ethereum and Solana. The contract bridges the two networks by enabling ERC-20 tokens to function within the Solana environment. The focus is to refine the ERC20ForSPL contract logic for unifying balances, maintaining backward compatibility, and introducing robust tools for developers. Here’s how:
Unified Balance Management
The transfer logic here is simple as:
Backward Compatibility and Safety
While the ERC20ForSPL contract has been updated, it remains paramount to maintain backward compatibility (ensuring existing implementations continue to work without disruption) while adding new features to enhance capabilities.
For this, the contract maintains compatibility with existing implementations by preserving state variables, method signatures, and event parameters. It introduces new precompile methods under 0xFf00000000000000000000000000000000000007, enhancing developer capabilities. isSolanaUser determines if an EVM address corresponds to a Solana account while solanaAddress retrieves the Solana public key associated with an EVM address.
1.1 Use ethers.js, web3.js or any other tool to create a Neon EVM transaction.
1.2 Package the transaction into a Solana transaction using the Native Wallet SDK, fetching requisite metadata via Neon Proxy.
1.3 (Optional): Add instructions for Solana asset approval, enabling direct access by Neon EVM smart contracts.
2.1 dApp front-end sends the packaged transaction to the user's Solana wallet.
2.2 The user reviews and signs the transaction through their wallet UI.
2.3 The wallet submits the signed transaction to the Solana network, scheduling it in Neon’s on-chain mempool.
3.1 Neon Proxy scans the on-chain mempool and identifies ready-to-execute transactions.
3.2 Executes the transaction on Neon EVM, resulting in state updates on both Neon and Solana.
3.3 Removes the transaction from the mempool after execution.
For those interested in building, we are happy to discuss it. You may reach out to us on Discord or email our BD Lead at [email protected]. Don’t miss a beat: follow Twitter for the latest updates.
Other articles