1234567891011121314151617181920212223242526272829303132333435363738394041 |
- /*
- * Copyright (C) Alibaba Cloud Computing
- * All rights reserved.
- *
- * 版权所有 (C)阿里云计算有限公司
- */
- using System;
- using System.Diagnostics;
- using System.Security.Cryptography;
- using System.Text;
- namespace Aliyun.OSS.Common.Authentication
- {
- internal class HmacSha1Signature : ServiceSignature
- {
- private static readonly Encoding Encoding = Encoding.UTF8;
- public override string SignatureMethod
- {
- get { return "HmacSHA1"; }
- }
- public override string SignatureVersion
- {
- get { return "1"; }
- }
- protected override string ComputeSignatureCore(string key, string data)
- {
- Debug.Assert(!string.IsNullOrEmpty(data));
- using (var algorithm = KeyedHashAlgorithm.Create(SignatureMethod.ToUpperInvariant()))
- {
- algorithm.Key = Encoding.GetBytes(key.ToCharArray());
- return Convert.ToBase64String(
- algorithm.ComputeHash(Encoding.GetBytes(data.ToCharArray())));
- }
- }
- }
- }
|