addrbookFor publishers
← The evidence ledger

Evidence row 2201828

Observed , by sync.x402_bazaar/1.

Kind
listing
About
source_record x402_bazaar:https://unicode-text-tools.x402tookit.com/confusables
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
50fdaf42639e863ccc3c5a46a5618448a9fb6b2bd03828fa9af9cff3eda5e543
Leaf
0x82c48f968d343092d7b5d15e5b68a3e1c701bdf0f996d09f74e1104f558d2c2e

What was observed

{
  "endpoints": [
    [
      "x402",
      "https://unicode-text-tools.x402tookit.com/confusables"
    ]
  ],
  "name": "Unicode Text Safety Tools",
  "owner_address": "0xb531320805c5bed1d46aeadcf4f008fdf172dbda",
  "raw": {
    "accepts": [
      {
        "amount": "20000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "maxTimeoutSeconds": 300,
        "network": "eip155:8453",
        "payTo": "0xb531320805C5BED1D46AEaDcF4F008FDF172DBDa",
        "scheme": "exact"
      },
      {
        "amount": "20000",
        "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
        "extra": {
          "feePayer": "D6ZhtNQ5nT9ZnTHUbqXZsTx5MH2rPFiBBggX4hY1WePM",
          "transactionVersions": [
            0
          ]
        },
        "maxTimeoutSeconds": 300,
        "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
        "payTo": "DUPiupXtuox38dcGoXUKer5mAydCzmaHjrbQ66qeEm8s",
        "scheme": "exact"
      },
      {
        "amount": "20000",
        "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "maxTimeoutSeconds": 300,
        "network": "eip155:137",
        "payTo": "0xb531320805C5BED1D46AEaDcF4F008FDF172DBDa",
        "scheme": "exact"
      },
      {
        "amount": "20000",
        "asset": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "maxTimeoutSeconds": 300,
        "network": "eip155:42161",
        "payTo": "0xb531320805C5BED1D46AEaDcF4F008FDF172DBDa",
        "scheme": "exact"
      }
    ],
    "description": "UTS #39 skeleton and homoglyph check: which characters look like others, and whether two strings are confusable.",
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "method": "GET",
            "queryParams": {
              "other": "paypal",
              "text": "pаypal"
            },
            "type": "http"
          },
          "output": {
            "example": {
              "asOf": "2026-10-21T01:34:51.461Z",
              "confusablesDataVersion": "18.0.0",
              "degraded": false,
              "disclaimer": "Screening signal computed from the named public source. Not financial, legal or investment advice; provided as is. Verify at the source before acting.",
              "identicalStrings": false,
              "mappedCharacters": [
                {
                  "char": "а",
                  "codepoint": "U+0430",
                  "index": 1,
                  "looksLike": "a",
                  "looksLikeCodepoints": [
                    "U+0061"
                  ],
                  "script": "Cyrillic"
                }
              ],
              "mixedScripts": true,
              "nonAsciiLookingAscii": 1,
              "notChecked": [
                "whether the string is a real brand or domain",
                "confusables across more than the single-character mapping (for example rn versus m is covered only where the data lists it)",
                "…1 more"
              ],
              "other": {
                "scripts": [
                  "Latin"
                ],
                "skeleton": "paypal"
              },
              "reasons": [
                "Different code points that map to the same skeleton are the basis of homograph spoofing."
              ],
              "scripts": [
                "Latin",
                "Cyrillic"
              ],
              "skeleton": "paypal",
              "skeletonCodePoints": [
                "U+0070",
                "U+0061",
                "…4 more"
              ],
              "skeletonsMatch": true,
              "source": "computed locally",
              "summary": "The strings are different but have the same UTS #39 skeleton: they can look alike to a reader.",
              "verdict": "CONFUSABLE"
            },
            "type": "json"
          }
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "input": {
              "additionalProperties": false,
              "properties": {
                "method": {
                  "enum": [
                    "GET"
                  ],
                  "type": "string"
                },
                "queryParams": {
                  "properties": {
                    "other": {
                      "description": "Optional second string, up to 500 characters; reports whether the two skeletons match",
                      "type": "string"
                    },
                    "text": {
                      "description": "String to check, up to 500 characters (longer is refused with 400)",
                      "type": "string"
                    }
                  },
                  "required": [
                    "text"
                  ],
                  "type": "object"
                },
                "type": {
                  "const": "http",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "method"
              ],
              "type": "object"
            },
            "output": {
              "properties": {
                "example": {
                  "properties": {
                    "asOf": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "confusablesDataVersion": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "degraded": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "disclaimer": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "identicalStrings": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "mappedCharacters": {
                      "items": {
                        "properties": {
                          "char": {
                            "type": [
                              "null",
                              "string"
                            ]
                          },
                          "codepoint": {
                            "type": [
                              "null",
                              "string"
                            ]
                          },
                          "index": {
                            "type": [
                              "null",
                              "number"
                            ]
                          },
                          "looksLike": {
                            "type": [
                              "null",
                              "string"
                            ]
                          },
                          "looksLikeCodepoints": {
                            "items": {
                              "type": "string"
                            },
                            "type": [
                              "array",
                              "null"
                            ]
                          },
                          "script": {
                            "type": [
                              "null",
                              "string"
                            ]
                          }
                        },
                        "type": "object"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "mixedScripts": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "nonAsciiLookingAscii": {
                      "type": [
                        "null",
                        "number"
                      ]
                    },
                    "notChecked": {
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "other": {
                      "properties": {
                        "scripts": {
                          "items": {
                            "type": "string"
                          },
                          "type": [
                            "array",
                            "null"
                          ]
                        },
                        "skeleton": {
                          "type": [
                            "null",
                            "string"
                          ]
                        }
                      },
                      "type": [
                        "null",
                        "object"
                      ]
                    },
                    "reasons": {
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "scripts": {
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "skeleton": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "skeletonCodePoints": {
                      "items": {
                        "type": "string"
                      },
                      "type": [
                        "array",
                        "null"
                      ]
                    },
                    "skeletonsMatch": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    },
                    "source": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "summary": {
                      "type": [
                        "null",
                        "string"
                      ]
                    },
                    "verdict": {
                      "type": [
                        "null",
                        "string"
                      ]
                    }
                  },
                  "type": "object"
                },
                "type": {
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": "object"
            }
          },
          "required": [
            "input"
          ],
          "type": "object"
        }
      }
    },
    "lastUpdated": "2026-11-01T23:24:09.1Z",
    "quality": {
      "l30DaysTotalCalls": 1,
      "l30DaysUniquePayers": 1,
      "lastCalledAt": "2026-11-01T23:24:08.856Z"
    },
    "resource": "https://unicode-text-tools.x402tookit.com/confusables",
    "serviceName": "Unicode Text Safety Tools",
    "tags": [
      "unicode",
      "homoglyph",
      "confusables",
      "spoofing",
      "uts39"
    ],
    "type": "http",
    "x402Version": 2
  },
  "source": "x402_bazaar",
  "summary": "UTS #39 skeleton and homoglyph check: which characters look like others, and whether two strings are confusable."
}

What the leaf hashes

{"body":"50fdaf42639e863ccc3c5a46a5618448a9fb6b2bd03828fa9af9cff3eda5e543","id":2201828,"kind":"listing","method":"sync.x402_bazaar/1","observed_us":1793646809051945,"prev":null,"subject":"x402_bazaar:https://unicode-text-tools.x402tookit.com/confusables","subject_kind":"source_record"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (444186 rows).

  1. 0x82c4bfe0a018febfad593aab07abb7ab353e4fb176b68a5d13e4e8d3e9913a56
  2. 0x16e1c2df785fe55898e0e28aeb2a368df2a02bee1fd6ae0f00bcc61103adc03a
  3. 0x90b09d2cfb7da94834437532c7dd8929bfaf82ef2ffa847641202e917fc1effe
  4. 0x08f2db0b9acbac205493c6836e05dffb97441e527d3ce7a6cdc14c62fb8949e8
  5. 0x1965db6737757cd14c067908a5d94f45fa63ec36eec6e75ff066fadd5516d3be
  6. 0x56e57ceac2e633574405f73c2bd4bee37a68fd4fccf3e778fa7d6f71edb3dbbb
  7. 0x9ee936a06da021cab2ff26ed4eeea259adf7eb7e4a52ea9313bccd61370c7b04
  8. 0x45702e17d144f4a425fa9797762753236cd9d287379c8552c2d79b053ebc2ced
  9. 0x94efb6f5ffddd5930d3e2b3b762e313036fb8c1f8d6a94a073dd79a5a1e8c0ae
  10. 0xa78e91f2fe3dd0be144b2a0ded391495b37cb41a1763b8fdd7c6c2f4ac99115e
  11. 0x6012ca3e294d721e95293a0f0d4d05cfe67ff640b8184bb4d81660ad69ab45f4
  12. 0x9236ce44089e10e350435c01e569b60f72046bb5112e06356a17b8f3c0a940ee
  13. 0xf82dc9b9d8e081f36e55e80fab45654768c11eb158257f63f8ca7ff17d181d54
  14. 0x5d40473873ebe898bcca4e49df524bf4345695f06abe3579f4bdb7b306b863f8
  15. 0x46991481c678139203ebc3c532867ce1643c09ddc33966c4fb48bb7f033ab22f
  16. 0x3b89dd05634a82075204d3c671f613081ddfd9df739c64c0a8f39081bdfa32c7
  17. 0x1805ef693fbdb2c23fcb61616f830408ca89bec1dc5b68ee47a770ffc0b9760a
  18. 0x4d205063c881c48edbbb37762a8d3bbb7444d4c42daa882f663a231893d25c35
  19. 0x365b161a4b68d750dcc4b3ecce1154a2163c87b08762079428e68f0ebb6a754e
Day root
0x78fecaabbe319e56f5c4b80fc02e2052e198ad24781da8832a475ff65f2002d1
Chained
0xdc35957db5d1371ca382b9152878ffece28ec7c5cb4f98fd71ddb367f8b999b2
Published
On Arc Testnet, block 70432815: 0x56b814612eb2e3e544153df3e91e1f7199106d1e430c7d8c6b653feeb9ebe9af

How to check it · This row as JSON