【问题标题】:OAuth1.0a C library or HMAC-SHA1 C libraryOAuth1.0a C 库或 HMAC-SHA1 C 库
【发布时间】:2020-08-11 09:02:44
【问题描述】:

我正在使用具有 Mac 和 Windows 目标的 Mac 在 LiveCode 中构建跨平台桌面应用程序,但可以翻译来自 C/C++ 的任何响应。

我需要与使用 OAuth1.0a 的 Web API 交互。是的,OAuth1.0a 支持 Java,但 Apple 似乎正在大力尝试在 MacOS 中消除对 Java 的任何使用。所以我试图在没有 Java 的情况下实现。

我想我已经找到了实现大部分 OAuth1.0a 的方法,除了 HMACSHA1 部分来生成 oauthSignature。从 Java 进行翻译并非易事,因为引用了很多支持类。

我在一些帖子中看到人们引用 HMACSHA1 库,但我不知道从哪里开始。我在 GitHub 上进行了多次搜索,但我只找到了一个完整的“hmac-sha1-master”,它提供的答案与 Java 的实现不同。

有人知道在 C/C++ 或没有深入支持 Java 库的 Java 中 HMACSHA1 的最新实现吗?

谢谢, 安德鲁

【问题讨论】:

  • 谷歌搜索“HMAC SHA1 C++”有几个结果。如果这些都不够,请更具体地说明您的期望。否则,我个人使用过 CryptoPP,它有一个健全的 API。
  • 我有一个 LiveCode 的公共域 sha1 库(不是我的)。我做了一个最小的改变,我想我可以在这里发布代码作为答案。您能否发布一个输入字符串的示例并告诉我您期望的输出字符串是什么?我想检查一下这个库是否符合您的要求。

标签: hmacsha1


【解决方案1】:

我已经找到了部分答案。以下是处理 SHA1、几个 SHA2 版本、HMAC 以及 HMAC 和 SHA 组合的 LiveCode 库的标头。包含下载库的链接。

/*
libHash-Hmac
2.3版
2.3 版马克·史密斯,mark@maseurope.net
2009 年 9 月 9 日
http://marksmith.on-rev.com/revstuff/
v2.3新增crc 16、16ccitt、32个函数
v2.2 新增 htpasswd sha1 功能
v2.1 通过将旋转对齐来优化 sha256 处理。
包括 hmacSha1
*/

仍然需要做一些工作来完成 OAuth1.0。但是这个库处理编码中最密集的部分。

【讨论】:

    猜你喜欢
    • 2013-05-22
    • 1970-01-01
    • 2011-06-08
    • 2016-01-09
    • 1970-01-01
    • 2010-10-19
    • 2011-01-28
    • 1970-01-01
    • 2011-10-26
    相关资源
    最近更新 更多