"Secure Socket TCP" con TLS. Existe¿?

Buenos días.
Tengo algunas dudas sobre la securización de las comunicaciones.
Hay alguna libreria de arduino para abrir un "Secure Socket TCP" con TLS.

En mi pequeño proyecto personal tengo una Rasp sobre la que se consolidan una serie de datos que obtendo de dispositicos ESP8266 repartidos por la casa.

Lo que hago ahora es recoger datos con los ESP 8266 y servirlos por medio de un servidor socket tcp. Cuando la rasp quiere un dato, se conecta como cliente y pide.

El servidor en el ESP8266 lo programo con arduino. usando la libreria "ESP8266WiFi.h" abriendo un socket TCP en el puerto que considere, algo como ....

...
 wifiServer.begin();
}
 void loop() {
 
  WiFiClient client = wifiServer.available();
 
  if (client) {
 
    while (client.connected()) {
 
      while (client.available()>0) {
        char c = client.read();
        Serial.write(c);
      }
       delay(10);
    }
    client.stop();
    Serial.println("Client disconnected");
  }
}
...

Ahora quisiera usar algo parecido pero mas seguro, que tenga un cifrado y cierta seguridad etc...
Algo como TLS. Con su certificado etc... Mi primera intención es crear un canal seguro lo que yo entiendo como "secure tcp socket".
Pero todo lo que encuentro son servidores HTTPS, que supongo esten pensados para eso, servir paguinas web seguras, http en modeo seguro.
Lo que yo quiero es el canal para servir datos en modo seguro, no paguinas web.
He estado buscando estos días por el foro e internet en general y no termino de encontrar la solución, en parte pq seguramente tenga asimilados conceptos de manera erronea.
La conclusión que he sacado hasta ahora es que el ssl/tls es un protocolo de la capa de transporte. Podemos usarlo en la capa aplicación con http, FTP, POP3 ... obteniendo lo que conocemos como HTTPs, FTPs o POPs.
Por esto esperaba encontrar un libreria que me crease un canal TLS, que me permitiese enviar datos del modo que yo considere.

Algo asi como un "wifiServerTLS.begin();"
al que luego me conectaría con un cliente TLS desde la rasp.

Lo que he encontrado, va en la dirección de MQTT que entiendo como algo parecido el HTTPS, una capa superior que usa el TLS, y no este en si mismo.

Espero que puedan decirme como de perdido estoy en este tema y hacia donde puedo encaminarme.

Muchas gracias un saludo.

Lee esto hay buenos enlaces con librerías Websockets | Aprendiendo Arduino

Muchas gracias @ToniDiana. No es la solución que buscaba pero la falta de respuestas en este sentido me llevaron al MQTT. El enlace que me pasas esta muy completo y seguro que me será de mucha utilidad.
No obstante sigo con curiosidad de como crear un socket tls, asi que dejare el hilo abierto un poco mas por si alguien pudiese ayudarme en esto.

El core de arduino del esp8266 soporta socket tcp tls como cliente como servidor:

Bearssl cliente
Bearssl servidor

En los ejemplos veras que la mayoría de las veces se habla de http, inplementando HTTP. Pero la clase no es especifica de HTTP...

Saludos.

Muchas gracias @harkonnen,

Creo que he entendido lo que me dices. De hecho, en este momento el esp lo tengo como servidor web http, con una pequeña pagina. Y ataco la web desde un cliente tcp al puerto 80 del esp. que mas o menos es lo que hace un navegador ...

Y gracias otra vez, esto me sirve para seguir caminando.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.