NetX Duo Secure DTLS is a high-performance real-time implementation of of the Datagram Transport Layer Security protocol designed exclusively for embedded ThreadX-based applications. This chapter contains an introduction to NetX Duo Secure DTLS and a description of its applications and benefits.
Unlike most other TLS/DTLS implementations, NetX Duo Secure was designed from the ground up to support a wide variety of embedded hardware platforms and scales easily from small micro-controller applications to the most powerful embedded processors available. The code is written with the limited resources of embedded systems in mind, and provides a number of configuration options to reduce the memory footprint needed to provide secure network communications over TLS or DTLS.
NetX Duo Secure supports the following protocols related to TLS and DTLS. The list is not necessarily comprehensive as there are numerous RFCs pertaining to TLS/DTLS and cryptography. NetX Duo Secure follows all general recommendations and basic requirements within the constraints of a real-time operating system with small memory footprint and efficient execution.
| RFC | Description |
|---|---|
| RFC 6347 | Datagram Transport Layer Security Version 1.2. |
| RFC 2246 | The TLS Protocol Version 1.0 |
| RFC 4346 | The Transport Layer Security (TLS) Protocol Version 1.1 |
| RFC 5246 | The Transport Layer Security (TLS) Protocol Version 1.2 |
| RFC 5280 | X.509 PKI Certificates (v3) |
| RFC 3268 | Advanced Encryption Standard (AES) Ciphersuites for Transport Layer Security (TLS) |
| RFC 3447 | Public-Key Cryptography Standards (PKCS) #1: RSA Cryptography Specifications Version 2.1 |
| RFC 2104 | HMAC: Keyed-Hashing for Message Authentication |
| RFC 6234 | US Secure Hash Algorithms (SHA and SHA-based HMAC and HKDF) |
| RFC 4279 | Pre-Shared Key Ciphersuites for TLS |
In order to function properly, the NetX Duo Secure run-time library requires that a NetX IP instance has already been created. In addition, and depending on the application, one or more DER-encoded X.509 Digital Certificates will be required, either to identify a TLS/DTLS instance or to verify certificates coming from a remote host. The NetX Duo Secure package has no further requirements.
The NetX Duo Secure DTLS protocol implements the requirements of the RFC 6347 Standard(s) for DTLS 1.2. However, there are the following constraints: