Trabajo en curso

Trabajo en curso: estamos construyendo este sitio antes de la MainNet. Los detalles cambiarán.

Este sitio aún está en construcción

ZooBC se construye a la vista de todos. Lo que ves aquí es actual y honesto, pero no está terminado: léelo como el punto en el que estamos hoy, no como una declaración definitiva.

De aquí a la MainNet habrá cambios: redacción, estructura, imágenes y cifras. Algunas páginas son provisionales.

El ecosistema ZooBC en su conjunto llega por etapas. La billetera, el explorador y los canales de la comunidad se irán activando a medida que se acerque la MainNet, y este sitio crece con ellos.

Si algo te parece incorrecto, roto o engañoso, dínoslo. Tus comentarios ahora valen más para nosotros que un lanzamiento pulido más adelante.

ZOOBC / MANUAL

Manual de la CLI de ZooBC

zoobc-cli, un binario, todas las transacciones

Una herramienta de línea de comandos que construye, firma y envía todas las transacciones de ZooBC: 50 comandos, desde un simple send-zbc hasta multifirma, registro de nodos, el exchange, el almacenamiento en la cadena y la gobernanza. Pensada para máquinas por defecto (JSON de entrada, JSON de salida), con un modo interactivo para personas.

01Obtenerla

Descarga la compilación para Linux x86_64, descomprímela y ejecútala. Sin instalación ni dependencias.

⬇ Descargar zoobc-cli (Linux x86_64)

# unpack and put it on your PATH
tar xzf zoobc-cli-linux-x86_64.tar.gz
sudo mv zoobc-cli /usr/local/bin/

# point it at any node or gateway (default: http://localhost:8080)
# https://zoobc.network is the public TestNet gateway, not MainNet
zoobc-cli list --api https://zoobc.network

Pronto habrá otras plataformas; por ahora la compilación es para Ubuntu / Linux x86_64.

02Tres formas de ejecutarla

Predeterminado: JSON de entrada, JSON de salida

Pasa los parámetros como argumentos posicionales y recibe un resultado JSON. Este es el modo que usan otras aplicaciones y scripts. El primer parámetro es siempre la clave privada del remitente.

zoobc-cli send-zbc <privkey> ZBC_4HFG43GR_… 100000000 --api $API
→ {"transaction_hash":"a5f1…","amount":100000000, …}

Interactivo, --verbose

Te pide cada campo de uno en uno y luego muestra un resultado legible. Ideal para operaciones puntuales.

zoobc-cli issue-token --verbose --api $API
Sender private key: … · Symbol: … · Name: … · Decimals: …

JSON por tubería, --json-input

Lee los parámetros como un objeto JSON desde stdin; las claves son exactamente las que muestra help <cmd>.

echo '{"sender_privkey":"…","recipient":"ZBC_…","amount":"100000000"}' \
  | zoobc-cli send-zbc --json-input --api $API

03Descubre qué enviar

Dos comandos integrados te lo dicen todo, sin necesidad de leer el código fuente.

zoobc-cli list              # every command, grouped by category
zoobc-cli help multisig     # the JSON fields for ONE command

help <cmd> muestra la clave de cada campo, si es obligatorio, su valor predeterminado y un objeto JSON de ejemplo listo para editar:

multisig, N-of-M multisig SendZBC (inner tx + participant signatures)  (tx type 5)
  sender_privkey    (required) Sender private key (64 hex)
  participants      (required) comma-separated participant ZBC addresses
  min_signatures    (required) required signatures (N of M)
  nonce             (optional) multisig account nonce  [default: 0]
  signer_privkeys   (required) participant keys that sign now
  recipient         (required) inner SendZBC recipient address
  amount            (required) inner SendZBC amount (atomic units)
  inner_fee         (optional) inner SendZBC fee (atomic)  [default: 10000000]
Sample: {"sender_privkey":"…","participants":"…", …}

04Opciones comunes y convenciones

--api <url>Endpoint del nodo o de la pasarela. Predeterminado: http://localhost:8080. Apúntalo a https://zoobc.network para usar la TestNet pública. Esa es la red de pruebas en vivo, no la MainNet.
--fee <n>Sustituye la comisión de transacción (ZBC atómicos). Omítela para usar el mínimo predeterminado o calculado según el tamaño.
--verbosePreguntas interactivas + salida legible (ver modo 2).
--json-inputLee los parámetros como un objeto JSON desde stdin (modo 3).

Todas las cantidades y precios son enteros atómicos (ZBC ×1e8; cantidades de tokens ×10^decimales; precios de órdenes ×1e8). Las direcciones pueden ser una cadena ZBC_… completa o hexadecimal. La herramienta nunca falla ante una entrada incorrecta: devuelve un objeto de error JSON (o un error de texto en --verbose).

05Ejemplos prácticos

# transfer a colored token
zoobc-cli transfer-token $KEY ZBC_6FINNB6J_… <token_id> 500 --api $API

# register a validator node (owner signs; node key supplies the pubkey; PoOwnership is built for you)
zoobc-cli register-node $OWNER_KEY $NODE_KEY 100000000000 --api $API

# open an N-of-M multisig and sign with your key (others co-sign later)
zoobc-cli multisig $KEY "ZBC_A…,ZBC_B…,ZBC_C…" 2 0 "$KEY" ZBC_A… 100000000 5000000 --api $API

# schedule a vesting/recurring payment: 1 ZBC per fire, 12 fires, monthly
zoobc-cli scheduled-transfer $KEY ZBC_… 0 100000000 2592000 12 0 0 0 0 --api $API

06Los 50 comandos

Las disposiciones de bytes exactas del cuerpo de cada transacción están en el Manual de transacciones. Ejecuta zoobc-cli help <cmd> para ver los campos de un comando.

Valor y tokens
send-zbcEnvía ZBC a una dirección
liquid-paymentTransfiere ZBC de forma continua en el tiempo (liberación gradual)
liquid-payment-stopDetiene un pago líquido (liquida a prorrata)
transfer-tokenTransfiere un token coloreado que posees
issue-tokenEmite un token coloreado
mint-tokenAcuña más unidades de un token acuñable
burn-tokenQuema un token (canjea su respaldo si es canjeable)
finance-tokenRecarga la financiación de supervivencia de un token
Exchange y mercado
market-createAbre un mercado con libro de órdenes (base,cotización)
order-placeColoca una orden limitada/de mercado
order-cancelCancela una orden pendiente
swap-createCrea una oferta de intercambio atómico
swap-acceptAcepta (ejecuta) una oferta de intercambio
swap-cancelCancela una oferta de intercambio abierta
Apps
app-createCrea una app (2 jugadores o individual contra la casa)
app-joinSe une a una app abierta
app-moveEnvía una jugada
app-resignAbandona una app
app-claimReclama una app con el plazo vencido
app-settleLiquida una app de canal de estado (reproduce los comprobantes)
Almacenamiento y datos
store-fileAncla un archivo de almacenamiento descentralizado (manifiesto + alquiler)
add-prepaid-storageFinancia el alquiler de almacenamiento de una cuenta
setup-datasetEstablece una propiedad→valor del conjunto de datos de una cuenta
remove-datasetElimina una propiedad del conjunto de datos de una cuenta
delete-datasetBorra un objeto de conjunto de datos (reembolsa su depósito)
set-dataset-policyEstablece la política de gestión de un objeto de conjunto de datos
transfer-datasetPropone la transferencia de un objeto de conjunto de datos
accept-datasetAcepta una transferencia de conjunto de datos pendiente
Cuenta: depósito en garantía · programador · disparadores · multisig · votación
multisigSendZBC multisig N de M (tx interna + firmas)
escrow-requestCrea una solicitud de depósito en garantía iniciada por el destinatario
approve-escrowAprueba / rechaza / hace caducar un depósito en garantía
scheduled-transferTransferencias con liberación gradual / recurrentes programadas
cancel-scheduleCancela una transferencia programada pendiente
reassign-scheduleRedirige una programación a un nuevo destinatario
create-triggerPrograma un SendZBC futuro (keeper/oráculo)
cancel-triggerCancela un disparador pendiente (reembolso)
attest-eventCertifica un evento externo (nodo oráculo)
fee-vote-commitFase de compromiso de la votación de la escala de comisiones
fee-vote-revealFase de revelación de la votación de la escala de comisiones
Operador de nodo
register-nodeRegistra un nodo validador (firma el propietario; genera ProofOfOwnership)
update-nodeActualiza el saldo bloqueado / el registro de un nodo
remove-nodeRetira un nodo del conjunto de validadores
claim-nodeReclama un registro retirado previamente
Operador de pasarela
register-gatewayRegistra una pasarela (clave + dominio + url; bloquea stake)
unregister-gatewayRetira una pasarela; reembolsa el stake
gateway-heartbeatDemuestra que una pasarela está activa; lo firma la clave de la PASARELA, pero cualquier remitente puede retransmitirlo
Gobernanza (autoridad de publicación)
register-releasePublica una versión binaria firmada
revoke-releaseRevoca una versión publicada
release-authority-proposePropone una nueva autoridad de publicación
release-authority-acceptAcepta un traspaso de la autoridad de publicación
Parte de los Manuales de ZooBC. Consulta el Manual de transacciones para ver las disposiciones de bytes · abre la billetera o el explorador · volver a la página principal de la pasarela.