Cifrar con TLS y verificar certificados
Proteja los datos en tránsito y verifique el servidor.
Cifrar con TLS y verificar certificados es una lección gratuita de Arduino & IoT Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Arduino & IoT Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Arduino & IoT Academy incluye 4 lecciones en total.
Por qué cifrar
Los datos que atraviesan el WiFi e Internet pasan por muchas manos. El cifrado los transforma para que solo el servidor previsto pueda leer sus lecturas. 🔒
Conozca TLS
TLS es la capa que convierte HTTP en HTTPS. Cifra el canal entre su dispositivo y un servidor para que quienes escuchen solo vean datos incomprensibles.
El handshake
Antes de que fluyan los datos, ambos extremos acuerdan las claves mediante un handshake. Esta configuración demuestra la identidad del servidor y establece un secreto compartido.
Qué demuestra un certificado
Un servidor presenta un certificado firmado por una autoridad de confianza. Esto demuestra que el servidor es realmente quien afirma ser y no un impostor.
Cifrado sin verificación
Cifrar sin realizar comprobaciones es peligroso. Sin verificación, un atacante puede situarse en medio, controlar las claves y leerlo todo.
El ataque de intermediario
Un atacante intermediario suplanta al servidor y retransmite su tráfico. Verificar el certificado es precisamente lo que detiene este ataque.
Utilice WiFiClientSecure
En el ESP32, WiFiClientSecure gestiona las conexiones TLS. Es la versión segura del cliente normal que utilizó para HTTP.
#include <WiFiClientSecure.h>
WiFiClientSecure client;Fije la CA raíz
Proporcione a su dispositivo el certificado raíz del servidor para que pueda verificar la confianza. Esta CA fijada permite que la placa sepa que el servidor es auténtico.
client.setCACert(root_ca); // verify the server against this trusted CANunca omita la comprobación
Llamar a setInsecure desactiva toda verificación. setInsecure está bien para una prueba rápida, pero nunca debe llegar a un producto distribuido.
client.setInsecure(); // DANGER: trusts any server, use only for testingLos certificados caducan
Todos los certificados tienen una fecha de caducidad, por lo que la verificación necesita la hora correcta. Un dispositivo con el reloj equivocado puede rechazar incorrectamente un servidor válido.
Cifre también MQTT
TLS no sirve únicamente para HTTPS. Configure su cliente MQTT para usar un puerto de broker TLS como el 8883 y proteja sus mensajes pub/sub de la misma manera.
Comprobación rápida
El cifrado por sí solo no es suficiente. ¿Qué más importa?
Resumen
TLS cifra el tráfico y los certificados demuestran la identidad. Utilice WiFiClientSecure, fije una CA de confianza, mantenga el reloj correcto y nunca distribuya setInsecure. 🛡️
Preguntas frecuentes
¿La lección «Cifrar con TLS y verificar certificados» es gratis?
Sí — el texto completo de «Cifrar con TLS y verificar certificados» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Arduino & IoT Academy, actualiza a CoddyKit PRO. El curso de Arduino & IoT Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Cifrar con TLS y verificar certificados»?
Proteja los datos en tránsito y verifique el servidor. Practicas Arduino & IoT Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Arduino & IoT Academy?
No se requiere experiencia previa. Arduino & IoT Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.
¿Cuánto tiempo toma la lección «Cifrar con TLS y verificar certificados»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Arduino & IoT Academy?
Sí. Cada lección de Arduino & IoT Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Superficies de ataque comunes en IoT
- Mantener los secretos fuera del código
- Cifrar con TLS y verificar certificados
- Firmar y proteger el firmware