Crypt is a Visual C++ encryption/decryption application for Windows
XP/2000/NT/98/95. Each user has a key pair: a public key and a private
key. By distributing your public key, any other user who has installed
Crypt on her computer can use it to encrypt a message that only you,
the owner of the corresponding private key, can decrypt. Other encryption/decryption
applications based on this principle exist, but what makes Crypt different
is that it is very easy to use. It neither requires a complex setup,
nor third parties have to be called upon for key generation and distribution.
Crypt integrates directly with the default mail client application on
your computer and a couple of mouse clicks is all that is needed
to send encrypted email attachments or to decrypt received email attachments.
Crypt also includes functions to encrypt/decrypt files that will not
be necessarily attached to emails.

Public keys import/export
A user public key is simply a file that can be emailed to a correspondent.
By copying this file in Crypt's installation directory and inputting
its name in the Encrypt dialog
box when sending the email, the correspondent generates an encrypted
file that only the owner of the public key can decrypt.

Localization
Crypt is available for download in three
separate versions, English, French and Italian, complete with Help,
and can be easily localized in other languages.
All text strings are not hard coded into a resource description, but
originate from a single string table in the .rc file. Thus static text
strings for user interface components have not been input into the development
environment component design dialogs, but are written dynamically by
specific function calls at initialization.

Help
Online Help includes a complete user manual and description of all Crypt-specific
commands.

Software design
Crypt can operate on two document types: it can decrypt/encrypt its
own encrypted format .cyo, and open and save standard .txt files. The
operating system will associate Crypt to the .cyo extension.
This application is totally self contained, as it is statically linked.
It does not add dynamic link libraries to the operating system, and
its foreign language versions also contains the localized os resources
(such as print previews, error messages etc.), without relying on the
host os to provide the resource of the correct version and language.
Although it was originally developed with language specific dlls, static
linking was subsequently preferred for ease and simplicity of installation.
As size of the executable is small even in the statically linked version,
there was no real advantage in a dynamically linked version.
Crypt has its own MAPI processing function: as it does not rely on the
ready-made send mail function provided by the Visual C++ development
environment, it can also work with mail clients other than Outlook.

Cryptography
Crypt uses the Microsoft Cryptographic Application Programming Interface
(CryptoAPI) to create public/private key pairs, and uses the public
key of the recipient to encrypt a randomly generated session key for
an RC2 block encryption algorithm.
At the recipient side, Crypt decrypts the encrypted session key with
the recipient's private key and then uses the decrypted session key
to decrypt the blocks of encrypted text.
The trial version features 512 bit public/private RSA keys and 40 bit session
keys.
The standard version, EasyCryptEmail, features 2048 bit public/private
RSA keys and 128 bit session keys.
As the encryption library (CryptoAPI) is included in the operating system,
downloading Crypt does not constitute export/import of a cryptographic
product.