C#處理SHA1加密和Signature簽名驗(yàn)證
多用于手機(jī)APP接口加密
可限制請(qǐng)求有效時(shí)間
/// <summary> /// 檢驗(yàn)signature /// </summary> /// <param name="signature">加密簽名</param> /// <param name="timestamp">時(shí)間戳</param> /// <param name="token">密鑰</param> /// <returns></returns> public static bool CheckSignature(string signature, string timestamp, string token) { string strResult = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(token timestamp, "SHA1"); return signature.Equals(strResult, StringComparison.InvariantCultureIgnoreCase); } //SHA1加密 public static String GetHash(String input) { //建立SHA1對(duì)象 SHA1 sha = new SHA1CryptoServiceProvider(); //將mystr轉(zhuǎn)換成byte[] UTF8Encoding enc = new UTF8Encoding(); byte[] dataToHash = enc.GetBytes(input); //Hash運(yùn)算 byte[] dataHashed = sha.ComputeHash(dataToHash); //將運(yùn)算結(jié)果轉(zhuǎn)換成string string hash = BitConverter.ToString(dataHashed).Replace("-", ""); return hash; }
原文鏈接:C#處理SHA1加密和Signature簽名驗(yàn)證