actualizador de Capacitor El actualizador de code ahora admite cifrado de extremo a extremo. La firma de Code garantiza que las actualizaciones ejecutadas por los dispositivos de los usuarios finales no han sido manipuladas y proporciona un nivel adicional de protección por encima del estándar de seguridad de web del actualizador Capacitor
La seguridad predeterminada del actualizador de Capacitor
Por defecto, el modelo de seguridad de Capgo es similar al de los proveedores de alojamiento web. Capgo almacena actualizaciones encriptadas en reposo y los sirve mediante HTTPS utilizando cifrado moderno. De manera similar, publicar una actualización desde el ordenador de un desarrollador siempre utiliza HTTPS.

Capgo obtiene una A+ en la prueba de HTTPS de SSL Labs (https://www.ssllabs.comnoviembre de 2022)
Like best-in-class web hosts, Capgo uses HTTPS to protect the privacy and integrity of network connections between the server and end users’ devices. This is an excellent level of security that works well both for the web and Ionic apps that use Capgo.
La infraestructura de la nube
Another thing Capgo and most web hosts have in common is they run on lower-level cloud infrastructure, often from AWS, GCP, or another popular cloud provider. The hardware and software operated by these cloud providers and Capgo or other web hosts are part of the cloud supply chain.
La cadena de suministro de la nube y su modelo de seguridad funcionan para un número vasto de sitios web y aplicaciones. Cada desarrollador web que utiliza un proveedor de nube confía en ese proveedor y espera que los archivos que sube sean los archivos que se ejecutan o se sirven sin ser manipulados. Y los proveedores de nube trabajan duro para mantener su infraestructura segura.
Pero, obviamente, se descubren vulnerabilidades en el hardware y el software. Los proveedores de nube parchean vulnerabilidades en horarios de mantenimiento, previenen software malicioso (por ejemplo, Google's SLSA), and build layers of defense in depth, and in practice, cloud infrastructure has shown to meet most websites and apps’ security needs. However, some Ionic apps include compromised cloud infrastructure in their threat models. For these Capacitor JS apps with the highest security requirements above the web, we built end-to-end code signing in to Capgo and the Capgo Updates standard protocol.
End-to-end code signing with Capgo
Capgo’s end-to-end code signing uses public-key cryptography to ensure end users’ devices run only unmodified, original updates from the Capacitor app developer.
La firma de fin a fin de Code con code utiliza la criptografía de clave pública para asegurar que los dispositivos de los usuarios finales ejecuten solo actualizaciones no modificadas y originales desde el desarrollador de la aplicación __CAPGO_KEEP_2__
Aquí está un esquema simple para explicar cómo funciona:

- Esquema de cifrado de __CAPGO_KEEP_0__
Definition:
- AES: Estándar de cifrado avanzado, un algoritmo de cifrado simétrico, una clave para cifrado y descifrado.
- AES: Estándar de cifrado avanzado, un algoritmo de cifrado simétrico, una clave para cifrar y descifrar.
- Cifrado: Los datos cifrados.
- Clave de sesión: Una clave AES utilizada para cifrar y descifrar datos.
- Checksum: Un hash calculado para un archivo
- Texto de firma: Un checksum que fue cifrado con una clave privada RSA. Puede ser verificado con una clave pública RSA
Usamos el algoritmo AES para cifrar la actualización. Una clave AES aleatoria se genera para cada carga, luego la clave AES y el checksum (a partir de ahora “firma”) se cifran con la clave privada RSA del desarrollador. La clave pública RSA del desarrollador se utiliza en la aplicación para descifrar la clave AES y la firma (convirtiéndola nuevamente en un checksum). Más tarde, la clave AES descifrada se utiliza para descifrar la actualización; se calcula un checksum de la actualización descifrada y se compara con la firma descifrada.
Usamos dos algoritmos de cifrado diferentes porque RSA no se puede utilizar para cifrar grandes cantidades de datos. AES se utiliza para cifrar la actualización y RSA se utiliza para cifrar la clave AES y el checksum.
Con esto, incluso Capgo no puede leer el contenido de su paquete. Este es un modelo de seguridad robusto que se utiliza por muchos clientes de empresas.
Actualización de cifrado V2 2024-08-27:
- Cambiamos el tipo de clave que se almacena en la aplicación. Esto se hizo para evitar inferir la clave pública (utilizada anteriormente para cifrar) a partir de la clave privada (utilizada anteriormente para descifrar). Ahora, la aplicación almacena la clave pública (ahora utilizada para descifrar).
- Se cambió el checksum desde el algoritmo CRC32 al algoritmo SHA256. También iniciamos firmar el paquete. Cuando se configura la actualización V2, la actualización debe tener una firma válida. Esto se aplica estrictamente por el plugin.
- Ahora se impone una firma de cifrado válida V2 está configurada. Estos 3 cambios se han realizado después de un análisis de seguridad de un miembro de la comunidad. Están aquí para prevenir ataques criptográficos durante la actualización.
Si utilizó cifrado V1, migre a V2 para aprovechar las nuevas características de seguridad. Siga las instrucciones de migración Instrucciones de migración.
With end-to-end code signing, Capgo becomes a “trustless” cloud infrastructure. If one of Capgo’s cloud providers or even Capgo itself were to modify a code-signed update, end users’ devices would reject that update and run the previous, trusted update that’s already on the device.
While web-level HTTPS is sufficient for many apps, some large companies find the extra level of security from end-to-end code signing appealing. Some of these companies make finance apps that issue high-value, permanent transactions. Other companies have CISOs who include compromised cloud infrastructure in their threat models. We built end-to-end code signing in to Capgo for these use cases and are interested in hearing more from companies with higher-level security needs.
Empezar a utilizar para clientes empresariales
For large companies or projects who care deeply about security, we want to make code signing easy to set up and maintain. To that end, we now provide the following features:
- Configuración rápida de certificado y configuración
- Soporte para firmar servidores de desarrollo de code con tanto Capgo como compilaciones de desarrollo
- Production code signing on every update
La Capgo code con firma digital está disponible para todos los clientes. Para empezar, siga los pasos. Instrucciones de configuración.
Créditos
Muchas gracias a Ionic, este artículo se basa en este artículo reescrito con chat-gpt-3 y adaptado.
Sigue adelante desde la cifrado E2E para el actualizador Capacitor mediante la firma Code
Si estás utilizando Cifrado E2E para el actualizador de Capacitor mediante firmado de Code para planificar la seguridad y la conformidad, conecta con Encryption para los detalles de implementación en la cifrado, Cumplimiento para el detalle de implementación en Cumplimiento Capgo Security Scanner para el flujo de trabajo del producto en Capgo Escáner de Seguridad. Capgo Security para el flujo de trabajo del producto en Capgo Seguridad, y Capgo Trust Center para el flujo de trabajo del producto en el Centro de Confianza Capgo.