Skip to content
AI News HubLIVE
In-site rewrite2 min read

Show HN: OpenTrust – Browser trust signals for the AI era

Summary

OpenTrust is an open-source SDK that collects privacy-preserving browser signals to help developers estimate browser interaction trustworthiness. It provides automation detection, webcam integrity checks, passive liveness analysis, and more — all processed client-side without uploading raw media.

SourceHacker News AIAuthor: rafaeltadesse
Show HN: OpenTrust – Browser trust signals for the AI era
Report an error

The correction channel is not available yet. You can copy the article reference below for later.

Correction instructions
Read article

Notifications You must be signed in to change notification settings

Fork 0

Star 1

BranchesTags

Open more actions menu

Folders and files

NameName

Last commit message

Last commit date

Latest commit

History

10 Commits

10 Commits

.github/workflows

.github/workflows

docs

docs

examples/react-app

examples/react-app

packages

packages

.dockerignore

.dockerignore

.editorconfig

.editorconfig

.gitignore

.gitignore

.npmrc

.npmrc

.nvmrc

.nvmrc

CODE_OF_CONDUCT.md

CODE_OF_CONDUCT.md

CONTRIBUTING.md

CONTRIBUTING.md

Dockerfile

Dockerfile

LICENSE

LICENSE

README.md

README.md

SECURITY.md

SECURITY.md

docker-compose.yml

docker-compose.yml

package-lock.json

package-lock.json

package.json

package.json

tsconfig.base.json

tsconfig.base.json

vercel.json

vercel.json

Repository files navigation

Privacy-first browser trust signals for modern web applications.

OpenTrust is an open-source SDK that collects privacy-preserving browser signals to help developers estimate the trustworthiness of a browser interaction. It provides signals — not decisions — designed to be combined with authentication, device reputation, and server-side verification systems.

Overview

OpenTrust exposes browser-side trust signals through a clean TypeScript API:

Browser automation detection — webdriver flags, headless browsers, abnormal properties

Webcam integrity checks — virtual camera detection, static/replayed video analysis

Passive liveness analysis — face presence, motion, blink detection

Microphone integrity — virtual mic detection, audio signal analysis

All processing is client-side. Raw frames never leave the device.

When to use OpenTrust

OpenTrust is designed to provide additional signals for:

Fraud prevention workflows

Risk scoring and trust estimation

Bot mitigation systems

Browser integrity checks

Research and experimentation

Developer tooling and prototypes

When not to use OpenTrust

OpenTrust is not a replacement for:

KYC (Know Your Customer)

Identity verification

Enterprise liveness detection

Device attestation

Server-side fraud detection

Philosophy

Security is built from multiple layers. OpenTrust intentionally focuses on browser-side trust signals and should be combined with server-side verification and authentication systems. The SDK returns confidence signals — not binary "human/bot" judgments.

Installation

npm install opentrust-sdk

Quick Start

import { OpenTrust } from 'opentrust-sdk';

const result = await OpenTrust.verify({ camera: true, });

console.log(result.trustScore); // 0.85 console.log(result.signals); // { // faceDetected: true, // livenessScore: 0.72, // virtualCameraDetected: false, // browserAutomationDetected: false, // replayRisk: 0.12, // audioScore: 0.0, // virtualMicDetected: false // }

API

OpenTrust.verify(options?)

Option Type Default Description

camera boolean false Enable webcam checks

microphone boolean false Enable microphone checks

timeout number 15000 Max time in ms

Returns

{ trustScore: number, // 0.0 - 1.0 signals: { faceDetected: boolean, livenessScore: number, virtualCameraDetected: boolean, browserAutomationDetected: boolean, replayRisk: number, audioScore: number, virtualMicDetected: boolean, }, timestamp: number }

React Hook

npm install opentrust-react

import { useOpenTrust } from 'opentrust-react';

function VerificationButton() { const { result, loading, verify } = useOpenTrust();

return (

); }

CDN

Demo

git clone https://github.com/rafaelEt/opentrust.git cd opentrust npm install npm run dev

Or with Docker:

docker compose up

Visit http://localhost:3000.

Or try the live demo: https://open--trust.vercel.app

Privacy

OpenTrust never uploads raw camera frames or microphone audio. All processing is client-side. See docs/privacy.md.

License

MIT — see LICENSE.

Contributing

Contributions welcome. GitHub · Live Demo

Topics

Resources

Readme

MIT license

Code of conduct

Code of conduct

Contributing

Contributing

Security policy

Security policy

Activity

Stars

1 star

Watchers

0 watching

Forks

0 forks

Report repository

Key points and analysis

Article intelligence

EngineersAdvanced

Key points

  • OpenTrust offers browser automation detection, virtual camera detection, liveness analysis, and microphone integrity checks.
  • All processing is client-side; raw frames and audio never leave the device.
  • Suitable for fraud prevention, risk scoring, bot detection, but not a replacement for KYC or identity verification.

Highlights and analysis are generated automatically and may contain errors. Check the original source.