ABOUT US  |  PRODUCTS  |  LIBRARY  |  PARTNERS  |  SUPPORT  |  NEWS  |  DOWNLOADS  |  ORDER  |  CONTACT
 
  You are here: Home > Products > TCP/IP Products > Barracuda
   
 
TCPIP Products


SharkSSL™ Embedded SSL/TLS Server


SharkSSL is a compact SSL/TLS stack designed from the ground up to enable secure communication and management of remote embedded devices..

Why use SSL in embedded devices

The ubiquitous Internet is becoming the norm for connecting and controlling devices, but the Internet is inherently insecure. It is, therefore, necessary to encrypt data that is interchanged with devices to prevent unauthorized users from intercepting and potentially gaining access to the data or the devices themselves. A remote server can also authenticate itself to an SSL enabled client such as, Internet Explorer, Firefox, etc...

Why use SharkSSL

Before developing our own Secure Sockets Layer (SSL), we searched for a small implementation. This proved very difficult to find. The companies providing such solutions were either providing expensive solutions or solutions too big for practical use in embedded devices. For example, the standard OpenSSL library is over 1 MB in size, and thus is not suitable for embedded systems. We designed SharkSSL to be very small. Thus far, it is the smallest SSL/TSL Server on the market.

Comparing SharkSSL to other SSL stacks

SharkSSL is tested with the Barracuda Embedded Web Server, which is much more than a web-server. Barracuda has helped us test SharkSSL with many types of non-browser clients such as C++ HTTP libraries, Python, Java, and WebDAV. The WebDAV protocol is an excellent robustness test as it puts much more strain on the SSL stack than a typical web-browser.

Testing an SSL server with only browsers is a poor test since typically little data is sent from the client to the server. It is important to find out what browser and non-browser clients as SSL stack has been tested with.

SSLv3 & TLS 1.0 ciphers supported (in decreasing order of strength):
  • AES_256_CBC_SHA
  • AES_128_CBC_SHA
  • 3DES_EDE_CBC_SHA
  • RC4_128_SHA
  • RC4_128_MD5
  • DES_CBC_SHA
  • NULL_SHA
  • NULL_MD5

Footprint for ARM7/Thumb

SharkSSL server sizes (KB) for ARM7TDMI with EWARM v4.41A:

ARM mode
ROM
RAM
library excluding AES and DES encryption software
28
2
AES encryption software
21
4
DES/3DES encryption software
12
Thumb mode
library excluding AES and DES encryption software
20
2
AES encryption software
18
4
DES/3DES encryption software
10

The AES, DES, 3DES algorithm can be replaced with hardware accelerator versions, with much better performance and reduced footprint (a few KB).

SharkSSL server sizes (KB) for MCF547x/548x with CodeWarrior 6.3:

ColdFire
ROM
RAM
library excluding crypto engine
17
0
software crypto library
50
6
hardware crypto engine
2.5
0


Want more information?

2/12/07     back to top


................................................................

  Register now for more info.
 
 

Features

  • Object-oriented library in ANSI C (with C++ wrapper code)
  • Supports all Freescale® ColdFire® hardware-acceleration encryption engines and is being extended to ARM encryption engines
  • Code size is less than 20 KB total footprint on ColdFire® 547x/8x supporting the on chip hardware-acceleration encryption engine
  • Includes crypto software library for processors without hardware encryption support or with partial hardware encryption acceleration (AES, DES, 3DES, ARC4, SHA1, MD5)
  • Includes proprietary RSA crypto library that can be retargeted to dedicated DSP engines
  • Configurable session caching
  • Advanced embedded buffer management with no coding required to handle the SSL buffers. Custom memory allocators can be specified.
  • Transport agnostic, works with any transport type, including TCP/IP.
  • Multithreading support for optimal performance when used with multitasking/multiprocess OS's
  • Easily portable to any RTOS and any hardware-acceleration encryption engine.
  • Off the shelf support for SMX.
  • The Barracuda™ Embedded Web Server can take advantage of the optimized memory management supported by SharkSSL for persistent HTTP 1.1 connections.
 
 
 
 
 

 

 
 
HOME  |  SITEMAP  |  CONTACT