GVKun编程网logo

需要使用M2Crypto.Engine来访问USB令牌的帮助(要使用ingame info xml,你必须安装正确的依赖项)

13

对于需要使用M2Crypto.Engine来访问USB令牌的帮助感兴趣的读者,本文将提供您所需要的所有信息,我们将详细讲解要使用ingameinfoxml,你必须安装正确的依赖项,并且为您提供关于c–

对于需要使用M2Crypto.Engine来访问USB令牌的帮助感兴趣的读者,本文将提供您所需要的所有信息,我们将详细讲解要使用ingame info xml,你必须安装正确的依赖项,并且为您提供关于c – 使用来自USB令牌的证书和密钥进行数字签名、digital-signature – 如何使用JavaScript表格浏览器和用户的USB令牌对GST Return或eReturn进行数字签名?我可以使用WebCrypto API吗?、javascript – 需要使用node.js访问mysql数据库的帮助、Lowest Cost Arm9 with HS USB 2.0 OTG & Decryption Engine的宝贵知识。

本文目录一览:

需要使用M2Crypto.Engine来访问USB令牌的帮助(要使用ingame info xml,你必须安装正确的依赖项)

需要使用M2Crypto.Engine来访问USB令牌的帮助(要使用ingame info xml,你必须安装正确的依赖项)

我正在使用M2Crypto-0.20.2。我想使用OpenSC项目中的engine_pkcs11和Aladdin
PKI客户端进行基于令牌的身份验证,从而通过ssl进行xmlrpc调用。

from M2Crypto import EngineEngine.load_dynamic()dynamic = Engine.Engine(''dynamic'')# Load the engine_pkcs from the OpenSC projectdynamic.ctrl_cmd_string("SO_PATH", "/usr/local/ssl/lib/engines/engine_pkcs11.so")Engine.cleanup()Engine.load_dynamic()# Load the Aladdin PKI Clientaladdin = Engine.Engine(''dynamic'')aladdin.ctrl_cmd_string("SO_PATH", "/usr/lib/libeTPkcs11.so")key = aladdin.load_private_key("PIN","password")

这是我收到的错误:

key = pkcs.load_private_key("PIN","eT0ken")File "/usr/local/lib/python2.4/site-packages/M2Crypto/Engine.py", line 70, in load_private_key    return self._engine_load_key(m2.engine_load_private_key, name, pin)File "/usr/local/lib/python2.4/site-packages/M2Crypto/Engine.py", line 60, in _engine_load_key    raise EngineError(Err.get_error())M2Crypto.Engine.EngineError: 23730:error:26096075:engine routines:ENGINE_load_private_key:not initialised:eng_pkey.c:112:

对于load_private_key(),应将什么作为第一个参数传递?M2Crypto文档没有对此进行解释。

加载引擎没有任何错误,但是我不确定是否正确加载了它们。似乎引擎ID必须是一个特定名称,但我在任何地方都找不到该列表。 ''dynamic''为我工作。

任何帮助,将不胜感激!

答案1

小编典典

找到!!!!

是的,正是我的出身方式。

因此,实际上ENGINE_init()未在M2Crypto.Engine中实现。因此,只有一种解决方案:打补丁!!!(非常小…),所以我创建了一个新的Engine方法(在Engine.py中)

def engine_initz(self):        """Return engine name"""        return m2.engine_initz(self._ptr)

为什么选择engine_initz?因为engine_init已经在SWIG / _engine.i中定义,所以:

void engine_init(PyObject *engine_err) {    Py_INCREF(engine_err);    _engine_err = engine_err;}

我真的不知道该怎么做,所以我更喜欢创建一个新的…所以我刚刚在SWIG / _engine.i中添加了以下内容:

%rename(engine_initz) ENGINE_init;extern int ENGINE_init(ENGINE *);

并重新编译__m2crypto.so,现在只需在启动私钥之前添加“ pkcs11.engine_initz()”,它就可以工作…

c – 使用来自USB令牌的证书和密钥进行数字签名

c – 使用来自USB令牌的证书和密钥进行数字签名

