Fundamentos de Compresión de Estado
8 ejemplos para empezar con compresión de estado y cNFTs - 6 básicos y 2 intermedios.
Busca en todas las páginas de la documentación
8 ejemplos para empezar con compresión de estado y cNFTs - 6 básicos y 2 intermedios.
npm install @solana/kit@7.0.0 @metaplex-foundation/mpl-bubblegum @metaplex-foundation/mpl-account-compressionSe requiere RPC habilitado para DAS para lecturas de pruebas. Programa de Compresión de Cuentas SPL: cmtDvXnzBMY46rZyrBGX7p7r4Xc78DGpXEC5rVjrvAf.
Las cuentas completas de mint de NFT cuestan alquiler por artículo. La compresión amortiza el costo entre millones de hojas.
// NFT completo: ~varias cuentas por artículo
// cNFT: una cuenta de árbol + actualizaciones de hash de hoja por mintRelacionado: Costo y Compromisos
Los Árboles Merkle Concurrentes permiten múltiples actualizaciones por ranura sin serializar reescrituras completas del árbol.
const TREE_PROGRAM = "cmtDvXnzBMY46rZyrBGX7p7r4Xc78DGpXEC5rVjrvAf";
// La cuenta del árbol almacena la raíz, el dosel y el registro de cambiosRelacionado: Cómo funciona la Compresión
Bubblegum acuña y transfiere NFTs comprimidos en árboles.
const BUBBLEGUM_PROGRAM = "BGUMAp9Gq7iN3nEkgqX1FbwwdBonfLCEEgxoj36SYPk";Relacionado: NFTs Comprimidos (Bubblegum)
Las billeteras no decodifican las hojas merkle manualmente.
const asset = await dasRpc("getAsset", { id: "CNFT_ASSET_ID" });
console.log(asset.compression?.leaf_id, asset.compression?.tree);compression en la respuesta del activo DASinterface a menudo es CompressedNftgetAccountInfo en el ID del activo no es suficienteRelacionado: Lectura de Activos Comprimidos (DAS)
Las transferencias necesitan una ruta de prueba merkle de DAS.
const proof = await dasRpc("getAssetProof", { id: "CNFT_ASSET_ID" });
console.log(proof.root, proof.proof.length);root utilizada en el momento de la creación para depurar fallosRelacionado: Transferencia de cNFTs
El creador del árbol controla la acuñación; se pueden otorgar delegados para servicios de acuñación custodial.
# Árbol creado con el firmante de la autoridad del árbol
# La acuñación de Bubblegum CPIs actualiza la hoja bajo las reglas de autoridadRelacionado: NFTs Comprimidos (Bubblegum)
// 1. createTree (profundidad/maxBufferSize/canopy por plan de capacidad)
// 2. mintV1 en bucle o transacciones por lotes
// 3. monitorizar el índice de hojas a través de DAS getAssetsByGroupRelacionado: Mejores Prácticas de Compresión
| Usar cNFT | Usar Core / Metadatos de Token |
|---|---|
| 10k+ ítems similares | Arte 1/1 |
| Prioridad de bajo costo por artículo | Simplicidad máxima de billetera |
| Pila de lectura respaldada por DAS | Composición intensiva en programas en cadena por NFT |
Relacionado: Fundamentos de NFT en Solana
Versiones de la Pila: Esta página fue escrita para Agave 4.1.1, Solana CLI 3.0.10, Anchor 0.32.1, anchor-lang 0.32.1, Rust 1.91.1, @solana/kit 7.0.0, Surfpool 0.12.0, y LiteSVM 0.6.x.
Revisado por Chris St. John·Última actualización: 19 jul 2026