Tecnología & Stack

Listado de tecnologías, herramientas, componentes de software y hardware utilizados en su Cuvex 1.0

Listado de tecnologías, herramientas, componentes de software y hardware utilizados en su Cuvex 1.0

Hemos recopilado información con todo lujo de detalle, ahondando en los principales aspectos que conforman este disruptivo dispositivo: características principales de los componentes, detalles sobre los flujos de software y apuntes importantes de la seguridad implantada.
​ En aras de ofrecer una total transparencia de la implementación de la solución, hemos incluido el identificador del fabricante de los componentes de hardware, esto te permitirá hacer tu propia investigación de cada uno de ellos.

​ En la siguiente imagen podemos observar el diagrama de alto nivel que conjunta los principales componentes de Hardware y Software, así como los componentes externos y actores que conforman el sistema.
Component_diagram_cuvex_33db3194-4c6e-44bd-bb2a-7a54a2f759fb

Microcontrolador

Memoria

Bluetooth

NFC

Etiqueta NFC

Pantalla

Firmware

Bootloader

App

Criptografía

El corazón del sistema

Último modelo de la serie STM32 de STMicroelectronics, el STM32U585.
micro_1bdf0d25-f64f-4cac-8e52-c6fff4b2995b
Este microcontrolador está basado en la arquitectura ARM Cortex-M, con un diseño específico para cumplir con los mayores estándares de seguridad y enfocado en satisfacer las necesidades de las industrias de defensa y aeroespacial. Ofrece un rendimiento eficiente y un consumo de energía mínimo, entre sus principales características encontramos:  

- 2 unidades de coprocesador AES. 
- Alta resistencia a técnicas de Análisis de Potencia Diferencial.
 - Acelerador de hardware HASH. 
- interfaces de entrada, salida y memoria aseguradas (Arm® TrustZone®). 
- Ruta de confianza gracias a la entrada de arranque única y al área de protección oculta segura (HDP). 
- Instalación segura de firmware (SFI) con los servicios seguros de raíz integrados (RSS).
 - Almacenamiento seguro de datos con clave única de hardware (HUK).
En resumen, este componente de uso militar se ha implantado a tu Cuvex para ofrecer las mayores capacidades del mercado en criptografia y seguridad informática. Esto dota a tu dispositivo de la capacidad de cifrado en frio y un manejo de datos altamente securizado.

Diseñado para no guardar datos en el dispositivo

Memoria protegida en su totalidad
Memory_cuvex
Cuvex fue diseñado para nunca guardar datos en la memoria del dispositivo.Tu secreto más preciado únicamente pasa por el dispositivo temporalmente para ser procesado y convertido en un criptograma que luego será enviado a una tarjeta vía NFC. En cuanto termina de realizar cualquier proceso, la memoria se libera y de igual modo, al cortar la alimentación o al iniciar el dispositivo, se hace un reseteo de toda la memoria.  

Con el modo TrustZone habilitado, basado en la seguridad de marcas de agua no volátiles, securización por control de acceso y ocultación de protección HDP, la memoria está protegida en su totalidad.  

Además, para la protección de lectura, se ha establecido el nivel RDP 2 definido por el propio fabricante.
Esto implica que las funciones de depuración, el arranque en RAM y la selección del gestor de arranque están deshabilitadas, esto es irreversible y hace que el dispositivo no se pueda desbloquear ni manipular, con esto el hardware no se puede volver a utilizar para otro fin y todo lo que hay en memoria es inaccesible para cualquier intruso. 

En resumen, nunca se guarda datos en memoria no volátil, la memoria volátil está protegida, de modo que es imposible acceder a su contenido, que además se encuentra cifrado, y se libera cuando se completa cualquier flujo o se corta/inicia la alimentación. Añadido a esto, el dispositivo está bloqueado lo cual impide cualquier tipo de manipulación.

Incorporación de componentes seguros

Modelo de ST, el STM32WB5MMG
bluetooth
Siguiendo en la misma línea de incorporar los componentes más seguros disponibles del mercado, para el módulo de comunicaciones por Bluetooth, se ha elegido el modelo de ST, el STM32WB5MMG, entre sus características de seguridad destacadas encontramos: 

