VoidAccess
提出一個問題,VoidAccess 便平行搜尋 12+ 個 Tor 搜尋引擎、GitHub 與安全訂閱源,然後返回可供 STIX、MISP 或 Sigma 使用的行動者、錢包、外洩憑證和 IOCs。Open so
AI 翻譯
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
Demuestra que eres una persona real y mayor de edad en cualquier sitio web sin entregar tu pasaporte, tu foto ni tu nombre. ZeroID verifica atributos, no personas. Lee tu pasaporte y tu rostro una sola vez, en memoria, y descarta las imágenes al instante. Te entrega una credencial firmada que vive en tu dispositivo. Cuando un sitio pregunta "¿es mayor de edad?", recibe un sí o un no, nunca tus datos.檢視完整 README ↗
Demuestra que eres una persona real y mayor de edad en cualquier sitio web sin entregar tu pasaporte, tu foto ni tu nombre.
ZeroID verifica atributos, no personas. Lee tu pasaporte y tu rostro una sola vez, en memoria, y descarta las imágenes al instante. Te entrega una credencial firmada que vive en tu dispositivo. Cuando un sitio pregunta "¿es mayor de edad?", recibe un sí o un no, nunca tus datos.
| Carpeta | Qué es | Stack |
|---|---|---|
frontend/ | Web: landing, registro, panel del usuario y el SDK (/sdk/zeroid.js) | Next.js 16, React 19 |
backend/ | Oráculo: verificación, credenciales y API para sitios | FastAPI, DeepFace, Gemini, PostgreSQL + pgvector |
app/ | App móvil: vincula el teléfono, aprueba inicios de sesión y muestra tus conexiones | Expo SDK 58, expo-router |
docs/ | Arquitectura y guía de despliegue |
| Parte | Dónde |
|---|---|
| Web | Vercel: platanus-hack-14.vercel.app |
| Demo de Expreso Caribe | Vercel, desde su propio repo (ver abajo) |
| Backend | DigitalOcean App Platform: https://octopus-app-h5zq3.ondigitalocean.app (docs de la API) |
| Base de datos | Neon (Postgres con pgvector) |
Para publicar cambios, sigue docs/despliegue.md.
cd backend
docker compose up -d db
Levanta Postgres 16 con pgvector en localhost:5432 (usuario, contraseña y base zeroid). Las tablas se crean solas cuando arranca el backend.
cd backend
python -m venv .venv
.venv\Scripts\activate # Windows
# source .venv/bin/activate # macOS / Linux
pip install -r requirements-dev.txt
cp .env.example .env
Completa backend/.env:
| Variable | Valor en local |
|---|---|
DATABASE_URL | postgresql://zeroid:zeroid@localhost:5432/zeroid |
DATABASE_URL_UNPOOLED | Vacía |
JWT_PRIVATE_KEY | Una llave RSA en PEM (ver abajo) |
HASH_PEPPER | Un secreto aleatorio (ver abajo); el backend no arranca con el valor de ejemplo |
GEMINI_API_KEY | Tu key de Gemini |
CORS_ORIGINS | http://localhost:3000 |
Para generar los dos secretos:
python -c "from cryptography.hazmat.primitives.asymmetric import rsa; from cryptography.hazmat.primitives import serialization as s; k=rsa.generate_private_key(public_exponent=65537,key_size=2048); print(k.private_bytes(s.Encoding.PEM,s.PrivateFormat.PKCS8,s.NoEncryption()).decode())"
python -c "import secrets; print(secrets.token_hex(32))"
Arranca el servidor desde backend/, porque ahí es donde lee el .env:
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
--host 0.0.0.0 permite que el teléfono llegue al backend por la red local. En Windows, autoriza el puerto 8000 en el firewall.
cd frontend
npm install
cp .env.example .env.local
npm run dev
La web queda en http://localhost:3000.
La demo de una empresa que integra el SDK es un proyecto independiente, en su propio repo. Clónalo junto a este, en una carpeta expreso-caribe al mismo nivel que este repo.
Registra el cliente de la demo. El script escribe sus llaves en ../expreso-caribe/.env.local; si la clonaste en otro lugar, usa --env-file:
cd backend
python -m scripts.demo_client
Luego, en el repo de la demo:
npm install
npm run dev
La demo queda en http://localhost:3001. Por defecto carga el SDK desde http://localhost:3000 y canjea los inicios de sesión contra http://localhost:8000.
cd app
npm install --legacy-peer-deps
cp .env.example .env
npx expo start -c
En app/.env, pon EXPO_PUBLIC_API_URL con la IP de tu computador en la red (por ejemplo http://192.168.1.10:8000), no localhost. Escanea el QR con Expo Go.
cd backend
pytest -m "not integration" -q # sin base de datos
pytest -q # todas; requieren Postgres en DATABASE_URL
Para la web y la app no hay pruebas automáticas; antes de subir cambios comprueba que compilan:
cd frontend && npx next build
cd app && npx tsc --noEmit
Desde backend/:
| Comando | Qué hace |
|---|---|
python -m scripts.demo_client [--origin URL] [--env-file RUTA] | Registra Expreso Caribe como cliente del SDK |
python -m scripts.reset_db --yes | Borra usuarios, cuentas, conexiones y solicitudes. Conserva las tablas y los clientes del SDK. Usa la base de DATABASE_URL: revisa que no sea la de producción. |
docs/arquitectura.md: flujos y decisiones de diseño.docs/despliegue.md: cómo está publicado el proyecto y cómo subir cambios.