在Objective-C中有什么类似SHA1CryptoServiceProvider(C#)的东西吗?

时间:2010-08-05 13:20:04

标签: objective-c cocoa macos sha1

我正在尝试在我正在编写的应用程序中创建一个序列号检查器,它使用加密技术对名称进行编码,并根据实际应该输入的数字进行编码。我熟悉C#中使用的SHA1CryptoServiceProvider,但在Objective-C中是否有这样的东西?

以下是我要转换为 Objective-C 的C#示例代码:

string license = txtnLicense.Text;
        SHA1CryptoServiceProvider provider = new SHA1CryptoServiceProvider();
        string finalLicense = BitConverter.ToString(provider.ComputeHash(bytes));
        bool isGood = (BitConverter.ToString(provider.ComputeHash(bytes)).Replace("-", "") == license.Replace("-", ""));

2 个答案:

答案 0 :(得分:4)

Mac OS X附带一个易于使用的加密和内置散列库,名为CommonCrypto。您不必链接任何特殊的东西来使用它。请参阅/ usr / include / CommonCrypto中的标题以获取其界面,并查看CC_SHA1(3cc)的文档。

答案 1 :(得分:2)

using openssl for license keys显示了如何使用SHA1。这可能是一个好的开始。