Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
@rahulv.dev/rng
Advanced tools
Secure, cryptographic random number generation for Node.js and browsers. This package provides an easy-to-use interface for generating random numbers within specified ranges, leveraging the native Crypto API.
Install @rahulv.dev/rng
using npm:
npm install @rahulv.dev/rng
or using yarn:
yarn add @rahulv.dev/rng
or using pnpm:
pnpm install @rahulv.dev/rng
// For Node environment
import { RNG } from "@rahulv.dev/rng";
Before using the RNG, you need to initialize it:
function setupRng() {
const rng = new RNG();
return rng;
}
To generate a random number within a specified range:
function generateRandom() {
const rng = setupRng();
const randomNumber = rng.next(100); // Generates a random number between 0 and 99
console.log(randomNumber);
}
generateRandom();
To generate a random number within a specified range:
function generateMultipleRandoms() {
const rng = setupRng();
const randomNumbers = rng.nextRange([10, 100, 1000]);
console.log(randomNumbers); // e.g., [2, 59, 874]
}
generateMultipleRandoms();
Here’s a detailed look at the API methods provided by @rahulv.dev/rng
:
Method | Description | Parameters | Returns |
---|---|---|---|
next(upperLimit) | Generates a secure random number between 0 and upperLimit - 1 . | upperLimit: number : The upper limit for the random number (exclusive) | number : A random number within the specified range. |
nextRange(ranges) | Generates random numbers for an array of upper limits. | ranges: number[] : An array of upper limits. Each element specifies the exclusive upper limit for the corresponding random number. | number[] : An array of random numbers, each within the range specified by the corresponding element in the input array. |
Here is a complete usage examples of how to use the methods provided by @rahulv.dev/rng
:
import { RNG } from "@rahulv.dev/rng";
function main() {
const rng = new RNG();
// Generating a single random number
const randomNumber = rng.next(100);
console.log(`Random Number: ${randomNumber}`);
// Generating multiple random numbers
const randomNumbers = rng.nextRange([10, 100, 1000]);
console.log(`Random Numbers: ${randomNumbers.join(", ")}`);
}
main();
NOTE: If you are unable to use package with vite, install Vite Pollyfills.
Contributions are always welcome! Create an issue or raise a PR for contributing.
This project is licensed under the MIT License - see the LICENSE file for details.
FAQs
A secure random number generator.
The npm package @rahulv.dev/rng receives a total of 2 weekly downloads. As such, @rahulv.dev/rng popularity was classified as not popular.
We found that @rahulv.dev/rng demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.