我们有一个用例来列出来自USB加密狗(ePass2003Auto等类型)的证书,这些证书将用于签名pdf。
Env: Ubuntu 20.04
填词libssl libcrypto libnss3 libnssckbi libnssdbm3 libnssutil3 libnspr
liboffice检测/列出证书的步骤:
-
与USB加密狗交互的lib/驱动程序可在供应商的网站上获得。例如在我们的例子中——>https://www.hypersecu.com/updates-india。这需要按照上面提到的说明安装。libcastle_v2.so.1.0.0/p>
-
创建一个nssdb路径,如/home/
/.pki/nssdb
使用<<li>strong> modutil (一个libss util)链接创建的NSSDB路径,usb插槽/令牌和lib命令:
module -dbdir -add ">
- 使用命令 确认是否已添加
module -dbdir sql: 解决了! 在流程中调试PK11_Authenticate()和相关函数时,发现从密码回调函数返回的密码(根据我的示例代码—>GetPasswordFunction())为NULL。这很奇怪,因为我已经调试了这个函数,并确保正确返回了密码。 在检查libss中的其他函数时,我了解了PORT_Alloc(),这是一个类似于malloc()的内存分配器(secport.h)。我使用了普通的c风格字符串内存分配。在尝试使用PORT_Alloc()分配时,它工作了!