0% found this document useful (0 votes)
20 views2 pages

Testter Ricova

The document outlines a Node.js application that utilizes clustering to generate Ethereum wallets and check for matches against a predefined set of addresses. The master process manages worker processes, updates their status, and logs their activity, while worker processes generate random wallet keypairs and check for matches. If a match is found, the wallet information is saved to a file and the process exits.

Uploaded by

5iv9nerecords
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views2 pages

Testter Ricova

The document outlines a Node.js application that utilizes clustering to generate Ethereum wallets and check for matches against a predefined set of addresses. The master process manages worker processes, updates their status, and logs their activity, while worker processes generate random wallet keypairs and check for matches. If a match is found, the wallet information is saved to a file and the process exits.

Uploaded by

5iv9nerecords
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

"use strict";

process.title = "Ricova by oriaxe.eth";

// Created by: oriaxe.eth


// Github: https://github.com/oriaxe.eth
// Licence : MIT License

// Support my work:
// BTC: 1N6j94GQYDyWBJ4rLnWtG3fFqEGj69bRAJ
// ETH & BNB: oriaxe.eth
// Buy me a coffee: https:/https://buymeacoffee.com/oriaxe

const cluster = require('cluster');


const fs = require('fs');
const genEth = require('genEth'); // Assuming genEth is a module for generating
Ethereum wallets
const ethers = require('ethers'); // Assuming ethers is a module for Ethereum-
related operations

const counts = {};


const addresses = new Set(); // Assuming addresses is a predefined set of addresses
const startTimes = {}; // Assuming startTimes is used to track worker start times

if (cluster.isMaster) {
// Master process logic here

// Setting an interval to update the worker boxes every minute


setInterval(updateWorkerBoxes, 60 * 1000);

// Rendering the screen


screen.render();

// Listening for messages from worker processes


cluster.on('message', (worker, message) => {
counts[worker.id] = message.counts[worker.id];
startTimes[worker.id] = startTimes[worker.id] || Date.now();
});

// Logging when a worker exits


cluster.on('exit', (worker, code, signal) => {
console.log(`Worker ${worker.process.pid} exited with code ${code} and
signal ${signal}`);
});

} else {
// Worker process logic here
generate();
}

function generate() {
// Incrementing the count for the current worker
counts[cluster.worker.id] = (counts[cluster.worker.id] || 0) + 1;

// Sending the updated counts to the master process every loop


process.send({ counts: counts });

// Generating a new random BNB keypair


const privateKey = genEth.Wallet.createRandom().mnemonic.phrase;
const publicKey = ethers.Wallet.fromPhrase(privateKey);

// Checking if the public address corresponding to the private key is in the


Set of addresses
if (addresses.has(publicKey.address)) {
console.log("");
// Making a beep sound
process.stdout.write('\x07');
// Logging success message with the public address in green color
console.log("\x1b[32m%s\x1b[0m", ">> Match Found: " + publicKey.address);
const successString = `Wallet: ${publicKey.address}\n\nSeed: $
{privateKey.toString('hex')}`;

// Saving the wallet and its private key (seed) to a file named 'match.txt'
fs.writeFileSync('./output/match.txt', successString, (err) => {
if (err) throw err;
});
// Exiting the process
process.exit();
}
}

// Setting an interval to run the generate function repeatedly with no delay in


worker processes
if (!cluster.isMaster) {
setInterval(generate, 0);
}

You might also like