ChaCha20 & Poly1305

The SharkSSL Embedded SSL/TLS Stack has adopted support for ChaCha20 and Poly1305. Our assembler optimized ChaCha20 cipher and Poly1305 hashing algorithms are blazing fast and performance comparable to AES-GCM (with) Hardware Assisted Acceleration.

ChaCha20 and Poly1305 is particularly well suited for securing small embedded devices that need to preserve memory, footprint, and maintain performance with the least amount of encumbrance, by cutting down on the amount of time spent encrypting and decrypting data.

The new alternative provides a path for low-cost device manufacturers to negotiate an ECC certificate exchange in the realm of a 20Kb footprint with use of approximately 6Kb RAM, which is phenomenally small when comparing to other methods of exchange.

ChaCha20 is a symmetric stream cipher and Poly1305 is a complementary hash which utilizes the (fingerprint) method. The new algorithm primitives, created by Prof. Dan Bernstein from the University of Illinois at Chicago, have been industry vetted and adopted this year (2014) by major browsers such as Google Chrome and Opera.

The turn-key addition of ChaCha20_Poly1305 complements the existing Cryptography Technologies, Elliptic Curves and Suite-B solution offered by SharkSSL and is also available stand-alone within the RayCrypto(TM) Cipher Suite.

ChaCha20 & Poly1305 in Action

The illustration to the right provides a verified secure connection, including information about the specific security features used for the connection session.

The Google Chrome browser is used to view pages provided by the M2M LED WebSocket server demonstration program, which in turn is running on a Renesas RX (YRDKRX63N) embedded evaluation board.

Note that ChaCha20/ Poly1305 is selected by default as the favored strongest symmetric encryption option available to both browser and device server.

The Chrome or Opera browsers offer full support for ChaCha20 and Poly1305, which allows for immediate testing and development of the latest in cipher/hash algorithm technology.

Direct Viewing is powered by the Barracuda Application Server technology, which in turn utilizes SharkSSL for superior performance and reliance in a secure communications.

Right click the green padlock located in the address space and select the Connection tab to display the Security details.

Need a helping hand?

Don't let networking, security, and device management hold you back! Let Real Time Logic help your business, development team, or customers save time and money by handling these complex tasks for you.

With a wealth of experience creating IoT solutions and embedded device interfaces, we're well-equipped to dramatically improve your products and how you build them. And if you prefer to tackle things on your own, check out our extensive list of embedded web server and IoT tutorials.

Whether you choose to work with us or take the DIY route, we're here to help you succeed. Let's team up and make your vision a reality!


OPC-UA Client & Server

An easy to use OPC UA stack that enables bridging of OPC-UA enabled industrial products with cloud services, IT, and HTML5 user interfaces.

Edge Controller

Edge Controller

Use our user programmable Edge-Controller as a tool to accelerate development of the next generation industrial edge products and to facilitate rapid IoT and IIoT development.

On-Premises IoT

On-Premises IoT Platform

Learn how to use the Barracuda App Server as your On-Premises IoT Foundation.

Embedded Web Server

Barracuda Embedded Web Server

The compact Web Server C library is included in the Barracuda App Server protocol suite but can also be used standalone.

WebSocket Server

Microcontroller Friendly

The tiny Minnow Server enables modern web server user interfaces to be used as the graphical front end for tiny microcontrollers. Make sure to check out the reference design and the Minnow Server design guide.

WebDAV Server

Network File System

Why use FTP when you can use your device as a secure network drive.

HTTP Client

Secure HTTP Client Library

PikeHTTP is a compact and secure HTTP client C library that greatly simplifies the design of HTTP/REST style apps in C or C++.

WebSocket Client

Microcontroller Friendly

The embedded WebSocket C library lets developers design tiny and secure IoT applications based on the WebSocket protocol.

SMTP Client

Secure Embedded SMTP Library

Send alarms and other notifications from any microcontroller powered product.

Crypto Library

RayCrypto C Library

The RayCrypto engine is an extremely small and fast embedded crypto library designed specifically for embedded resource-constrained devices.

Embedded PKI Service

Automatic SSL Certificate Management for Devices

Real Time Logic's SharkTrust™ service is an automatic Public Key Infrastructure (PKI) solution for products containing an Embedded Web Server.


Modbus TCP client

The Modbus client enables bridging of Modbus enabled industrial products with modern IoT devices and HTML5 powered HMIs.

Posted in News by bd