首页 > 其他分享 >esp32-c3通过AT指令集创建SSL加密的TCP客户端

esp32-c3通过AT指令集创建SSL加密的TCP客户端

时间:2023-09-20 14:38:29浏览次数:46  
标签:20 22 2E 54 esp32 TCP SSL 0A 0D

官方文档

步骤

  • fork源码
  • 创建新分支
  • 按键盘上的.进入编辑界面
  • 将如下证书换成目标服务器的证书
    image
  • 提交
  • 返回到Action页面,等待自动编译完成
  • 下载下述文件
    image
  • 将factory固件烧录到目标板的地址0
    image

测试

  • 注意AT指令的串口非常有可能不是烧录口
  • 查AT固件版本:AT+GMR
  • 设置为STA模式:AT+CWMODE=1
  • 连接Wi-Fi:AT+CWJAP="ssid","passwd"
  • 查询网络参数:AT+CIPSTA?
  • 连接通过SSL加密连接TCP服务端:AT+CIPSTART="SSL","192.168.9.234",4433
  • 发送4个字节的数据:AT+CIPSEND=4

测试记录

点击查看代码
HEX:41 54 2B 43 49 50 53 54 41 3F 0D 0A 0D 0A 62 75 73 79 20 70 2E 2E 2E 0D 0A 2B 43 49 50 53 54 41 3A 69 70 3A 22 30 2E 30 2E 30 2E 30 22 0D 0A 2B 43 49 50 53 54 41 3A 67 61 74 65 77 61 79 3A 22 30 2E 30 2E 30 2E 30 22 0D 0A 2B 43 49 50 53 54 41 3A 6E 65 74 6D 61 73 6B 3A 22 30 2E 30 2E 30 2E 30 22 0D 0A 0D 0A 4F 4B 0D 0A
[2023/09/20 13:20:02.663] ← AT+CWMODE=1␍␊

HEX:41 54 2B 43 57 4D 4F 44 45 3D 31 0D 0A
[2023/09/20 13:20:02.796] → AT+CWMODE=1␍␊
␍␊
OK␍␊

HEX:41 54 2B 43 57 4D 4F 44 45 3D 31 0D 0A 0D 0A 4F 4B 0D 0A
[2023/09/20 13:20:13.985] ← AT+CWJAP="ssid","passwd!"␍␊

HEX:41 54 2B 43 57 4A 41 50 3D 22 6F 63 70 70 35 31 30 22 2C 22 6F 63 70 70 35 31 30 21 22 0D 0A
[2023/09/20 13:20:14.112] → AT+CWJAP="ssid","passwd!"␍␊

HEX:41 54 2B 43 57 4A 41 50 3D 22 6F 63 70 70 35 31 30 22 2C 22 6F 63 70 70 35 31 30 21 22 0D 0A
[2023/09/20 13:20:15.602] → WIFI CONNECTED␍␊

HEX:57 49 46 49 20 43 4F 4E 4E 45 43 54 45 44 0D 0A
[2023/09/20 13:20:16.596] → WIFI GOT IP␍␊
␍␊
OK␍␊

HEX:57 49 46 49 20 47 4F 54 20 49 50 0D 0A 0D 0A 4F 4B 0D 0A
[2023/09/20 13:20:27.384] ← AT+CIPSTA?␍␊

HEX:41 54 2B 43 49 50 53 54 41 3F 0D 0A
[2023/09/20 13:20:27.512] → AT+CIPSTA?␍␊
+CIPSTA:ip:"192.168.9.54"␍␊
+CIPSTA:gateway:"192.168.9.1"␍␊
+CIPSTA:netmask:"255.255.255.0"␍␊
␍␊
OK␍␊

HEX:41 54 2B 43 49 50 53 54 41 3F 0D 0A 2B 43 49 50 53 54 41 3A 69 70 3A 22 31 39 32 2E 31 36 38 2E 39 2E 35 34 22 0D 0A 2B 43 49 50 53 54 41 3A 67 61 74 65 77 61 79 3A 22 31 39 32 2E 31 36 38 2E 39 2E 31 22 0D 0A 2B 43 49 50 53 54 41 3A 6E 65 74 6D 61 73 6B 3A 22 32 35 35 2E 32 35 35 2E 32 35 35 2E 30 22 0D 0A 0D 0A 4F 4B 0D 0A
[2023/09/20 13:20:40.040] ← AT+CIPSTART="SSL","192.168.9.234",4433␍␊

HEX:41 54 2B 43 49 50 53 54 41 52 54 3D 22 53 53 4C 22 2C 22 31 39 32 2E 31 36 38 2E 39 2E 32 33 34 22 2C 34 34 33 33 0D 0A
[2023/09/20 13:20:40.169] → AT+CIPSTART="SSL","192.168.9.234",4433␍␊

HEX:41 54 2B 43 49 50 53 54 41 52 54 3D 22 53 53 4C 22 2C 22 31 39 32 2E 31 36 38 2E 39 2E 32 33 34 22 2C 34 34 33 33 0D 0A
[2023/09/20 13:20:41.108] → CONNECT␍␊
␍␊
OK␍␊

HEX:43 4F 4E 4E 45 43 54 0D 0A 0D 0A 4F 4B 0D 0A
[2023/09/20 13:24:12.322] ← AT+CIPSEND=4␍␊
␍␊
␍␊

