首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Lua - Lightroom插件中使用HMAC

如何在Lua - Lightroom插件中使用HMAC
EN

Stack Overflow用户
提问于 2014-06-24 03:38:03
回答 3查看 848关注 0票数 4

我要说的第一件事是,我对Lua真的很陌生,如果你觉得我的问题太蠢,请耐心点

这是我的要求

  • 我需要使用HMAC-sha256进行Lightroom插件开发,因为我正在使用它作为安全性。

我试着用这个,但是没有运气,https://code.google.com/p/lua-files/wiki/hmac

以下是我遵循的步骤

  1. 获取https://code.google.com/p/lua-files/source/browse/hmac.lua的代码并将其保存为插件目录中的“hmac.lua”文件
  2. 从这个https://code.google.com/p/lua-files/source/browse/sha2.lua获取代码并保存为'sha2.lua‘文件

现在在文件中,我像这样使用它

代码语言:javascript
复制
local hmac = require'hmac'
local sha2 = require'sha2'

--somewhere doend the line inside a function
local hashvalue = hmac.sha2('key', 'message')

但不幸的是,这是行不通的,我不知道我做错了什么。有人能告诉我我在这里做错了什么吗?或者有更简单更好的方法用一个好的例子来做这件事。

编辑:我这么做是为了得到结果。当我包括那个代码时,插件就停止工作了。执行此操作时,无法获得输出字符串。

代码语言:javascript
复制
hashvalue = hmac.sha2('key', 'message')

local LrLogger = import 'LrLogger'
myLogger = LrLogger('FlaggedFiles')
myLogger:enable("logfile")
myLogger:trace ("=========================================\n") 
myLogger:trace ('Winter is coming, ' .. hashvalue)
myLogger:trace ("=========================================\n")

而Lightroom拒绝加载插件,日志上也没有任何内容

非常感谢你的帮助

EN

回答 3

Stack Overflow用户

发布于 2014-06-26 03:04:53

我首先要确保您的代码在Lightroom之外工作。您引用的HMAC模块似乎还有其他一些依赖项:它需要“胶水”、“位”和"ffi“模块。其中,费伊是二进制模块,我不确定您是否能够将它们加载到Lightroom (除非它们已经在那里可用)。在任何情况下,如果您没有必需的模块,并且无法使它在LR之外没有问题地运行,您可能无法使它在LR中运行。

票数 2
EN

Stack Overflow用户

发布于 2014-06-27 02:41:17

如果您只需要获取SHA256哈希,就有一种方法可以实现它

我在这里上发布了我的问题,并得到了答案。但是SDK文档中并没有提到这一点(Lightroom )。

代码语言:javascript
复制
local sha = import 'LrDigest'
d = sha.SHA256.digest ("Hello world")

但不幸的是,没有HMAC,所以我决定用md5加盐,因为这占用了我太多的时间。

票数 0
EN

Stack Overflow用户

发布于 2015-10-14 13:55:09

花了相当长的时间试图找到一个解决方案:-/ LrDigest没有文档化,谢谢Adobe!解决方案:

代码语言:javascript
复制
local LrDigest = import "LrDigest"
LrDigest.HMAC.digest(string, 'SHA256', key)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24377945

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档