You are reading a single comment by @akot and its replies. Click here to read the full conversation.
  • Hello!
    I've noticed that when trying to establish an HTTPS connection to some web-sites I get the "Uncaught InternalError: Failed! mbedtls_ssl_handshake returned -0x7780" error. I compiled the lastest sources on Linux and after playing around with Wireshark, figured out that Espruino only supports a very limited list of Cipher Suites:

                Cipher Suite: TLS_RSA_WITH_AES_256_CBC_SHA256 (0x003d)
                Cipher Suite: TLS_RSA_WITH_AES_256_CBC_SHA (0x0035)
                Cipher Suite: TLS_RSA_WITH_AES_128_CBC_SHA256 (0x003c)
                Cipher Suite: TLS_RSA_WITH_AES_128_CBC_SHA (0x002f)
                Cipher Suite: TLS_EMPTY_RENEGOTIATION_INFO_SCSV (0x00ff)
    

    The web-site I'm trying to connect to [require('http').get('https://lichess.org')] doesn't support any of them:

              TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 (0x9e)
              TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f)
              TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 (0x9f)
              TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)
              TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA­256 (0xcca8)
    

    I've tried to search the Espruino source code to find out where the list of Cipher Suites is being set, but had no success. Of course instead of directly accessing the web-site I could use a proxy, but I'd really like to include the above Cipher Suites in Espruino. Where in the source code should I be looking?

About

Avatar for akot @akot started