* Servicios de administración de claves/almacenamiento de claves del cliente, PKA, AES de 256 bits, TRNG, PCROP, CRC, UID de 96 bits.  
* Posibilidad de derivar 802.15.4 y Bluetooth® Low Energy de 48 bits UEI  
* Bluetooth® Low Energy 5.4, Zigbee® 3.0 con certificación OpenThread.
A nivel de operativa, este módulo únicamente se activa para el proceso de actualización de firmware de Cuvex, garantizando así que no está disponible en ningún otro proceso, de hecho, el propio dispositivo verifica antes de arrancar un proceso y de encontrarse con el módulo encendido, aborta la acción.  

El cliente también puede verificar la actividad del módulo. Con una luz azul visible desde el frontal del CASE que simboliza cuando el Bluetooth se encuentra disponible, el usuario siempre está al tanto del estado del BL. Este LED es parte del módulo de Bluetooth y se enciende cuando se alimenta, lo cual hace que no se pueda alterar para dar falsos negativos.
En cuanto al emparejamiento, se ha definido un protocolo específico para las comunicaciones de paquetes con la App Cuvex y se utiliza el modo de conexión segura LE Secure rechazando Legacy Pairing por su potencial inseguridad. 

Para el método de intercambio de clave de enlace, se rechaza la opción "Just Works" y se establece como requerimiento una protección MITM, basada en un PIN entrópico y forzando al borrado de las claves intercambiadas una vez finalizada la conexión.  

En cuanto a la potencia de señal, se ha establecido en un rango inferior a un metro de distancia, esto mitiga cualquier intento de acceso a distancia al dispositivo. Por último, aunque este módulo ofrece un sistema seguro de instalación de Firmware (SFI), esta opción está deshabilitada de fábrica, bloqueando así la puerta a cualquier potencial riesgo de seguridad.

Módulo para procesos "cifrar, descifrar y clonar"

Transductor RFID CR95HF
Memoria_nfc
Para la lectura y escritura de tarjetas NFC, se ha optado por el transductor RFID CR95HF (parte de la familia ST25), diseñado especialmente para soluciones contactless de la industria de medios de pago. TEste componente gestiona la codificación y decodificación de frames para aplicaciones de comunicación de campo cercano (NFC), posibilitando la detección, lectura y escritura de etiquetas NFC Forum Tipo 1, 2, 3 y 4. 

El módulo NFC únicamente se activa en la etapa final de los procesos de “Cifrar” y “Clonar”, una vez se encuentra el criptograma dentro del elemento seguro de la memoria preparado para ser escrito en una TAG NFC CUVEX, o al inicio del proceso “Descifrar” cuando se quiere leer el contenido de una TAG. Todo esto es gestionado por el propio microcontrolador y trabaja en consonancia con los elementos de seguridad de la memoria descritos anteriormente.
Cabe señalar que el contendido que viaja entre el controlador NFC y el microcontrolador (o viceversa) va siempre cifrado ya que se trata del criptograma generado en cualquiera de las funciones ofrecidas por el dispositivo Cuvex. De modo que no existe en ningún caso, riesgo de acceso a datos sensibles.

Dos versiones TAG-NFC

MIFARE DESFIRE EV1 8K y otra NTAG216 888 Bytes
NFC_TAG
Las tarjetas Cuvex en las que almacenas tus criptogramas, llevan consigo dos versiones de TAG NFC, una es del tipo MIFARE DESFIRE EV1 8K y otra NTAG216 888 Bytes. Se trata de tarjetas NFC pasiva, por tanto, no posee una batería o fuente de alimentación interna, es el transductor RFID el que provee de la energía necesaria para activar la tarjeta. Esto ocurre a distancias muy cortas (en la escala de los milímetros), impidiendo que otros dispositivos fuera del rango de alcance sean capaces de interactuar con la TAG. 

En la tarjeta se almacena una serie de metadatos necesarios para las comunicaciones con un dispositivo Cuvex, y por supuesto, el criptograma con tu secreto cifrado con AES 256, lo cual hace que los ataques criptográficos resulten inoperantes.
La durabilidad de las tarjetas Cuvex se ve fortalecida por varios factores: la resistencia física del material utilizado, la calidad de la impresión, la forma de almacenado y el maneja en el entorno real de uso. Todo esto nos brinda una vida útil entorno a los 10 años, o 15.000 ciclos, permitiendo así un tiempo considerablemente bueno para un elemento de respaldo vs su coste.
En cualquier caso, la App se encargará de recordarte el tiempo que queda a tu tarjeta, para que siguiendo las buenas prácticas vayas renovando las copias periódicamente.  

