We have added the Counter with CBC-MAC Mode with 8?byte authentication (CCM-8) for AES to wolfSSL. The following cipher suites are available for TLS v1.2: • TLS_RSA_WITH_AES_256_CCM_8_SHA384 • TLS_RSA_WITH_AES_128_CCM_8_SHA256 AES with CCM-8 will be available in our next release. The latest sources are available in our GitHub repository. To enable AES with CCM-8 in wolfSSL, configure […]
Read MoreMore TagCategory: Uncategorized
Getting started with wolfSSL`s ECC
Release 2.4.6 of wolfSSL is the first to include our ECC implementation publicly. Let`s look at how to get started using the ECC features. First, you`ll need to turn on ECC. With the autoconf system this is simply a configure flag: ./configure –enable-eccmakemake check Note the 96 different TLS cipher suites that make check verifies. […]
Read MoreMore TagIntro to PKCS #3: Diffie-Hellman Key Agreement Standard
A while back, we started a series on the PKCS standards. Our first post was about PKCS #1, the RSA Cryptography Standard. This is the second post in the PKCS standards series, introducing PKCS #3 – the Diffie-Hellman Key Agreement Standard. PKCS #3 is the Diffie-Hellman Key Agreement Standard and is currently defined by version […]
Read MoreMore TagLinux Journal – Elliptic Curve Cryptography
If you are a reader of Linux Journal (http://www.linuxjournal.com/), you may have seen the interesting article in this month’s issue about Elliptic Curve Cryptography written by Joe Hendrix: http://www.linuxjournal.com/content/january-2013-issue-linux-journal-security In the article, Joe explains how ECC works (with several descriptive charts), talks about how NIST makes recommendations on the actual security provided by different algorithms […]
Read MoreMore TagSTM32 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 TagwolfSSL 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 TagOpen 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 TagwolfSSL 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 TagDon`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 TagCTaoCrypt 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
