axTLS favicon

axTLS
Lightweight Embedded TLS/SSL Library for Small Devices

What is axTLS?

axTLS is an open-source, embedded SSL/TLS library intended for developers who need secure communication capabilities on devices with constrained memory resources. The library supports TLS versions 1.0 through 1.2 and focuses on efficiency, with a core library size of only 50-60kB in server-only mode. axTLS is written in ANSI C and provides cross-platform compatibility, being tested on Linux, Win32, and Cygwin environments.

It features session resumption to boost SSL performance, supports high-strength AES encryption and SHA digests, and allows flexible RSA key sizes. The library includes a minimalist API, peer verification, certificate chaining, and session renegotiation. Compilation is highly customizable, and interfaces for multiple programming languages are provided, making axTLS a practical choice for secure communications in embedded and resource-limited applications.

Features

  • Small Footprint: Only 50-60kB in server-only mode
  • TLS Support: TLSv1.0, TLSv1.1, and TLSv1.2 protocols
  • Session Resumption: Ensures high SSL performance
  • Strong Encryption: Supports AES128/AES256 and SHA256/SHA384/SHA512
  • Cross-Platform: Compatible with Linux, Win32, and Cygwin
  • Variable RSA Key Sizes: Supports 512 to 4096 bits
  • Simple API: Minimalistic set of C functions
  • Certificate Handling: X509v1, PKCS#8, PKCS#12 in DER/PEM formats
  • Highly Configurable: Extensive compile-time options
  • Multi-Language Interfaces: C#, VB.NET, Java, Perl, and Lua support

Use Cases

  • Secure communication for IoT and embedded devices
  • Lightweight HTTPS servers on constrained hardware
  • Integrating TLS encryption into custom network applications
  • Rapid prototyping of secure client/server models
  • Educational purposes in secure software development

FAQs

  • Which TLS versions does axTLS support?
    axTLS supports TLSv1.0, TLSv1.1, and TLSv1.2 protocols.
  • What cryptographic algorithms are available in axTLS?
    axTLS offers AES128, AES256 for encryption and SHA256, SHA384, SHA512 for digests.
  • What is the typical library size of axTLS in server-only mode?
    The axTLS library requires about 50-60kB in server-only mode.
  • Can axTLS be used with languages other than C?
    Yes, axTLS provides interfaces for C#, VB.NET, Java, Perl, and Lua.

Helpful for people in the following professions

Blogs:

Didn't find tool you were looking for?

Be as detailed as possible for better results