PHP和JS實(shí)現(xiàn)普通HTTP上安全地傳輸密碼_PHP教程
推薦:如何實(shí)現(xiàn)給上傳圖片加水印用PHP給上傳圖片加水印的程序是通過(guò)判斷文件類型建立圖形,然后把其復(fù)制到原建立的圖形上,填充并建立rectangle,以備寫(xiě)入imagestring()或是原已經(jīng)定好的圖像程序當(dāng)中判斷水印類型:一是字符串,另是增加一個(gè)圖形對(duì)象在上面。如果你對(duì)PHP的GD庫(kù)比較熟悉,看
1、理論
在普通HTTP上,一般表單中的密碼都是以明文方式傳到服務(wù)器進(jìn)行處理的。這無(wú)疑給了壞人以可乘之機(jī)!這里我們就說(shuō)說(shuō)怎么傳輸密碼才是安全的!與其傳輸密碼本身,到不如傳輸其加密后的形式。MD5是個(gè)不錯(cuò)的選擇。第一,不同的資源幾乎不可能生成相同的MD5摘要,第二,MD5的編碼方式是不可逆推的。有了這些特性,我們就可以讓MD5摘要公開(kāi)的在Internet上傳輸,而不必?fù)?dān)心密碼被壞人知道。然后在服務(wù)端也將密碼通過(guò)同樣的方式加密,最后比較這兩個(gè)字符串。
然而,我們不能為了登陸而將密碼md5后直接通過(guò)Internet傳輸,因?yàn)閴娜穗m然不會(huì)知道我們的密碼,但肯定會(huì)知道這個(gè)特殊的字符串可以授權(quán)他們?cè)L問(wèn)我們的網(wǎng)站!解決思路:每次登陸時(shí),首先由服務(wù)器提供一個(gè)隨機(jī)字符串,然后客戶端將這個(gè)隨機(jī)字符串和密碼相加后再加密!這樣你的密碼沒(méi)有變,但是通過(guò)上面的方法加密后的MD5摘要卻完全不同。這樣就算壞人得到了這些MD5摘要,他們也不可能分析出你的密碼!
2、實(shí)現(xiàn)
客戶端Javascript并沒(méi)有提供現(xiàn)成的md5算法,但我們?cè)?google 上用 "md5 javascript" 搜索,就可以得到很多md5在Javascript上實(shí)現(xiàn)的例子。在PHP中我就不用多說(shuō)了,直接用md5()這個(gè)函數(shù)就可以搞定!隨機(jī)字符串我們可以用session來(lái)存儲(chǔ)(PHP就是強(qiáng)啊~~)
3、注意
在JS中,中文都是UTF-8格式的,所以如果你的密碼是中文,而且存儲(chǔ)在服務(wù)端的密碼的編碼方式是GB2312,那么兩個(gè)密碼加密后的字符串是完全不同的!
分享:解析PHP連接遠(yuǎn)程MYSQL和MYSQL5.1中文亂碼處理方法本文描述了我在開(kāi)發(fā)我的Blog的過(guò)程中所遇到的一些問(wèn)題以及解決他們的方法。因?yàn)楸揪W(wǎng)站采用的是一個(gè)免費(fèi)的遠(yuǎn)程MySql數(shù)據(jù)庫(kù)db4free.net,而且這個(gè)數(shù)據(jù)庫(kù)是5.1的版本,所以在開(kāi)發(fā)過(guò)程中出現(xiàn)了許多問(wèn)題。故在此發(fā)表,以便大家參考。 一、連接遠(yuǎn)程數(shù)據(jù)庫(kù)的方法 對(duì)
- PHPNOW安裝Memcached擴(kuò)展方法詳解
- php記錄頁(yè)面代碼執(zhí)行時(shí)間
- PHP中獎(jiǎng)概率的抽獎(jiǎng)算法程序代碼
- apache設(shè)置靜態(tài)文件緩存方法介紹
- php對(duì)圖像的各種處理函數(shù)代碼小結(jié)
- PHP 關(guān)于訪問(wèn)控制的和運(yùn)算符優(yōu)先級(jí)介紹
- 關(guān)于PHP語(yǔ)言構(gòu)造器介紹
- php/js獲取客戶端mac地址的實(shí)現(xiàn)代碼
- php5.5新數(shù)組函數(shù)array_column使用
- PHP preg_match的匹配多國(guó)語(yǔ)言的技巧
- php 中序列化和json使用介紹
- php采集文章中的圖片獲取替換到本地
PHP教程Rss訂閱編程教程搜索
PHP教程推薦
- 解決FastCGI 進(jìn)程超過(guò)了配置的活動(dòng)超時(shí)時(shí)限的問(wèn)題
- LotusPhp筆記之:Cookie組件的使用詳解
- php 將 HTML 轉(zhuǎn)換成文本
- PHP筆記之:基于面向?qū)ο笤O(shè)計(jì)的詳解
- php5.3 注意事項(xiàng)說(shuō)明
- PHP閉包(Closure)使用詳解
- PHP session_start()問(wèn)題解疑(詳細(xì)介紹)
- 怎樣用PHP編程語(yǔ)言開(kāi)發(fā)動(dòng)態(tài)WAP頁(yè)面
- 常見(jiàn)php頁(yè)面漏洞分析及相關(guān)問(wèn)題解決
- 問(wèn)題解決:無(wú)法載入MYSQL擴(kuò)展,請(qǐng)檢查PHP配置
- 相關(guān)鏈接:
- 教程說(shuō)明:
PHP教程-PHP和JS實(shí)現(xiàn)普通HTTP上安全地傳輸密碼。