Para favorecer la salud de los datos almacenados, es recomendable usar una Jaula de Faraday para el almacenado de las tarjetas NFC, esto previene interferencia electromagnética, inducción de corriente o perturbaciones de energía eléctrica, ya sea por fenómenos naturales como tormentas solares, o intentos maliciosos de terceros.

Interface principal de comunicación

Controlador táctil capacitivo FT5446DQS
Screen_EN_cuvex_69774a1e-da3d-4fd7-9c30-5c1f3acff355
La pantalla es la interfaz principal de comunicación con el cliente y por ello hemos elegido el controlador táctil capacitivo FT5446DQS. Se trata de un solo chip con unidad de microcontrolador (MCU) mejorada incorporada. Proporciona los beneficios de la tecnología de escaneo de modo común a pantalla completa, tiempo de respuesta rápido y alto nivel de precisión.

La pantalla posee un tamaño de 4 pulgadas para brindar comodidad al cliente, una UIX intuitiva, basada en pantallas de fácil manejo y un teclado alfanumérico con una distribución popular en dispositivos móviles, permitiendo así que el cliente se sienta familiarizado con la interfaz desde el primer momento.
​En nuestra primera versión del Firmware, la captura de datos está abierta a texto plano o a semillas bajo el estándar BIP39, de modo que el autorellenado y validación del diccionario favorecen a la tranquilidad del cliente al momento de introducir sus palabras. En muy poco tiempo serán publicadas actualizaciones de diccionarios para Monero y Shamir.  

Al igual que ocurre con cualquier otro componente del sistema, al momento de cortar la alimentación, la pantalla se apaga y todo lo que hay en la memoria se resetea con el fin de que no puede ser recuperado por intrusos.

Código 100% verificable

Actualización de firmware a través de la aplicación móvil Cuvex
Firmware
Se trata del maestro de ceremonias, el que orquesta las funcionalidades expuestas para los clientes. Desde el manejo de tarjetas hasta los procesos de cifrar, descifrar y clonar, todos estos flujos se definen y realizan a partir de las líneas de código del Firmware que dan las instrucciones adecuadas a cada uno de los componentes antes descritos.  

No te preocupes, aquí no está definido el algoritmo que cifra tu secreto, como ya hemos dicho, esto se hace en frío y basado en hardware. Lo que hace el firmware, es utilizar las API’s del microcontrolador para ejecutar las funciones de criptografía expuestas por el microcontrolador y seguir la secuencia de pasos lógicos para: coger el dato de entrada desde la pantalla, convertirlo en un criptograma (utilizando tu potente STM32U585) y enviarlo a tu tarjeta NFC vía el transductor NFC/RFID CR95HF.
​ Si con esta explicación te has quedado con hambre, eres un verdadero custodio. Para que verifiques por ti mismo lo que decimos, encontrarás en este enlacetodo el código fuente del Firmware. Nuestro código es 100% verificable, visible, editable y lo puedes compilar tú mismo. También hemos añadido un poco más de información de este proceso en el apartado "Criptografía" de este documento.
La actualización del Firmware se hace mediante la App móvil Cuvex, utilizando el canal Bluetooth antes descrito. De ese modo, tú móvil hace de "Firewall", abstrayendo todo lo que tenga que ver con la descarga de la actualización desde internet. En síntesis, la App te notificará cuando haya una nueva actualización, esta se descargará en el elemento seguro de tu móvil, para que, una vez estés emparejado por Bluetooth, se envíe el binario de forma segura a tu Cuvex. 

Cabe resaltar que previa escritura del Firmware en el dispositivo, se hace una validación de la integridad y autenticidad del software basados en una firma digital, esto permite asegurar que ningún otro software y/o alteración del mismo sea capaz de ejecutarse en tu Cuvex. En el momento que el dispositivo detecta la anomalía, este procede a reiniciarse y regresar al modo de fábrica, solicitando nuevamente la instalación de un binario válido.
It is important to highlight that before writing the Firmware on the device, a validation of the software's integrity and authenticity is performed based on a digital signature. This ensures that no other software and/or alteration of it can be executed on your Cuvex. The moment the device detects an anomaly, it proceeds to restart and return to factory mode, requesting the installation of a valid binary again.

El Rol Clave
del Bootloader

