encryption/encryption.js

33 lines
1.1 KiB
JavaScript
Raw Normal View History

2024-02-22 12:01:08 +08:00
const crypto = require('crypto');
const fs = require('fs');
const child_process = require('child_process');
const keyPath = 'HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography';
const keyValue = 'MachineGuid';
const passPath = 'HKEY_CURRENT_USER\\SOFTWARE\\HwaSmart';
const passValue = 'BDAuthorization';
function cryptMD5(GUID) {
let md5 = crypto.createHash('md5');
let ciphertext = md5.update(GUID).digest('hex')
return ciphertext.slice(0,8)+'-'+ciphertext.slice(8,12)+'-'+ciphertext.slice(12,16)+'-'+ciphertext.slice(16,20)+'-'+ciphertext.slice(20,32);
}
fs.readFile('./KeyWord.txt', 'utf-8', (err, key) => {
if (err) {
if (err.code === 'ENOENT') {
console.error('file not exist');
return;
}
console.error(err, 'open');
return;
}
child_process.exec(`REG QUERY ${keyPath} /v ${keyValue}`,function(error,stdout,stderr){
console.log('stderr:'+stderr);
if(error != null){
console.log('exec error:'+error);
return
}
child_process.exec(`reg add ${passPath} /v ${passValue} /t REG_SZ /d ${cryptMD5(stdout.slice(83,119) + key)} /f`);
});
});