Mensch oder Maschine?
Und welche Rolle?

HHTTPS v4.1 beantwortet nicht nur „Ist das ein Mensch?", sondern auch „Welche gesellschaftliche Rolle hat dieser Mensch?" — kryptografisch verifiziert, Zero-Knowledge, offen.

human: true/false
role: journalist | student | creative | ...
trustScore: 0–100
WebAuthn · Zero-Knowledge · Open Protocol
POST /hhttps/check — Response Headers + Body

Response Headers

HHTTPS-Protocol-Version:0.3-roles
HHTTPS-Human:false
HHTTPS-Actor-Type:unknown
HHTTPS-Status:unverified
HHTTPS-Role:
HHTTPS-Role-Level:
HHTTPS-Trust-Score:0
HHTTPS-Token:

JSON Body

hhttps.human:false
hhttps.actorType:unknown
role.id:
role.label:
role.level:
role.trustScore:
role.privileges:
TOKEN PRÜFEN — ÖFFENTLICHER SERVICE 🔍 Anyone can verify

Du hast einen HHTTPS-Token bekommen — von einer E-Mail, einem Forum, einem Chat? Füg ihn hier ein und sieh sofort, ob er kryptografisch gültig ist und von welcher Rolle er stammt. Keine Anmeldung nötig.

IDENTITÄTS-FLOW — INTERAKTIV
bereit
1
Passkey
2
Verifizieren
3
Rolle wählen
E-Mail
4
Token
Schritt 1 — Passkey anlegen (WebAuthn)
Dein Gerät erstellt ein kryptografisches Schlüsselpaar im sicheren Chip. Der private Schlüssel verlässt dein Gerät nie. Nach der Registrierung kannst du dich als Mensch verifizieren und eine Rolle deklarieren.
🫆
 
Schritt 2 — Menschsein beweisen
Dein Gerät signiert eine Server-Challenge lokal mit deinem privaten Schlüssel. Der Server verifiziert die Signatur — kein biometrisches Datum verlässt das Gerät.
🔐
Schritt 3 — Rolle deklarieren
Wähle deine gesellschaftliche Rolle. Je nach Rolle kannst du optional eine Verifikation angeben (Presseausweis, E-Mail, ORCID...) um den Trust Score zu erhöhen.
Trust Score60 / 100

// OPTIONALE VERIFIKATION

// E-MAIL VERIFIKATION — TRUST SCORE ERHÖHEN

Gib deine E-Mail-Adresse ein um deinen Trust Score zu erhöhen. Bildungs-Domains (.uni-*, .edu), offizielle Behörden (bundestag.de) und Verbände werden automatisch erkannt. Die Adresse wird nicht gespeichert.

✓ HHTTPS-Token ausgestellt
HUMAN
ROLE
TRUST
LEVEL
cURL
JavaScript
Python
Response
# HHTTPS-Token im Header senden → Antwort: Mensch + Rolle
curl -X POST https://hhttps.funnysearch.eu/hhttps/check \
  -H "HHTTPS-Token: <dein-token>" \
  -H "Content-Type: application/json"

# Ohne Token → actorType: "unknown"
curl -X POST https://hhttps.funnysearch.eu/hhttps/check

# Alle verfügbaren Rollen
curl https://hhttps.funnysearch.eu/hhttps/roles | jq
// Integration in deine App
async function checkHuman(hhttpsToken) {
  const res = await fetch('/hhttps/check', {
    method: 'POST',
    headers: { 'HHTTPS-Token': hhttpsToken }
  });

  const data = await res.json();

  if (data.hhttps.human) {
    console.log(`Mensch ✓ · Rolle: ${data.role.label}`);
    console.log(`Trust Score: ${data.role.trustScore}/100`);
    console.log(`Privilegien:`, data.role.privileges);
  } else {
    console.log('Bot oder unbekannter Akteur');
  }
}

// Response-Header direkt prüfen
const isHuman = res.headers.get('HHTTPS-Human') === 'true';
const role    = res.headers.get('HHTTPS-Role');    // z.B. "journalist"
const score   = res.headers.get('HHTTPS-Trust-Score'); // z.B. "85"
import requests

def check_human(hhttps_token: str) -> dict:
    res = requests.post(
        "https://hhttps.funnysearch.eu/hhttps/check",
        headers={"HHTTPS-Token": hhttps_token}
    )
    data = res.json()

    # Header-basierte Prüfung (schnell)
    is_human    = res.headers.get("HHTTPS-Human") == "true"
    role        = res.headers.get("HHTTPS-Role")
    trust_score = int(res.headers.get("HHTTPS-Trust-Score", 0))

    return {
        "human":       is_human,
        "role":        role,
        "trust_score": trust_score,
        "privileges":  data.get("role", {}).get("privileges", [])
    }
{
  "hhttps": {
    "version":    "0.3-roles",
    "status":     "verified",
    "human":      true,
    "actorType":  "human",
    "method":     "webauthn-passkey",
    "trustScore": 85
  },
  "role": {
    "id":          "journalist",
    "label":       "Journalist",
    "icon":        "📰",
    "level":       "press-card",
    "levelLabel":  "Presseausweis",
    "trustScore":  85,
    "privileges": [
      "Zugang zu HHTTPS-geschützten Pressebereichen",
      "Verifizierte Quellenangabe in digitalen Publikationen",
      "Schutz vor Identitätsmissbrauch als Journalist durch KI"
    ],
    "userStory": "US-012: Als Journalist..."
  }
}
// VERFÜGBARE ROLLEN