Este actúa como guardian de acceso
Bootloader_cuvex3_4b90c7fd-ec92-48cb-b927-998c3f97a3d7
Si el Firmware es el pianista, el Bootloader es el afinador del piano. Este Software se encarga de preparar los elementos básicos para que el Firmware pueda operar, asegurando la integridad del hardware y previniendo la instalación de cualquier tipo de software desconocido. 

Una de sus principales características es que es el único capaz de manejar el controlador de Bluetooth. Con esto, ningún proceso de software fuera del Bootloader puede alimentar y/o utilizar el módulo Bluetooth.  


Al sólo arrancar, verifica si existe una instancia del Firmware válida, de no haberla, borra completamente la partición de memoria destinada al Firmware App y activa el modo actualización, enciende el módulo Bluetooth y se queda en bucle a la espera de escritura de un nuevo Firmware en la memoria dedicada para ello.
De igual forma, si el usuario ejecuta la función actualizar, el Firmware instalado borra la firma verificada y esto provoca el borrado automático de toda la memoria donde se aloja la propia instancia del Firmware, forzando al dispositivo a operar nuevamente con el Bootloader.  

Otra de sus funciones es la de validar la firma digital del software antes de proceder con su ejecución, esto lo hace mediante la función criptográfica RSA expuesta por el microcontrolador. Si ha sido alterado el contenido del software a instalar, y/o no ha sido firmado con la clave privada de Cuvex, el Bootloader borrará el binario y regresará al estado inicial de fábrica, a espera de una actualización de Firmware.  

En resumen, podemos decir que el Bootloder hacer el papel de software de recuperación de fábrica que solo permite la actualización a un Firmware firmado por Cuvex y que aísla el acceso al canal de comunicación bluetooth.
20363d_adf38ca624b74338bbd06230c85f05ec_mv2

Actualización de firmware
Diagrama de proceso y actividad

Política de conocimiento 0

Totalmente desarrollada con código fuente nativo.
app_cevex

Construida bajo una política de conocimiento cero y diseñada bajo los mayores estándares de seguridad informática, la App de Cuvex brinda una serie de funciones complementarias para los propietarios de un dispositivo Cuvex y cualquier persona que esté buscando migrar a una verdadera auto custodia soberana.

Una de las principales funciones de esta aplicación es la de proveer al dispositivo Cuvex de las últimas actualizaciones del Firmware, intermediando entre los servicios de descarga y el dispositivo de cifrado en frio. Podemos decir que ejerce un papel de Firewall, asegurándose de hablar con los servicios oficiales de fábrica y enviando el archivo binario a través de un canal alternativo BL con un cifrado P2P.

Esto hace que tu Cuvex jamás esté expuesto a internet y las conversaciones se hagan de forma segura con la aplicación oficial publicada en las tiendas de las plataformas.

Está totalmente desarrollada con código fuente nativo, apoyada en los frameworks de las plataformas iOS / Android y siguiendo las mejores prácticas de seguridad. Entre los controles implementados, tenemos la detección de las funciones de comunicación BL / WiFi o la existencia de una tarjeta SIM en el dispositivo. Estos controles se activan en procesos clave que bloquean el avance por incumpliendo de requerimientos.

Here are its other functions: 

BTC Wallet Creation: Allows you to generate your seed's entropy yourself through the Dice and Coin process for the first 23 words. Additionally, it calculates the 24th word and generates the public/private keys. The result is a wallet not generated by third-party software and without any dependencies (real freedom). You need no more; with this, you have everything to start holding your Satoshis. Do not forget to encrypt your seed and keys with your Cuvex.

Wallet Balance Verification: This disruptive service will send you real-time notifications of any changes in the blockchain related to your wallets, a true guardian of your crypto assets. Best of all, you only need to register the public key (Xpub) of your Wallet. Moreover, in line with the zero-knowledge policy, it's impossible to establish a connection between the users and the public keys (actually, we have no data on our App users, haha).

Cuvex Card Management: These are support services for managing the cards where you store your secrets. With the App, you can associate identification information instead of having to physically label your cards, thus avoiding a bad security practice. It also offers scheduled reminder tasks to ensure the cryptogram's consistency and lifespan.

TOR Communications: The app has its own TOR network connection client to ensure comprehensive privacy in external calls. This strengthens processes like balance verification and Balance Alert services.

La robustez del AES256

Reconocimiento a nivel mundial, adoptado por entidades militares y gubernamentales.
AES256_cuvex
Los flujos de cifrado y descifrado puestos a disposición de los usuarios utilizan el algoritmo de criptografía simétrica AES 256 GCM, el estándar de cifrado más reconocido a nivel mundial, adoptado por la gran mayoría de entidades militares y gubernamentales. AES ha sido sometido a un exhaustivo escrutinio y análisis criptográfico desde su adopción como estándar en 2001, y su consistencia y robustez han sido revalidadas continuamente. De hecho, ni siquiera los futuros ordenadores cuánticos lograrían la ventaja cuántica necesaria para romper su seguridad mediante cálculos de fuerza bruta.

En el caso de Cuvex, este algoritmo está implementado en el propio hardware. Para ello, el microcontrolador dispone de unidades de potencia AES específicas, que no solo permiten un procesamiento acelerado de los cálculos, sino que también evitan que el software participe en dichos cálculos.
En tu Cuvex, este algoritmo está implementado en el propio hardware. Para ello, el microcontrolador posee unidades de potencia específicas de AES, lo cual no sólo brinda un procesamiento acelerado de los cálculos, sino que abstrae al software de participar en dichos cálculos. 
20363d_c28474749d3b4a0b9f919189aa8d16c8_mv2

Proceso de cifrado
- Diagrama de actividades

En cuanto a la firma digital del Firmware, se ha optado por el algoritmo asimétrico RSA. Nuevamente la implementación está hecha en Hardware, capaz de manejar el par de claves para la validación de la firma Digital y funciones de CRC y HASH para huella digital. Con la Clave Privada, los servicios de Cuvex firman el binario que se instala en el dispositivo. Con la clave pública, el propio dispositivo es capaz de verificar la autoría del software. Además, mediante SHA256, se comprueba la integridad del software.
No está de más comentarte que somos consiente que el RSA, al igual que cualquier otro estándar de cifrado asimétrico, tienen los años contados, con la llegada la computación cuántica se ha demostrado que el trabajo por fuerza bruta se reduce de forma exponencial al intentar encontrar la clave privada a partir de la pública. Como sabemos que el YTQ está a menos de 10 años vista, en nuestro bakclog ya se encuentra incluida la implementación del algoritmo Crystal Dilithium, diseñado para la era post-cuantica.
Otra característica interesante de resaltar es la capacidad de generar datos aleatorios. El microcontrolador posee su propio generador denominado RNG (True Random Number Generator) que provee outputs totalmente entrópicos a partir de una fuente analógica, está en cumplimento con el NIST SP 800-90B como fuente válida de entropía y por tanto puede ser utilizado como generador no determinístico de bits aleatorios.
Esto tiene especial relevancia para procesos como el del emparejamiento Bluetooth, donde el proceso PassKey entry se basa en la generación de un PIN desde el dispositivo Cuvex que al ser verdaderamente entrópico, imposibilita ataques basados en diccionarios y/o fuerza bruta.

Microcontrolador

Memoria

Bluetooth

NFC

NFC TAG

Pantalla

Firmware

Bootloader

App

Criptografía

El corazón del sistema

Último modelo de la serie STM32 de STMicroelectronics, el STM32U585.
micro_1bdf0d25-f64f-4cac-8e52-c6fff4b2995b
This microcontroller is based on the ARM Cortex-M architecture, with a design specifically tailored to meet the highest security standards and focused on fulfilling the needs of the defense and aerospace industries. It offers efficient performance and minimal power consumption, among its main features we find: 

- 2 AES coprocessor units. 
- High resistance to Differential Power Analysis techniques.
 - HASH hardware accelerator. 
- Secured input/output and memory interfaces (Arm® TrustZone®). 
- Trusted path thanks to the unique boot entry and Secure Hidden Protection Area (HDP). 
- Secure firmware installation (SFI) with integrated Secure Root Services (RSS).
 - Secure data storage with unique hardware key (HUK).
In summary, this military-grade component has been implemented into your Cuvex to provide the market's leading capabilities in cryptography and computer security. This endows your device with the capacity for cold encryption and highly secure data management.

Diseñado para no guardar datos en el dispositivo

Memoria protegida en su totalidad
Memory_cuvex
Cuvex is designed to never store data on the device's memory. Your most prized secret only passes through the device temporarily to be processed and converted into a cryptogram, which is then sent to a card via NFC. As soon as any process is completed, the memory is cleared, and similarly, upon cutting the power or upon device startup, a complete memory reset is performed. 

With TrustZone mode enabled, based on the security of non-volatile watermarking, access control securitization, and HDP protection concealment, the memory is entirely protected. 

