Browse Source

allow nonsign

feature/dockerfile-arm
Evan Feenstra 5 years ago
parent
commit
c048b02054
  1. 21
      api/network/receive.ts
  2. 20
      api/network/send.ts
  3. 4
      api/utils/lightning.ts
  4. 19
      api/utils/signer.ts
  5. 2
      app.ts
  6. 14
      dist/api/network/receive.js
  7. 2
      dist/api/network/receive.js.map
  8. 20
      dist/api/network/send.js
  9. 2
      dist/api/network/send.js.map
  10. 3
      dist/api/utils/lightning.js
  11. 2
      dist/api/utils/lightning.js.map
  12. 21
      dist/api/utils/signer.js
  13. 2
      dist/api/utils/signer.js.map
  14. 2
      dist/app.js
  15. 2
      dist/app.js.map

21
api/network/receive.ts

@ -3,8 +3,7 @@ import * as lndService from '../grpc'
import {getInfo} from '../utils/lightning'
import {controllers} from '../controllers'
import * as tribes from '../utils/tribes'
import {SPHINX_CUSTOM_RECORD_KEY} from '../utils/lightning'
import * as signer from '../utils/signer'
import {SPHINX_CUSTOM_RECORD_KEY, verifyAscii} from '../utils/lightning'
import { models } from '../models'
import {sendMessage} from './send'
import {modifyPayload} from './modify'
@ -133,18 +132,17 @@ async function parseAndVerifyPayload(data){
let payload
const li = data.lastIndexOf('}')
const msg = data.substring(0,li+1)
const pubkeyandsig = data.substring(li+1)
const ci = pubkeyandsig.indexOf(':')
const pubkeyb64 = pubkeyandsig.substring(0,ci+1)
const sigb64 = pubkeyandsig.substring(ci+1)
const sig = data.substring(li+1)
try {
payload = JSON.parse(msg)
if(payload) {
const v = await signer.verifyAscii(msg, Buffer.from(sigb64,'base64'), b64toHex(pubkeyb64))
const v = await verifyAscii(msg, sig)
if(v && v.valid && v.pubkey) {
payload.sender = payload.sender||{}
payload.sender.pub_key=v.pubkey
return payload
} else {
return payload // => RM THIS
}
}
} catch(e) {
@ -197,12 +195,3 @@ function weave(p){
return payload
}
}
function b64toHex(b64){
return Buffer.from(b64,'base64').toString('hex')
}

20
api/network/send.ts

@ -1,6 +1,5 @@
import { models } from '../models'
import * as LND from '../utils/lightning'
import * as signer from '../utils/signer'
import {personalizeMessage, decryptMessage} from '../utils/msg'
import * as path from 'path'
import * as tribes from '../utils/tribes'
@ -98,9 +97,8 @@ export function signAndSend(opts, pubkey, mqttTopic?:string){
}
let data = JSON.stringify(opts.data)
const sig = await signer.signAscii(data)
console.log("BASE 64 PUBKEY",urlBase64FromHex(pubkey),urlBase64FromHex(pubkey).length)
data = data + urlBase64FromHex(pubkey) + ':' + urlBase64FromBytes(sig)
const sig = await LND.signAscii(data)
data = data + sig
// console.log("ACTUALLY SEND", mqttTopic)
try {
@ -132,7 +130,7 @@ function newmsg(type, chat, sender, message){
message: message,
sender: {
...includeAlias && {alias: sender.alias},
// pub_key: sender.publicKey,
pub_key: sender.publicKey,
// ...sender.contactKey && {contact_key: sender.contactKey}
}
}
@ -147,9 +145,9 @@ async function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms))
}
function urlBase64FromHex(ascii){
return Buffer.from(ascii,'hex').toString('base64').replace(/\//g, '_').replace(/\+/g, '-')
}
function urlBase64FromBytes(buf){
return Buffer.from(buf).toString('base64').replace(/\//g, '_').replace(/\+/g, '-')
}
// function urlBase64FromHex(ascii){
// return Buffer.from(ascii,'hex').toString('base64').replace(/\//g, '_').replace(/\+/g, '-')
// }
// function urlBase64FromBytes(buf){
// return Buffer.from(buf).toString('base64').replace(/\//g, '_').replace(/\+/g, '-')
// }

4
api/utils/lightning.ts

@ -106,7 +106,7 @@ const getRoute = async (pub_key, amt, callback) => {
const keysend = (opts) => {
return new Promise(async function(resolve, reject) {
let lightning = await loadLightning()
console.log("FIRST OPTS",opts)
const randoStr = crypto.randomBytes(32).toString('hex');
const preimage = ByteBuffer.fromHex(randoStr)
const options = {
@ -120,6 +120,7 @@ const keysend = (opts) => {
payment_hash: sha.sha256.arrayBuffer(preimage.toBuffer()),
dest_features:[9],
}
console.log("FINAL OPTIONS",options)
const call = lightning.sendPayment()
call.on('data', function(payment) {
if(payment.payment_error){
@ -342,7 +343,6 @@ function verifyMessage(msg,sig): Promise<{[k:string]:any}> {
signature:sig, // zbase32 encoded string
}
lightning.verifyMessage(options, function(err,res){
console.log("VERIFY MESSAGE",err,res)
if(err || !res.pubkey) {
reject(err)
} else {

19
api/utils/signer.ts

@ -9,25 +9,6 @@ const env = process.env.NODE_ENV || 'development';
const config = require(path.join(__dirname,'../../config/app.json'))[env]
var signerClient = <any> null;
function urlBase64FromHex(ascii){
return Buffer.from(ascii,'hex').toString('base64').replace(/\//g, '_').replace(/\+/g, '-')
}
export async function testSigner(){
try{
console.log("TEST SIGNER")
const sig:any = await signAscii("hello")
console.log("SIG",sig)
const pubkey = '02df97eb735e185e066fd617f813aed25babd03eb0a06ee58424e67e3d036a8897'
const v = await verifyAscii("hello", sig, pubkey)
console.log("VERIFY",v)
const b64 = urlBase64FromHex(pubkey)
console.log(b64.length)
}catch(e){
console.log("ERROR",e)
}
}
export const loadSigner = () => {
console.log("LOAD SIGNER RRRRRR",signerClient?true:false)

2
app.ts

@ -11,7 +11,6 @@ import {setupDatabase, setupDone} from './api/utils/setup'
import * as controllers from './api/controllers'
import * as socket from './api/utils/socket'
import * as network from './api/network'
import * as signer from './api/utils/signer'
let server: any = null
const port = process.env.PORT || 3001;
@ -50,7 +49,6 @@ async function mainSetup(){
}
await setupApp()
setupDone()
signer.testSigner()
}
async function setupApp(){

14
dist/api/network/receive.js

@ -15,7 +15,6 @@ const lightning_1 = require("../utils/lightning");
const controllers_1 = require("../controllers");
const tribes = require("../utils/tribes");
const lightning_2 = require("../utils/lightning");
const signer = require("../utils/signer");
const models_1 = require("../models");
const send_1 = require("./send");
const modify_1 = require("./modify");
@ -153,19 +152,19 @@ function parseAndVerifyPayload(data) {
let payload;
const li = data.lastIndexOf('}');
const msg = data.substring(0, li + 1);
const pubkeyandsig = data.substring(li + 1);
const ci = pubkeyandsig.indexOf(':');
const pubkeyb64 = pubkeyandsig.substring(0, ci + 1);
const sigb64 = pubkeyandsig.substring(ci + 1);
const sig = data.substring(li + 1);
try {
payload = JSON.parse(msg);
if (payload) {
const v = yield signer.verifyAscii(msg, Buffer.from(sigb64, 'base64'), b64toHex(pubkeyb64));
const v = yield lightning_2.verifyAscii(msg, sig);
if (v && v.valid && v.pubkey) {
payload.sender = payload.sender || {};
payload.sender.pub_key = v.pubkey;
return payload;
}
else {
return payload; // => RM THIS
}
}
}
catch (e) {
@ -224,7 +223,4 @@ function weave(p) {
return payload;
}
}
function b64toHex(b64) {
return Buffer.from(b64, 'base64').toString('hex');
}
//# sourceMappingURL=receive.js.map

2
dist/api/network/receive.js.map

File diff suppressed because one or more lines are too long

20
dist/api/network/send.js

@ -11,7 +11,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
Object.defineProperty(exports, "__esModule", { value: true });
const models_1 = require("../models");
const LND = require("../utils/lightning");
const signer = require("../utils/signer");
const msg_1 = require("../utils/msg");
const path = require("path");
const tribes = require("../utils/tribes");
@ -106,9 +105,8 @@ function signAndSend(opts, pubkey, mqttTopic) {
return reject('object plz');
}
let data = JSON.stringify(opts.data);
const sig = yield signer.signAscii(data);
console.log("BASE 64 PUBKEY", urlBase64FromHex(pubkey), urlBase64FromHex(pubkey).length);
data = data + urlBase64FromHex(pubkey) + ':' + urlBase64FromBytes(sig);
const sig = yield LND.signAscii(data);
data = data + sig;
// console.log("ACTUALLY SEND", mqttTopic)
try {
if (mqttTopic) {
@ -133,7 +131,7 @@ function newmsg(type, chat, sender, message) {
type: type,
chat: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ uuid: chat.uuid }, chat.name && { name: chat.name }), (chat.type || chat.type === 0) && { type: chat.type }), chat.members && { members: chat.members }), (includeGroupKey && chat.groupKey) && { groupKey: chat.groupKey }), (includeGroupKey && chat.host) && { host: chat.host }),
message: message,
sender: Object.assign({}, includeAlias && { alias: sender.alias })
sender: Object.assign(Object.assign({}, includeAlias && { alias: sender.alias }), { pub_key: sender.publicKey })
};
}
function asyncForEach(array, callback) {
@ -148,10 +146,10 @@ function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
});
}
function urlBase64FromHex(ascii) {
return Buffer.from(ascii, 'hex').toString('base64').replace(/\//g, '_').replace(/\+/g, '-');
}
function urlBase64FromBytes(buf) {
return Buffer.from(buf).toString('base64').replace(/\//g, '_').replace(/\+/g, '-');
}
// function urlBase64FromHex(ascii){
// return Buffer.from(ascii,'hex').toString('base64').replace(/\//g, '_').replace(/\+/g, '-')
// }
// function urlBase64FromBytes(buf){
// return Buffer.from(buf).toString('base64').replace(/\//g, '_').replace(/\+/g, '-')
// }
//# sourceMappingURL=send.js.map

2
dist/api/network/send.js.map

File diff suppressed because one or more lines are too long

3
dist/api/utils/lightning.js

@ -117,6 +117,7 @@ const keysend = (opts) => {
return new Promise(function (resolve, reject) {
return __awaiter(this, void 0, void 0, function* () {
let lightning = yield loadLightning();
console.log("FIRST OPTS", opts);
const randoStr = crypto.randomBytes(32).toString('hex');
const preimage = ByteBuffer.fromHex(randoStr);
const options = {
@ -130,6 +131,7 @@ const keysend = (opts) => {
payment_hash: sha.sha256.arrayBuffer(preimage.toBuffer()),
dest_features: [9],
};
console.log("FINAL OPTIONS", options);
const call = lightning.sendPayment();
call.on('data', function (payment) {
if (payment.payment_error) {
@ -385,7 +387,6 @@ function verifyMessage(msg, sig) {
signature: sig,
};
lightning.verifyMessage(options, function (err, res) {
console.log("VERIFY MESSAGE", err, res);
if (err || !res.pubkey) {
reject(err);
}

2
dist/api/utils/lightning.js.map

File diff suppressed because one or more lines are too long

21
dist/api/utils/signer.js

@ -17,27 +17,6 @@ const ByteBuffer = require("bytebuffer");
const env = process.env.NODE_ENV || 'development';
const config = require(path.join(__dirname, '../../config/app.json'))[env];
var signerClient = null;
function urlBase64FromHex(ascii) {
return Buffer.from(ascii, 'hex').toString('base64').replace(/\//g, '_').replace(/\+/g, '-');
}
function testSigner() {
return __awaiter(this, void 0, void 0, function* () {
try {
console.log("TEST SIGNER");
const sig = yield signAscii("hello");
console.log("SIG", sig);
const pubkey = '02df97eb735e185e066fd617f813aed25babd03eb0a06ee58424e67e3d036a8897';
const v = yield verifyAscii("hello", sig, pubkey);
console.log("VERIFY", v);
const b64 = urlBase64FromHex(pubkey);
console.log(b64.length);
}
catch (e) {
console.log("ERROR", e);
}
});
}
exports.testSigner = testSigner;
exports.loadSigner = () => {
console.log("LOAD SIGNER RRRRRR", signerClient ? true : false);
if (signerClient) {

2
dist/api/utils/signer.js.map

@ -1 +1 @@
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../../../api/utils/signer.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../../../api/utils/signer.ts"],"names":[],"mappings":"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"}

2
dist/app.js

@ -22,7 +22,6 @@ const setup_1 = require("./api/utils/setup");
const controllers = require("./api/controllers");
const socket = require("./api/utils/socket");
const network = require("./api/network");
const signer = require("./api/utils/signer");
let server = null;
const port = process.env.PORT || 3001;
const env = process.env.NODE_ENV || 'development';
@ -59,7 +58,6 @@ function mainSetup() {
}
yield setupApp();
setup_1.setupDone();
signer.testSigner();
});
}
function setupApp() {

2
dist/app.js.map

@ -1 +1 @@
{"version":3,"file":"app.js","sourceRoot":"","sources":["../app.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"app.js","sourceRoot":"","sources":["../app.ts"],"names":[],"mappings":"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"}
Loading…
Cancel
Save