360 Secure SkillHub
360 安全技能中心

axiom-json-canonicalizer

纯 Python 标准库实现的 JCS RFC 8785 JSON 规范化工具,提供命令行与 Python API:对象键排序、去除多余空白、字符串 NFC 规范化、数字最短往返表示,输出 UTF-8 字节稳定的规范化 JSON,并支持与已有规范化文件比对校验,可用于签名前规范化、哈希校验和审计日志。

kofna3369
kofna3369
热度 20.84
最近更新 2026-06-15 10:48:35
分类:效率依赖:代码执行 / 读写文件应用场景:数据处理 / 自动化脚本 / 文件转换

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add axiom-json-canonicalizer
Metadata
name
axiom-json-canonicalizer
description
JCS RFC 8785 — Canonical JSON. Convert any JSON to a deterministic, byte-to-byte identical canonical form. Use when you need to sign, hash, or compare JSON regardless of whitespace or key order. Pure stdlib, no LLM, no cloud.
version
1.0.1
license
Apache-2.0

axiom-json-canonicalizer

Version: 1.0.1 Axioma Tools

Converts any JSON to a canonical form per RFC 8785 (JCS).

What this skill does

  • Object keys sorted lexicographically (post-NFC)
  • No insignificant whitespace
  • Numbers: ECMAScript shortest round-trip
  • Strings: NFC-normalized, surrogate-pair safe
  • Output: UTF-8 bytes (byte-to-byte stable)

When to use this skill

  • ✅ Sign OAuth/JWT payloads (canonicalize before signing)
  • ✅ Hash JSON for integrity verification
  • ✅ Compare semantically-equivalent JSON
  • ✅ Build tamper-evident audit logs
  • ❌ Need pretty-printing (use json.dumps indent)
  • ❌ Need JSON5/JSONL/JSONC (different specs)

Usage

python3 axiom_json_canonicalizer.py input.json > canonical.json
python3 axiom_json_canonicalizer.py input.json --verify canonical.json
from axiom_json_canonicalizer import canonicalize
canon_bytes = canonicalize(json_obj)  # UTF-8 bytes

Validation

Check Status
Unit tests 81 cases
Performance <100ms
Security Pure stdlib, no injection
Determinism Byte-to-byte stable
License Apache-2.0

Last updated: 2026-06-14