Skip to main content

7.1 Motivation for Asset Normalization

On EVM chains, different assets carry different traceability profiles. ERC-20 tokens differ in liquidity, transfer patterns, holder distributions, and interaction histories. Even if transactional unlinkability is achieved at the address level, asset-level metadata can still leak information. For example, withdrawing a rare or thinly traded token from a privacy pool may itself act as an identifying signal. Abyss addresses this by introducing $V, a protocol-native privacy asset that serves as the sole unit of account within the anonymity pool. All deposits are converted into $V before entering the pool, and all withdrawals exit the pool as $V. This design ensures that privacy guarantees are uniform regardless of the original asset deposited. The normalization step is not cosmetic. It is a deliberate cryptographic and economic boundary that severs asset provenance at the pool entrance and prevents downstream re-identification via asset uniqueness.

7.2 Entry Conversion Semantics

When a user deposits an asset A into Abyss, the protocol executes:
deposit(A, amount_A):
  swap A → V at prevailing rate
  mint V_amount
  create commitment(V_amount, secret)
The swap may occur through integrated liquidity sources or protocol-defined conversion logic. Once converted, only $V is tracked by the privacy system. The original asset never enters the anonymity pool directly. This ensures:
  • Homogeneous pool composition
  • Elimination of asset-specific fingerprints
  • Simplified ZK circuit constraints

7.3 Single-Denomination Privacy Pool

Inside the pool, all balances are denominated in $V. There are no fixed denominations, no bucketization, and no per-asset sub-pools. This contrasts with systems that require users to choose deposit sizes or asset-specific pools, which fragment anonymity. Formally, the pool state tracks:
PoolState :=
  { commitments_i(V_amount_i, secret_i) }
Privacy scales with the total volume and usage of $V, not with individual asset popularity.

7.4 Exit and Redemption

Upon withdrawal, users receive $V, which can then be redeemed for:
  • The original asset
  • A different supported asset
  • A stable asset
  • A payment destination
withdraw(secret, amount_V):
  prove ownership
  transfer V → recipient
Redemption is performed after privacy is achieved, meaning the final asset choice does not leak information about the deposit source .

7.5 Privacy and Economic Implications

Asset normalization has several second-order effects:
  • Privacy becomes independent of asset diversity
  • Liquidity concentrates around a single privacy asset
  • ZK circuits remain constant-size and auditable
  • Merchants and recipients receive fungible value without historical context
This design makes $V a privacy transport layer, not a speculative asset.

7.6 Design Constraints and Non-Goals

$V is not intended to:
  • Replace stablecoins
  • Act as a store of value
  • Introduce monetary policy complexity
It exists to enforce privacy invariants. Any value dynamics are strictly incidental to that role.