Ssl 使用W5500在STM32F303RC中通过HTTP实现TLS

Ssl 使用W5500在STM32F303RC中通过HTTP实现TLS,ssl,microcontroller,tls1.2,microprocessors,mbedtls,Ssl,Microcontroller,Tls1.2,Microprocessors,Mbedtls,我试图在我的STM32F303RC MCU中实现HTTPS,我使用了IoLibrary提供的HTTP客户端示例,并按照M.Bangbh的提示实现了TLS。在与多个错误斗争之后,我成功地将GET请求发送到服务器,在调试时,我可以清楚地看到协议TLSv1.2的请求从MCU(192.168.137.2)发送到服务器(45.84.204.10)。在服务器端,我有一个php页面,每当收到一个新请求时,它就会向mysql数据库添加一个字符串“hello”。 虽然我可以在WireShark中看到请求,但我看不

我试图在我的STM32F303RC MCU中实现HTTPS,我使用了IoLibrary提供的HTTP客户端示例,并按照M.Bangbh的提示实现了TLS。在与多个错误斗争之后,我成功地将GET请求发送到服务器,在调试时,我可以清楚地看到协议TLSv1.2的请求从MCU(192.168.137.2)发送到服务器(45.84.204.10)。在服务器端,我有一个php页面,每当收到一个新请求时,它就会向mysql数据库添加一个字符串“hello”。 虽然我可以在WireShark中看到请求,但我看不到添加到mysql数据库的任何数据,我只是想知道我的HTTPS实现是否正确,或者我是否需要更改一些内容?如果实现是正确的,为什么我看不到从php页面保存到mysql数据库的任何数据

index.php

mysql::query("insert into `tls` (`q`) values (?)", array("hello")); # the simplest php page ever
main.c

wiz_NetInfo defaultNetInfo = {

    .mac = {
        0x00,
        0x08,
        0xDC,
        0xFF,
        0xEE,
        0xDD
    },

    .ip = { 192, 168, 137, 2 },
    .sn = { 255, 255, 255, 0 },
    .gw = { 192, 168, 137, 1 },

    .dns = {
        8,
        8,
        8,
        8
    },

    .dhcp = NETINFO_STATIC

};


uint8_t Domain_name[] = "www.onyxenia.com";

uint8_t URI[] = "/trunity?q=hello";


/**/
int main(void){
    /**/
    HAL_Init();
    /**/
    SystemClock_Config();
    /**/
    MX_GPIO_Init();
    MX_SPI1_Init();
    /**/
    HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_RESET); HAL_Delay(250);
    HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_SET  ); HAL_Delay(250);
    /**/
    initialize();
    /**/
    HAL_Delay(5000);
    /**/
    wizchip_setnetinfo(&defaultNetInfo);
    /**/
    ctlnetwork(CN_SET_NETINFO, &defaultNetInfo);
    /**/
    if (process_dns()){
        /**/
        flag_process_dns_success = ON;
        /**/
    }
    /**/
    while(1){
        /**/
        httpc_init(SOCK_HTTPC, Domain_IP, 443, g_send_buf, g_recv_buf);
        /**/
        while(1){
            /**/
            httpc_connection_handler();
            /**/
            if (httpc_isSockOpen){
                /**/
                httpc_connect();
                /**/
            }
            /**/
            if(httpc_isConnected){
                /**/
                if(!flag_sent_http_request){
                    /**/
                    request.method = (uint8_t*)HTTP_GET;
                    request.uri    = (uint8_t*)URI;
                    request.host   = (uint8_t*)Domain_name;
                    /**/
                    httpc_send(&request, g_recv_buf, g_send_buf, 0);
                    /**/
                    flag_sent_http_request = ENABLE;
                    /**/
                }
                /**/
                if (httpc_isReceived > 0){

                }
            }
        }
    }
}
以太网配置:

IP Address:  192.168.173.1    Preferred DNS server: 8.8.8.8
Subnet Mask: 255.255.255.0    Alternate DNS server: 8.8.4.4
IP Address:      192.168.1.4    Preferred DNS server: 8.8.8.8
Default Gateway: 192.168.1.1    Alternate DNS server: 8.8.4.4
*默认网关:空

Internet配置:

IP Address:  192.168.173.1    Preferred DNS server: 8.8.8.8
Subnet Mask: 255.255.255.0    Alternate DNS server: 8.8.4.4
IP Address:      192.168.1.4    Preferred DNS server: 8.8.8.8
Default Gateway: 192.168.1.1    Alternate DNS server: 8.8.4.4
*子网掩码:255.255.255.0

硬件:

  • STM32F303RC
  • W5500
  • 软件:

  • 库贝德
  • 战争方舟
  • 图书馆:

  • 附件: