導航:首頁 > 源碼編譯 > phpmd5演算法

phpmd5演算法

發布時間:2024-07-06 07:14:30

A. 如何遍歷一個文件夾下的所有文件,並用md5函數算出所有文件的md5值(用php實現)

function file_read_all ($dir)
{
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
$n=0;
while (($file = readdir($dh)) !== false) {
if ( $file == '.' or $file =='..' or $file=='.svn')
{
continue;
}
echo md5_file($dir.$file);//計算每個文件md5值 echo '<br />';
if (is_dir ($dir.$file))
{
file_read_all ($dir.$file.'/');
}
}
}
closedir($dh);
}
}

B. PHP 如何隨機生成24位 MD5加密後的字元串

md5是32位的,所以你需要先生成md5,再進行字元串截取,截取24個長度就是24位了。

生成隨機的為了不重復,可以使用當前時間戳,在加上隨機數就行

$date_string = date('Y') . date('m') . date('d') . date('H') . date('i') . date('s') . mt_rand(100000, 999999);

$md5_string = md5($date_string);

$string = substr($md5_string, 0, 24);

echo $string;

C. 各位用php將密碼存入資料庫,都用什麼方法進行加密的

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);
//

D. 鐢╬hp灝嗗瘑鐮佸瓨鍏ユ暟鎹搴擄紝鐢ㄤ粈涔堟柟娉曡繘琛屽姞瀵

棰樹富浣犲彲浠ヤ嬌鐢 md5 鎴栬 sha1 榪涜屽垵姝ュ勭悊錛屼絾涓轟簡鏇村姞瀹夊叏錛岃蜂綘鍚屾椂鍔犱笂涓や釜 salt錛屼竴涓闈欐 salt錛屼竴涓鍔ㄦ佺殑 salt銆備互 md5 涓轟緥錛歕x0dx0a鍋囪鵑氳繃 POST 浼犳潵鐨勫瘑鐮佷負 $_POST['password']錛屽湪瀛樺叆 DB 鍓嶅厛榪涜屽備笅鐨勬搷浣滐細x0dx0a$password = hash('md5', $_POST['password'].$staticSalt.$dynamicSalt);x0dx0ax0dx0a涓轟簡淇濊瘉鍔ㄦ salt 鐨勫敮涓鎬э紝鍙浠ヨ繖鏍鋒搷浣滐細x0dx0a$dynamicSalt = hash('md5', microtime());x0dx0ax0dx0a瀵逛簬鍔ㄦ佺殑 salt 鍙浠ヤ笌鐢熸垚鐨勫瘑鐮佷竴璧蜂繚瀛樺湪 DB 涓錛岃岄潤鎬 salt 鍒欏彲浠ョ洿鎺ユ斁鍦ㄧ被鏂囦歡涓錛堜緥濡傚畾涔変負涓涓闈欐佸睘鎬у嵆鍙錛夈俓x0dx0a棣栧厛璋㈣阿棰樹富閲囩撼浜嗘垜鐨勭瓟妗堬紝浣嗘槸鎴戜箣鍓嶇殑鍥炵瓟騫朵笉鏄鏈浣崇瓟妗堬紝涔嬫墍浠ユ湁姝ゅ姞瀵嗙殑鎯蟲硶婧愪簬鑷宸辨墍璇葷殑婧愮爜鍙鑳芥瘮杈冭侊紝鎵浠ュ苟娌′嬌鐢ㄤ笂杈冩柊鐗堟湰鐨勫姞瀵嗘柟娉曪紝渚嬪 bcrypt絳夈俓x0dx0a姝ゅ栵紝絎浜岀偣錛屾劅璋㈣瘎璁轟腑鍑犱綅鍓嶈緢鐨勬彁鐐癸紝宸茬粡鏄庣櫧璁劇疆闈欐 salt 鐨勬剰涔夊苟涓嶅ぇ錛岀敓鎴愪竴涓杈冮暱鐨勫姩鎬 salt 宸茬劧鍙浠ヨВ鍐抽棶棰樸俓x0dx0ax0dx0aLZ搴旇ラ噰鐢ㄥ姞鐩怘ASH銆俓x0dx0a濡備綍鈥滆厡鍒垛濆瘑鐮佸憿錛焅x0dx0a=_,=x0dx0a姝g『鐨勬牸寮忓簲璇ユ槸錛岀敤鎴穚assword+鍔ㄦ佺殑saltx0dx0a鍔ㄦ佺殑salt涓嶈兘鍍2L鎵璇寸殑錛屼嬌鐢╩icrotime錛屽洜涓烘椂闂村湪鏌愪簺鎯呭喌涓嬩笉澶熼殢鏈猴紝鑰屼笖鏄鍙鑳借鐚滆В鐨勩俓x0dx0a榪欓噷鎺ㄨ崘涓涓鎴戠敤鐨勫姞鐩怘ASHx0dx0a$salt=base64_encode(mcrypt_create_iv(32,MCRYPT_DEV_RANDOM));x0dx0a$password=sha1($register_password.$salt);x0dx0ax0dx0a瑙i噴:x0dx0a棣栧厛浣跨敤mcrypt錛屼駭鐢熺數鑴戦殢鏈虹敓鎴愮殑錛屼笓闂ㄧ敤鎴峰姞瀵嗙殑闅忔満鏁板嚱鏁般俓x0dx0a絎浜屾ワ紝鎶婂緱鍒扮殑闅忔満鏁伴氳繃base64鍔犲瘑錛屼嬌鍏跺彉闀垮苟涓斾笉鍒╀簬鐚滆В銆俓x0dx0a絎涓夋ワ紝鎶婂緱鍑虹殑鐩愭嫾鎺ュ埌瀵嗙爜鐨勫悗闈錛屽啀瀵瑰叾浣跨敤sha1榪涜屽搱甯孿x0dx0a鍐嶆妸password瀛樺叆鍒扮敤鎴風殑鏁版嵁搴撱俓x0dx0aPS錛氫負浣曚笉鐢ㄩ潤鎬佺殑salt錛熸病鏈夊繀瑕侊紝浣跨敤涓涓鍔ㄦ侀殢鏈鴻凍澶熼暱鐨勭洂瓚崇煟銆俓x0dx0a涓轟綍涓嶇敤MD5錛熷洜涓洪暱搴︿笉澶熴俓x0dx0a涓轟綍娌℃湁浣跨敤澶氭HASH錛熷洜涓鴻繖鏍峰弽鑰屽規槗鍙戠敓紕版挒銆俓x0dx0aHASH濂戒箣鍚庢庝箞浣跨敤鈥滆厡鍒垛濆ソ鐨勫瘑鐮侊紵x0dx0a鐢ㄦ埛娉ㄥ唽->鎻愪氦瀵嗙爜->浜х敓salt->鑵屽埗濂界殑瀵嗙爜瀛樺叆鏁版嵁搴->salt瀛樺叆鏁版嵁搴撱俓x0dx0a鐢ㄦ埛鐧誨綍->鎻愪氦瀵嗙爜->璋冪敤salt鎺ュ埌鎻愪氦瀵嗙爜鐨勫悗闈->榪涜孒ASH->璋冪敤涔嬪墠娉ㄥ唽鑵屽埗濂界殑瀵嗙爜->瀵規瘮HASH鍊兼槸鍚﹀拰榪欎釜瀵嗙爜鐩稿悓

E. python和php計算md5為什麼不一樣

#!/usr/bin/envpython

#-*-coding:UTF-8-*-

importhashlib

string='123456SkinRun51'

md5=hashlib.md5()

md5.update(string.encode('utf-8'))

res=md5.hexdigest()

print('md5加密後結果:',res)

-------------------------------------------

echomd5(utf8_encode('123456SkinRun51')).PHP_EOL;

exit();

敘述:python3.6.6 ;php7

F. 鍦≒HP寮鍙戜腑鍏縐嶅姞瀵嗙殑鏂規硶錛屼綘鐢ㄧ殑鏄鍝縐嶏紵

鍦≒HP寮鍙戠殑涓栫晫閲岋紝鏁版嵁鐨勫畨鍏ㄦц嚦鍏抽噸瑕併傝╂垜浠娣卞叆鎺㈣ㄥ叚縐嶅父瑙佺殑鍔犲瘑鏂規硶錛岀湅鐪嬩綘鍦ㄥ疄闄呴」鐩涓鏄濡備綍榪愮敤鐨勩

棣栧厛錛屾垜浠浠嶱HP鍐呯疆鐨勫姞瀵嗗嚱鏁拌皥璧楓侾HP涓烘垜浠鎻愪緵浜嗕袱縐嶆埅鐒朵笉鍚岀殑鍔犲瘑鎵嬫碉細涓嶅彲閫嗙殑鍜屽彲閫嗙殑銆備笉鍙閫嗙殑濡md5()錛屽畠鐢熸垚鐨勫搱甯屽兼槸鍗曞悜鐨勶紝鐢ㄤ簬紜淇濇暟鎹鐨勫敮涓鎬э紝鑰crypt()鍒欐槸鍗曞悜DES鍔犲瘑錛岄傚悎浜庡瘑鐮佸瓨鍌ㄣ傜浉鍙嶏紝base64_encode()urlencode()榪欑被鏂規硶錛屽傜綉緇滀紶杈撴椂甯哥敤錛岄氳繃MIME BASE64緙栫爜渚誇簬璺ㄥ鉤鍙頒紶杈擄紝浣嗗畠浠鏄鍙閫嗙殑錛屾湁瀵瑰簲鐨勮В瀵嗗嚱鏁板base64_decode()

