Before diving into algorithms and key management, one should ask
What to you want to protect against? Some challenges are
- Direct access to file and log file viewing/tampering.
- System user privilege abuse.
- Stolen or lost media.
At work I face some of these requirements and I find it hard to come up with a satisfying solution.
There are plenty of articles on database encryption, e.g. Encrypting Data Values in DB2 Universal Database (ibm.com/developerworks) which describes using Column level encryption in the DB2 database.
While an interesting read, the article does not touch on key management. The question of where do we store the keys remain unanswered.
I recommend reading the Payment Card Industry Data Security
Standard Specification (pcisecuritystandards.org). The PCI DSS Specification outlines a series of principles on how
financial institutions are to protect financial data (credit card
details etc). Again, there is no definitive implementation, but some
of the ideas behind it are interesting (from section 3):
- Keep cardholder data storage to a minimum.
- Do not store sensitive authentication data subsequent to
authorization (even if encrypted).
- Render [cardnumber], at minimum, unreadable anywhere it is stored (including data on portable digital
media, backup media, in logs, and data received from or stored by wireless networks).
I find the idea of not storing sensitive data unless it's absolutely necessary particularly interesting.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|