All Projects → dunkelstern → mbedtls-esp8266

dunkelstern / mbedtls-esp8266

Licence: other
Updated and Upgraded mbedTLS library for the ESP8266 (probably ESP32 too)

Programming Languages

c
50402 projects - #5 most used programming language
C++
36643 projects - #6 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to mbedtls-esp8266

Botan
Cryptography Toolkit
Stars: ✭ 1,798 (+13730.77%)
Mutual labels:  tls, crypto
Gmssl
支持国密SM2/SM3/SM4/SM9/ZUC/SSL的OpenSSL分支
Stars: ✭ 2,747 (+21030.77%)
Mutual labels:  tls, crypto
Cryptcheck
Verify some SSL/TLS website or XMPP implementation
Stars: ✭ 158 (+1115.38%)
Mutual labels:  tls, crypto
Merecat
Small and made-easy HTTP/HTTPS server based on Jef Poskanzer's thttpd
Stars: ✭ 69 (+430.77%)
Mutual labels:  tls, embedded
libsodium-xchacha20-siv
Deterministic/nonce-reuse resistant authenticated encryption scheme using XChaCha20, implemented on libsodium.
Stars: ✭ 25 (+92.31%)
Mutual labels:  crypto, chacha20
Ghostunnel
A simple SSL/TLS proxy with mutual authentication for securing non-TLS services
Stars: ✭ 1,296 (+9869.23%)
Mutual labels:  tls, crypto
Frosted
Frosted: Free POSIX OS for tiny embedded devices
Stars: ✭ 194 (+1392.31%)
Mutual labels:  tls, embedded
Wolfmqtt
wolfMQTT is a small, fast, portable MQTT client implementation, including support for TLS 1.3.
Stars: ✭ 316 (+2330.77%)
Mutual labels:  tls, embedded
noble-ed25519
Fastest JS implementation of ed25519, x25519 & ristretto255. Independently audited, high-security, 0-dependency EDDSA signatures and ECDH key agreement
Stars: ✭ 220 (+1592.31%)
Mutual labels:  crypto, ed25519
ed25519-hd-key
🔐 Key Derivation for ed25519
Stars: ✭ 54 (+315.38%)
Mutual labels:  crypto, ed25519
Certigo
A utility to examine and validate certificates in a variety of formats
Stars: ✭ 662 (+4992.31%)
Mutual labels:  tls, crypto
brookframework
Microframework which helps to develop web Pascal applications.
Stars: ✭ 161 (+1138.46%)
Mutual labels:  tls, embedded
S2n Tls
s2n : an implementation of the TLS/SSL protocols
Stars: ✭ 4,029 (+30892.31%)
Mutual labels:  tls, crypto
Certstrap
Tools to bootstrap CAs, certificate requests, and signed certificates.
Stars: ✭ 1,689 (+12892.31%)
Mutual labels:  tls, crypto
Forge
A native implementation of TLS in Javascript and tools to write crypto-based and network-heavy webapps
Stars: ✭ 4,204 (+32238.46%)
Mutual labels:  tls, crypto
Disco
a protocol to encrypt communications and a cryptographic library based on Disco
Stars: ✭ 178 (+1269.23%)
Mutual labels:  tls, crypto
Jetty.project
Eclipse Jetty® - Web Container & Clients - supports HTTP/2, HTTP/1.1, HTTP/1.0, websocket, servlets, and more
Stars: ✭ 3,260 (+24976.92%)
Mutual labels:  tls, embedded
Utls
Fork of the Go standard TLS library, providing low-level access to the ClientHello for mimicry purposes.
Stars: ✭ 306 (+2253.85%)
Mutual labels:  tls, crypto
iot security
《密码技术与物联网安全——mbedtls开发实战》示例代码
Stars: ✭ 111 (+753.85%)
Mutual labels:  tls, mbedtls
BIPES
BIPES: Block based Integrated Platform for Embedded Systems allows text and block based programming for several types of embedded systems and Internet of Things modules using MicroPython, CircuitPython, Python or Snek. You can connect, program, debug and monitor several types of boards using network, USB or Bluetooth. No software install needed!
Stars: ✭ 72 (+453.85%)
Mutual labels:  esp8266, embedded

mbedTLS and patches for ESP8266

This library replaces the integrated mbedTLS library that is integrated into the original ESP8266 SDK (NON OS and RTOS).

This is an updated and upgraded version. mbedTLS base was 2.5.0 but some patches have been integrated.

See the original repository that was taken from the official mbedTLS development branch here: https://github.com/dunkelstern/mbedtls

Integrated patches so far, see below for sources:

  • HKDF (HMAC based Key Derivation Function)
  • AEAD ChaCha20 + Poly1305
  • ED25519
  • SRP (Secure Remote Password)

Building

Some pointers:

  1. Get the ESP8266 compiler: https://github.com/pfalcon/esp-open-sdk
  2. Get the SDK
  3. Unpack SDK somewhere
  4. Set up the environment
    export PATH="/path/to/compiler/xtensa-lx106-elf/bin:$PATH"
    export SDK_PATH="$HOME/esp-sdk/ESP8266_RTOS_SDK"
    export BIN_PATH="$HOME/esp-sdk/build"
    
    export CFLAGS="-I${SDK_PATH}/include -I${SDK_PATH}/extra_include $CFLAGS"
    export LDFLAGS="-L${SDK_PATH}/lib $LDFLAGS"
  5. Switch to the base directory and run make
  6. Grab the library from .output/lib/libmbedtls.a
  7. Grab the headers from include/*.h

If you want to enable or disable some functionality of mbedTLS open platform/config_esp.h and set yourself up.

Legal

mbedTLS

Cloned from https://github.com/ARMmbed/mbedtls

License: Apache License 2.0 (see LICENSE-Apache-2.0.txt)

Platform integration code

From the ESP8266 SDK: https://github.com/espressif/ESP8266_RTOS_SDK

Copyright (C) 2006-2015, ARM Limited, All Rights Reserved Additions Copyright (C) 2015 Angus Gratton

License: Apache License 2.0 (see LICENSE-Apache-2.0.txt)

HKDF

Integrated patches from: https://github.com/thomas-fossati/mbedtls

License: Apache License 2.0 (see LICENSE-Apache-2.0.txt)

AEAD ChaCha20 + Poly1305

Integrated patches from: https://github.com/damaki/mbedtls/tree/chacha20

License: Apache License 2.0 (see LICENSE-Apache-2.0.txt)

ED25519

Integrated patches from: https://github.com/VirgilSecurity/mbedtls/tree/virgil-security-ed25519

License: Apache License 2.0 (see LICENSE-Apache-2.0.txt)

SRP (Secure Remote Password)

Original Repository: https://github.com/cocagne/csrp

Conversion to mbedTLS: https://github.com/dwimberger/mbedtls-csrp

Patches by:

License: MIT (see LICENSE-MIT.txt)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].