
Research
2025 Report: Destructive Malware in Open Source Packages
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.
basic cryptographically secure pseudo-random password generator based on node crypto's randombytes or webCrypto.getRandomValues in the browser
basic cryptographically secure pseudo-random password generator based on node crypto's randombytes or webCrypto.getRandomValues in the browser.
import csprpg from 'csprpg'
const log = label => console.log.bind(console, label)
const defaults = {
length: 12, // characters, min 4, max 4096
lowercase: true,
numbers: true,
symbols: true,
uppercase: true
}
log('sync')(csprpg(defaults))
csprpg(defaults, log('async'))
export default function csprpg (
opts?: Partial<CsprpgSpec> | CsprpgCallback,
cb?: Partial<CsprpgSpec> | CsprpgCallback
): string
export interface CsprpgSpec {
randombytes: typeof randombytes
length: number
lowercase: boolean
uppercase: boolean
numbers: boolean
symbols: boolean
}
export interface CsprpgCallback {
(err?: any, rnd?: string): void
}
although this library is written in TypeScript, it may also be imported into plain JavaScript code: code editors will still benefit from the available type definition, e.g. for helpful code completion.
Copyright 2019 ZenyWay S.A.S., Stephane M. Catala
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and Limitations under the License.
FAQs
basic cryptographically secure pseudo-random password generator based on node crypto's randombytes or webCrypto.getRandomValues in the browser
The npm package csprpg receives a total of 0 weekly downloads. As such, csprpg popularity was classified as not popular.
We found that csprpg demonstrated a not healthy version release cadence and project activity because the last version was released 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
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.

Security News
Socket CTO Ahmad Nassri shares practical AI coding techniques, tools, and team workflows, plus what still feels noisy and why shipping remains human-led.

Research
/Security News
A five-month operation turned 27 npm packages into durable hosting for browser-run lures that mimic document-sharing portals and Microsoft sign-in, targeting 25 organizations across manufacturing, industrial automation, plastics, and healthcare for credential theft.