STM32 and wolfSSL – Hardware Crypto and RNG Support

We would like to announce that the wolfSSL embedded SSL library now has support for hardware-based cryptography and random number generation offered by the STM32F2. Supported cryptographic algorithms include AES (CBC, CTR), DES (ECB, CBC), 3DES, MD5, and SHA1. For details regarding the STM32F2 crypto and hash processors, please see the STM32F2xx Standard Peripheral Library […]

Read MoreMore Tag

Open Source for America

In case you didn`t notice, open source is growing rapidly in government usage.  OpensourceforAmerica.org is keeping a helpful list of resources and examples of how open source is both helping government and expanding in usage.  See:  http://opensourceforamerica.org/projects/mentors/resources/.  Our team is proud to participate in and support the growth of open source use in government and […]

Read MoreMore Tag

wolfSSL 2.4.6 is Now Available

Version 2.4.6 of the wolfSSL embedded SSL/TLS library has been released and is now available for download.  This release contains bug fixes and has a few new features including: – ECC into main (GPLv2) version– Lean PSK build (reduced code size, RAM usage, and stack usage)– FreeBSD CRL monitor support– wolfSSL_peek()– wolfSSL_send() and wolfSSL_recv() for […]

Read MoreMore Tag

wolfSSL Custom I/O: Handshaking

Last week we talked about wolfSSL’s custom I/O handling and how to set it up. The following discussion assumes the I/O callbacks are reading and writing into buffers rather calling send() or recv(). A tricky situation is during the handshake. When calling wolfSSL_connect(), the client will send cipher text first and try to receive a […]

Read MoreMore Tag

Don`t forget about Valgrind

One of our favorite tools at yaSSL is valgrind: http://valgrind.org .  Originally a memory error detector, it`s now an instrumentation framework for dynamic analysis that also does thread error detection, cache and branch-prediction profiling, and heap profiling.  If you`ve never used it, you should.  If you are using it, you should probably be using it more. […]

Read MoreMore Tag

CTaoCrypt on TinyOS with TinyPKC

One of our community members recently ported CTaoCrypt’s RSA and ECC code to the TinOS operating system in a project called TinyPKC (http://www-db.in.tum.de/~kothmayr/tinypkc/). TinyPKC was tested on 16-bit and 32-bit microcontroller platforms and should run on 8-bit platforms as well. It supports ECC key lengths from 112 bits to 521 bits and arbitrary RSA key lengths. […]

Read MoreMore Tag

yaSSL Partnership Program

yaSSL believes that business and technology partnerships are one of the keys to fostering success.  Such partnerships can come in many forms – be that business, technical, or community based, and work for both open source or commercial solutions.  To date, we have partnered with several companies, and are always looking for new partnerships.  To […]

Read MoreMore Tag

wolfSSL Custom I/O Setup

wolfSSL provides a mechanism to plug in your own application specific I/O routines. By default, the library uses functions that call the system’s recv() and send() functions with a file descriptor cached with the function wolfSSL_set_fd(). The prototypes for the I/O routines are: int CBIORecv(CYASSL* ssl, char* buf, int sz, void* ctx); int CBIOSend(CYASSL* ssl, […]

Read MoreMore Tag

Using Cryptographic Hashes for Hash Tables

Choosing a good hash function for a hash table is difficult to say the least.  Even if you can achieve good distribution and performance for a given hash function it`s still most likely dependent on table size and the type of input.  Resizing the table or getting unexpected input can quickly turn an otherwise good […]

Read MoreMore Tag

Posts navigation

1 2