Eficiente implementación de una biblioteca de criptografía utilizando Web Assembly
Autores: Park, BoSun; Song, JinGyo; Seo, Seog Chung
Idioma: Inglés
Editor: MDPI
Año: 2020
Acceso abierto
Artículo científico
2020
Eficiente implementación de una biblioteca de criptografía utilizando Web Assembly
Categoría
Ingeniería y Tecnología
Subcategoría
Ingeniería Eléctrica y Electrónica
Palabras clave
Biblioteca criptográfica
Web Assembly
Rendimiento
CHAM revisado
ECDH
Ataques de canal lateral
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 29
Citaciones: Sin citaciones
Implementamos una biblioteca criptográfica utilizando Web Assembly. Se espera que Web Assembly muestre un mejor rendimiento que Javascript. La biblioteca propuesta proporciona conjuntos de algoritmos completos que incluyen CHAM revisado, Código de Autenticación de Mensajes Hash (HMAC) y ECDH utilizando la curva NIST P-256 para proporcionar funciones de confidencialidad, autenticación de datos y acuerdo de claves. Para optimizar el rendimiento de CHAM revisado en la biblioteca propuesta, aplicamos un método existente que es un método de combinación de cuatro rondas y adicionalmente proponemos el método de precomputación para CHAM-64/128. El CHAM revisado propuesto mostró una mejora de rendimiento aproximada de 2.06 veces (CHAM-64/128), aproximadamente 2.13 veces (CHAM-128/128) y aproximadamente 2.63 veces (CHAM-128/256) en Web Assembly en comparación con JavaScript. Además, CHAM-64/128 aplicando el método de precomputación mostró un rendimiento mejorado aproximadamente 1.2 veces más que el CHAM-64/128 existente. Para el ECDH utilizando la curva P-256, la implementación ingenua de ECDH es vulnerable a ataques de canal lateral (SCA), por ejemplo, análisis de consumo de energía simple (SPA) y análisis de tiempo (TA). Por lo tanto, aplicamos un método de multiplicación escalar resistente a SPA y TA, que es una operación central en ECDH. Presentamos la multiplicación escalar basada en bloques atómicos revisando el trabajo anterior. Los bloques atómicos existentes muestran una sobrecarga de rendimiento del 55%, 23% y 37%, pero los bloques atómicos propuestos para usar solo muestran una sobrecarga de rendimiento del 18%, 6% y 11%. La biblioteca criptográfica propuesta basada en Web Assembly proporciona un rendimiento mejorado y resistencia contra SCA, por lo tanto, puede ser utilizada en varias aplicaciones web.
Descripción
Implementamos una biblioteca criptográfica utilizando Web Assembly. Se espera que Web Assembly muestre un mejor rendimiento que Javascript. La biblioteca propuesta proporciona conjuntos de algoritmos completos que incluyen CHAM revisado, Código de Autenticación de Mensajes Hash (HMAC) y ECDH utilizando la curva NIST P-256 para proporcionar funciones de confidencialidad, autenticación de datos y acuerdo de claves. Para optimizar el rendimiento de CHAM revisado en la biblioteca propuesta, aplicamos un método existente que es un método de combinación de cuatro rondas y adicionalmente proponemos el método de precomputación para CHAM-64/128. El CHAM revisado propuesto mostró una mejora de rendimiento aproximada de 2.06 veces (CHAM-64/128), aproximadamente 2.13 veces (CHAM-128/128) y aproximadamente 2.63 veces (CHAM-128/256) en Web Assembly en comparación con JavaScript. Además, CHAM-64/128 aplicando el método de precomputación mostró un rendimiento mejorado aproximadamente 1.2 veces más que el CHAM-64/128 existente. Para el ECDH utilizando la curva P-256, la implementación ingenua de ECDH es vulnerable a ataques de canal lateral (SCA), por ejemplo, análisis de consumo de energía simple (SPA) y análisis de tiempo (TA). Por lo tanto, aplicamos un método de multiplicación escalar resistente a SPA y TA, que es una operación central en ECDH. Presentamos la multiplicación escalar basada en bloques atómicos revisando el trabajo anterior. Los bloques atómicos existentes muestran una sobrecarga de rendimiento del 55%, 23% y 37%, pero los bloques atómicos propuestos para usar solo muestran una sobrecarga de rendimiento del 18%, 6% y 11%. La biblioteca criptográfica propuesta basada en Web Assembly proporciona un rendimiento mejorado y resistencia contra SCA, por lo tanto, puede ser utilizada en varias aplicaciones web.