首頁 php教程 php手册 使用HMAC-SHA1签名方法详解

使用HMAC-SHA1签名方法详解

Jun 06, 2016 pm 08:29 PM
簽名

本篇文章是对使用HMAC-SHA1的签名方法进行了详细的分析介绍,需要的朋友参考下

加密算法:
使用HMAC-SHA1签名方法

复制代码 代码如下:


/**
* @brief 使用HMAC-SHA1算法生成oauth_signature签名值
*
* @param $key 密钥
* @param $str 源串
*
* @return 签名值
*/
function getSignature($str, $key) {
$signature = "";
if (function_exists('hash_hmac')) {
$signature = base64_encode(hash_hmac("sha1", $str, $key, true));
} else {
$blocksize = 64;
$hashfunc = 'sha1';
if (strlen($key) > $blocksize) {
$key = pack('H*', $hashfunc($key));
}
$key = str_pad($key, $blocksize, chr(0x00));
$ipad = str_repeat(chr(0x36), $blocksize);
$opad = str_repeat(chr(0x5c), $blocksize);
$hmac = pack(
'H*', $hashfunc(
($key ^ $opad) . pack(
'H*', $hashfunc(
($key ^ $ipad) . $str
)
)
)
);
$signature = base64_encode($hmac);
}
return $signature;
}


,服务器空间,香港空间,香港空间
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何在PDF中驗證簽名 如何在PDF中驗證簽名 Feb 18, 2024 pm 05:33 PM

我們通常會接收到政府或其他機構發送的PDF文件,有些文件有數位簽章。驗證簽名後,我們會看到SignatureValid訊息和一個綠色勾號。如果簽章未驗證,會顯示有效性未知。驗證簽名很重要,以下看看如何在PDF中進行驗證。如何在PDF中驗證簽名驗證PDF格式的簽名使其更可信,文件更容易被接受。您可以透過以下方式驗證PDF文件中的簽名。在AdobeReader中開啟PDF右鍵點選簽名,然後選擇顯示簽名屬性點選顯示簽署者憑證按鈕從「信任」標籤將簽名新增至「受信任的憑證」清單中點選驗證簽名以完成驗證讓

重新啟動後,Outlook簽名每天都會消失 重新啟動後,Outlook簽名每天都會消失 Feb 19, 2024 pm 05:24 PM

電子郵件簽名對於展示合法性和專業性非常重要,其中包括聯絡資訊和公司標誌。 Outlook用戶經常抱怨簽名在重啟後會消失,這對於希望提高公司知名度的人來說可能會感到沮喪。在本文中,我們將探討不同的修復程序,以解決這個問題。為什麼我的MicrosoftOutlook簽名總是消失?如果您第一次使用MicrosoftOutlook,請確保您的版本不是試用版。試用版可能導致簽名消失。此外,版本體系結構也應與作業系統的版本體系結構相符。如果您發現OutlookWeb應用程式中的電子郵件簽名不時消失,可能是因

PHP 8 新功能:增加了驗證和簽名 PHP 8 新功能:增加了驗證和簽名 Mar 27, 2024 am 08:21 AM

PHP8是PHP的最新版本,為程式設計師帶來了更多的便利性和功能。這個版本特別關注安全性和效能,其中一個值得注意的新功能是增加了驗證和簽章功能。在本文中,我們將深入了解這些新的功能及其用途。驗證和簽名是電腦科學中非常重要的安全概念。它們通常用於確保傳輸的數據是完整和真實的。在處理線上交易和敏感資訊時,驗證和簽名變得尤為重要,因為如果有人能夠篡改數據,可能會對

PHP中的簽名與驗簽 PHP中的簽名與驗簽 May 23, 2023 pm 04:10 PM

隨著網路技術的發展,安全性成為了一個越來越重要的議題,特別是在網路應用中傳輸資料的安全性。簽章和驗簽技術已成為保障資料安全性的重要手段,PHP作為一種流行的網路程式語言,也提供了簽章和驗簽的相關函數,本文將介紹PHP中的簽章和驗簽。一、簽章與驗簽的概念簽章是指在數位簽章演算法的基礎上,對資料進行加密處理,產生一段特定的字串。透過該字串可以驗證資料的

PHP中的簽名鑑權方法及其應用 PHP中的簽名鑑權方法及其應用 Aug 06, 2023 pm 07:05 PM

PHP中的簽名鑑權方法及其應用隨著網路的發展,Web應用程式的安全性愈發重要。簽名鑑權是一種常見的安全機制,用於驗證請求的合法性和防止未經授權的存取。本文將介紹PHP中的簽章鑑權方法及其應用,並提供程式碼範例。一、什麼是簽名鑑權?簽章鑑權是一種基於金鑰和演算法的驗證機制,透過對請求參數進行加密產生唯一的簽章值,服務端再透過同樣的演算法和金鑰對請求進行解密並驗證簽

如何使用ThinkPHP6實作微信JS-SDK簽名 如何使用ThinkPHP6實作微信JS-SDK簽名 Jun 20, 2023 pm 09:14 PM

隨著微信公眾號開發的普及,在進行開發過程中,使用微信JS-SDK能夠方便的操作微信API,其中最重要的一步就是實現JS-SDK的簽章。本文將介紹如何使用ThinkPHP6框架,以有效率地完成微信JS-SDK簽章的實作。一、取得微信JS-SDK所需參數在使用JS-SDK之前,需要向微信伺服器申請一些參數,包括appid、timestamp、nonceStr、sig

如何在PHP實現微信JS-SDK簽名 如何在PHP實現微信JS-SDK簽名 May 13, 2023 pm 12:40 PM

隨著微信的普及和發展,微信公眾號已經成為了許多企業和個人進行行銷宣傳的首選平台。而微信JS-SDK則是微信公眾號開發中不可或缺的一部分。它可以幫助我們實現一些互動性更強,更有趣的功能,例如分享到朋友圈,調用微信支付等。本文將介紹如何在PHP中實現微信JS-SDK簽名,方便大家在開發中使用此功能。一、微信JS-SDK簡介微信JS-SDK是微信公眾號提供的一種開

如何使用您的簽名在 Mac 上免費簽署 PDF 如何使用您的簽名在 Mac 上免費簽署 PDF Mar 18, 2024 am 08:04 AM

如何使用您的簽名在Mac上免費簽署PDF在當今的數位化時代,使用電子方式簽署文件已變得日益普遍。很多人發現他們需要在PDF文件上簽名,但無法使用昂貴的軟體或訂閱服務。幸運的是,如果您擁有一台蘋果Mac計算機,您可以利用內建的「快速檢視」功能輕鬆為PDF檔案新增簽名。這篇指南將向您展示如何在Mac上免費使用此方法簽署PDF文件。 QuickLook是一個非常實用的工具,它可以讓你在不必打開專用應用程式的情況下預覽檔案。這不僅節省了時間,而且還隱藏著一個非常有用的功能——快速輕鬆地簽署PDF文件。

See all articles