Portal Deposit Addresses
Create a reusable, public, exchange-style deposit address. Anyone can fund it with standard ERC-20 transfers, and the funds are credited into your shielded balance without revealing which account was credited. See Portal Deposit Addresses for the concept and trust model.All commands require an authenticated session (
privacy-boost login, or
--private-key).portal subcommands orchestrate the full lifecycle — including the EIP-7702
delegation and gasless registration — for you.
Creating a portal
portal create derives a fresh portal address E, delegates it, registers the
owner binding, and publishes the discovery entry, in one call:
--index <n> to re-derive a specific portal, or --no-publish to
register and delegate without publishing the discovery entry (an escape-hatch /
custodial setup; deposits swept into it rest uncredited and reclaimable).
Listing portals and status
Receiving and listing deposits
A sender funds your portal with an ordinary ERC-20 transfer to its address — they need nothing from Privacy Boost. List the deposits observed at a portal:pending_sweep, credited, cancellable, cancelled, or
unknown.
The credited amount is the swept amount minus the sweep fee snapshotted at
sweep time, which is zero on a deployment that has not set a rate.
Sweeping (self-service backstop)
Sweeping is permissionless and deployments normally run a keeper, so you rarely sweep yourself. The command is available as a backstop — it sweeps a token’s balance at the portal into the pool:1 is the registered token id.)
Reclaiming an un-credited deposit
Reclaim a swept-but-uncredited deposit after the cancel delay; funds return to the portal addressE. Use the portalDepositId from portal deposits:
Withdrawing raw funds (escape hatch)
For funds resting atE that can never be swept (for example an unregistered
token), portal withdraw builds a signed raw EIP-1559 transaction and prints
it for you to broadcast. Read the nonce, gas limit, and fees from your RPC:
0 is the portal’s seed-derivation index.)