News | Project Presentation | Architecture | Data Structures | Security | References | Project Page |
From an end-user point of view, PGP (Pretty Good Privacy) and its open source counterpart, GnuPG (Gnu Privacy Guard) are among the most famous applications of cryptology. They offer encryption, signing and key management services to end-users. These applications are however completely file oriented. Each GnuPG command typically involves an input file (or an input stream) that it secures accordingly to the command. Hence, GnuPG is convenient to secure individual isolated files, but far less convenient for entire directories, partitions or file systems.
To cope with such tasks,
several other projects have emerged, commercial products
(PGP
Disk, SBox
Disk, BestCrypt...)
or open source projects (TrueCrypt,
EncFS, dm-crypt
...). Unfortunately, none of these are really suited for an embedded
environment (e.g. storing data on a Flash device), and they seldom
support
different operating systems and file systems.
This strong dependency to a given architecture frequently results in
data, being "trapped" in a given configuration, unable to access from
another system.
Typically, users with an encrypted mail partition have no easy means to
carry their
mail around on a PDA or a laptop with a different OS, because
partitions won't mount,
data formats are different etc.
The solution proposed by
the SecCube project is the following: a SecCube is an opaque secure
archival box, where users store, retrieve and list sensitive records (a
record is a data blob, for example, it may be a file, a part of a file,
a part of a stream - see architecture).
A SecCube is meant to be a lightweight archival box, to be run with
only few resources. It typically targets embedded systems, PDAs, USB
keys. On the other hand, this means it is not designed for holding
giga-bytes of information, and should not expect the system to have
much storage spage, RAM or a recent processor.
The tools to handle this SecCube (configure, add / remove / list
records ...) are platform dependant (although it is of course advisable
those tools are coded so they are easy to port !), but the resulting
SecCube is portable, i.e it may be transferred to another operating
system or platform and used from there (with platform's SecCube tools).
A SecCube could be compared to an encrypted ZIP or TAR, where the archive is portable across platforms (Unix, Windows...) as long as the (small) ZIP/TAR program is available. A few differences should however be noted: