1. 程式人生 > >OAuth認證的 HMAC-SHA1簽署 實現

OAuth認證的 HMAC-SHA1簽署 實現

HMAC-SHA1簽署方式使用[RFC2104] (Krawczyk, H., Bellare, M., and R. Canetti, “HMAC: Keyed-Hashing for Message Authentication,” .)中定義的HMAC-SHA1簽署演算法,把簽署基字串作為text, key則由先按照引數編碼 (引數編碼)進行編碼再用“&”字元(ASCII程式碼38)分隔(無論是否為空)的消費方金鑰和令牌金鑰串接而成。 
HMAC_SHA1(Hashed Message Authentication Code, Secure Hash Algorithm)是一種安全的基於加密hash函式和共享金鑰的訊息認證協議。它可以有效地防止資料在傳輸過程中被截獲和篡改,維護了資料的完整性、可靠性和安全性。HMAC_SHA1訊息認證機制的成功在於一個加密的hash函式、一個加密的隨機金鑰和一個安全的金鑰交換機制。
  HMAC_SHA1 其實還是一種雜湊演算法,只不過是用金鑰來求取摘要值的雜湊演算法。
  HMAC_SHA1演算法在身份驗證和資料完整性方面可以得到很好的應用,在目前網路安全也得到較好的實現

$key是驗證的主機給你的一個隨機金鑰,你在本地對要傳輸的字元$data配合$key進行運算之後傳送到驗證主機,那邊會通過$key對已有的資料進行進行運算,然後結果和你傳送過來的進行對比。

業務封裝的好 用不用框架沒有太大區別 面向物件的根本是 封裝和複用

php中的框架最好不要用於實際專案,要麼過於簡陋,缺乏足夠的擴充套件性,缺少必要擴充套件模組。
要麼巨大且臃腫,太多沒用的、過時的、你用不上的東西,而且這些你還沒有辦法解除安裝掉。
php沒有向著更好的元件,標準件支援方面發展,卻向著下一代語言發展,這是目前最大的缺失。也是作為php程式設計師最大的遺憾。 痛苦

3. php對使用者要求較高,.NET門檻較低。 這個說反了

中小企業應用主要是.net,大型企業應用是jsp,而網路多用jsp和php。
  .net的特點是b/s,c/s有些互通,C#程式設計師不用學太多ajax,css,http之類的知識,拖個控制元件就能列一堆報表了 。所以.net的培訓速成班最多。配合還算不錯的mssql使用,是典型的面向中小企業的應用。企業應用在於快速開發,整合,整合,資料供用和海量資料的儲存,資料探勘和資料儲存安全。微軟的.net能整合一堆辦公軟體,具有很強的優勢。
不過.net在做網站上優勢並不大。主要是因為網站側重於高併發,訪問速度優化,高實時,而.net本身並不開源,不能重寫底層程式碼,web伺服器IIS,作業系統統統不開源的,第三方的支援也比較一般。就算是你改幾個官方控制元件的樣式和特性,都得在它的條條框框裡撞撞跌跌的夠嗆。面對日新月異的web應用,沒有一個能充分自由修改和調優的基礎,高負載均衡的話大多隻能通過買效能高的硬體來達成。這就是為什麼大型網站都是用jsp和php。
 銀行政府用的多主要是因為jsp有強大的官方技術支援,龐大的社群,並且付得起高額的版權費用。
php一套全部免費,配合perl和python靈活度非常高。而且php本身其實就是基於c語言包裝而來,必要時候可以重寫runtime。mysql資料庫雖然不及msql和oracle的企業應用強,不過發展還是比較迅速的,它天生轉為網站設計,達到10萬的併發數的能力也可以傲視群雄了。這就是為什麼網路公司中意php。
你如果對於PHP沒有太多的興趣的話,還是用CI吧,這個學起來簡單,基本上看完視訊就可以了,其它框架的學習曲線都相當陡峭一些

先把PHP手冊看一遍,再選一兩個框架熟悉使用就可以了,codeigniter

強烈同意,我把ci的原始碼看個遍,現在的框架,我想怎麼改就怎麼改.

真的,在我看來框架真的太臃腫了,而且你即使是寫一個功能很小的東西,但是ta裡面的程式碼都要基本上都執行一遍,意思就是這些多少MB的框架裡面的程式碼都執行一遍網站才顯示出來,靈活性不言而語。
要是作為學習目的的話,最好不要用框架,從最基礎的學起,只要基礎打好了,什麼框架都好上手,框架只是個工具!

框架就是MVC吧!自己弄個簡單的不就可以了

ThinkPHP我感覺挺好的啊,手冊寫得很詳細,學起來很快

框架就是太大了,開發前期投入太多

我也沒有用過什麼框架,都是自己手寫,模板就用smarty

來源:nba直播