2

Another question related to previous, unanswered A SW system constructed with Microsoft CNG can be FIPS 140-2 Level 2 Compliant?

Another alternative is to store the keys in a Smart card permanently attached to our system (a standard server in a rack) using a USB Reader under Windows 2008 R2. So the cryptographic operations can be performed by the Smart card itself or by the Windows CNG module. The question is about performance, as we need to perform the operations repeatedly. The operation is basically performing a 3DES over a provided MD5 hash and we need to perform this operation about 10.000 times a day. This makes sense? Performance required can be achieved using the Smart card.

What way is preferable, performing the 3DES by the Smart card so the keys never go out the Smart card or importing the keys into CNG and perform 3DES by CNG?

Sorry, too much questions, but we are designing the system and want to ensure compliance, performance...

5
  • 3
    You have to be very careful about what you are building here. Software level 2 is usually not required or desired due to some specific tie-ins to operating systems and environments. Also, the FIPS crypto boundary will have to necessarily exclude any hardware in order to remain as a pure software-only implementation otherwise you are doing a level 2 hardware or level 1 hybrid (there's no such thing as level 2 hybrid). You may want to consider discussing your needs with a FIPS 140-2 lab or consulting group (disclosure: I represent one such lab). Commented Jun 21, 2012 at 8:06
  • Thanks for the advice. It's not clear with our client if the entire system must be Level 2, as they usually talk about HW (HSM...) and we (integrator) prefer to build a SW pure system, such in my previous question, so a SW system could not be required to be Level 2, client must decide. Commented Jun 21, 2012 at 8:56
  • You need to find out what exactly is required. I would do what logicalscope suggested once you have ALL the facts. Be sure to get those in writting.
    – Ramhound
    Commented Jun 21, 2012 at 10:51
  • Why are you using MD5? MD5 is broken and should not be used. If it's imposed on you as an outside requirement, do what you have to. Otherwise, use SHA-2. If you're concerned about performance, can you use AES instead of 3DES? AES is faster. Commented Sep 12, 2012 at 20:42
  • Both MD5 and 3DES are requirement of our client. Nothing to do as they are the national standards used for the purpose of the project. Commented Sep 16, 2012 at 13:51

1 Answer 1

1

If your smartcard is any good, then it will commit seppuku rather than allow the 3DES key to be exported. If the key can be exported, then the smartcard is no better than a USB disk. Correspondingly, you should not have a choice: have the smartcard do the job it was designed to do.

(And, MD5 ? Really ?)


Also, a smartcard is a piece of hardware; it may fail, especially if employed repeatedly and continuously (smartcards are not usually designed to be operated in such a way). You'd better have a backup plan, to readily initialize a new smartcard with the same key. If you can do that, then you can produce several smartcards and use them concurrently, which would give you a performance boost. And if you cannot rebuild a smartcard after a hardware failure, then your project looks doomed.

2
  • If the key can be exported only by providing an administrative password (which is not written on a post-it note tacked to the rack), it is better than a USB disk. Commented Sep 17, 2012 at 16:12
  • Smartcards can be used to transport keys (master keys), so master keys can be exported easily with the transport one(s). Optionally can perform cryptographic operations if they have criptographic chip, hence can be for storage only or for criptografic operations. Smartcards are the usual way to transport keys. Can fail, but we can not replace as the smartcard is written by the authority that generates the keys, we only use the keys generated. And yes, 3DES and MD5 are still used for low-security cryptography when data is not sensible. Commented Sep 21, 2012 at 15:07

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .