igrr / axtls-8266

axTLS port for ESP8266
Other
79 stars 33 forks source link

This is an ESP8266 port of axTLS library, currently based on axTLS 2.1.4 (SVN version 277).

This library supports TLS 1.2, and the following cipher suites:

Cipher suite name (RFC) OpenSSL name Key exchange Encryption Hash
TLS_RSA_WITH_AES_128_CBC_SHA AES128-SHA RSA AES-128 SHA-1
TLS_RSA_WITH_AES_256_CBC_SHA AES256-SHA RSA AES-256 SHA-1
TLS_RSA_WITH_AES_128_CBC_SHA256 AES128-SHA256 RSA AES-128 SHA-256
TLS_RSA_WITH_AES_256_CBC_SHA256 AES256-SHA256 RSA AES-256 SHA-256

Using the library

This is not a self-sufficient library. In addition to the standard C library functions, application has to provide the following functions:

ax_port_read
ax_port_write
ax_port_open
ax_port_close
ax_get_file
phy_get_rand  (provided by the IoT SDK)
ets_printf    (in ESP8266 ROM)
ets_putc      (in ESP8266 ROM)

For use with LwIP raw TCP API, see compat/README.md

Building Build status

To build, add xtensa toolchain to your path, and run make. The library will be built in bin/ directory.

Credits and license

axTLS is written and maintained by Cameron Rich.

Other people have contributed to this port; see git logs for a full list.

See LICENSE file for axTLS license.