Earn Yield on Shielded USDC, SOL, and USDT

Your dollars shouldn't have to sit idle to stay private. Loyal routes your shielded USDC, SOL, and USDT into Kamino lending vaults, so your balance earns yield the entire time it stays shielded. You don't un-shield to earn, and you don't reveal your balance to collect.

Open the wallet
Loyal wallet showing shielded USDC earning yield while staying private

How yield on shielded assets works

Shielding and earning are two layers stacked on the same pool of tokens.

Deposit into a shared Vault. Send USDC, SOL, or USDT to Loyal and your tokens join a shared on-chain Vault: one pool per token mint, holding everyone's real SPL tokens commingled. Your position is tracked as a confidential deposit account against that pool, not as coins sitting at your own address.

Your balance stays private. Inside the Vault, balances aren't attributable to any address. Transfers between shielded users don't move real tokens at all; they're arithmetic on deposit accounts, run inside MagicBlock's ephemeral runtime where only the account owner can see or touch the balance.

The pooled tokens earn in Kamino. Because the real tokens sit commingled in the Vault, they don't have to sit idle. The Vault deploys them into Kamino's single-asset lending vaults on Solana to earn yield, while every balance on top stays shielded.

Un-shield to exit. When you withdraw, the Vault pulls the tokens back from Kamino and releases real SPL tokens from the pool to your address. Because deposits and withdrawals both go through the shared pool, there's no on-chain link between the two. Commingled isn't custodial: only your own key can withdraw your balance.

Why your shielded dollars shouldn't sit idle

Shielding a balance just to make it private doesn't stand on its own. Almost nobody parks capital purely to keep it confidential, and privacy needs a crowd: your own transaction volume isn't enough to hide behind. A privacy layer with no other reason to hold funds never attracts the activity that makes it work.

Utility brings the deposits. People park dollars somewhere that also pays them, and once enough capital is parked, the privacy gets stronger for everyone.

Most privacy protocols lock funds that then sit idle for the entire time they're shielded. The dollars backing a shielded balance on Loyal don't. They're deposited into Kamino and earn while the balance stays private. For the same routing logic on open (unshielded) balances, see /earn.

Why this works on Solana

Solana has a deep bench of on-chain native protocols that compose with each other. Loyal's Vault can deposit its underlying tokens straight into Kamino, a major Solana lending protocol, and pull them back on demand, all on-chain, all in code. There's no off-chain bridge, no custodian moving funds between venues, no manual rebalancing desk.

The shielded layer and the yield layer are both Solana programs talking to each other. Composability, backed by large, established DeFi protocols, is what lets Loyal put your idle shielded dollars to work automatically. Transaction costs stay low enough that routing even small balances to yield is economical.

Where the yield comes from

Kamino. Specifically, Kamino's single-asset lending vaults on Solana, the same infrastructure used by Phantom, Pendle, Anchorage, and others. When you earn APY on shielded USDC, SOL, or USDT, your assets are deployed into Kamino's strategies. We don't run our own yield strategies and we don't promise magic numbers.

Rates float with Kamino's lending markets, so the live APY moves with on-chain supply and demand. You don't have to take our word for what it is: the underlying market rate is public on Kamino, and the current rate for your assets shows in the app before you deposit.

Risk: what you can lose and what stays safe

What's exposed when your shielded balance earns yield, and what stays safe regardless.

Your principal carries Kamino's risk

While shielded, the underlying tokens sit in Kamino's lending vaults. If one of those vaults suffered a smart-contract exploit or a bad-debt event, the deposited principal could be affected, the same risk every Kamino lender takes. We don't insure deposits and we don't run our own strategies that could paper over a loss. The venue is Kamino, one of the most-used lending protocols on Solana.

A Loyal-side compromise does not move your funds

The shielded layer runs a signer inside a hardware-isolated Confidential VM. Even a worst-case compromise of that layer can't move your money, because your own private key signature is still required on every transfer and withdrawal. A worst-case hardware compromise would degrade your transfer privacy back toward a standard Solana wallet (still self-custodial, still your funds), not drain your balance.

You hold the keys

Loyal is self-custodial. Keys live in your Telegram passkey, Chrome extension, web app session, or Android app. The Confidential VM is a signing co-processor, not a custodian, and Loyal can't move your funds (including the portion in Kamino) without your signature.

Every part is open-source

Loyal hasn't commissioned its own standalone audit yet, but the substrate has been audited heavily: smart accounts use Squads, the most-deployed smart-account framework on Solana, and transfer privacy runs on MagicBlock's ephemeral runtime. Every line of Loyal-specific code on top is open-source.

Who earns private yield with Loyal

Treasury managers

A public on-chain balance is a liability. Counterparties, competitors, and anyone with a block explorer can read exactly how much runway you're holding. With Loyal, a treasury earns yield on idle USDC without broadcasting its size on-chain. Shielded assets plus Kamino yield means the treasury works for you instead of advertising itself.

Teams holding runway

If you raised in stablecoins and you're holding months of payroll, that float can earn while it waits, without exposing the balance or the burn rate that a competitor could infer from it. You un-shield what you need, when you need it.

DAOs and on-chain orgs

A DAO treasury that wants its idle stablecoins productive, but doesn't want every governance contribution and payout amount sitting in plain sight, gets both: yield on the idle portion and privacy on the movements. Pair it with Smart Account policies for scoped, agent-driven payouts.

Everyday holders

If you hold USDC for payments or as a store of value, your idle dollars earn automatically while staying private. No navigating five DeFi protocols, no choosing between privacy and APY.

How it's built

Loyal's shielding runs in open-source on-chain programs, not on a server you have to trust. The shield and un-shield machinery lives in two Anchor programs on Solana mainnet. Transfer privacy comes from MagicBlock's ephemeral runtime, where the per-user accounting happens. The underlying tokens are deposited into Kamino to earn yield.

The whole stack is in the loyal-app monorepo; read how the Vault, the shielding, and the Kamino routing fit together.

Read the docs
Loyal open-source monorepo and SDK for shielded yield

Start earning

Deposit USDC, SOL, or USDT, shield it, and it starts earning. Loyal lives in four places, all on the same Squads-based smart account: web app, Chrome extension, Telegram mini-app, and the Android app.

Get started
Loyal browser extension wallet showing a shielded balance earning yield

Questions?
Answers.

Deposit USDC into Loyal and shield the balance. Loyal routes the underlying USDC into Kamino's single-asset lending vaults on Solana, so it earns yield while your balance stays shielded: individual balances and movements aren't attributable to your address. You collect yield without un-shielding and without revealing your balance on-chain. Withdraw any time by un-shielding.

Kamino. Specifically, Kamino's single-asset lending vaults on Solana, the same infrastructure used by Phantom, Pendle, Anchorage, and others. When you earn APY on shielded USDC, SOL, or USDT, your assets are deployed into Kamino's strategies. We don't run our own yield strategies and we don't promise magic numbers.

No. The underlying tokens are deployed to Kamino while your balance stays shielded, so yield accrues without you exposing your balance or moving back to a public position. You only un-shield when you want to withdraw to ordinary USDC, SOL, or USDT.

A variable, market rate, not a fixed promise. Yield comes from Kamino's lending markets, so the rate floats with on-chain supply and demand. Loyal doesn't run its own strategies and doesn't quote magic numbers. The underlying rate is public on Kamino, and the current rate shows in the app before you deposit.

Yield carries risk. Your principal is deployed to Kamino's lending vaults while shielded, so a Kamino smart-contract exploit or bad-debt event could affect it, the same risk any Kamino lender takes. Like any DeFi lending position, deposits aren't covered by deposit insurance. A compromise of Loyal's own signing layer does not move your funds, because your private key signature is required on every transfer and withdrawal.

Loyal hasn't commissioned its own standalone audit yet, but it's built on primitives that have been audited heavily. The smart accounts use Squads, the most-deployed smart-account framework on Solana, and transfer privacy runs on MagicBlock's ephemeral runtime. Both have been through multiple independent audits, and the funds earn in Kamino, one of Solana's most-used lending protocols. The full Loyal stack is open-source, so you can review it directly.

Un-shielding pulls your funds back from Kamino first. In normal market conditions this is fast; like any lending market, it can be delayed if the underlying Kamino market is at unusually high utilization, with most supplied liquidity borrowed out. That's standard DeFi lending behavior, not a Loyal-specific lockup.

Yes, without exposing your keys. Loyal supports hierarchical viewing keys: you can grant a read-only view of your balance and history to an accountant, a tax tool, or an auditor, without ever revealing your private key or giving up the ability to move funds. Proof of earnings is opt-in and granular.

No. Keys live in your Telegram passkey, Chrome extension, or web app session. The signing layer is a co-processor running in a hardware-isolated Confidential VM, not a key custodian. Your private key signature is still required to move funds, including to withdraw from the yield position. Pooling tokens in a shared Vault isn't custody either: this is not a centralized exchange, and only your key can withdraw your balance.

No. Balances are encrypted inside the Vault and only readable by the holder of the corresponding key. Loyal team members running the infrastructure see encrypted values and aggregate flow metrics, nothing tied to a specific user, including the portion deployed to Kamino.

Yield on Shielded USDC, SOL & USDT on Solana | Loyal