2013-02-21 51 views
1

我正在研究必須符合HIPAA的PHP/MySQL應用程序。根據我所閱讀的內容,任何可能識別某人或任何醫療信息的個人數據在休息和運輸時都必須進行256位加密。我試圖找出最有效的方法是什麼。符合HIPAA的PHP/MySQL應用程序

我正在使用亞馬遜網絡服務,我想爲HTTP和數據庫請求使用SSL加密來保護傳輸中的數據。至於靜止數據,我想用AES 256編譯一個自定義的MySQL服務器,以便使用AES_ENCRYPT和AES_DECRYPT--但是,我需要爲每個加密的字段存儲一個IV嗎?否則,在應用程序本身內部進行加密/解密將需要很長時間,查詢數據庫將會非常糟糕。

有什麼想法?

+0

你就不能[使用SSL連接到MySQL(HTTP: //dev.mysql.com/doc/refman/5.0/en/ssl-connections.html),然後在存儲級別加密數據庫文件,而不是MySQL? *任何想法?*除此之外,請聘請顧問。 – 2013-02-21 23:19:03

+0

我剛剛回答了[有關醫學信息的問題](http://stackoverflow.com/a/15012010/472495)與非對稱加密相關的問題,這可能會引起您的興趣。如果您使用的是對稱加密,每行IV會是一個好的折衷?每行每行一個IV聽起來相當麻煩,即時消息。 (注意我不符合HIPAA要求)。 – halfer 2013-02-21 23:22:29

+0

HIPAA是否指定您是否必須使用對稱或非對稱加密?然而,根據ta.speot.is的建議,關於磁盤級加密 - 是否允許?請記住,如果您的Web服務器遭到入侵,則磁盤級加密和對稱加密都不會阻止您的數據被盜用。 – halfer 2013-02-21 23:30:06

回答

1

HIPAA實際上並不要求您的ePHI在存儲在您的MySQL數據庫中時「靜止」加密,只要它是隔離的,以便沒有未經授權的人員可以訪問它。也就是說,如果可能的話,在休息時加密數據通常總是更好,因爲這樣可以防止數據被泄露時發生違規事件。

在閱讀關於遵守HIPAA MySQL和加密選項的細節在這裏(我有這個網站沒有關係):

https://luxsci.com/blog/encryption-and-auditing-for-mysql-databases-under-hipaa.html