diff --git a/api/network/modify.ts b/api/network/modify.ts index ae6c9e8..08ed3b4 100644 --- a/api/network/modify.ts +++ b/api/network/modify.ts @@ -19,19 +19,24 @@ export async function modifyPayload(payload, chat) { if(!mt || !key) return payload const terms = parseLDAT(mt) + console.log("[modify] terms", terms) if(!terms.host) return payload try { const r = await fetch(`https://${terms.host}/file/${mt}`) const buf = await r.buffer() + console.log("[modify] buf.length", buf.length) const decMediaKey = rsa.decrypt(chat.groupPrivateKey, key) + console.log("[modify] decMediaKey", decMediaKey) const imgBase64 = RNCryptor.Decrypt(decMediaKey, buf.toString('base64')) + console.log("[modify] imgBase64.length", imgBase64.length) const newKey = crypto.randomBytes(20).toString('hex') const encImg = RNCryptor.Encrypt(newKey, imgBase64) + console.log("[modify] encImg.length", encImg.length) const resp = await fetch(`https://${terms.host}/file`, { method: 'POST', @@ -39,6 +44,7 @@ export async function modifyPayload(payload, chat) { }) let json = resp.json() + console.log("[modify] post json", json) if(!json.muid) return payload // PUT NEW TERMS, to finish in personalizeMessage @@ -49,10 +55,14 @@ export async function modifyPayload(payload, chat) { meta:{...amt && {amt}}, skipSigning: amt ? true : false // only sign if its free } + console.log("[modify] new terms", mediaTerms) const encKey = rsa.encrypt(chat.groupKey, newKey) + console.log("[modify] new encKey", encKey) + return fillmsg(payload, {mediaTerms,mediaKey:encKey}) // key is re-encrypted later } catch(e) { + console.log("[modify] error", e) return payload } // how to link w og msg? ogMediaToken? diff --git a/dist/api/network/modify.js b/dist/api/network/modify.js index 386c6e3..f714344 100644 --- a/dist/api/network/modify.js +++ b/dist/api/network/modify.js @@ -28,20 +28,26 @@ function modifyPayload(payload, chat) { if (!mt || !key) return payload; const terms = ldat_1.parseLDAT(mt); + console.log("[modify] terms", terms); if (!terms.host) return payload; try { const r = yield fetch(`https://${terms.host}/file/${mt}`); const buf = yield r.buffer(); + console.log("[modify] buf.length", buf.length); const decMediaKey = rsa.decrypt(chat.groupPrivateKey, key); + console.log("[modify] decMediaKey", decMediaKey); const imgBase64 = rncryptor_1.default.Decrypt(decMediaKey, buf.toString('base64')); + console.log("[modify] imgBase64.length", imgBase64.length); const newKey = crypto.randomBytes(20).toString('hex'); const encImg = rncryptor_1.default.Encrypt(newKey, imgBase64); + console.log("[modify] encImg.length", encImg.length); const resp = yield fetch(`https://${terms.host}/file`, { method: 'POST', body: new Blob([encImg], { type: typ || 'image/jpg', name: 'file', filename: 'Image.jpg' }) }); let json = resp.json(); + console.log("[modify] post json", json); if (!json.muid) return payload; // PUT NEW TERMS, to finish in personalizeMessage @@ -52,10 +58,13 @@ function modifyPayload(payload, chat) { meta: Object.assign({}, amt && { amt }), skipSigning: amt ? true : false // only sign if its free }; + console.log("[modify] new terms", mediaTerms); const encKey = rsa.encrypt(chat.groupKey, newKey); + console.log("[modify] new encKey", encKey); return fillmsg(payload, { mediaTerms, mediaKey: encKey }); // key is re-encrypted later } catch (e) { + console.log("[modify] error", e); return payload; } // how to link w og msg? ogMediaToken? diff --git a/dist/api/network/modify.js.map b/dist/api/network/modify.js.map index 4b168dd..a94f29f 100644 --- a/dist/api/network/modify.js.map +++ b/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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"} \ No newline at end of file +{"version":3,"file":"modify.js","sourceRoot":"","sources":["../../../api/network/modify.ts"],"names":[],"mappings":"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"} \ No newline at end of file