想要實作CoAP利用DTLS進行安全通信,這是down的別的大佬的原始碼,但是服務器和客戶端無論如何都連接不上,求一個解決方法,是不是證書有問題??
服務器:
const coap = require('coap') // or coap
const path = require('path');
//var SegfaultHandler = require('segfault-handler');
//SegfaultHandler.registerHandler("crash.log"); // With no argument, SegfaultHandler will generate a generic log file name
const dtls_opts = {
key: path.join(__dirname, '../test/private.der'),
debug: 1,
handshakeTimeoutMin: 3000
};
const server = coap.createServer(
{
dtls: dtls_opts,
port: 5684,
}
);
server.on('request', function(req, res) {
console.log('request arrives:\n'+JSON.stringify(req));
res.end('Hello ' + req.url.split('/')[1] + '\n')
})
server.listen(function() {
console.log('server started')
});
客戶端:
var coap = require('coap') // or coap
//var SegfaultHandler = require('segfault-handler');
//SegfaultHandler.registerHandler("crash.log"); // With no argument, SegfaultHandler will generate a generic log file name
var dtls_opts = {
// psk: new Buffer('AAAAAAAAAAAAAAAA'),
// PSKIdent: new Buffer("32323232-3232-3232-3232-323232323232"),
psk: Buffer.from("AAAAAAAAAAAAAAAA"),
PSKIdent: Buffer.from("32323232-3232-3232-3232-323232323232"),
key: null,
peerPublicKey: null
};
var req = coap.request('coaps://127.0.0.1:5684/client',
dtls_opts,
(req) => {
req.on('response', function(res) {
res.pipe(process.stdout)
});
req.end();
}
);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/47086.html
標籤:JavaScript
上一篇:IDEA創建project
