В чем причина микропифона MBEDTLS ERR_SSL_BAD_HS_CLIENT_HELLO? - PullRequest
0 голосов
/ 30 сентября 2019

Попытка ответить на соединение https на микросхеме lopy4 с помощью микропифона с помощью wrapped_socket:

cl = ssl.wrap_socket(ns, server_side=True, keyfile='newkey.key', certfile='newcert.crt')

Попытка использовать самозаверяющий сертификат, чтобы разрешить подключение из браузера смартфона. Браузер предупреждает о небезопасном сайте (я так понимаю), и я одобряю подключение к нему (потому что это мой сайт на кристалле lopy), а затем микропифон lopy выдает эту ошибку:

Sequence of events:

def web_server( delay, id ):

    wlan = WLAN()
    wlan.init(mode=WLAN.AP, ssid=sid, auth=(WLAN.WPA2,'PassWord1!'), channel=7, antenna=WLAN.INT_ANT)
    wlan.ifconfig(id=1, config=('10.0.0.141', '255.255.255.0', '192.168.4.1', '8.8.8.8'))
    debug("Ifconfig: {}".format(wlan.ifconfig()) )

    ns = socket.socket()            # Get normal socket

    if Secure:
        s = ssl.wrap_socket(ns)     # s is Wrapped now
        addr = socket.getaddrinfo('10.0.0.141',443)[0][-1]
    else:
        addr = socket.getaddrinfo('10.0.0.141',80)[0][-1]   # Create normal address
        s = ns                      # s is normal now

# s.connect(addr)           # connect secure or normal socket to address
    s.setblocking(True)     # Modified
    s.bind(addr)
    s.listen(5)

    sequence = 0            # No method for updating this yet (messages sent this session)

    debug('listening on {}'.format(addr) )
    form = ""               # Needs to be created inside this thread?


    while True:
        try:
            ns, addr = s.accept()

            debug("Connection Accepted {} on {}".format(ns,addr))
            if not Secure:
                cl = ns
                cl_file = cl.makefile('rb', 0)
            else:
                cl = ssl.wrap_socket(ns, server_side=True, keyfile='newkey.key', certfile='newcert.crt')        # s is Wrapped now
        except Exception as e:
            debug("Exception: connected to {} {}".format(addr,e) )
            continue
...