home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / comp / database / ingres / 2234 < prev    next >
Encoding:
Text File  |  1993-01-12  |  4.6 KB  |  91 lines

  1. Newsgroups: comp.databases.ingres
  2. Path: sparky!uunet!caen!sol.ctr.columbia.edu!news.columbia.edu!usenet
  3. From: alan@curta.cc.columbia.edu (Alan Crosswell)
  4. Subject: Re: Encryption
  5. Message-ID: <1993Jan12.221408.29650@news.columbia.edu>
  6. Sender: usenet@news.columbia.edu (The Network News)
  7. Nntp-Posting-Host: curta.cc.columbia.edu
  8. Organization: Columbia University
  9. References: <1993Jan12.165144.15035@pony.Ingres.COM>
  10. Date: Tue, 12 Jan 1993 22:14:08 GMT
  11. Lines: 78
  12.  
  13. In article <1993Jan12.165144.15035@pony.Ingres.COM> camidei@Ingres.COM (Chris  
  14. Amidei) writes:
  15. > crb@advtech.uswest.com (Chris Renck) writes:
  16. > : We are developing a application which is going to contain salary  
  17. information,
  18. > : and I was wondering if anyone has any suggestions on how the salary field
  19. > :  can be encrypted or secure so only authorized people can see it.  Our  
  20. Human 
  21. > : Resources Dept does not even wants us (the Ingres developers) to be able to
  22. > : see what data is in this field.
  23. > : 
  24. > How about taking a queue from Unix and the Shadow Password concept.  User
  25. > information that is viewable is stored in one file that everyone can read
  26. > while other information that should not be viewable by everyone (ie.  
  27. passwords)
  28. > is stored in another file only readable by those who need the information.
  29. > With Ingres, the same can be done.  One table contains globably viewable 
  30. > information, the other would contain salary information that is viewable only
  31. > by those who should.  Create database procedures to add, remove and modify
  32. > employees, thus helping to ensure integrity.
  33. > For Applications, make the salary display field 'invisible' to those who  
  34. should
  35. > not see the information.
  36. > Or, you could create a view through which most users access data through.
  37. > This view would NOT contain the salary column.
  38. > --
  39. > The last thing the bungee jumper heard: Gee, I thought I was next?
  40. > ------------------------------------------------------------------------
  41. > Chris Amidei        | E-mail: camidei@ingres.com
  42. > Instructor            |  Phone: (510)748-3261 - my desk
  43. > Ingres, an Ask Company    |       : (510)769-1400 - main line
  44.  
  45. The point is that the data could still be read by anyone with sufficient
  46. operating system privileges to read any file or someone with sufficient
  47. Ingres privileges to read the given table (such as the person who is the
  48. DBA).  Unix passwords are different in that they are one-way encrypted.  Even
  49. if you steal the password file, you can't reverse the encryption to get
  50. someone's password.  The best you can hope to do is brute-force attack the 
  51. passwords with a password guesser -- which is pretty easy given how easy
  52. to guess most passwords are.
  53.  
  54. Unfortunately, for this application, I assume they wan't to be able to 
  55. see what the value is and not just see if it matches what you think it should
  56. be so one-way encryption is out:-)
  57.  
  58. To do encryption the way it is being aksed for is non-trivial and is really 
  59. unrelated to ingres per-se.  You need to come up with some encryption algorithm 
  60. and a method of securely distribution the keys for it.  For example, if you use
  61. a symmetric algorithm like DES, then you need a 56-bit key which is used
  62. to both encrypt and decrypt the value.  Then, the finance people should
  63. write this key down on a post-it-note next to their screen, since they
  64. can't store the key on the host since they don't trust the DBA, developers, or  
  65. sysadmins to maintain confidentiality.  Of course, if the encryption/decryption  
  66. and data entry/display is done on the host in the Ingres application, then
  67. you already have the data available at some point in time at least in 
  68. memory and probably on the system swap disk too, not to mention it is flowing
  69. back and forth across the network in the clear and that pesky developer
  70. could have dropped off a backdoor or two while he was at it....
  71.  
  72. So, it is really an issue of risk analysis.  What is the cost of going hog-wild
  73. with this vs. the cost of some trusted person discovering and disclosing it?
  74. Could the client live with a scenario during which the developers are supplied
  75. with bogus test data until the system goes into production at which point real
  76. data is load in and the developers have their SQL permissions removed?  Can
  77. the DBA and system administrators be trusted to maintain confidential data?
  78. Are sufficient controls in place such as audit, staff education about the
  79. importance of preserving confidentiality, etc.
  80.  
  81. I think what is needed is better educating the finance people about the limits
  82. of the technology and assuring them that a small subset of staff will always
  83. have to be trusted.  After all, what's to prevent a clerk in the finance
  84. department from disclosing the information?  Certainly not technology.
  85. /a
  86.