我遇到類似如下的問題:替代散列SSN作爲MySQL中的密鑰
某人開始擔任「A公司」的顧問。他們的人力資源人員爲他們設立了一個賬戶。爲「人」表和「人 - 公司」中的人員創建記錄。
此人也在爲「公司B」(公司A可能或可能不知道)工作。當公司B輸入他們的信息時,他們不應該在「人員」中創建記錄,而應該在「人員公司」中創建一個記錄。
的人須爲國家做培訓,所以如果他們登錄到任何一家公司的網站時,他們做培訓,我們希望總時間保持與人。
我可以爲人員表設置一個PK表,將他們加入到每個公司,但我認爲我需要像人員SSN的散列,並附加一些額外的「xyz」以便能夠進行查找。 B公司將擁有該人的SSN,這應該是普遍的。
問題:
1)是否有一些其他的方法來加入你們當中一個認爲會更好地工作?
2)如果我做一個哈希SSN辦法去,什麼是使用的MySQL/PHP的單向加密最好的加密?
我看別的地方,一個公鑰/私鑰的解決方案可能是最好的,但因爲人沒有建立自己的帳戶最初我不知道如何做到這一點的工作。
感謝
如果SSN已經普及,爲什麼還需要進一步散列呢?你在那裏得到鑰匙,還是有另一個要求? – emboss
@emboss - 因爲存儲SSN會增加您的法律責任和潛在的安全風險。 – Perception
散列SSN只是作爲一個單向查找來查看是否已經在系統中設置了「人員」,並且只會被查詢......從未選擇或通過。更擔心如果數據庫曾經以某種方式暴露出來,會發生什麼,我沒有想到。 – Don