鎺ョ潃錛屾垜浠鏉ョ湅涓や釜瀹為檯搴旂敤涓鐨勫姞瀵嗗嚱鏁扮ず渚嬨備竴鏄lock_url()錛屽畠宸у欏湴緇撳悎浜哢RL緙栫爜鍜岀壒孌婂瓧絎︾殑澶勭悊錛岄氳繃綆楁硶灝嗚緭鍏ョ殑瀛楃︿覆鍔犲瘑鍚庤繘琛屼紶杈撱傚彟涓涓鏄緇忚繃綺劇畝鐨勫姞瀵嗗嚱鏁幫紝濡passport_encrypt()錛屽悓鏍烽噰鐢ㄧ紪鐮佸拰瀵嗛掗鎿嶄綔錛岀『淇濇暟鎹鍦ㄤ紶杈撲腑鐨勫畨鍏ㄦс

鍦ㄩ」鐩涓錛屾洿涓哄嶆潅鐨勫姞瀵嗗勭悊鍙鑳芥秹鍙婁嬌鐢ㄥauthcode()榪欐牱鐨勮嚜瀹氫箟鍑芥暟銆傚畠鏍規嵁杈撳叆鐨勬槑鏂囥佹搷浣滅被鍨嬶紙鍔犲瘑鎴栬В瀵嗭級鍜屽瘑閽ワ紝鐢熸垚鍔ㄦ佸瘑閽ュ苟鎵ц屽姞瀵嗘牳蹇冪畻娉曘傝繖縐嶅姛鑳藉湪鐢ㄦ埛鐧誨綍楠岃瘉鍜孉PI鏁版嵁浜ゆ崲涓灝や負甯歌併

鏈鍚庯紝璁╂垜浠鎺㈢儲涓縐嶆洿涓虹伒媧葷殑鍔犲瘑瑙e瘑妯″紡銆傞氳繃瀹氫箟鍑芥暟濡encrypt()錛屾垜浠鍙浠ヤ嬌鐢∕D5浣滀負瀵嗛掗鐢熸垚鍣錛屽苟緇撳悎Base64緙栫爜錛屽疄鐜頒簡鍙屽悜鎿嶄綔銆傝繖涓渚嬪瓙灞曠ず浜嗗備綍瀵瑰瓧絎︿覆榪涜屽姞瀵嗗拰瑙e瘑錛屼互婊¤凍涓嶅悓鐨勫簲鐢ㄥ満鏅銆

鍦ㄤ綘鐨凱HP寮鍙戞棶紼嬩腑錛岄夋嫨鍝縐嶅姞瀵嗘柟娉曞彇鍐充簬鍏蜂綋闇奼傘備笉鍙閫嗙殑鍝堝笇鍑芥暟閫傜敤浜庨獙璇佹暟鎹瀹屾暣鎬э紝鑰屽彲閫嗙殑緙栫爜鏂規硶閫傜敤浜庢暟鎹浜ゆ崲銆傝頒綇錛屾瘡涓欏圭洰閮芥湁鍏剁壒瀹氱殑瀹夊叏瑕佹眰錛岄夋嫨閫傚悎鐨勫姞瀵嗙瓥鐣ヨ嚦鍏抽噸瑕併

鍦ㄨ拷奼傚畨鍏ㄧ殑鍚屾椂錛屼笉瑕佸繕璁板叧娉ㄦ垜浠鐨勫叕浼楀彿錛歅HP浠庡叆闂ㄥ埌綺鵑氾紝閭i噷鏈夋洿澶氳繘闃剁煡璇嗗拰瀹炵敤璧勬簮錛屽府鍔╀綘鎻愬崌鎶鑳斤紝瑙e喅榪涢樁闂棰樸傛棤璁轟綘鏄鏂版墜榪樻槸璧勬繁寮鍙戣咃紝榪欓噷閮芥湁閫傚悎浣犵殑鍐呭廣備竴璧鋒帰緔PHP鐨勬棤闄愬彲鑳斤紝鎻愬崌浣犵殑鎶鏈瀹炲姏銆

G. 在php5中md5在加密字元串後如何解密

MD5加密是不能逆運算的,現在的破解大都是窮盡法,就是有一個龐大的MD5碼對照表放在那裡,然後一個一個去對照著查。

閱讀全文

與phpmd5演算法相關的資料

熱點內容
編程以後有可能被機器人代替嗎 瀏覽:513
windows創建文件命令 瀏覽:984
linuxcopy文件內容 瀏覽:381
程序員帥哥禿頂 瀏覽:839
阿里雲伺服器開通流程 瀏覽:105
如何開雲伺服器 瀏覽:979
網站小說源碼 瀏覽:301
php用什麼ide 瀏覽:867
網上預約課程app哪個好 瀏覽:152
android兼容測試工具 瀏覽:96
雲伺服器不支持虛擬化怎麼辦 瀏覽:189
加密方式的演變 瀏覽:364
java常用演算法pdf 瀏覽:734
伺服器數據遇到異常什麼原因 瀏覽:450
phpexif信息 瀏覽:543
單片機三位元組浮點數 瀏覽:756
命令與征服泰伯利亞戰爭下載 瀏覽:378
c窗口界面編程 瀏覽:23
hypermill編程能做模板嗎 瀏覽:782
計算機網路最經典的演算法 瀏覽:628