Moreover, for read protection, the RDP 2 level defined by the manufacturer itself has been established.
This implies that debugging functions, booting in RAM, and bootloader selection are disabled, which is irreversible and makes the device unable to be unlocked or tampered with, rendering the hardware unusable for any other purpose and all memory content inaccessible to any intruders. 

In summary, data is never stored in non-volatile memory, volatile memory is protected, making it impossible to access its contents, which is also encrypted, and is cleared when any workflow is completed or power is cut/started. Added to this, the device is locked, which prevents any form of tampering.

Incorporación de componentes seguros

Modelo de ST, el STM32WB5MMG
bluetooth
Continuing in the vein of incorporating the most secure components available on the market, for the Bluetooth communication module, we have chosen the ST model, the STM32WB5MMG. Among its notable security features, we find: 

* Key management services/client key storage, PKA, 256-bit AES, TRNG, PCROP, CRC, 96-bit UID. 
* The capability to derive 48-bit UEI from 802.15.4 and Bluetooth® Low Energy 
* Bluetooth® Low Energy 5.4, Zigbee® 3.0 with OpenThread certification 
Operationally, this module is only activated for the firmware update process of Cuvex, thus ensuring it is not available during any other process. In fact, the device itself checks before starting a process and if it finds the module turned on, it aborts the action.
The client can also verify the module's activity. With a blue light visible from the front of the CASE that symbolizes when Bluetooth is available, the user is always aware of the BL status. This LED is part of the Bluetooth module and lights up when powered, making it impossible to tamper with to give false negatives. 

Regarding pairing, a specific protocol has been defined for packet communications with the Cuvex App, and it uses the LE Secure Connection mode, rejecting Legacy Pairing due to its potential insecurity. 

For the link key exchange method, the "Just Works" option is rejected, and a requirement for MITM protection is established, based on an entropic PIN and forcing the deletion of exchanged keys once the connection is finished. 

As for the signal strength, it has been set to a range of less than one meter, mitigating any attempt at remote access to the device. Lastly, although this module offers a secure Firmware installation system (SFI), this option is disabled by default, thus blocking the door to any potential security risk.

Módulo para procesos "cifrar, descifrar y clonar"

Transductor CR95HF - RFID
Memoria_nfc
For NFC card reading and writing, we have opted for the RFID transducer CR95HF (part of the ST25 family), specially designed for contactless solutions in the payment media industry. This component manages the encoding and decoding of frames for Near Field Communication (NFC) applications, enabling the detection, reading, and writing of NFC Forum Type 1, 2, 3, and 4 tags.
The NFC module is only activated in the final stages of the "Encrypt" and "Clone" processes, once the cryptogram is inside the secure memory element ready to be written to a CUVEX NFC TAG, or at the beginning of the "Decrypt" process when the content of a TAG is to be read. All this is managed by the microcontroller itself and works in conjunction with the security elements of the memory described previously. 

It is worth noting that the content traveling between the NFC controller and the microcontroller (or vice versa) is always encrypted since it concerns the cryptogram generated in any of the functions offered by the Cuvex device. Thus, there is no risk of access to sensitive data in any case.

Dos versiones TAG-NFC

MIFARE DESFIRE EV1 8K y otra NTAG216 888 Bytes
NFC_TAG
The Cuvex cards on which you store your cryptograms come with two versions of NFC TAGs, one is of the MIFARE DESFIRE EV1 8K type and the other is an NTAG216 888 Bytes. These are passive NFC cards, hence, they do not have a battery or internal power source; the RFID transducer provides the necessary energy to activate the card. This happens at very short distances (on the scale of millimeters), preventing other devices outside the range from interacting with the TAG. 

The card stores a series of metadata necessary for communications with a Cuvex device, and of course, the cryptogram with your secret encrypted with AES 256, making cryptographic attacks ineffective.
The durability of Cuvex cards is bolstered by several factors: the physical resistance of the material used, the quality of the printing, the storage method, and the handling in the real environment of use. All this gives us a lifespan of around 10 years, or 15,000 cycles, allowing a considerably good backup time versus its cost.
In any case, the App will take care of reminding you of the remaining time for your card, so that following best practices, you can periodically renew the copies. 

To favor the health of the stored data, it is advisable to use a Faraday Cage for storing the NFC cards. This prevents electromagnetic interference, current induction, or electrical energy disturbances, whether by natural phenomena such as solar storms or malicious attempts by third parties.

Interface principal de comunicación

Controlador táctil capacitivo FT5446DQS
Screen_EN_cuvex_69774a1e-da3d-4fd7-9c30-5c1f3acff355
The screen serves as the primary communication interface with the customer, which is why we have chosen the capacitive touch controller FT5446DQS. It is a single-chip solution with an enhanced microcontroller unit (MCU) built-in. It offers the benefits of full-screen common-mode scanning technology, quick response time, and high level of accuracy. 

The screen has a size of 4 inches to provide comfort to the customer, an intuitive UIX based on easy-to-navigate screens, and an alphanumeric keypad with a layout popular on mobile devices, allowing the customer to feel familiar with the interface from the first use.
In our first version of the Firmware, data capture is open to plain text or seeds under the BIP39 standard, so the auto-fill and dictionary validation contribute to the customer's peace of mind when entering their words. Updates for Monero and Shamir dictionaries will be published shortly. 

Just like with any other system component, when the power is cut, the screen turns off, and everything in the memory is reset to ensure it cannot be recovered by intruders.

Código 100% verificable

Actualización del Firmware, mediante la App móvil Cuvex
Firmware
The firmware acts as the master of ceremonies, orchestrating the functionalities made available to customers. From handling cards to the processes of encrypting, decrypting, and cloning, all these workflows are defined and executed based on the firmware's lines of code, which provide the appropriate instructions to each of the previously described components.
Worry not, the algorithm that encrypts your secret is not defined here, as we've mentioned before, this is done cold and hardware-based. What the firmware does is utilize the microcontroller's APIs to execute the cryptographic functions exposed by the microcontroller and follow the logical step sequence to: take the input data from the screen, convert it into a cryptogram (using your powerful STM32U585), and send it to your NFC card via the NFC/RFID CR95HF transducer.
If this explanation has left you wanting more, you are a true custodian. To verify for yourself what we say, you will find the entire source code of the Firmware at this link. Our code is 100% verifiable, visible, editable, and you can compile it yourself. We have also added a bit more information about this process in the "Cryptography" section of this document.
The Firmware update is done through the Cuvex mobile App, using the previously described Bluetooth channel. In this way, your mobile acts as a "Firewall," abstracting everything related to the update download from the internet. In summary, the App will notify you when there is a new update, it will be downloaded to the secure element of your mobile, so that, once you are paired via Bluetooth, the binary is sent securely to your Cuvex.
It is important to highlight that before writing the Firmware on the device, a validation of the software's integrity and authenticity is performed based on a digital signature. This ensures that no other software and/or alteration of it can be executed on your Cuvex. The moment the device detects an anomaly, it proceeds to restart and return to factory mode, requesting the installation of a valid binary again.

El Rol Clave del Bootloader

Este actúa como guardian de acceso
Bootloader_cuvex3_4b90c7fd-ec92-48cb-b927-998c3f97a3d7
If the Firmware is the pianist, the Bootloader is the piano tuner. This software is responsible for preparing the basic elements for the Firmware to operate, ensuring the hardware's integrity and preventing the installation of any unknown software. 

One of its main features is that it is the only entity capable of managing the Bluetooth controller. With this, no software process outside of the Bootloader can power and/or use the Bluetooth module.
pon booting, it checks if a valid instance of the Firmware exists. If not, it completely erases the memory partition designated for the Firmware App and activates update mode, turns on the Bluetooth module, and loops waiting for a new Firmware to be written to the dedicated memory.
Similarly, if the user initiates the update function, the installed Firmware erases the verified signature, which triggers the automatic deletion of all the memory housing the Firmware's own instance, forcing the device to operate again with the Bootloader. 

Another function is to validate the digital signature of the software before proceeding with its execution, doing so through the RSA cryptographic function exposed by the microcontroller. If the content of the software to be installed has been altered and/or has not been signed with Cuvex's private key, the Bootloader will erase the binary and return to the initial factory state, waiting for a Firmware update.
In summary, we can say that the Bootloader acts as a factory recovery software that only allows updates to Firmware signed by Cuvex and isolates access to the Bluetooth communication channel.
20363d_adf38ca624b74338bbd06230c85f05ec_mv2

Actualización de firmware
Diagrama de proceso y actividad

Política de conocimiento 0

Totalmente desarrollada con código fuente nativo.
app_cevex

Built under a zero-knowledge policy and designed to the highest standards of computer security, the Cuvex App offers a range of complementary functions for owners of a Cuvex device and anyone looking to migrate to true sovereign self-custody.

One of the app's main functions is to provide the Cuvex device with the latest Firmware updates, acting as an intermediary between the download services and the cold encryption device. It plays the role of a Firewall, ensuring communication with the official factory services and sending the binary file through an alternative BL channel with P2P encryption.

This ensures that your Cuvex is never exposed to the internet and that conversations are securely conducted with the official app published on platform stores.

It is fully developed with native source code, leveraging the frameworks of iOS / Android platforms and following the best security practices. Among the implemented controls, we have the detection of BL / WiFi communication functions or the presence of a SIM card in the device. These controls are activated in key processes that block progress due to non-compliance with requirements.

Here are its other functions: 

BTC Wallet Creation: Allows you to generate your seed's entropy yourself through the Dice and Coin process for the first 23 words. Additionally, it calculates the 24th word and generates the public/private keys. The result is a wallet not generated by third-party software and without any dependencies (real freedom). You need no more; with this, you have everything to start holding your Satoshis. Do not forget to encrypt your seed and keys with your Cuvex.

Wallet Balance Verification: This disruptive service will send you real-time notifications of any changes in the blockchain related to your wallets, a true guardian of your crypto assets. Best of all, you only need to register the public key (Xpub) of your Wallet. Moreover, in line with the zero-knowledge policy, it's impossible to establish a connection between the users and the public keys (actually, we have no data on our App users, haha).

Cuvex Card Management: These are support services for managing the cards where you store your secrets. With the App, you can associate identification information instead of having to physically label your cards, thus avoiding a bad security practice. It also offers scheduled reminder tasks to ensure the cryptogram's consistency and lifespan.

TOR Communications: The app has its own TOR network connection client to ensure comprehensive privacy in external calls. This strengthens processes like balance verification and Balance Alert services.

La robustez de AES256

Reconocimiento a nivel mundial, adoptado por entidades militares y gubernamentales.
AES256_cuvex
Los flujos de cifrado y descifrado expuestos a los usuarios hacen uso del algoritmo de criptografía simétrica AES 256 GCM, el estándar de cifrado con mayor reconocimiento a nivel mundial, adoptado por la amplia mayoría de entidades militares y gubernamentales. AES ha sido sometido a un amplio escrutinio y análisis criptográfico desde su adopción como estándar en el año 2001, y desde entonces se ha revalidado constantemente la consistencia y robustez que ofrece. De hecho, ni siquiera con los futuros ordenadores cuánticos se alcanzaría la deseada ventaja cuántica para romper su seguridad mediante cálculos de fuerza bruta. En tu Cuvex, este algoritmo está implementado en el propio hardware. Para ello, el microcontrolador posee unidades de potencia específicas de AES, lo cual no sólo brinda un procesamiento acelerado de los cálculos, sino que abstrae al software de participar en dichos cálculos.
In your Cuvex, this algorithm is implemented in the hardware itself. To this end, the microcontroller has specific AES power units, which not only provide accelerated processing of the calculations but also abstract the software from participating in these calculations. 
20363d_c28474749d3b4a0b9f919189aa8d16c8_mv2

Proceso de cifrado
- Diagrama de actividades

As for the digital signature of the Firmware, the asymmetric algorithm RSA has been chosen. Again, the implementation is hardware-based, capable of handling the key pair for Digital signature validation and CRC and HASH functions for fingerprinting. With the Private Key, Cuvex services sign the binary installed on the device. With the public key, the device itself can verify the software's authorship. Additionally, the integrity of the software is checked using SHA256.
It's worth mentioning that we are aware that RSA, like any other asymmetric encryption standard, has its days numbered with the advent of quantum computing, which has shown that brute force work is exponentially reduced when trying to find the private key from the public one. Knowing that Y2Q (Years to Quantum) is less than a decade away, our backlog already includes the implementation of the Crystal Dilithium algorithm, designed for the post-quantum era.
Another interesting feature to highlight is the ability to generate random data. The microcontroller has its own generator called RNG (True Random Number Generator) that provides entirely entropic outputs from an analog source, compliant with NIST SP 800-90B as a valid source of entropy and, therefore, can be used as a non-deterministic generator of random bits.
This is particularly relevant for processes like Bluetooth pairing, where the PassKey entry process is based on generating a PIN from the Cuvex device that, being truly entropic, prevents attacks based on dictionaries and/or brute force.