我想使用用户的密钥和来自USB令牌(加密狗)的证书来签署文件.

我一直在搜索stackoverflow和其他网站,但除了.NET框架中的一些好的功能(我没有使用)之外,它没有得到任何有用的东西.

似乎由于密钥未公开,加密由硬件本身完成.这是否意味着每个硬件制造商都提供自己的API,并且没有通用的方法来解决这个问题?

此外,我读到,一旦将令牌插入计算机,其证书就会被加载到系统存储中.是否可以使用商店的证书?如何在商店中识别和访问此类证书?私钥怎么样?

当证书可以从.p12或.pfx文件中提取时,我已经使用OpenSSL进行数字签名.

如果我在某个地方错了,请纠正我,我是这个话题的新手.

解决方法

有2种选择:

> PKCS#11.几乎每个USB加密令牌和智能卡供应商都为您可以调用的PKCS#11提供驱动程序DLL.我需要注意的是,PKCS#11接口规范非常松散,这导致了不同供应商之间的怪癖和不兼容性.即您可能需要在一个设备中使用一组证书属性,在另一个设备中使用不同的属性集.
> CryptoAPI.大多数供应商都提供了一个CryptoAPI模块(CSP),它将证书“映射”到Windows证书存储中,您可以像在Windows证书存储中使用任何证书一样使用它进行签名.这意味着在Windows API中使用各种Crypt *,Cert *和类似功能.

我不认为OpenSSL可以用于您的任务 – 您需要使用CryptoAPI或PKCS#11.

我们的SecureBlackbox产品提供统一的高级接口,用于根据各种加密标准和使用PKCS#11和/或CryptoAPI对数据进行签名.仍然在PKCS#11的情况下(或完成签名的系统的运算符)需要知道PKCS#11驱动程序DLL的路径. SecureBlackBox可以使用其库版本从C中使用.

digital-signature – 如何使用JavaScript表格浏览器和用户的USB令牌对GST Return或eReturn进行数字签名?我可以使用WebCrypto API吗?

digital-signature – 如何使用JavaScript表格浏览器和用户的USB令牌对GST Return或eReturn进行数字签名?我可以使用WebCrypto API吗?

正在寻找使用USB令牌从浏览器签署GST或所得税eReturns的 Javascript代码.

解决方法

最近有很多关于WebCrypto API的讨论,但截至目前,WebCrypto API不提供对(Windows)或任何其他Key存储或本地加密USB /智能卡设备的访问.较旧的方法是java applet,Active X等,这些方法已逐步淘汰或正在逐步淘汰现代浏览器产品.

大多数Web应用程序需要使用用户的本地计算机密钥存储区,USB令牌或智能卡从用户的浏览器中进行数字签名pdf文档,文件,eReturns(XML或JSON)等.

此外,在大多数签名方案中,为了保护服务器边界内的数据,不建议将完整的pdf文件或数据发送到浏览器或签署API服务器.

因此,通过浏览器扩展使用JavaScript来访问本地系统上运行的某些应用程序以访问本地KeyStore并生成签名并发送回(在PDF签名的情况下为PKCS7或CMS容器)到服务器可以注入签名的良好实践返回PDF或eReturn,从中创建用于签名的哈希并发送到浏览器.

对于基于浏览器的签名方案,可以使用一个免费的Chrome扩展程序是Signer.Digital chrome扩展.可以从https://download.cnet.com/Signer-Digital-Chrome-Extension/3000-33362_4-78042540.html下载本地系统(在Windows上的Chrome浏览器后面运行的主机)
安装此主机并重新启动Chrome将自动添加Signer.Digital Chrome Extension

该扩展的实际工作在here中示出

示例JavaScript和服务器端伪代码代码使用Signer.Digital扩展来签署GST返回:

function getSignature(hash){
       //Sign GSTR Return Hash using Signer.Digital Chrome Extension
       //This method returns CMS (PKCS7) Signature
       SignerDigital.signGstHash(hash)
    .then(function(signature){
           //send signature to return filing server
       },function(error){
           //send error to server and/or report error to user
       });
   }

