BTC
ETH
SOL
BNB
GOLD
XRP
DOGE
ADA
Back to home
Tech

Verifying human authorship with human.json

human.json proposes a simple, decentralized way for website owners to signal human authorship.

human.json proposes a simple, decentralized way for website owners to signal human authorship. Site operators publish a /human.json file at their root, listing URLs they vouch for as human-made. Version 0.1.1 specifies a JSON structure with the vouching site’s URL, a timestamp, and an array of vouched sites. A Chrome extension checks for this file and displays vouches, aiming to counter the flood of AI-generated content.

This emerges amid predictions that AI could generate 90% of online content by 2026, per Gartner estimates. Search engines like Google already penalize low-quality AI spam, but lack reliable provenance signals. human.json flips the script: humans vouch for humans, creating informal trust networks. Early adopters include Axxuy, Naty, STFN, and Neil, who popularized it via blog posts. Adoption remains niche—dozens of sites at most—but it nods to decentralized verification trends, akin to PGP webs of trust without crypto overhead.

How It Works

The JSON schema is straightforward:

{
  "version": "0.1.1",
  "url": "https://example.com",
  "vouches": [
    {
      "url": "https://vouched-site.com",
      "vouched_at": "2024-10-01"
    }
  ]
}

Timestamps use YYYY-MM-DD format. No signatures or proofs enforce validity—pure social consensus. The extension fetches this on page load, showing vouches if present. It matters because browsers increasingly prioritize signals of authenticity; this could integrate with future standards like browser provenance APIs.

Implementation on Static Sites

For Jekyll users, one approach uses YAML data files for easier editing. Create _data/humans.yml:

- link: "https://example.com"
  date: 2024-10-01
- link: "https://example2.com"
  date: 2024-10-01

Then, a human.json template in the root:

---
layout: none
permalink: /human.json
---
{
  "version": "0.1.1",
  "url": "{{ site.url }}",
  "vouches": [
    {% for human in site.data.humans %}
    {
      "url": "{{ human.link }}",
      "vouched_at": "{{ human.date }}"
    }{% unless forloop.last %},{% endunless %}
    {% endfor %}
  ]
}

Add a rel=”human” tag to <head> for discovery: <link rel="human" href="/human.json">. Build generates the JSON. This YAML-to-JSON workflow suits humans—edit text, not braces—but scales poorly for large lists.

Skepticism tempers enthusiasm. No mechanism prevents vouching malicious sites or spam. Sybil attacks loom: one actor spins up vouches to bootstrap credibility. Humans bear the proof burden, inverting responsibility—AI sites could self-vouch undetected. Gatekeeping creeps in: vouch AI-assisted sites? Generated avatars or LLM code snippets disqualify? Authors grapple with this subjectivity.

Why pursue it? In security terms, vouches could flag phishing mimicking human blogs; finance/crypto sites gain trust signals amid scams. It fosters web reciprocity—vouch back, build clusters. Low cost: minutes to implement. Track via tools like curl https://site.com/human.json. Update lists as sites automate; notify vouched parties.

Bottom line: human.json won’t stop AI deluge but carves human niches. Pair with content IDs like C2PA or blockchain stamps for robustness. For now, it’s a lightweight protest against content mills, worth testing if authenticity drives your site. Monitor adoption; if it hits hundreds of vouches, implications sharpen for trust on the open web.

April 9, 2026 · 3 min · 13 views · Source: Lobsters

Related