Page History: [ASP.NET] 서명(signature) 생성 샘플코드
Compare Page Revisions
Page Revision: 2012/05/29 22:08
ASP.NET 서명(signature)을 생성 샘플코드
소스의 00112233445566778899aabbccddeeff 는 발급받은 32자리 키입니다.
<%@Import Namespace="System.Security.Cryptography" %>
<img src="http://mqr.kr/qr/?t=HelloWorld&r=10&sign=<%=CalculateSign("t=HelloWorld&r=10", "00112233445566778899aabbccddeeff")%>"/>
<script runat="server">
string CalculateSign(string text, string key)
{
byte[] keyBytes = new byte[key.Length / 2];
for (int i = 0; i < keyBytes.Length; i++)
keyBytes[i] = Convert.ToByte(key.Substring(i * 2, 2), 16);
byte[] textBytes = Encoding.ASCII.GetBytes(text);
byte[] sign;
using (HMACSHA256 hmac = new HMACSHA256(keyBytes))
sign = hmac.ComputeHash(textBytes);
return string.Join(string.Empty, sign.Select(b => b.ToString("x2")));
}
</script>