Crypto de Node.js: hash SHA-256 completo
Clase 14 de 20 • Curso de Fundamentos de Node.js
Contenido del curso
Módulos y gestión de paquetes
Módulos nativos en Node.js
- 8

CRUD de archivos con Node.js fs
10:20 min - 9

Script Node.js fs y Whisper API
16:31 min - 10

Cómo implementar transcript audio con OpenAI
06:28 min - 11

Console API en Node.js: métodos básicos
10:22 min - 12

Console.count y console.group en JavaScript
09:16 min - 13

Node.js: módulo os para datos del sistema
04:57 min - 14

Crypto de Node.js: hash SHA-256 completo
Viendo ahora - 15

Módulo process de Node.js en detalle
17:04 min - 16

Módulo timers en Node.js: setTimeout y setInterval
11:05 min - 17

Streams en Node.js para archivos grandes
10:47 min - 18

Buffers en Node.js: crear y transformar datos binarios
06:44 min
Servidores con Node.js
La seguridad en aplicaciones modernas empieza con buenas prácticas criptográficas. Aquí verás cómo usar el módulo incorporado de Node.js, crypto, para crear un hash SHA-256 de un texto, entender su propósito y validar resultados sin complicaciones.
¿Qué es el módulo crypto en node.js y para qué sirve?
El módulo crypto es una biblioteca nativa de Node.js que ofrece funcionalidades criptográficas esenciales. Permite trabajar con generación de hashes, cifrado de información y firmas digitales, entre otras tareas. Es ideal cuando necesitas integridad, autenticidad y seguridad en tus aplicaciones.
- Biblioteca incorporada: no requiere instalación adicional.
- Funciones clave: hashes, cifrado y firmas digitales.
- Uso típico: verificación de integridad y protección de datos.
¿Cómo crear un hash SHA-256 en node.js paso a paso?
La idea central es definir un texto, aplicar el algoritmo SHA-256 y obtener su hash en formato hexadecimal para imprimirlo y verificarlo.
¿Qué código usar para generar el hash?
A continuación, un ejemplo directo que refleja el proceso explicado: importar crypto, definir el texto, crear el hash con createHash('sha256'), hacer update y terminar con digest('hex').
const crypto = require('crypto');
const text = 'hello, crypto world';
const hash = crypto
.createHash('sha256')
.update(text)
.digest('hex');
console.log('Texto original:', text);
console.log('SHA-256:', hash);
- Importar:
require('crypto'). - Definir texto: 'hello, crypto world'.
- Crear hash:
createHash('sha256'). - Actualizar datos:
update(text). - Salida legible:
digest('hex'). - Ejecutar en consola:
node archivo.js.
¿Cómo verificar que el hash es correcto?
La comprobación consiste en comparar el resultado con una herramienta que aplique el mismo algoritmo. Copias el texto original y verificas que el hash SHA-256 coincida. También puedes observar otros algoritmos como MD5, MD2 o MD4, pero recuerda que aquí el foco es SHA-256.
- Comparar el hash generado con una herramienta externa.
- Confirmar coincidencia del inicio y final del hash.
- Asegurar el uso del mismo algoritmo: sha-256.
Habilidades que practicas: - Uso de la API de crypto en Node.js. - Generación de hashes con SHA-256. - Conversión de salida a hexadecimal con digest('hex'). - Verificación básica de integridad.
¿Dónde se utiliza SHA-256 y por qué es importante?
SHA significa Security Hash Algorithm. SHA-256 fue desarrollado por la NSA y produce un valor de 256 bits que suele representarse como 64 caracteres hexadecimales. Es ampliamente usado en aplicaciones de seguridad de alto nivel, incluyendo blockchain, certificados digitales y sistemas de firma modernos. Es uno de los algoritmos más difundidos y considerados criptográficamente seguros en la actualidad.
- Longitud del resultado: 256 bits ≈ 64 caracteres hexadecimales.
- Casos de uso: blockchain, certificados digitales y firmas.
- Ventaja clave: alta adopción y robustez criptográfica.
¿Te gustaría seguir practicando o tienes dudas puntuales sobre crypto y SHA-256? Comparte tu pregunta o tu caso de uso en los comentarios y conversemos.