在Windows上加载加密模块时出错

时间:2018-12-19 14:33:08

标签: windows newlisp

在Windows上,当使用(module "crypto.lsp")加载加密模块时,会引发错误:

ERR: user error : cannot find crypto library

如何加载密码库?

1 个答案:

答案 0 :(得分:0)

module's page中所述,它需要一个openssl二进制文件。

当前(2018年冬季,newLISP v.10.7.1),在Windows上,该模块正在寻找opensl的​​gnuwin32发行版,该发行版已过时(最新发行版2008)。无论如何,尝试使用它对我来说都行不通。

解决方案是制作自己的加密模块副本(位于%NEWLISPDIR%\modules中),然后对其进行修改以指向您的openssl's libcrypto.dll二进制文件。就我而言,我实际上并没有安装整个openssl发行版,而只是复制了必要的文件。这是修改后的加密模块中的files列表:

(set 'files '(
              "X:/y/z/libcrypto-1_1-x64.dll" ; <<<<<<<<<<

              "/usr/lib/x86_64-linux-gnu/libcrypto.so" ; Ubuntu 12.04 LTS
              "/usr/lib/i386-linux-gnu/libcrypto.so"; Ubuntu 12.04
              "/lib/i386-linux-gnu/libcrypto.so.1.0.0" ; UBUNTU Linux 13.04
              "/usr/lib64/libcrypto.so" ; Fedora, CentOS 6.x
              "/usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0" ; Debian jessie
              "/usr/lib/libcrypto.so"
              "/usr/lib/libcrypto.so.4"
              "/usr/lib/libcrypto.so.18.0" ; OpenBSD 4.6
              "/usr/lib/libcrypto.so.19.0" ; OpenBSD 5.0
              "/usr/lib/libcrypto.dylib"
              ))