//For Income Tax Return signing use method:
//This method returns SHA256 Signature
SignerDigital.signITHash(hash,PAN)

文件GSTR3B的服务器端伪代码示例如下:

>用户在浏览器上单击了FileReturn按钮.
>调用方法下载GSTR3B返回摘要 – ApiAction“RETSUM”
>调用方法从上面的步骤2计算ResponsePayload的哈希值.
>在上面的步骤中发送哈希进行签名,其中上面的JavaScript方法将使用SigherDigital Extension方法获得GSTR返回哈希签名.
>将签名(如上面的JavaScript所示)返回给Web应用程序服务器,该服务器将继续向GSTN服务器发送GSTR3B归档API调用.

如果您使用TaxProGST.API免费库来文件GSTR3B伪代码将如下所示:

>用户在浏览器上单击了FileReturn按钮.>调用方法GSTR3BAPI.GetGstr3BDataSchedulePayloadAsync – 下载GSTR3B返回摘要 – ApiAction“RETSUM”>调用方法GSTR3BAPI.ComputeReturn3BHash(上面第2步的ResponsePayload)>在上面的步骤中发送哈希进行签名,其中上面的JavaScript方法将使用SigherDigital Extension方法获得GSTR返回哈希签名.>将签名(如上面的JavaScript所示)返回给Web应用程序服务器>服务器应用程序将使用GSTR3BAPI.FileReturn3BFrombrowser方法继续向GSTN服务器发送GSTR3B归档API调用

javascript – 需要使用node.js访问mysql数据库的帮助

javascript – 需要使用node.js访问mysql数据库的帮助

我正在尝试运行一个简单的节点示例来访问mysql数据库并收到以下错误 – 错误:ER_ACCESS_DENIED_ERROR:访问被拒绝用户’root’@’ubuntu.local'(使用密码:是)

var MysqL      = require('MysqL');
var connection = MysqL.createConnection({
  host     : '192.168.0.12',user     : 'root',password : 'password',database : 'app'
});

connection.connect();

connection.query('SELECT * from users',function(err,rows,fields) {
  if (err) throw err;

  console.log('The solution is: ',rows[0]);
});

connection.end();

以上是使用node.js访问MysqL的代码.有关我可能做错的建议,提前感谢.

最佳答案
我有一个类似的问题,我得到了同样的错误.

我的答案最终是因为我使用的是另一个端口.默认情况下,MysqL需要一个3306的端口,但我使用的是MAMP,其中MysqL服务器端口被指定为8889.一旦我将数据库连接添加到端口定义,就可以了:

var connection = MysqL.createConnection({
    port: 8889,user: 'root',database : 'my_database'
});

注意:这适用于使用MAMP的Mac,没有在ubuntu或Windows上尝试过.

Lowest Cost Arm9 with HS USB 2.0 OTG & Decryption Engine

Lowest Cost Arm9 with HS USB 2.0 OTG & Decryption Engine

点击获取完整资源:Lowest Cost Arm9 with HS USB 2.0 OTG & Decryption Engine

Lowest Cost ARM9 with HS USB 2.0 OTG & Decryption Engine NXP ARM926EJ-S processors LPC3143 & LPC3141 Embedded designers can now take advantage of higher performance, lower cost, lower power

点击获取完整资源:Lowest Cost Arm9 with HS USB 2.0 OTG & Decryption Engine

今天关于需要使用M2Crypto.Engine来访问USB令牌的帮助要使用ingame info xml,你必须安装正确的依赖项的介绍到此结束,谢谢您的阅读,有关c – 使用来自USB令牌的证书和密钥进行数字签名、digital-signature – 如何使用JavaScript表格浏览器和用户的USB令牌对GST Return或eReturn进行数字签名?我可以使用WebCrypto API吗?、javascript – 需要使用node.js访问mysql数据库的帮助、Lowest Cost Arm9 with HS USB 2.0 OTG & Decryption Engine等更多相关知识的信息可以在本站进行查询。

本文标签: