noise_stream
以前に作ったnoise-lightningはnoise protocolの各actを実行するものだったが、今回、lightning networkでの利用に絞って、protocolを意識することなく接続できるnoise-streamを作った。
これによって、LNDやその他のlightning networkのソフトウェアとの接続も可能となっている。
const NoiseStream = require('@bruwbird/noise_stream');
const net = require('net');
const secp256k1 = require('bcrypto/lib/secp256k1');
const priv = secp256k1.privateKeyGenerate();
const stream = new NoiseStream();
const socket = net.connect(9735);
stream.connect(
socket,
Buffer.from(priv,'hex'),
Buffer.from("<Lightning client addr>",'hex')
);
stream.on('connect',()=>{
console.log("connected!")
})
socketを引数としているが、これもクラスに持たせてしまうという手もあるなあと思っている。
これで一旦はbolt8は実装できたといえるとおもうけれど、ここからどこに進んでいくべきか。まあ次はbolt1だろうねえ。initか。