Basis-URL
Sessie & Authenticatie
Valideert een bestaande sessie-ID. Retourneert de commitment hash als de sessie geldig is.
{ "sessieId": "string" }
{
"geldig": true,
"commitment": "sha256:abc..."
}
Invalideert een sessie server-side. De sessie-ID wordt onbruikbaar. Geen data blijft achter.
{ "sessieId": "string" }
{ "ok": true }
Opslag
Items worden versleuteld opgeslagen op de server. De server ziet alleen de versleutelde inhoud — nooit de plaintext. Ontsleuteling vindt lokaal plaats op het apparaat van de gebruiker.
Slaat een versleuteld item op. De server ontvangt AES-GCM ciphertext — de plaintext verlaat het apparaat nooit.
{
"sessieId": "string",
"inhoud": "base64-ciphertext",
"iv": "base64-iv"
}
{ "ok": true, "id": "string" }
Haalt alle versleutelde items op voor een sessie. De response bevat ciphertext — ontsleuteling gebeurt client-side.
{ "sessieId": "string" }
{
"items": [
{
"id": "string",
"inhoud": "base64",
"iv": "base64",
"tijd": "HH:MM:SS"
}
]
}
PrismShield — Sensordata interface
PrismShield verwerkt alle data lokaal op het apparaat — er zijn geen server-endpoints voor sensordata. De API beschrijft wat een integrerende app moet aanleveren aan de lokale PrismShield SDK.
Lokale functie — geen netwerk. Analyseert sensordata en retourneert een Centroid-score. Alles blijft op het apparaat.
{
"accelerometer": [x, y, z],
"gyroscope": [x, y, z],
"location": "hash",
"wifi_known": true,
"timestamp": 1714000000,
"hrv": 45.2
}
{
"centroid_score": 0.82,
"afwijking": 0.34,
"duress": false,
"signalen": ["beweging_ok",
"context_bekend"]
}
Stuurt een stille alert naar een vooraf ingesteld contactpersoon of nooddienst. Wordt alleen aangeroepen als lokale SDK Duress Mode activeert.
{
"sessieId": "string",
"centroid_score": 0.91,
"encrypted_context": "base64"
}
{
"alert_verzonden": true,
"sandbox": true
}
PrismID — Zero-Knowledge Proof
Endpoints voor selectieve identiteitsbewijzing. Bewijs wordt gegenereerd op het apparaat van de gebruiker en geverifieerd door de server — zonder dat de server de onderliggende data ziet.
Genereert een cryptografische uitdaging voor een specifieke bewijs-vraag. De client gebruikt deze challenge om een ZKP te genereren.
{
"claim": "age_over_18",
"context": "string"
}
{
"challenge": "hex-string",
"expires": 1800,
"claim": "age_over_18"
}
Verifieert een ZKP-bewijs tegen een eerder uitgegeven challenge. Retourneert alleen ja/nee — nooit de onderliggende data.
{
"challenge": "hex-string",
"proof": "zkp-object",
"claim": "age_over_18"
}
{
"verified": true,
"claim": "age_over_18",
"expires": 3600
}
PrismAdd — Interesse-tokens
Privacy Pass-gebaseerde tokens voor anonieme interesse-signalering. Gebouwd op RFC 9576 — tokens zijn unlinkable tussen sessies.
Geeft een blind RSA-gesigneerd Privacy Pass token uit voor een interesse-categorie. Het token is niet koppelbaar aan een gebruikerssessie.
{
"blinded_token": "base64",
"category": "breien",
"region": "overijssel"
}
{
"signed_token": "base64",
"category": "breien",
"expires": 86400
}
Wisselt een token in bij een publisher. Double-spend preventie zonder gebruikerstracking.
{
"token": "base64",
"publisher_id": "string"
}
{
"valid": true,
"category": "breien",
"region": "overijssel"
}
Foutmeldingen
Interesse in een pilot-integratie? PrismPass werkt samen met een beperkt aantal vroege partners. Neem contact op via het profiel van I. Smid-Woelders.