Несогласованный вывод шифра между Node.js и PHP при чтении больших файлов по частям
Описание проблемы
Я столкнулся с проблемой обеспечения согласованный вывод шифрования между Node.js и PHP при чтении больших файлов по частям. Вывод отличается, хотя считываются и обрабатываются одни и те же значения. Ниже приведен код для реализаций PHP и Node.js.
Код PHP
First 50 characters of the cipher (base64) in PHP: 0tCb9xtx5KpG+56ukYvcQDoNKCdoPtAFUrFDRc4TiqQrQocQRK
First 50 characters of the cipher (base64) in Node: sUUI4nXHwhKNdRs+Brqc5neKuKb3fx4qqBohlDSn/7FVrYo46/
Несогласованный вывод шифра между Node.js и PHP при чтении больших файлов по частям Описание проблемы Я столкнулся с проблемой обеспечения согласованный вывод шифрования между Node.js и PHP при чтении больших файлов по частям. Вывод отличается, хотя считываются и обрабатываются одни и те же значения. Ниже приведен код для реализаций PHP и Node.js. Код PHP [code] [/code] [code] const PADDING_BLOCK_SIZE = 16; const ALGORITHM = "aes-256-cbc"; const PLAINTEXT_DATA_KEY = "poSENHhkGVG/4fEHvhRO6j9W3goETWZAg+ZgTWxhw34="; const IV = "X1bIRjgIoDn/BDFhHIbg7g=="; // randombytes(16) converted to base64 const CHUNK_SIZE = 16 * 1024;
let tempChunkStorage = Buffer.alloc(0); // Buffer to store remaining data readStream.on(DATA_EVENT, (chunk) => { if (typeof chunk === "string") { chunk = Buffer.from(chunk); }
// Append the new chunk to the temp storage tempChunkStorage = Buffer.concat([tempChunkStorage, chunk]);
First 50 characters of the cipher (base64) in Node: sUUI4nXHwhKNdRs+Brqc5neKuKb3fx4qqBohlDSn/7FVrYo46/ [/code] [img]https://i.sstatic.net/KzyhWgGy.png[/img]