Find answers to common questions about NINJA's confidential transfers and privacy features.
NINJA (Non-Interactive Joint Account) is a privacy solution built on Solana that enables confidential token transfers. It uses Solana' SPL token extension for confidential transfers to shield transaction amounts while keeping your assets secure on the blockchain.
NINJA works by encrypting token balances and transaction amounts, then using zero-knowledge proofs to verify transactions without revealing the actual amounts being transferred. This allows you to maintain financial privacy while still benefiting from the speed and security of the Solana blockchain.
NINJA is not a separate blockchain. It's built directly on top of Solana, leveraging Solana's native token extensions for confidential transfers. This means you get the full security, speed, and ecosystem compatibility of Solana, with the added privacy features that NINJA provides.
Unlike many other privacy solutions that require separate networks or bridges, NINJA is built directly on Solana using its native token extensions. This provides several advantages:
NINJA also focuses specifically on shielding transaction amounts by default, with optional enhanced privacy features like sender/receiver unlinkability through Ninja Mode.
Yes, NINJA is compatible with most major Solana wallets, including Phantom, Solflare, Backpack, and others. As long as the wallet supports signing transactions on Solana, it should work with NINJA. However, for the best experience, we recommend using Phantom or Solflare, which have been thoroughly tested with our interface.
In a standard confidential transfer, the following is hidden:
What remains visible:
NINJA uses ElGamal encryption, a well-established and cryptographically secure method that is additively homomorphic. This means mathematical operations can be performed on encrypted values without decrypting them first. The security is based on the discrete logarithm problem, which is considered computationally hard to solve.
Additionally, NINJA utilizes zero-knowledge proofs to verify the validity of transactions without revealing sensitive information. The specific implementation leverages Solana's Token-2022 confidential transfer extension, which has undergone security audits.
Ninja Mode is an advanced privacy feature that not only hides transaction amounts (like standard confidential transfers) but also obfuscates the connection between sender and receiver. It does this through techniques like multi-hop routing, delayed execution pools, and transaction mixing.
You should consider using Ninja Mode when:
Yes, your private keys are never exposed when using NINJA. The application operates like any other Solana dApp:
Setting up a confidential account is a simple one-time process:
This process will generate encryption keys for your confidential transfers (which never leave your browser) and configure your account on-chain for confidential operations. For detailed instructions, see our Getting Started guide.
Yes, there are some practical limits to be aware of:
NINJA has two types of fees:
Ninja Mode transactions may have slightly higher fees due to the additional privacy mechanisms involved.
Yes, but you'll need to set up your encryption keys again. Since the encryption keys for confidential transfers are stored locally in your browser, if you switch devices or clear browser data, you'll need to:
Note that your funds remain safe on the blockchain throughout this process, tied to your Solana wallet address. You're simply regenerating the keys needed to decrypt and use them.
In NINJA, zero-knowledge proofs (ZKPs) are used to validate transactions without revealing their details. When you initiate a confidential transfer, the system:
These proofs can be verified by the Solana network to confirm the transaction is valid, but they do not reveal any information about the actual amounts involved.
The specific ZKP implementation used is a variant of Bulletproofs, which are efficiently verifiable and don't require a trusted setup.
Yes, developers can integrate with NINJA's confidential transfer capabilities through our API. This allows applications to create, send and receive confidential transfers programmatically. For implementation details, check our Developer API documentation.
Since NINJA is built directly on Solana using the Token-2022 program with confidential transfer extensions, it will continue to function as long as these features are supported. In the event of major Solana network upgrades, the NINJA team will ensure compatibility and communicate any necessary actions to users well in advance.
Yes, the Solana Confidential Transfer Extension includes optional auditor functionality. This feature allows designated entities (auditors) to decrypt and view encrypted balances and transfer amounts, which can be useful for regulatory compliance.
Key aspects of the auditor system:
NINJA implementation allows for this functionality but makes it optional, putting privacy control in the hands of users.
Yes, developers can integrate with NINJA's confidential transfer capabilities through our API. This allows applications to create, send and receive confidential transfers programmatically. For implementation details, check our Developer API documentation.
If you can't find the answer to your question here, reach out to our community support.
Join Our Telegram