Re: Encrypting database



In article <efmt3j$g8$1@xxxxxxxxxxxxxx>, Ivan Voras <ivoras@xxxxxxxxxx> wrote:
I have a feeling this is a common problem, so I want to hear from people
more knowledgable about how to go about it:

This is the requirement: some pieces of data in publically accessible
database needs to be hidden from (many) users that can normally read the
entire database, and be accessible by (several) privileged users.

What pieces of data need to be hidden, and are these to be encrypted
together in one secret record, or are they to be individually encrypted?

If you are encrypting very short pieces of data individually, beware of
various problems:

- Don't use a type of encryption where the length of the encrypted data
gives away its value (e.g. "Yes" or "No").
- If you have fields with very few values (e.g. "M" or "F", or "Mrs.",
"Mr.", "Ms." or "Miss") you've given the brute-force cracker a near-ideal
situation: the ciphertext (which they know) must decrypt to one of a
very small number of choices.
- Don't use a type of encryption vulnerable to a known-plaintext/known-
ciphertext attack. For example, XOR with a one-time-pad would be terrible
here. Example: I know my OWN data, because I know the correct password,
and I supplied it anyway. So I know the key it was encrypted with.
Now I go after the ADMIN's key, given that he has access to my data,
I know what the key for my data is, and I know the encrypted key for
letting the admin acess my data (it's in the database). After I get his
key, I go after the keys of everyone whose data he can read ...

.



Relevant Pages

  • Re: general concerns regarding hacking of .NET assemblies
    ... >> CLI metadata to more or less random names, and optionally encrypting ... >> passwords used to access remote data, like a database server). ... >> Of course the password is encrypted in the file, but once the hacker finds ... > in .Net to sign your assemblies with a strong name, ...
    (microsoft.public.dotnet.security)
  • Re: AES Questions From Another Dummy.
    ... C++ rand() is typically not recommended. ... Encrypting so several people can read it makes me think public-key crypto.. ... The other extreme would be to have everything in the database encrypted using ...
    (sci.crypt)
  • Newbie - Does This Make Sense?
    ... Besides the obvious use of these items, I'm padding the front of the clear text before encrypting it. ... The pad consists of two bytes generated by the PRNG. ... Running on Windows, with option of having database on remote system running Solaris, Linux or Windows, or whatever platform runs the Firebird Database. ...
    (sci.crypt)
  • RE: general concerns regarding hacking of .NET assemblies
    ... > disassembled into its easily readable, underlying CLI code. ... > CLI metadata to more or less random names, and optionally encrypting internal ... > passwords used to access remote data, like a database server). ... > My application connects to a remote database, so let’s say a hacker wants to ...
    (microsoft.public.dotnet.security)
  • Re: general concerns regarding hacking of .NET assemblies
    ... > management application using the .NET framework and am becoming worried ... > CLI metadata to more or less random names, and optionally encrypting ... > passwords used to access remote data, like a database server). ... in .Net to sign your assemblies with a strong name, ...
    (microsoft.public.dotnet.security)