我已經在Maria DB 10.1.8(https://mariadb.com/kb/en/mariadb/data-at-rest-encryption/)上設置了表級InnoDB數據庫加密。驗證Mariadb 10.1加密
我想知道是否有任何方法可以確認數據是否真正加密。我已經嘗試在表中搜索/ var/lib/mysql/ibdata1中的示例數據,但我不知道這是否是可靠的測試。
我已經在Maria DB 10.1.8(https://mariadb.com/kb/en/mariadb/data-at-rest-encryption/)上設置了表級InnoDB數據庫加密。驗證Mariadb 10.1加密
我想知道是否有任何方法可以確認數據是否真正加密。我已經嘗試在表中搜索/ var/lib/mysql/ibdata1中的示例數據,但我不知道這是否是可靠的測試。
我在mariadb.com上發佈了這個問題,其中的建議是對某些已知數據執行grep。
使用strings命令代替,以更好地處理二進制數據,例如建議在Rackspace的甲DBA:
strings /var/lib/mysql/sample_table/user.ibd | grep "knownuser"
該方法返回上一個加密表中沒有的結果和不上未加密的表返回結果(假設兩者都已加載「知名用戶」)。
我對測試的建議是將完整數據集複製到另一個沒有加密密鑰的節點,並嘗試啓動MySQL並查詢加密表。我做了一個(大的)假設,即由於缺少有效的加密密鑰,它們將不可讀。
解析磁盤上的文件可能會很困難,除非您有專門的工具來執行此操作。也許像傑里米科爾的innodb_ruby將是另一個試金石https://github.com/jeremycole/innodb_ruby。
[可能不工作,如果你改變其加密日誌的關鍵。]
更改密鑰文件中的密鑰。 (不要刪除 - 它仍然必須保持有效的密鑰,否則服務器無法重新啓動)
再次啓動MariaDB。
如果正確加密,當試圖讀取加密表時會出現一個答案:「表被加密......」。
我做了整體次數和mariadb完美的工作,當提供一個錯誤的密鑰,並將密鑰更改回原始時,我試圖在三個不同的服務器上。只有當您不提供有效的密鑰時纔會出現問題。所以我不能相信,這是造成這個問題的原因。 –
啊,沒有提供有效的密鑰可能是我當時的問題!謝謝! – Druzion
謝謝。我會嘗試一下,然後回到這裏。我也在Mariadb.com知識庫上發佈了這個問題(https://mariadb.com/kb/en/mariadb/verifying-mariadb-101-encryption/ #comment_1823) – MarkRoland
我還沒有機會測試這個,儘管它看起來像是一個合法的解決方案。我有另一個答案,我將在下面發佈。 – MarkRoland