got the code kicked off so we can encrypt SSN(s) in the database

This commit is contained in:
cktricky
2013-11-13 19:51:42 -05:00
parent 4be667b606
commit b605a42812
4 changed files with 21 additions and 28 deletions
+2
View File
@@ -24,6 +24,8 @@ class User < ActiveRecord::Base
build_retirement(POPULATE_RETIREMENTS.shuffle.first)
build_paid_time_off(POPULATE_PAID_TIME_OFF.shuffle.first).schedule.build(POPULATE_SCHEDULE.shuffle.first)
build_work_info(POPULATE_WORK_INFO.shuffle.first)
# Uncomment below line to use encrypted SSN(s)
#work_info.build_key_management(:iv => SecureRandom.hex(32))
performance.build(POPULATE_PERFORMANCE.shuffle.first)
end
+4 -5
View File
@@ -2,12 +2,12 @@ class WorkInfo < ActiveRecord::Base
attr_accessible :DoB, :SSN, :bonuses, :income, :years_worked
belongs_to :user
has_one :key_management, :foreign_key => :user_id, :primary_key => :user_id, :dependent => :destroy
before_save :encrypt_ssn
#before_save :encrypt_ssn
# We should probably use this
def last_four
"***-**-" << self.SSN[-4,4]
"***-**-" << self.decrypt_ssn[-4,4]
end
def encrypt_ssn
@@ -33,9 +33,8 @@ class WorkInfo < ActiveRecord::Base
end
def iv
"asdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdfasdf"
#self.key_management.iv
#raise "No IV for this User" if !(key_management.iv)
raise "No IV for this User" if !(self.key_management.iv)
self.key_management.iv
end
def cipher_type