James Haworth

@jameshaworthcs

3 verified
Trust 29/100

Only first-party-verified accounts count. Claimed links add nothing.

jhaworth.ai (verified domain)+15
jameshaworthcs on GitHub+9
james on Verifiedhandles+5
Total29/100
Namesake 3 signed versions

These are this person's real accounts, each attested by the one key below. Any account not listed here is not verified as this person.

Root of trust (key & decentralized ID)
Root-of-trust keycSe18SrOjTElx-2HO8kRu6K61Bfjd7DWHgrIMI7qh6c
Decentralized IDdid:key:z6Mkt9RCs8LS2FNoFkT7FUiPNQ9RkmpercL1fTGGv9Q6dMfn

Verified accounts

First-party proof: each handle below was confirmed by the platform itself (OAuth, a signed post, or domain control), so it cannot be a name the owner just typed.

Know James Haworth?

Sign a statement that they are who they say. It appears on this page only if they accept it, and it adds nothing to the trust score.

Vouch for @jameshaworthcs

Verify independently

Do not take our word for it. This runs the signature check in your own browser against the public key in the manifest. It would still pass if RealHandles were offline.

One key, the whole way. The same key has held @jameshaworthcs across 3 published versions, since October 13, 2026. Anchored in Bitcoin block 971287, so that date cannot have been backdated by anyone, including us.
Raw signed fileOpen full verifier

The full signed history is at realhandles-chain.json. Verify either without trusting us.

{
  "$schema": "https://realhandles.com/schema/realhandles-v1.json",
  "jws": "eyJhbGciOiJFZERTQSIsInR5cCI6InJoLW1hbmlmZXN0Iiwia2lkIjoiY1NlMThTck9qVEVseC0ySE84a1J1Nks2MUJmamQ3RFdIZ3JJTUk3cWg2YyJ9.eyJ2ZXJzaW9uIjoiMSIsInN1YmplY3QiOnsidXNlcm5hbWUiOiJqYW1lc2hhd29ydGhjcyIsImRpc3BsYXlOYW1lIjoiSmFtZXMgSGF3b3J0aCIsInB1YmxpY0tleSI6eyJjcnYiOiJFZDI1NTE5Iiwia3R5IjoiT0tQIiwieCI6InkzR0VfLWpKbnRUUzNfbHNxamJjNGI1RGdtbjVjMmNGS2xmTi1DM0NPMmsifSwia2V5SWQiOiJjU2UxOFNyT2pURWx4LTJITzhrUnU2SzYxQmZqZDdEV0hncklNSTdxaDZjIn0sImFjY291bnRzIjpbeyJwbGF0Zm9ybSI6ImRvbWFpbiIsImhhbmRsZSI6ImpoYXdvcnRoLmFpIiwicHJvZmlsZVVybCI6Imh0dHBzOi8vamhhd29ydGguYWkiLCJtZXRob2QiOiJkb21haW4tYW5jaG9yIiwidmVyaWZpZWRBdCI6IjIwMjYtMTAtMTNUMTg6NDk6MTcuNDEwWiJ9LHsicGxhdGZvcm0iOiJnaXRodWIiLCJoYW5kbGUiOiJqYW1lc2hhd29ydGhjcyIsInByb2ZpbGVVcmwiOiJodHRwczovL2dpdGh1Yi5jb20vamFtZXNoYXdvcnRoY3MiLCJtZXRob2QiOiJvYXV0aCIsInZlcmlmaWVkQXQiOiIyMDI2LTEwLTEzVDE4OjUzOjE5LjUwMFoiLCJhY2NvdW50SWQiOiIyNTYzOTIxMSJ9LHsicGxhdGZvcm0iOiJ2ZXJpZmllZGhhbmRsZXMiLCJoYW5kbGUiOiJqYW1lcyIsInByb2ZpbGVVcmwiOiJodHRwczovL3ZlcmlmaWVkaGFuZGxlcy5vcmcvamFtZXMiLCJtZXRob2QiOiJyZWwtbWUiLCJ2ZXJpZmllZEF0IjoiMjAyNi0xMC0xM1QyMDo1MDozMi4wNzlaIn1dLCJpc3N1ZWQiOiIyMDI2LTEwLTEzVDIwOjUxOjEwLjE2N1oiLCJzdGF0ZW1lbnQiOiJUaGVzZSBhY2NvdW50cyBiZWxvbmcgdG8gSmFtZXMgSGF3b3J0aC4gVmVyaWZpZWQgYnkgdGhlIGhvbGRlciBvZiBrZXkgY1NlMThTck9qVEVseC0ySE84a1J1Nks2MUJmamQ3RFdIZ3JJTUk3cWg2Yy4gVGhpcyBwcm9vZiBpcyBzaWduZWQgYnkgdGhhdCBrZXkgYW5kIHZlcmlmaWVzIGluZGVwZW5kZW50bHkgb2YgUmVhbEhhbmRsZXMuIiwic2VxIjoyLCJwcmV2IjoiQXZOUWdZOEtqcW52bFBmQUh3OHhKTDRYOHFSc2FLSXdJcnBMRTk3QW8zUSIsInJlY292ZXJ5Ijp7InRocmVzaG9sZCI6MSwia2V5cyI6W3sia2V5SWQiOiJTbVlwMnJCdUFyY2tKUDdITTVkZHRjZkNoOGtwb0ZLTmx3VzlFSDR5a1NFIiwicHVibGljS2V5Ijp7ImNydiI6IkVkMjU1MTkiLCJrdHkiOiJPS1AiLCJ4IjoidFlUS3ozNzEzaENwUVZFSkZROG5JbE02a0JRNGxKZmw2d3Rxc0M2UHlTdyJ9LCJsYWJlbCI6InJlY292ZXJ5IGtleSJ9XX19.RmZlHlvqXntBN0OoOkCryDYJeTAESmOwsm4mLg8REpNX-E2bVYG_ASpYJYjO_F2BNJzPW127C0oaW1QkrIuJBA",
  "manifest": {
    "version": "1",
    "subject": {
      "username": "jameshaworthcs",
      "displayName": "James Haworth",
      "publicKey": {
        "crv": "Ed25519",
        "kty": "OKP",
        "x": "y3GE_-jJntTS3_lsqjbc4b5Dgmn5c2cFKlfN-C3CO2k"
      },
      "keyId": "cSe18SrOjTElx-2HO8kRu6K61Bfjd7DWHgrIMI7qh6c"
    },
    "accounts": [
      {
        "platform": "domain",
        "handle": "jhaworth.ai",
        "profileUrl": "https://jhaworth.ai",
        "method": "domain-anchor",
        "verifiedAt": "2026-10-13T18:49:17.410Z"
      },
      {
        "platform": "github",
        "handle": "jameshaworthcs",
        "profileUrl": "https://github.com/jameshaworthcs",
        "method": "oauth",
        "verifiedAt": "2026-10-13T18:53:19.500Z",
        "accountId": "25639211"
      },
      {
        "platform": "verifiedhandles",
        "handle": "james",
        "profileUrl": "https://verifiedhandles.org/james",
        "method": "rel-me",
        "verifiedAt": "2026-10-13T20:50:32.079Z"
      }
    ],
    "issued": "2026-10-13T20:51:10.167Z",
    "statement": "These accounts belong to James Haworth. Verified by the holder of key cSe18SrOjTElx-2HO8kRu6K61Bfjd7DWHgrIMI7qh6c. This proof is signed by that key and verifies independently of RealHandles.",
    "seq": 2,
    "prev": "AvNQgY8KjqnvlPfAHw8xJL4X8qRsaKIwIrpLE97Ao3Q",
    "recovery": {
      "threshold": 1,
      "keys": [
        {
          "keyId": "SmYp2rBuArckJP7HM5ddtcfCh8kpoFKNlwW9EH4ykSE",
          "publicKey": {
            "crv": "Ed25519",
            "kty": "OKP",
            "x": "tYTKz3713hCpQVEJFQ8nIlM6kBQ4lJfl6wtqsC6PySw"
          },
          "label": "recovery key"
        }
      ]
    }
  },
  "publicKeyJwk": {
    "crv": "Ed25519",
    "kty": "OKP",
    "x": "y3GE_-jJntTS3_lsqjbc4b5Dgmn5c2cFKlfN-C3CO2k"
  },
  "keyId": "cSe18SrOjTElx-2HO8kRu6K61Bfjd7DWHgrIMI7qh6c"
}

Is this you, or are you next?

Claim your own handle and publish a signed page of your real accounts, so nobody can pretend to be you.

Claim your handle

Think this profile is impersonating someone? Report it.