以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  请教SHA256算法  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=130749)

--  作者:bobolan521
--  发布时间:2019/1/31 10:10:00
--  请教SHA256算法



此主题相关图片如下:a2.png
按此在新窗口浏览图片



请问一下老师这个算法用狐表要怎么写,才能算出红色的字符

签名例子参考:

  • timestamp=1546084445901
  • appSecret=testappSecret
  • signature=HCbG3xNE3vzhO+u7qCUL1jS5hsu2n5r2cFhnTrtyDAE=
[此贴子已经被作者于2019/1/31 12:42:02编辑过]

--  作者:有点甜
--  发布时间:2019/1/31 10:16:00
--  

参考

 

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=123962&authorid=0&page=0&star=1

 


--  作者:bobolan521
--  发布时间:2019/1/31 12:18:00
--  
Dim sRequest As String = "timestamp=1546084445901&appSecret=testappSecret"
Dim myEncoder As New System.Text.UTF8Encoding
Dim Key() As Byte = myEncoder.GetBytes(sRequest)
Dim XML() As Byte = myEncoder.GetBytes(sRequest)
Dim myHMACSHA256 As New System.Security.Cryptography.HMACSHA256(Key)
Dim HashCode As Byte() = myHMACSHA256.ComputeHash(XML)

Dim result = Convert.ToBase64String(HashCode)

sRequest &= "&Signature=" & UrlEncode(result)
msgbox(sRequest)

老师,我这么写计算出来的结果不对,麻烦看一下代码要怎么改,谢谢

--  作者:有点甜
--  发布时间:2019/1/31 12:37:00
--  

那你就直接用官方sdk,直接引用dll后处理。

 

不然,贴出具体的帮助文档链接看看。


--  作者:bobolan521
--  发布时间:2019/1/31 12:41:00
--  
这是链接
--  作者:有点甜
--  发布时间:2019/1/31 12:45:00
--  

下载.net sdk,然后引用使用

 

https://open-doc.dingtalk.com/microapp/serverapi2/vzzrkv

 


--  作者:hgzvip
--  发布时间:2021/3/4 21:31:00
--  
Dim myEncoder As New System.Text.UTF8Encoding 
Dim Key() As Byte = myEncoder.GetBytes("testappSecret") \'
Dim XML() As Byte = myEncoder.GetBytes("1546084445901")
Dim myHMACSHA256 As New System.Security.Cryptography.HMACSHA256(Key) 
Dim HashCode As Byte() = myHMACSHA256.ComputeHash(XML) 
Dim result = Convert.ToBase64String(HashCode) 

result的值和你红色的一样