在 https://open-doc.dingtalk.com/microapp/faquestions/hxs5v9 钉钉给出了JAVA/PHP算法,下面是C#算法

 using System.Security.Cryptography
using System.Text;
private string hash_hmac2(string message, string secret)
{
secret = secret ?? "";
var encoding = new System.Text.ASCIIEncoding();
byte[] keyByte = encoding.GetBytes(secret);
byte[] messageBytes = encoding.GetBytes(message);
using (var hmacsha256 = new HMACSHA256(keyByte))
{
byte[] hashmessage = hmacsha256.ComputeHash(messageBytes);
return Convert.ToBase64String(hashmessage);
}
}

下面是调用代码:

           login  timespan=1546084445901;
string appsec = "testappSecret"; sign= hash_hmac2(timespan.ToString(),appsec);

//此时sign为 HCbG3xNE3vzhO+u7qCUL1jS5hsu2n5r2cFhnTrtyDAE=

Response.Write(sign);

下面是获取时间戳

  public long GetTimeStamp()
{
TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
return Convert.ToInt64(ts.TotalSeconds);
}

最新文章

  1. phpstorm常用功能&快捷键(mac)
  2. SQL Server开发接口生成方法
  3. MySql 插入数据中文乱码
  4. oracle入门-%的用法
  5. Project Euler 87 :Prime power triples 素数幂三元组
  6. Delphi打开窗体时报"Corrupt Portfolio Stream"
  7. [Cycle.js] Introducing run() and driver functions
  8. FlexSlider是一个非常出色的jQuery滑动切换插件
  9. 多平台Client TCP通讯组件
  10. [转]View属性 之 paddingStart & paddingEnd
  11. 3.WP8.1开发_为控件增加动画
  12. Xcode9新特性介绍-中文篇
  13. Azure环境中Nginx高可用性和部署架构设计
  14. php RAS加密类代码
  15. shell脚本--CGI获取请求数据(GET / POST)
  16. linux下rocksdb的编译安装
  17. scp的两种方式
  18. Android开发(七)——判断网络状态
  19. tomcat启动(二)org.apache.catalina.startup.Bootstrap分析
  20. NYOJ 231 Apple Tree (树状数组)

热门文章

  1. net core体系-Xamarin-1概要
  2. Codeforces 219E Parking Lot 线段树
  3. Linux 配置最新的epel源
  4. 转载:搭建完整的arm-linux-gcc等交叉编译环境(感谢CSDN博主的分享)
  5. Django 学习第十二天——Auth 系统
  6. Python实现的各种机器学习算法
  7. 洛谷.3805.[模板]manacher算法
  8. php include 绝对路径 dirname(__FILE__)
  9. css selector 用法
  10. C语言基础一(敲打键盘、寻找资料)