HEX:41 54 2B 43 49 50 53 45 4E 44 3D 34 0D 0A 0D 0A 0D 0A
[2023/09/20 13:24:12.432] → AT+CIPSEND=4␍␊
␍␊
busy p...␍␊
␍␊
OK␍␊
␍␊
>
HEX:41 54 2B 43 49 50 53 45 4E 44 3D 34 0D 0A 0D 0A 62 75 73 79 20 70 2E 2E 2E 0D 0A 0D 0A 4F 4B 0D 0A 0D 0A 3E
[2023/09/20 13:24:19.787] ← TEST␍␊
␍␊

HEX:54 45 53 54 0D 0A 0D 0A
[2023/09/20 13:24:19.950] → ␍␊
busy p...␍␊
␍␊
Recv 4 bytes␍␊
␍␊
SEND OK␍␊
␍␊
+IPD,19:Hello, TLS client!␊
␍␊

HEX:0D 0A 62 75 73 79 20 70 2E 2E 2E 0D 0A 0D 0A 52 65 63 76 20 34 20 62 79 74 65 73 0D 0A 0D 0A 53 45 4E 44 20 4F 4B 0D 0A 0D 0A 2B 49 50 44 2C 31 39 3A 48 65 6C 6C 6F 2C 20 54 4C 53 20 63 6C 69 65 6E 74 21 0A 0D 0A
[2023/09/20 13:24:45.097] ← ␃
HEX:03
[2023/09/20 13:24:45.222] → ␃
HEX:03

标签:20,22,2E,54,esp32,TCP,SSL,0A,0D
From: https://www.cnblogs.com/real-bert/p/17717234.html

相关文章

  • 【原创】写在BGP建立前的TCP三次握手
         大家好,我是你们许久未曾谋面的龙少一郎,今天我给大家带来一点网络知识,希望大家深入理解下BGP路由在真正传输数据前的TCP前的三次握手是如何建立和连接的,开门见山,干货如下:    首先我们要知道TCP协议之所以三次握手是为了保证数据的完整和可靠传输,它本身就是......
  • 1.OSI、TCP、UDP
    1.OSI和TCP/IP网络分层模型(1)OSI七层模型是什么?每一层的作用是什么?(2)TCP/IP四层模型是什么?每一层的作用是什么?网络接口层、网络层(为分组交换网上的不同主机提供通信服务)、传输层(提供应用进程之间的端到端逻辑通信)、应用层(为用户提供应用程序)(3)为什么网络要分层?解......
  • 【原创】TCP四次断开
    大家好,我是你们的龙少一郎,紧接着上次已经写完的TCP三次握手,今天我们就要简单讲述下TCP的四次断开过程。希望大家对TCP的三次握手和四次断开有一个完整的认识。过程如下:    第一:当主机A和主机B完整的完成了一次数据通讯后,它会发送一个FIN标志置1的数据段,请求断开TCP连接。......
  • TCP协议连接建立与连接断开过程
    根据TCP头部,说明下列3个包在连接建立过程中的次序.0020    005083aa46493edd339637a3a012 ...P..FI>.3.7...0030 16a0c4c00000020405b40402080ad79b ................0040 62b700564a2a01030302       ......
  • window下编译openssl
    BuildingOpenSSL1.1.1(b)Notes(Windows)·GitHub nasm下载地址:https://www.nasm.us/pub/nasm/releasebuilds/2.16.01/win64/nasm-2.16.01-installer-x64.exeopenssl下载地址:https://codeload.github.com/openssl/openssl/zip/refs/heads/masterperl下载地址:ht......
  • 关于getClass().getClassLoader().getResourceAsStream——转载自https://www.cnblogs
    关于getClass().getClassLoader().getResourceAsStreamInputStreamis=getClass().getClassLoader().getResourceAsStream("helloworld.properties");getClass():取得当前对象所属的Class对象getClassLoader():取得该Class对象的类装载器类装载器负责从Java字符文件将字符流读......
  • 基于 tcp 协议收集主机信息
    使用Metasploit中的nmap和arp_sweep收集主机信息Metasploit中也有NMAP工具root@xuegod53:~#msfconsolemsf5>db_nmap-sV192.168.1.1ARP扫描msf5>useauxiliary/scanner/discovery/arp_sweep查看一下模块需要配置哪些参数msf5auxiliary(scanner/disc......
  • TCP/IP协议栈速览
    TCP/IP协议栈速览TCP/IP协议栈是一系列网络协议的总和,是构成网络通信的核心骨架,它定义了电子设备如何连入因特网,以及数据如何在它们之间进行传输。TCP/IP协议采用4层结构,分别是应用层、传输层、网络层和链路层,每一层都呼叫它的下一层所提供的协议来完成自己的需求。由于我们大......
  • Domain Admin域名和SSL证书过期监控到期提醒
    基于Python3+Vue3.js技术栈实现的域名和SSL证书监测平台用于解决,不同业务域名SSL证书,申请自不同的平台,到期后不能及时收到通知,导致线上访问异常,被老板责骂的问题核心功能:域名和SSL证书的过期监控,到期提醒支持证书:单域名证书、多域名证书、通配符证书、IP证书、自签名证书......
  • lattice crosslink开发板mipi核心板csi测试dsi屏lif md6000 fpga
    1.概述    CrossLink开发板,是用Lattice的芯片CrossLink家族系列的,LIF-MD6000-6JM80I。该芯片用于桥接视频接口功能,自带2路MIPI硬核的功能,4LANE MIPI的功能,支持高速率1.5Gbps。   其他普通IO支持1.2Gbps速率,支持5路MIPI通道功能。 芯片包含LVDS,SLVS200,SubLV......