Voltage Crypto Toolkit
When you read the Voltage weblog, you will either know who most of
the contributors are, or you can read about them in the About Voltage
page. But there's a good chance you've never heard of me (Steve
Burnett).
For 9 years I worked at RSA Data Security (later acquired and
renamed RSA Security). The majority of my work was writing code for
the BSAFE product line (Crypto-C, Crypto-J, some BCERT and Cert-J).
Voltage hired me to build the Voltage toolkit.
My job here, then, is to build a software product that allows you to
add crypto, including IBE crypto, to your product. In one sense, my
product competes with BSAFE. We offer some of the same functionality
in a similar format (a C library with function calls to digest,
encrypt/decrypt, sign/verify, etc.). In another sense, we don't
compete, because BSAFE does not offer IBE (and the Voltage toolkit
does not offer some of the algorithms in BSAFE).
There are a lot of crypto APIs out there, from BSAFE to the JCA/JCE
in Java, from PKCS #11 to OpenSSL. So why the Voltage toolkit?
Because some toolkit needs to offer an IBE API, otherwise no one
will be able to add IBE capabilities to their apps.
There are all kinds of marketing answers to that question as well,
but for me, the toolkit is my chance to build a crypto API and
toolkit the way I think it should be done. I'm taking everything I
learned at RSA and applying it here. I take the good ideas from
BSAFE, PKCS #11, Palm OS 5 Crypto Provider Manager, OpenSSL, and
other crypto products I've seen, and apply them here. I also see
the mistakes made in those products (some of the mistakes I see are
my own and some of those embarass me to this day) and avoid them.
My goal is to build a toolkit that gives the correct answers,
handles errors gracefully, is portable and extensible. Plus, it is
to be relatively easy to use and well documented. In the future,
we'll be looking to make it faster or smaller, but for now, we're
getting a product out the door that gets the job done.
In the future, when I submit to the weblog, it will likely be to
describe elements of the toolkit and explain why we do the things
we do. So give me all the opinions and questions you have on the
Voltage toolkit and how to use it.




