Saltar al contenido

Paquetes Encriptados

A partir de la versión 4.15.0, el Plugin te permite enviar actualizaciones encriptadas.

Crear una clave privada
npx @capgo/cli key create
Crear bundle zip con checksum
npx @capgo/cli bundle zip [appId] --key-v2 --json

La bandera --key-v2 usa el nuevo sistema de encriptación con mejores checksums, y la bandera --json mostrará la información del Paquete incluyendo el checksum que necesitarás para la encriptación.

Encriptar zip del bundle con checksum
npx @capgo/cli encrypt [path/to/zip] [checksum]

El parámetro checksum es el checksum SHA256 generado por el comando zip en el paso 2. El comando encrypt devolverá un ivSessionKey y generará un checksum encriptado. Recuerda renombrar la clave ivSessionKey como session_key en el payload de actualización.

Paso 4: Usar en tu payload de actualización

Section titled “Paso 4: Usar en tu payload de actualización”
{
"version": "1.2.3",
"url": "https://myserver.com/app/updates/my-new-app-2.0.0.zip",
"session_key": "encrypted_session_key",
"checksum": "encrypted_checksum_from_encrypt_command"
}

La session_key es el ivSessionKey devuelto por el comando encrypt, y el checksum es el checksum encriptado generado durante la encriptación (no el checksum original del comando zip).

Luego tu aplicación podrá usar la clave privada para desencriptar la session_key y usar la session_key desencriptada para desencriptar la actualización. El checksum encriptado asegura la verificación de integridad del Paquete.