
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
human-proof
Advanced tools
Privacy-First Protocol for Hardware-Verified Human Liveness
Human-Proof is an open-source protocol and SDK designed to solve the problem of automated bot abuse (sybil attacks, spam, voting manipulation) by shifting the security perimeter from Identity to Physical Presence.
By leveraging native WebAuthn (FIDO2) capabilities, Human-Proof generates cryptographic proofs that an action was performed by a human physically interacting with a hardware Root of Trust (Secure Enclave, TPM), without ever collecting biometrics or PII.
MemoryStore or implement the IHumanStore for Redis, SQL, or MongoDB.Human-Proof operates as a stateless challenge-response protocol:
Explore the Architecture Docs for sequence diagrams and deep dives.
npm install human-proof
import { HumanProof, createHumanProofMiddleware } from "human-proof/server";
const humanProof = new HumanProof({
rpId: "example.com",
rpName: "My Application"
});
const requireHuman = createHumanProofMiddleware(humanProof);
// Protect sensitive endpoints
app.post("/api/vote", requireHuman("vote:submit"), (req, res) => {
const { result } = req.humanProof!;
res.json({ success: true, trustTier: result.trustTier });
});
import { HumanProofSDK } from "human-proof";
const sdk = new HumanProofSDK({ rpId: "example.com" });
// Automatically attaches human liveness proof to the request
await sdk.protectedFetch("/api/secure-action", {
method: "POST",
body: JSON.stringify({ data: "..." }),
action: "secure:execute"
});
import { useHumanProof } from "human-proof";
function VoteButton() {
const { execute, isBusy } = useHumanProof({ rpId: "example.com" });
const handleVote = async () => {
await execute("vote:submit", async () => {
// Your protected API call here
});
};
return <button onClick={handleVote} disabled={isBusy}>Vote</button>;
}
import { HumanProofSDK } from "human-proof/sdk";
const sdk = new HumanProofSDK({ rpId: "example.com" });
// Enrollment (once per device)
await sdk.enroll({ userId: "user@example.com" });
// Protected Action
await sdk.protectedFetch("/api/vote", {
method: "POST",
body: JSON.stringify({ choice: "A" }),
action: "vote:submit"
});
We use Vitest for testing and tsup for high-performance builds.
npm install # Install dev dependencies
npm test # Run unit tests
npm run dev # Launch the premium demo server (http://localhost:3000)
npm run build # Generate dual-mode (ESM/CJS) bundles
MIT © Human-Proof Team
FAQs
Privacy-first protocol for hardware-verified human presence
We found that human-proof 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
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.