簡體   English   中英

我應該使用哪種數據類型在MySQL上存儲較長的加密消息?

[英]What datatype should I use to store long encrypted messages on MySQL?

我正在開發一個Web應用程序,該應用程序將允許用戶編寫消息並將其存儲在數據庫中,以供其他有意使用的用​​戶訪問。 我已經准備好了用戶身份驗證系統,並且加密系統也可以正常工作,但是對於用於存儲消息的數據類型感到困惑。

我正在將MySQL數據庫與PHP一起使用,以存儲使用openssl AES-256加密的值。 產生的密文是二進制的,我需要將它們存儲在數據庫中。

現在,我可以嘗試使用base64對二進制字符串a進行編碼,但是它將數據的大小從33%增加到100%。

消息可能很長,我希望我的數據庫不會被性能或存儲功能搞砸。 由於某些原因,我還必須堅持使用MySQL。

那么我應該使用BLOB還是TEXT? 就性能而言,哪一個效率更高? 而且,應該是類似TINYTEXT, TEXT, MEDIUMTEXT, or LONGTEXT的類型,還是BLOB的相應類型?

我想確保同時實現更快的性能和存儲功能。

謝謝您的幫助!

是的,如果您可以將值存儲在“ TEXT”數據類型中會更好。 有關更多詳細信息,請閱讀此http://dev.mysql.com/doc/refman/5.5/en/blob.html

關於存儲需求的知識,您可以閱讀http://dev.mysql.com/doc/refman/5.5/en/storage-requirements.html

希望能幫助到你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM