不能在C ++中使用HMACSHA1类

时间:2015-03-27 18:15:36

标签: cryptography c++-cli hmacsha1

我正在尝试关注this sample code for C++,但行:

Using namespace System::Security::Cryptography;

在VS 2013专业版中引发错误。单词System以红色加下划线,鼠标悬停消息显示:“name后跟'::'必须是类或名称空间名称”。我使用HMACSHA1类以多种语言(C#,VB.net,python等)工作代码,但无法在C ++中使用它。在C ++中访问这个类有什么问题?我应该使用不同的命名空间,还是为某个文件添加#include?我在C中看到了使用HMAC类的example,但这是一个“抽象类”,并且看起来需要更多的工作来获得我想要的东西。我不明白为什么我不能使用能够提供我所需要的HMACSHA1类。

(以防万一有人问,我的工作vb.net代码如下:

Private Function GetApi_Sig()
    Dim api_sig As String = ""
    Using myhmac As New HMACSHA1(System.Text.Encoding.UTF8.GetBytes(secret))
        Dim hashValue As Byte() = myhmac.ComputeHash(System.Text.Encoding.UTF8.GetBytes(key))
        Dim i As Integer
        For i = 0 To (hashValue.Length - 1)
            api_sig = api_sig + String.Format("{0:x2}", hashValue(i))
        Next i
    End Using
    Return api_sig
End Function 'GetApi_Sig

0 个答案:

没有答案