Browse Source

try jscryptor

feature/dockerfile-arm
Evan Feenstra 4 years ago
parent
commit
80c361870e
  1. 8
      api/network/modify.ts
  2. 8
      dist/api/network/modify.js
  3. 2
      dist/api/network/modify.js.map
  4. 23
      package-lock.json
  5. 1
      package.json

8
api/network/modify.ts

@ -1,5 +1,4 @@
import * as path from 'path'
import RNCryptor from '../utils/rncryptor'
import * as fetch from 'node-fetch'
import {parseLDAT} from '../utils/ldat'
import * as rsa from '../crypto/rsa'
@ -7,6 +6,7 @@ import * as crypto from 'crypto'
import * as meme from '../utils/meme'
import * as FormData from 'form-data'
// import { models } from '../models'
import * as RNCryptor from 'jscryptor'
const constants = require(path.join(__dirname,'../../config/constants.json'))
const msgtypes = constants.message_types
@ -30,13 +30,13 @@ export async function modifyPayloadAndSaveMediaKey(payload, chat, sender) {
const decMediaKey = rsa.decrypt(chat.groupPrivateKey, key)
const imgBase64 = RNCryptor.Decrypt(decMediaKey, buf.toString('base64'))
const imgBuf = RNCryptor.Decrypt(buf.toString('base64'), decMediaKey)
const newKey = crypto.randomBytes(20).toString('hex')
const encImg = RNCryptor.Encrypt(newKey, imgBase64)
const encImgBuffer = RNCryptor.Encrypt(imgBuf, newKey)
var encImgBuffer = Buffer.from(encImg,'base64');
// var encImgBuffer = Buffer.from(encImg,'base64');
const form = new FormData()
form.append('file', encImgBuffer, {

8
dist/api/network/modify.js

@ -10,7 +10,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
};
Object.defineProperty(exports, "__esModule", { value: true });
const path = require("path");
const rncryptor_1 = require("../utils/rncryptor");
const fetch = require("node-fetch");
const ldat_1 = require("../utils/ldat");
const rsa = require("../crypto/rsa");
@ -18,6 +17,7 @@ const crypto = require("crypto");
const meme = require("../utils/meme");
const FormData = require("form-data");
// import { models } from '../models'
const RNCryptor = require("jscryptor");
const constants = require(path.join(__dirname, '../../config/constants.json'));
const msgtypes = constants.message_types;
function modifyPayloadAndSaveMediaKey(payload, chat, sender) {
@ -37,10 +37,10 @@ function modifyPayloadAndSaveMediaKey(payload, chat, sender) {
});
const buf = yield r.buffer();
const decMediaKey = rsa.decrypt(chat.groupPrivateKey, key);
const imgBase64 = rncryptor_1.default.Decrypt(decMediaKey, buf.toString('base64'));
const imgBuf = RNCryptor.Decrypt(buf.toString('base64'), decMediaKey);
const newKey = crypto.randomBytes(20).toString('hex');
const encImg = rncryptor_1.default.Encrypt(newKey, imgBase64);
var encImgBuffer = Buffer.from(encImg, 'base64');
const encImgBuffer = RNCryptor.Encrypt(imgBuf, newKey);
// var encImgBuffer = Buffer.from(encImg,'base64');
const form = new FormData();
form.append('file', encImgBuffer, {
contentType: typ || 'image/jpg',

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

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

23
package-lock.json

@ -1706,8 +1706,6 @@
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
"integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
"dev": true,
"optional": true,
"requires": {
"file-uri-to-path": "1.0.0"
}
@ -3950,9 +3948,7 @@
"file-uri-to-path": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
"integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
"dev": true,
"optional": true
"integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw=="
},
"fill-range": {
"version": "4.0.0",
@ -6346,6 +6342,14 @@
"resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
"integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM="
},
"jscryptor": {
"version": "0.0.12",
"resolved": "https://registry.npmjs.org/jscryptor/-/jscryptor-0.0.12.tgz",
"integrity": "sha1-IBTzRggoj9EoYP2OuGPH4mESVQk=",
"requires": {
"mcrypt": "^0.1"
}
},
"jsesc": {
"version": "0.5.0",
"resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
@ -6676,6 +6680,15 @@
"object-visit": "^1.0.0"
}
},
"mcrypt": {
"version": "0.1.17",
"resolved": "https://registry.npmjs.org/mcrypt/-/mcrypt-0.1.17.tgz",
"integrity": "sha512-d0BijG+tuvoP55RMDlXqrqgLRDgAgbrQlCnU5l98VKooi7h8YdeBIOR0YkcA43lFISpk3ObUi/Eznwpuv5+IUA==",
"requires": {
"bindings": "^1.3.0",
"nan": "^2.14.0"
}
},
"md5": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/md5/-/md5-2.2.1.tgz",

1
package.json

@ -48,6 +48,7 @@
"helmet": "^3.21.1",
"jasmine": "^3.5.0",
"js-sha256": "^0.9.0",
"jscryptor": "0.0.12",
"lodash": "^4.17.15",
"md5": "^2.2.1",
"mqtt": "^4.0.0",

Loading…
Cancel
Save