小编Lae*_*ion的帖子

无法使用密钥对验证带有Node.js加密的签名

我在nodejs中有一个非常小的代码,我签署一个字符串,然后尝试使用节点加密和使用openssl生成的密钥对来验证它.无论我尝试什么,结果总是"假",签名无法验证.

生成公钥/私钥对:

openssl genrsa -out rsa_1024_priv.pem 1024

openssl rsa -in rsa_1024_priv.pem -out rsa_1024_pub.pem -outform PEM -pubout
Run Code Online (Sandbox Code Playgroud)

由此产生的关键是(我不在乎他们公开BTW):

-----BEGIN RSA PRIVATE KEY-----
MIICXQIBAAKBgQDCtTEic76GBqUetJ1XXrrWZcxd8vJr2raWRqBjbGpSzLqa3YLv
VxVeK49iSlI+5uLX/2WFJdhKAWoqO+03oH4TDSupolzZrwMFSylxGwR5jPmoNHDM
S3nnzUkBtdr3NCfq1C34fQV0iUGdlPtJaiiTBQPMt4KUcQ1TaazB8TzhqwIDAQAB
AoGAM8WeBP0lwdluelWoKJ0lrPBwgOKilw8W0aqB5y3ir5WEYL1ZnW5YXivS+l2s
tNELrEdapSbE9hieNBCvKMViABQXj4DRw5Dgpfz6Hc8XIzoEl68DtxL313EyouZD
jOiOGWW5UTBatLh05Fa5rh0FbZn8GsHrA6nhz4Fg2zGzpyECQQDi8rN6qhjEk5If
+fOBT+kjHZ/SLrH6OIeAJ+RYstjOfS0bWiM9Wvrhtr7DZkIUA5JNsmeANUGlCrQ2
cBJU2cJJAkEA26HyehCmnCkCjit7s8g3MdT0ys5WvrAFO6z3+kCbCAsGS+34EgnF
yz8dDdfUYP410R5+9Cs/RkYesqindsvEUwJBALCmQVXFeKnqQ99n60ZIMSwILxKn
Dhm6Tp5Obssryt5PSQD1VGC5pHZ0jGAEBIMXlJWtvCprScFxZ3zIFzy8kyECQQDB
lUhHVo3DblIWRTVPDNW5Ul5AswW6JSM3qgkXxgHfYPg3zJOuMnbn4cUWAnnq06VT
oHF9fPDUW9GK3yRbjNaJAkAB2Al6yY0KUhYLtWoEpQ40HlATbhNel2cn5WNs6Y5F
2hedvWdhS/zLzbtbSlOegp00d2/7IBghAfjAc3DE9DZw
-----END RSA PRIVATE KEY-----

-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDCtTEic76GBqUetJ1XXrrWZcxd
8vJr2raWRqBjbGpSzLqa3YLvVxVeK49iSlI+5uLX/2WFJdhKAWoqO+03oH4TDSup
olzZrwMFSylxGwR5jPmoNHDMS3nnzUkBtdr3NCfq1C34fQV0iUGdlPtJaiiTBQPM
t4KUcQ1TaazB8TzhqwIDAQAB
-----END PUBLIC KEY-----
Run Code Online (Sandbox Code Playgroud)

然后,这是我的节点代码:

var crypto = require('crypto');

var privateKey = '-----BEGIN RSA PRIVATE KEY-----\n'+
'MIICXQIBAAKBgQDCtTEic76GBqUetJ1XXrrWZcxd8vJr2raWRqBjbGpSzLqa3YLv\n'+
'VxVeK49iSlI+5uLX/2WFJdhKAWoqO+03oH4TDSupolzZrwMFSylxGwR5jPmoNHDM\n'+
'S3nnzUkBtdr3NCfq1C34fQV0iUGdlPtJaiiTBQPMt4KUcQ1TaazB8TzhqwIDAQAB\n'+
'AoGAM8WeBP0lwdluelWoKJ0lrPBwgOKilw8W0aqB5y3ir5WEYL1ZnW5YXivS+l2s\n'+
'tNELrEdapSbE9hieNBCvKMViABQXj4DRw5Dgpfz6Hc8XIzoEl68DtxL313EyouZD\n'+
'jOiOGWW5UTBatLh05Fa5rh0FbZn8GsHrA6nhz4Fg2zGzpyECQQDi8rN6qhjEk5If\n'+
'+fOBT+kjHZ/SLrH6OIeAJ+RYstjOfS0bWiM9Wvrhtr7DZkIUA5JNsmeANUGlCrQ2\n'+
'cBJU2cJJAkEA26HyehCmnCkCjit7s8g3MdT0ys5WvrAFO6z3+kCbCAsGS+34EgnF\n'+
'yz8dDdfUYP410R5+9Cs/RkYesqindsvEUwJBALCmQVXFeKnqQ99n60ZIMSwILxKn\n'+
'Dhm6Tp5Obssryt5PSQD1VGC5pHZ0jGAEBIMXlJWtvCprScFxZ3zIFzy8kyECQQDB\n'+
'lUhHVo3DblIWRTVPDNW5Ul5AswW6JSM3qgkXxgHfYPg3zJOuMnbn4cUWAnnq06VT\n'+
'oHF9fPDUW9GK3yRbjNaJAkAB2Al6yY0KUhYLtWoEpQ40HlATbhNel2cn5WNs6Y5F\n'+
'2hedvWdhS/zLzbtbSlOegp00d2/7IBghAfjAc3DE9DZw\n'+
'-----END RSA PRIVATE KEY-----';

var publicKey = …
Run Code Online (Sandbox Code Playgroud)

javascript openssl node.js cryptojs

17
推荐指数
1
解决办法
7700
查看次数

使用Node轮询Amazon SQS队列的最有效方法

我的问题很简短,但我觉得很有意思:

我有一个来自Amazon SQS服务的队列,我每秒都在轮询队列.当有消息我处理消息并在处理之后,返回轮询队列.

有没有更好的方法呢?某种触发器?或者您认为哪种方法最好,以及为什么.

谢谢!

amazon-sqs amazon-web-services node.js

9
推荐指数
2
解决办法
5226
查看次数

Node - MongoDB:集合找不到任何东西,使用mongodb驱动程序.壳确实会回报价值

我有一个简单的代码试图在MongoDB集合中查找文档.我可以通过Mongo的shell客户端正常找到它,但通过Node是不可能的,我已经尝试了很多方法无济于事.

首先来自MongoDB本身的结果:

raul@rmedina:~$ mongo sdk_back
MongoDB shell version: 2.0.6
connecting to: sdk_back
> db.metadatos.find();
{ "_id" : ObjectId("514cbee35c10db0299c015c7"), "tipo" : "proceso" }
> db.metadatos.findOne({"tipo":"proceso"});
{ "_id" : ObjectId("514cbee35c10db0299c015c7"), "tipo" : "proceso" }
> db.metadatos.findOne({tipo:"proceso"});
{ "_id" : ObjectId("514cbee35c10db0299c015c7"), "tipo" : "proceso" }
> 
Run Code Online (Sandbox Code Playgroud)

如您所见,find和findOne查询都有效.现在这是我的节点代码:

    var utils   = require('../utils/utils.js'),
    Server = require('mongodb').Server,
    Db = require('mongodb').Db;

    exports.procesaJSON = function (input_json){
    if(!utils.validaJSON(input_json))
        throw new Error('JSON de entrada inválido!');

    //procesamos
    input_json = JSON.parse(input_json);

    if(typeof(input_json.id) === "undefined")
        throw new Error('JSON de entrada inválido (falta propiedad …
Run Code Online (Sandbox Code Playgroud)

mongodb node.js

5
推荐指数
1
解决办法
798
查看次数

节点soap,使用受密码保护的WSDL

我正在尝试使用Node构建SOAP客户端,我正在使用"soap"包(https://www.npmjs.org/package/soap)尝试使用受用户/密码保护的WSDL.

在"soap.createClient"创建客户端之前,我找不到如何传递这些凭据,当然,如果我没有提供正确的凭据,我就无法检索WSDL.

我试过做:

soap.security.WSSecurity('user','pass');

然后调用"createClient"但无济于事.

此外,我已经尝试使用node-soap-client,这个客户端我(显然)可以连接到WSDL,但在那之后,我不知道去哪里(如何调用方法).

我究竟做错了什么?

感谢你的帮助!

soap wsdl web-services node.js

5
推荐指数
1
解决办法
1656
查看次数

AWS Athena (JSON) 的 SerDe 属性列表

我正在测试 AWS 的 Athena 产品,到目前为止运行良好。但我想知道 SerDe 属性的列表。我找了很远很远也没有找到。例如"ignore.malformed.json" = "true",我正在使用这个,但我很确定还有很多其他选项可以调整查询。

例如,我找不到有关“路径”属性的作用的信息,因此拥有完整列表会很棒。

我查看了 Apache Hive 文档但找不到这个,在 AWS 文档/论坛上也没有。

谢谢!

amazon-web-services amazon-athena hive-serde

5
推荐指数
1
解决办法
3907
查看次数

测试socket是否打开并监听,node,socket.io

如果远程服务器(使用 Socket.io 运行)启动并侦听传入连接,我想知道形成一个独立的 Node 应用程序。

如果服务器已启动并正在侦听,则使用 socket-io.client 连接,如果没有,则将某些内容记录到数据库中。

我不知道如何使用 socket-io.client 完成此操作。该地址有 IP 和端口,所以我不能在没有端口的情况下 ping 到 IP。

有任何想法吗?谢谢!

sockets node.js socket.io

1
推荐指数
1
解决办法
4941
查看次数