php將密碼存入資料庫,可以分內常見的4種方式:
1、直接md5加密存到到資料庫
2、md5兩次存到資料庫
3、對需要加密的字元串和一個常量 進行混淆加密
4、生成一個隨機的變數存到資料庫中,然後對需要加密的字元串和這個隨機變數加密
<?php$str="admin"; //需要加密的字元串$str2="php"; //增加一個常量混淆 $pass1=md5($str);$pass2=md5(md5($str));$pass3=md5($str.$str2);echo $pass1."<br>".$pass2."<br>".$pass3;?>
輸出:
第四種
$str="admin"; //需要加密的字元串$encrypt=$row['encrypt']; // 生成的 隨機加密字元串 存到資料庫中$pass4=md5($str.$encrypt);//
2. 教你如何在SQL Server資料庫中加密數據
為了防止某些別有用心的人從外部訪問資料庫 盜取資料庫中的用戶姓名 密碼 信用卡號等其他重要信息 在我們創建資料庫驅動的解決方案時 我們首先需要考慮的的第一條設計決策就是如何加密存儲數據 以此來保證它的安全 免受被他人窺測
SQL Server中有哪一種支持可以用於加密對象和數據?從一開始就討論一下SQL Server欠缺什麼是明智的 或者是對於SQL Server中的加密部分你不應該做什麼
首先 SQL Server有兩個內置的密碼函數——即 pwdencrypt() 和 pwdpare() 同時 還有兩個SQL Server用來管理密碼哈希的沒有正式記錄的函數:pwdencrypt() 將密碼哈希過後進行存儲; pwdpare()將提供的字元串與哈希後的字元串進行比較 不幸的是 這個哈希函數不是非常安全 它可以通過字典攻擊演算法被破解(類似命令行應用程序!)
這些函數隨著SQL Server的版本發展而不斷進行修改 這也是另一個沒有使用它們的原因 早期版本的SQL Server對密碼進行的哈希 在後來的版本中無法解密 所以如果你依賴一個版本中的函數 那麼當升級的時候 所有你的加密數據就都沒有用了 除非你可以首先對其解密——這也就違背了敏液加密的最初的目的
第二 你可能會嘗試去創建一個針對你的資料庫的自製的加密解決方案 但是有以下三個理由說明你不要這樣做:
除非你是加密專家 否則胡亂編寫的加密系統只會提供非常低級的價值不高的保護 新鮮的是 單向密碼哈希或者 ROTx 形式的加密幾乎不需要費事就可以被輕松打敗
如果由於你自己的能力的缺乏而導致加密被破解 那麼你的數據就完蛋了 你需要將所有的東西進行沒有加密的備份 是嗎?(即使你加密了 那裡有沒有安全漏洞?)
當市面上提供有專業級別的 具有工業強度的加密解決方案的時候 你就不值得花費時間去自己做 把你的時間用於構建一個好的 堅固的資料庫 而不是再重新發明一次車輪
那麼 什麼才是好的加密數據的方式呢?
對於新手 微軟提供了一個自己生成的加密解敗伏決方案 CryptoAPI 對於輕量級的加密 軍用級別的安全就不在考慮范圍之內 它具有相對容易實現的優勢:管理員可以安裝一個名為CAPI 的ActiveX 控制 它可以在T SQL存儲過程中提供CryptoAPI 功能 CAPI 支持察拿攜各種類型的雙向加密和單向哈希演算法 所以管理員可以挑選最適合應用程序的問題的部分
如果你對使用微軟的解決方案不感興趣 還有一些很好的第三方的方案可以使用 一家名為ActiveCrypt 的軟體有限責任公司製造了XP_CRYPT 它是SQL Server的插件 可以在視圖 程序和觸發器中通過擴展存儲過程和用戶自定義函數(在SQL Server 中)來完成加密 你可以下載一個支持無線的MD DES 以及SHA 哈希的免費版本的應用程序; 其他的加密模型就是在比特深度上進行的 (完全版本是無限的 )在你自己的代碼中 你可以使用XP_CRYPT 與ActiveX 控制一樣(在受限的免費版本中) 對於ASP程序員來說 一個名為AspEncrypt 的組件提供了一種將高級加密整合到你的代碼中的簡單方式
lishixin/Article/program/SQLServer/201311/22397
3. 一文讀懂十種數據存儲加密技術
數據作為新的生產要素,其價值日益凸顯,安全問題愈發突出。密碼技術是實現數據安全最經濟、有效、可靠的手段。通過加密並結合有效的密鑰保護,可在開放環境中實現數據強訪問控制,讓數據共享更安全、有價值。《密碼法》等法規推動下,各行業對數據加密技術、產品和服務的重視提高。
本文聚焦十種數據存儲加密技術,幫助快速了解數據存儲加密的全貌,為用戶核心數據資產安全保護提供參考。文章共計9478字,建議閱讀時間20分鍾。
實戰與合規雙驅動下,數據安全建設正從「網路為中心」升級至「數據為中心」。密碼技術作為網路安全核心,通過加密實現數據安全,尤其在政務、金融、交通文旅、央企、工業等行業,個人信息與商業秘密保護、國密合規建設加速。
數據實際流轉過程中的威脅要求在關鍵節點加密,為數據塑造虛擬邊界,有效防範內外部安全威脅。合規趨勢顯現,數據安全技術受到政策重視,與業務結合緊密,擴展到各領域行業。密碼技術應用與業務融合,成為解決合規壓力、改造信息系統的關鍵。
實戰中,數據泄露事件頻發,數據安全從「不希望數據發生什麼」成為業務需求,密碼技術應用到信息系統,升級安全防護體系。數據存儲加密技術成為業務應用的必然趨勢。
數據流轉安全增強點在於主動加密,確保數據不被泄露或篡改。結構化與非結構化數據通過不同方式加密,結構化數據適用於關系型資料庫,非結構化數據則需針對性加密策略。
傳統資料庫加密局限於結構化數據,企業實戰中需覆蓋更多數據處理環節。對比各種技術,應考量融入業務流程的能力、與其他安全技術融合、許可權控制、成本效益等。本文選取10種代表技術,分析其原理、應用場景及優劣。
技術一:DLP終端加密,主要在終端執行數據管理,適用於敏感數據保護。技術二:CASB代理網關,位於終端與應用伺服器之間,適用於雲環境下的數據安全。
技術三:應用內加密(集成密碼SDK),通過應用集成加密功能,適用於特定敏感數據加密需求。技術四:應用內加密(AOE面向切面加密),在應用伺服器內部加密數據,靈活實現細粒度訪問控制。
技術五:資料庫加密網關,部署在應用伺服器與資料庫之間,為資料庫提供加密保護。技術六:資料庫外掛加密,通過外掛程序加密資料庫數據,支持獨立許可權控制。
技術七:TDE透明數據加密,資料庫內部加密,適用於實時加解密場景。技術八:UDF用戶自定義函數加密,資料庫自定義加密邏輯,適用於特定加密需求。
技術九:TFE透明文件加密,操作系統文件系統加密,適用於文件存儲加密。技術十:FDE全磁碟加密,磁碟或分區加密,提供動態加解密服務。
十種技術各有側重,DLP終端加密側重PC端保護,CASB代理網關適用於雲環境,應用內加密技術靈活應用到伺服器端,資料庫加密技術覆蓋資料庫安全,文件系統加密技術適用於文件存儲保護。
迎接數字時代,數據安全建設至關重要。了解數據存儲加密技術原理,提出合理安全措施,全面保障數據安全,助力數字化進程健康發展。煉石作為數據安全公司,將持續探索技術創新,提供豐富解決方案,推動網路信息行業健康發展。
4. 實現密文存儲的方法有哪些
實現密文存儲的方法主要包括以下幾種:
加密演算法:
哈希函數:
二進制編碼:
資料庫加密:
雲存儲加密:
硬體加密: