2016-11-17 38 views
0

我目前有一個沒有內置數據庫加密的MySQL數據庫。我知道加密是可用的,但它在AWS RDS上不適用於我正在使用的實例大小。加密MySQL中的每個值是否有意義?

取而代之的是,我打算利用AWS KMS(基本上是標準的散列加密)在將每個值輸入到datable之前對每個值進行散列。我正在處理需要符合HIPAA標準的敏感數據。

我的問題是,通過散列值,這基本上呈現查詢無用的權利?此外,如果是這樣的話,散列每個值(名字,姓氏,DOB等)與將整個行作爲單個JSON字符串進行哈希處理(然後將其存儲在單欄)。

如果有人在HIPAA /敏感數據的應用程序級別上進行加密並將其存儲在MySQL中,我會很感激任何建議!

+0

加密一切有點過分,我不認爲這是HIPPA的要求。我也不會把所有的用戶信息放在一個加密的JSON中。這種方法會讓搜索速度慢一點,因爲要搜索姓氏,你沒有加密每一行來進行比較,每行可能包含很多信息。 – CptMisery

+0

@CptMisery是的,這正是我的想法。我認爲應該有更好的方法。 –

+0

是的。我不確定最好的方法是什麼,但MySQL中的加密/解密函數很容易使用並且運行速度非常快。我用他們的SSN和信用卡信息。所以讓自己的服務器或更好的AWS將是一個好主意。 – CptMisery

回答

1

雖然我在過去曾經參與過幾個HIPPA項目,但我絕不是專家。 HIPAA有許多組件需要考慮,因此請將以下內容視爲非HIPPA特定的組件。

我會考慮使用全盤和數據庫加密來操作您自己的關係數據庫服務器,或者(如果您能夠只使用JSON字符串)使用像發電機DB這樣的NOSQL數據庫。

我最後一個項目將數據保存在加密的關係數據庫中並將其鎖定(我們聘請了安全工程師)但是在應用程序級別,我們沒有加密任何內容。

我會盡量避免在應用層加密如果可能的話,因爲它導致增加的複雜性

最後,你會發現這個鏈接有用 https://d0.awsstatic.com/whitepapers/compliance/AWS_HIPAA_Compliance_Whitepaper.pdf

以及這個工具與dynamoDB管理PHI https://github.com/awslabs/aws-dynamodb-encryption-java

+0

我絕對更喜歡使用MySQL,因爲這是每個人都熟悉的,我們可能會對數據運行很多查詢。我查看了這個鏈接,似乎可能值得使用更大的RDS實例大小來增加加密選項。我絕對不舒服地運行MySQL服務器並自行加密。 –

0

我是一名數據庫加密顧問,在您的情況下,我建議您使用基於列的加密解決方案。通過這種方式,您將能夠選擇哪些列包含敏感信息,定義特定於列的enc/dec和訪問控制策略,當然每列都有不同的鍵。

由於您使用的是MySQL,因此您可能需要檢查MyDiamo,此解決方案有試用許可證。我曾多次將其部署在客戶專門針對HIPAA合規性的場合(KMS解決方案確實需要完全合規)。解決方案的安全代理駐留在數據庫引擎中,CLI將幫助您進行管理。

相關問題