【问题标题】:Using CAST encryption in a C# Metro/WinRT app在 C# Metro/WinRT 应用程序中使用 CAST 加密
【发布时间】:2014-04-22 15:13:27
【问题描述】:

是否有支持 Metro/WinRT 的 CAST 加密的 .NET API?相当于 iOS 上的这个 CommonCrypto 调用:

CCCrypt((mode == KeyEncryptionDecrypt) ? kCCDecrypt : kCCEncrypt, kCCAlgorithmCAST, 0,
          keyBuff, keySize,
          initVector,
          decryptData, decryptSize,
          buffer, bufferSize,
          dataOutSize);

通过阅读 Windows 8 SymmetricKeyAlgorithmProvider class 的文档,我看不到对 CAST 的支持。我使用 OpenSSL 进行了调查(我可以从我的 C# Metro 应用程序中调用 C++),但是 OpenSSL 库通过其随机化函数进行了一些桌面 API 调用,因此它不会在 Metro 下链接。有没有办法在我的 C# Metro 应用程序中使用 CAST 加密?

【问题讨论】:

    标签: c# windows-runtime cryptography microsoft-metro


    【解决方案1】:

    试试BouncyCastle for C#。检查功能列表。

    BouncyCastle here 有 WinRT 兼容版本,链接由 dbeachy1 提供。

    【讨论】:

    • 感谢您的信息。我找到了一个 WinRT 兼容版本的 BouncyCastle here。
    • 你能看出与普通 C# 代码和构建有什么不同吗?它的记录相当糟糕(阅读,它并没有真正记录在案)。
    • 快速扫描显示了一个相当完整的 BC 和一些与非对称密钥生成有关的辅助类(您可能想要扫描这些)。此外,它还包含 gzip 支持,从 Apache 许可代码复制而来 - 而不是 MIT。否则,它只包含帮助构建 WinRT 库的必要文件。
    猜你喜欢
    • 2014-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多