background image
5
2
RSA BSAFE Products
With more than a half billion RSA BSAFE-enabled applications being used worldwide to build
strong encryption and authentication, Crypto-C is the software developer's tool of choice for
security. RSA BSAFE Crypto-C allows state-of-the-art privacy and authentication features to be
built into virtually any application, with new, optimized performance. Using Crypto-C means
never compromising security for performance or the time it takes the development of your
critical applications to reach the market.
RSA BSAFE is a suite of products that provide not only core cryptographic functionality but also
out-of-the-box security protocol software components like RSA BSAFE SSL-C/J, RSA BSAFE
WTLS-C, RSA BSAFE CERT-C/J and RSA BSAFE S/MIME-C. Each RSA BSAFE
developer's kit is a complete software development environment providing comprehensive
building-block security components for creating fail-safe software applications.
2.1
The RSA BSAFE Crypto-C Toolkit Module
RSA BSAFE Crypto-C is at the heart of the RSA BSAFE product line. Developers can make
use of RSA BSAFE Crypto-C in three convenient formats: a static toolkit (an import library ­
"bsafe521.lib"), a dynamic toolkit (a dynamic link library (DLL) ­ csm521.dll), and licensed
source code (contact to RSA Security for licensing terms). The second option provides a
complete module evaluated against FIPS 140-1 requirements. This module is called the RSA
BSAFE Crypto-C Toolkit Module (Crypto-C Module), and incorporates RSA BSAFE Crypto-C
into a 32-bit WindowsTM 98 compatible DLL that has been validated against all Level 1 FIPS
140-1 requirements.
RSA BSAFE Crypto-C is classified as a multi-chip standalone module for FIPS 140-1 purposes.
As such, the Crypto-C Module must be evaluated upon a particular operating system and
computer platform. The actual cryptographic boundary thus includes the Crypto-C Module
running upon an IBM-compatible PC running the WindowsTM 98 Operating System (OS). The
Crypto-C Module running on this platform was validated as meeting all FIPS 140-1 level 1
physical security and operating system requirements. The Crypto-C Module is packaged in a
single DLL, csm521.dll, which contains all the code for the module.
RSA BSAFE Crypto-C also runs upon many other platforms including Windows '95, '98, NT,
and 2000, Sun/Solaris, HP-UX, Linux, and AIX; however, the Crypto-C Module was not
implemented and tested upon each of these platforms as part of this effort. RSA BSAFE Crypto-
C ports on many other platforms, as well as assembly and custom algorithm optimizations, are
available.
2.2
Module Interfaces
As a multi-chip standalone module, the Crypto-C Module's physical interfaces consist of the
keyboard, mouse, monitor, serial ports, network adapters, etc. However, the underlying logical
interface to the Crypto-C Module is a C- language Application Program Interface (API)
documented in the RSA BSAFE Crypto-C Library Reference Manual. The module provides for
Control Input with the exported DLL library API calls. Data Input and Output are provided in