
Security News
Ruby's Bundler 4.0.18 Extends Cooldown to bundle lock and bundle cache
The supply chain control that delays freshly published gems now covers lockfile generation and gem vendoring in Ruby projects.
devicer.js
Advanced tools
FP-Devicer is a digital fingerprinting middleware library designed for ease of use and near-universal compatibility with servers.
Importing and using the library to compare fingerprints between users is as simple as collecting some user data and running the calculateConfidence function.
// 1. Simple Method (Using defaults)
import { calculateConfidence } from "devicer.js";
const score = calculateConfidence(fpData1, fpData2);
// 2. Advanced Method (Custom weights & comparitors)
import { createConfidenceCalculator, registerPlugin } from "devicer.js";
registerPlugin("userAgent", {
weight: 25,
comparator: (a, b) => levenshteinSimilarity(String(a || "").toLowerCase(), String(b || "").toLowerCase())
});
const advancedCalculator = createConfidenceCalculator({
weights: {
platform: 20,
fonts: 20,
screen: 15
}
})
const advancedScore = advancedCalculator.calculateConfidence(fpData1, fpData2);
// 3. Enterprise usage (DeviceManager)
import express from 'express';
import { DeviceManager, createInMemoryAdapter } from 'devicer.js';
const manager = new DeviceManager(createInMemoryAdapter());
const app = express();
app.use(express.json());
app.get('/', (req, res) => {
res.sendFile('public/index.html', { root: process.cwd() });
});
app.post('/identify', async (req, res) => {
const result = await manager.identify(req.body, { userId: (req as any).user?.id, ip: req.ip });
res.json(result); // → { deviceId, confidence, isNewDevice, linkedUserId }
});
app.listen(3000, () => console.log('✅ FP-Devicer server ready at http://localhost:3000'));
The resulting confidence will range between 0 and 100, with 100 providing the highest confidence of the users being identical.
To run the quickstart example:
npm install express devicer.js
npx tsx src/examples/quickstart.ts
There is a public demo of FP-Devicer (FP-Cicis Command and Control) available for viewing at cicis.info.
This project uses typedoc and autodeploys via GitHub Pages. You can view the generated documentation here.
When calibrated correctly, FP-Devicer is over 99% accurate and gets more accurate as it analyzes fingerprints. The average time to calculate the difference between two fingerprints is less than 1ms. To view/run the benchmarks on your machine:
npm run bench
The whitepaper covers the theory, architecture, and design decisions behind FP-Devicer. You can read it here.
FAQs
Open-Source Digital Fingerprinting Middleware
The npm package devicer.js receives a total of 3 weekly downloads. As such, devicer.js popularity was classified as not popular.
We found that devicer.js 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.

Security News
The supply chain control that delays freshly published gems now covers lockfile generation and gem vendoring in Ruby projects.

Security News
During a UK cyber test, a Mythos 5 agent used sockpuppets, social engineering, and prompt injection to try to get a maintainer to merge malware.

Company News
Socket is now in the AWS Security Hub Extended plan. Adopt it through AWS, apply committed spend, and block malicious open source packages.