{"id":"a6b49031-1e73-4afa-bcbf-6e779567f409","entityType":"agent","slug":"clawhub-534422530-laosi-crypto-encoder","name":"Crypto Encoder Pro","canonicalUrl":"https://www.xpersona.co/agent/clawhub-534422530-laosi-crypto-encoder","canonicalPath":"/agent/clawhub-534422530-laosi-crypto-encoder","generatedAt":"2026-10-14T02:37:51.340Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-12T02:39:08.310Z","emptyReason":null},"description":"编码工具�?- Base64编码/解码、URL编码/解码、SHA256/MD5哈希计算、UUID生成、JWT解析 Skill: Crypto Encoder Pro Owner: 534422530 Summary: 编码工具�?- Base64编码/解码、URL编码/解码、SHA256/MD5哈希计算、UUID生成、JWT解析 Tags: base64:2.0.0, crypto:2.0.0, encoding:2.0.0, hash:2.0.0, latest:2.0.0, pro:2.0.0, security:2.0.0 Version history: v2.0.0 | 2026-05-29T23:31:41.556Z | auto - Added premium badge to skill metadata. - Introduced hub.json file for metadata management. - Minor text encoding/corruption present in documentation.","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 953 downloads reported by the source. Last updated 10/12/2026.","installCommand":"clawhub skill install s170k9770tgh0506hw0dwtb6pd83kwyq:laosi-crypto-encoder","sourceUrl":"https://clawhub.ai/534422530/laosi-crypto-encoder","homepage":"https://clawhub.ai/534422530/skills/laosi-crypto-encoder","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/534422530/laosi-crypto-encoder","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/534422530/skills/laosi-crypto-encoder","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":60,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"编码工具�?- Base64编码/解码、URL编码/解码、SHA256/MD5哈希计算、UUID生成、JWT解析 Skill: Crypto Encoder Pro Owner: 534422530 Summary: 编码工具�?- Base64编码/解码、URL编码/解码、SHA256/MD5哈希计算、UUID生成、"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-12T02:39:08.310Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-12T02:39:08.310Z","emptyReason":null},"stars":null,"forks":null,"downloads":953,"likes":null,"task":null,"library":null,"packageName":null,"latestVersion":"2.0.0","tractionLabel":"953 downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-12T02:39:08.296Z","emptyReason":null},"lastUpdatedAt":"2026-10-12T02:39:08.310Z","lastCrawledAt":"2026-10-12T02:39:08.296Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-13T02:39:08.296Z","lastVerifiedAt":null,"highlights":[{"version":"2.0.0","createdAt":"2026-05-29T23:31:41.556Z","changelog":"- Added premium badge to skill metadata. - Introduced hub.json file for metadata management. - Minor text encoding/corruption present in documentation. - No functional code changes.","fileCount":4,"zipByteSize":4272},{"version":"1.0.0","createdAt":"2026-05-29T22:46:07.510Z","changelog":"Crypto Encoder 1.0.0 – 编码工具箱首发版 - 支持 Base64 编码/解码、URL 编码/解码功能 - 提供 SHA256/SHA512/MD5 哈希计算与 HMAC-SHA256 签名 - 支持 UUID v4 生成与 JWT Token 解析（不验签） - 密码强度检查与批量编码工具 - 适用 API认证、数据校验、Token处理等多种场景","fileCount":3,"zipByteSize":3858}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s170k9770tgh0506hw0dwtb6pd83kwyq:laosi-crypto-encoder","setupComplexity":"low","setupSteps":["Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-crypto-encoder/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-crypto-encoder/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-crypto-encoder/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-crypto-encoder/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-crypto-encoder/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-crypto-encoder/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-14T02:37:51.340Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-crypto-encoder/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-crypto-encoder/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-crypto-encoder/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-crypto-encoder/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-12T02:39:08.310Z","emptyReason":null},"readme":"Skill: Crypto Encoder Pro\n\nOwner: 534422530\n\nSummary: 编码工具�?- Base64编码/解码、URL编码/解码、SHA256/MD5哈希计算、UUID生成、JWT解析\n\nTags: base64:2.0.0, crypto:2.0.0, encoding:2.0.0, hash:2.0.0, latest:2.0.0, pro:2.0.0, security:2.0.0\n\nVersion history:\n\nv2.0.0 | 2026-05-29T23:31:41.556Z | auto\n\n- Added premium badge to skill metadata.\n- Introduced hub.json file for metadata management.\n- Minor text encoding/corruption present in documentation.\n- No functional code changes.\n\nv1.0.0 | 2026-05-29T22:46:07.510Z | auto\n\nCrypto Encoder 1.0.0 – 编码工具箱首发版\n\n- 支持 Base64 编码/解码、URL 编码/解码功能\n- 提供 SHA256/SHA512/MD5 哈希计算与 HMAC-SHA256 签名\n- 支持 UUID v4 生成与 JWT Token 解析（不验签）\n- 密码强度检查与批量编码工具\n- 适用 API认证、数据校验、Token处理等多种场景\n\nArchive index:\n\nArchive v2.0.0: 4 files, 4272 bytes\n\nFiles: hub.json (611b), skill-card.md (2165b), SKILL.md (6132b), _meta.json (139b)\n\nFile v2.0.0:SKILL.md\n\n---\nbadge: premium\nname: crypto-encoder\nversion: 2.0.0\ndescription: 编码工具�?- Base64编码/解码、URL编码/解码、SHA256/MD5哈希计算、UUID生成、JWT解析\ntags: [crypto, encoding, base64, hash, uuid, security]\nauthor: laosi\nsource: original\n---\n\n# Crypto Encoder - 编码工具�?\n> 激活词: 编码 / base64 / 哈希 / hash / uuid\n\n## 功能\n\n- Base64 编码/解码\n- URL 编码/解码\n- SHA256/SHA512/MD5 哈希\n- HMAC 签名\n- UUID v4 生成\n- JWT Token 解析\n- 密码强度检�?\n## Python 实现\n\n```python\nimport base64, hashlib, hmac, uuid, json, re\nfrom datetime import datetime\nfrom typing import Dict, Optional\n\nclass CryptoEncoder:\n    def __init__(self):\n        self.history: list = []\n    \n    def base64_encode(self, text: str) -> str:\n        \"\"\"Base64编码\"\"\"\n        result = base64.b64encode(text.encode(\"utf-8\")).decode(\"ascii\")\n        self._log(\"base64_encode\", text, result)\n        return result\n    \n    def base64_decode(self, encoded: str) -> str:\n        \"\"\"Base64解码\"\"\"\n        result = base64.b64decode(encoded.encode(\"ascii\")).decode(\"utf-8\")\n        self._log(\"base64_decode\", encoded, result)\n        return result\n    \n    def url_encode(self, text: str) -> str:\n        \"\"\"URL编码\"\"\"\n        from urllib.parse import quote\n        result = quote(text, safe=\"\")\n        self._log(\"url_encode\", text, result)\n        return result\n    \n    def url_decode(self, encoded: str) -> str:\n        \"\"\"URL解码\"\"\"\n        from urllib.parse import unquote\n        result = unquote(encoded)\n        self._log(\"url_decode\", encoded, result)\n        return result\n    \n    def sha256(self, text: str) -> str:\n        \"\"\"SHA256哈希\"\"\"\n        result = hashlib.sha256(text.encode(\"utf-8\")).hexdigest()\n        self._log(\"sha256\", text, result)\n        return result\n    \n    def sha512(self, text: str) -> str:\n        \"\"\"SHA512哈希\"\"\"\n        return hashlib.sha512(text.encode(\"utf-8\")).hexdigest()\n    \n    def md5(self, text: str) -> str:\n        \"\"\"MD5哈希\"\"\"\n        return hashlib.md5(text.encode(\"utf-8\")).hexdigest()\n    \n    def hmac_sha256(self, message: str, key: str) -> str:\n        \"\"\"HMAC-SHA256签名\"\"\"\n        return hmac.new(\n            key.encode(\"utf-8\"),\n            message.encode(\"utf-8\"),\n            hashlib.sha256\n        ).hexdigest()\n    \n    def generate_uuid(self) -> str:\n        \"\"\"生成UUID v4\"\"\"\n        return str(uuid.uuid4())\n    \n    def parse_jwt(self, token: str) -> dict:\n        \"\"\"解析JWT Token（不验证签名�?\"\"\n        parts = token.split(\".\")\n        if len(parts) != 3:\n            return {\"error\": \"Invalid JWT format\"}\n        \n        try:\n            header = json.loads(base64.urlsafe_b64decode(parts[0] + \"==\"))\n            payload = json.loads(base64.urlsafe_b64decode(parts[1] + \"==\"))\n            return {\n                \"header\": header,\n                \"payload\": payload,\n                \"signature\": parts[2][:20] + \"...\",\n            }\n        except Exception as e:\n            return {\"error\": str(e)}\n    \n    def password_strength(self, password: str) -> dict:\n        \"\"\"密码强度检�?\"\"\n        score = 0\n        checks = {\n            \"length\": len(password) >= 8,\n            \"uppercase\": bool(re.search(r\"[A-Z]\", password)),\n            \"lowercase\": bool(re.search(r\"[a-z]\", password)),\n            \"digits\": bool(re.search(r\"\\d\", password)),\n            \"special\": bool(re.search(r\"[!@#$%^&*(),.?\\\":{}|<>]\", password)),\n        }\n        score = sum(checks.values())\n        \n        if score <= 2:\n            strength = \"weak\"\n        elif score <= 3:\n            strength = \"fair\"\n        elif score <= 4:\n            strength = \"good\"\n        else:\n            strength = \"strong\"\n        \n        return {\n            \"score\": score,\n            \"max_score\": 5,\n            \"strength\": strength,\n            \"checks\": checks,\n        }\n    \n    def _log(self, operation: str, input_val: str, output_val: str):\n        self.history.append({\n            \"operation\": operation,\n            \"input\": input_val[:50],\n            \"output\": output_val[:50],\n            \"timestamp\": datetime.now().isoformat()\n        })\n    \n    def batch_encode(self, text: str) -> Dict[str, str]:\n        \"\"\"批量编码\"\"\"\n        return {\n            \"original\": text,\n            \"base64\": self.base64_encode(text),\n            \"url\": self.url_encode(text),\n            \"sha256\": self.sha256(text),\n            \"md5\": self.md5(text),\n            \"uuid\": self.generate_uuid(),\n        }\n\n# 使用示例\ncrypto = CryptoEncoder()\n\n# Base64\nencoded = crypto.base64_encode(\"Hello, 世界!\")\ndecoded = crypto.base64_decode(encoded)\nprint(f\"Base64: {encoded}\")\nprint(f\"解码: {decoded}\")\n\n# URL编码\nurl_enc = crypto.url_encode(\"https://example.com/path?q=你好&lang=�?)\nprint(f\"URL编码: {url_enc}\")\n\n# 哈希\nprint(f\"SHA256: {crypto.sha256('password123')}\")\nprint(f\"MD5: {crypto.md5('Hello')}\")\n\n# HMAC\nprint(f\"HMAC: {crypto.hmac_sha256('message', 'secret-key')}\")\n\n# UUID\nprint(f\"UUID: {crypto.generate_uuid()}\")\n\n# JWT解析\njwt_token = \"eyJhbGciOiJIUzI1NiJ9.eyJ1c2VyIjoiYWxpY2UiLCJleHAiOjE3MDkxMjM0NTZ9.signature\"\nparsed = crypto.parse_jwt(jwt_token)\nprint(f\"JWT Header: {parsed.get('header')}\")\nprint(f\"JWT Payload: {parsed.get('payload')}\")\n\n# 密码强度\nstrength = crypto.password_strength(\"MyP@ssw0rd!\")\nprint(f\"密码强度: {strength['strength']} ({strength['score']}/{strength['max_score']})\")\n\n# 批量编码\nbatch = crypto.batch_encode(\"OpenCode 2026\")\nprint(f\"\\n批量编码:\")\nfor k, v in batch.items():\n    print(f\"  {k}: {v[:40]}\")\n```\n\n## 编码对照\n\n| 输入 | Base64 | SHA256 (�?�? | MD5 |\n|------|--------|---------------|-----|\n| `hello` | `aGVsbG8=` | `2cf24dba` | `5d41402a` |\n| `12345` | `MTIzNDU=` | `8d969eef` | `827ccb0e` |\n\n## 使用场景\n\n1. **API认证**: Base64编码Basic Auth、Bearer Token\n2. **数据完整�?*: SHA256校验文件哈希\n3. **密码存储**: MD5/SHA256哈希（加盐）\n4. **Token处理**: 解析JWT、生成API密钥\n5. **Web开�?*: URL编码参数、CSRF Token生成\n\n## 依赖\n\n- Python 3.8+\n- 标准库（base64, hashlib, hmac, uuid, json�?\n\nFile v2.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn71pk44ca87scz3pstt90r66n80xhaa\",\n  \"slug\": \"laosi-crypto-encoder\",\n  \"version\": \"2.0.0\",\n  \"publishedAt\": 1780097501556\n}\n\nFile v2.0.0:skill-card.md\n\n## Description:\n\nCrypto Encoder Pro provides Base64 and URL encoding and decoding, SHA-256/SHA-512/MD5 hashing, HMAC-SHA256 signing, UUID v4 generation, JWT parsing, and password-strength checks.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[534422530](https://clawhub.ai/user/534422530)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and technical users use this skill to generate or inspect common encodings, hashes, HMAC signatures, UUIDs, JWT payloads, and password-strength signals during application and API workflows.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Sensitive values used with encoding, hashing, or JWT parsing may be retained in local history.\n\nMitigation: Avoid using real credentials, JWTs, passwords, API keys, or bearer tokens unless logging is removed or redacted.\n\nRisk: The skill includes unsafe password-storage guidance based on MD5 or SHA-256 hashes.\n\nMitigation: Do not follow the MD5/SHA-256 password-storage guidance; use a dedicated password-hashing library instead.\n\nRisk: JWT parsing can expose header and payload fields without proving that the token is valid.\n\nMitigation: Use parsed JWT output for inspection only, and verify signatures and claims with a trusted JWT library before relying on them.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/534422530/skills/laosi-crypto-encoder)\n- [ClawHub publisher profile](https://clawhub.ai/user/534422530)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, code, guidance]\n\n**Output Format:** [Markdown text with Python code blocks and structured result snippets]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include generated encodings, hashes, UUIDs, parsed JWT fields, and password-strength assessments.]\n\n## Skill Version(s):\n\n2.0.0 (source: frontmatter, hub.json, release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v2.0.0:hub.json\n\n{\r\n    \"description\":  \"Premium version with full implementation, examples, and enterprise support\",\r\n    \"minOpenClawVersion\":  \"1.2.0\",\r\n    \"version\":  \"2.0.0\",\r\n    \"tags\":  [\r\n                 \"crypto\",\r\n                 \"encoding\",\r\n                 \"base64\",\r\n                 \"hash\",\r\n                 \"security\",\r\n                 \"pro\"\r\n             ],\r\n    \"author\":  \"laosi\",\r\n    \"name\":  \"crypto-encoder\",\r\n    \"pricing\":  {\r\n                    \"price\":  1500,\r\n                    \"model\":  \"one-time\"\r\n                },\r\n    \"license\":  \"MIT\",\r\n    \"displayName\":  \"Crypto Encoder Pro\"\r\n}\n\nArchive v1.0.0: 3 files, 3858 bytes\n\nFiles: skill-card.md (2152b), SKILL.md (6128b), _meta.json (139b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: crypto-encoder\nversion: 1.0.0\ndescription: 编码工具箱 - Base64编码/解码、URL编码/解码、SHA256/MD5哈希计算、UUID生成、JWT解析\ntags: [crypto, encoding, base64, hash, uuid, security]\nauthor: laosi\nsource: original\n---\n\n# Crypto Encoder - 编码工具箱\n\n> 激活词: 编码 / base64 / 哈希 / hash / uuid\n\n## 功能\n\n- Base64 编码/解码\n- URL 编码/解码\n- SHA256/SHA512/MD5 哈希\n- HMAC 签名\n- UUID v4 生成\n- JWT Token 解析\n- 密码强度检查\n\n## Python 实现\n\n```python\nimport base64, hashlib, hmac, uuid, json, re\nfrom datetime import datetime\nfrom typing import Dict, Optional\n\nclass CryptoEncoder:\n    def __init__(self):\n        self.history: list = []\n    \n    def base64_encode(self, text: str) -> str:\n        \"\"\"Base64编码\"\"\"\n        result = base64.b64encode(text.encode(\"utf-8\")).decode(\"ascii\")\n        self._log(\"base64_encode\", text, result)\n        return result\n    \n    def base64_decode(self, encoded: str) -> str:\n        \"\"\"Base64解码\"\"\"\n        result = base64.b64decode(encoded.encode(\"ascii\")).decode(\"utf-8\")\n        self._log(\"base64_decode\", encoded, result)\n        return result\n    \n    def url_encode(self, text: str) -> str:\n        \"\"\"URL编码\"\"\"\n        from urllib.parse import quote\n        result = quote(text, safe=\"\")\n        self._log(\"url_encode\", text, result)\n        return result\n    \n    def url_decode(self, encoded: str) -> str:\n        \"\"\"URL解码\"\"\"\n        from urllib.parse import unquote\n        result = unquote(encoded)\n        self._log(\"url_decode\", encoded, result)\n        return result\n    \n    def sha256(self, text: str) -> str:\n        \"\"\"SHA256哈希\"\"\"\n        result = hashlib.sha256(text.encode(\"utf-8\")).hexdigest()\n        self._log(\"sha256\", text, result)\n        return result\n    \n    def sha512(self, text: str) -> str:\n        \"\"\"SHA512哈希\"\"\"\n        return hashlib.sha512(text.encode(\"utf-8\")).hexdigest()\n    \n    def md5(self, text: str) -> str:\n        \"\"\"MD5哈希\"\"\"\n        return hashlib.md5(text.encode(\"utf-8\")).hexdigest()\n    \n    def hmac_sha256(self, message: str, key: str) -> str:\n        \"\"\"HMAC-SHA256签名\"\"\"\n        return hmac.new(\n            key.encode(\"utf-8\"),\n            message.encode(\"utf-8\"),\n            hashlib.sha256\n        ).hexdigest()\n    \n    def generate_uuid(self) -> str:\n        \"\"\"生成UUID v4\"\"\"\n        return str(uuid.uuid4())\n    \n    def parse_jwt(self, token: str) -> dict:\n        \"\"\"解析JWT Token（不验证签名）\"\"\"\n        parts = token.split(\".\")\n        if len(parts) != 3:\n            return {\"error\": \"Invalid JWT format\"}\n        \n        try:\n            header = json.loads(base64.urlsafe_b64decode(parts[0] + \"==\"))\n            payload = json.loads(base64.urlsafe_b64decode(parts[1] + \"==\"))\n            return {\n                \"header\": header,\n                \"payload\": payload,\n                \"signature\": parts[2][:20] + \"...\",\n            }\n        except Exception as e:\n            return {\"error\": str(e)}\n    \n    def password_strength(self, password: str) -> dict:\n        \"\"\"密码强度检查\"\"\"\n        score = 0\n        checks = {\n            \"length\": len(password) >= 8,\n            \"uppercase\": bool(re.search(r\"[A-Z]\", password)),\n            \"lowercase\": bool(re.search(r\"[a-z]\", password)),\n            \"digits\": bool(re.search(r\"\\d\", password)),\n            \"special\": bool(re.search(r\"[!@#$%^&*(),.?\\\":{}|<>]\", password)),\n        }\n        score = sum(checks.values())\n        \n        if score <= 2:\n            strength = \"weak\"\n        elif score <= 3:\n            strength = \"fair\"\n        elif score <= 4:\n            strength = \"good\"\n        else:\n            strength = \"strong\"\n        \n        return {\n            \"score\": score,\n            \"max_score\": 5,\n            \"strength\": strength,\n            \"checks\": checks,\n        }\n    \n    def _log(self, operation: str, input_val: str, output_val: str):\n        self.history.append({\n            \"operation\": operation,\n            \"input\": input_val[:50],\n            \"output\": output_val[:50],\n            \"timestamp\": datetime.now().isoformat()\n        })\n    \n    def batch_encode(self, text: str) -> Dict[str, str]:\n        \"\"\"批量编码\"\"\"\n        return {\n            \"original\": text,\n            \"base64\": self.base64_encode(text),\n            \"url\": self.url_encode(text),\n            \"sha256\": self.sha256(text),\n            \"md5\": self.md5(text),\n            \"uuid\": self.generate_uuid(),\n        }\n\n# 使用示例\ncrypto = CryptoEncoder()\n\n# Base64\nencoded = crypto.base64_encode(\"Hello, 世界!\")\ndecoded = crypto.base64_decode(encoded)\nprint(f\"Base64: {encoded}\")\nprint(f\"解码: {decoded}\")\n\n# URL编码\nurl_enc = crypto.url_encode(\"https://example.com/path?q=你好&lang=中\")\nprint(f\"URL编码: {url_enc}\")\n\n# 哈希\nprint(f\"SHA256: {crypto.sha256('password123')}\")\nprint(f\"MD5: {crypto.md5('Hello')}\")\n\n# HMAC\nprint(f\"HMAC: {crypto.hmac_sha256('message', 'secret-key')}\")\n\n# UUID\nprint(f\"UUID: {crypto.generate_uuid()}\")\n\n# JWT解析\njwt_token = \"eyJhbGciOiJIUzI1NiJ9.eyJ1c2VyIjoiYWxpY2UiLCJleHAiOjE3MDkxMjM0NTZ9.signature\"\nparsed = crypto.parse_jwt(jwt_token)\nprint(f\"JWT Header: {parsed.get('header')}\")\nprint(f\"JWT Payload: {parsed.get('payload')}\")\n\n# 密码强度\nstrength = crypto.password_strength(\"MyP@ssw0rd!\")\nprint(f\"密码强度: {strength['strength']} ({strength['score']}/{strength['max_score']})\")\n\n# 批量编码\nbatch = crypto.batch_encode(\"OpenCode 2026\")\nprint(f\"\\n批量编码:\")\nfor k, v in batch.items():\n    print(f\"  {k}: {v[:40]}\")\n```\n\n## 编码对照\n\n| 输入 | Base64 | SHA256 (前8位) | MD5 |\n|------|--------|---------------|-----|\n| `hello` | `aGVsbG8=` | `2cf24dba` | `5d41402a` |\n| `12345` | `MTIzNDU=` | `8d969eef` | `827ccb0e` |\n\n## 使用场景\n\n1. **API认证**: Base64编码Basic Auth、Bearer Token\n2. **数据完整性**: SHA256校验文件哈希\n3. **密码存储**: MD5/SHA256哈希（加盐）\n4. **Token处理**: 解析JWT、生成API密钥\n5. **Web开发**: URL编码参数、CSRF Token生成\n\n## 依赖\n\n- Python 3.8+\n- 标准库（base64, hashlib, hmac, uuid, json）\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn71pk44ca87scz3pstt90r66n80xhaa\",\n  \"slug\": \"laosi-crypto-encoder\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1780094767510\n}\n\nFile v1.0.0:skill-card.md\n\n## Description: <br>\nEncoding toolbox for Base64 and URL encoding or decoding, SHA256/MD5 hashing, UUID generation, JWT parsing, HMAC signing, and password-strength checks. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[534422530](https://clawhub.ai/user/534422530) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and engineers use this skill to generate local encoding, hashing, signing, UUID, JWT-inspection, and password-strength helper code or guidance for API authentication, data integrity checks, token handling, and web development tasks. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Sensitive passwords, API keys, bearer tokens, or production JWTs could be retained or displayed by the example class history. <br>\nMitigation: Use test values for sensitive workflows, avoid pasting production secrets, or ask the agent to disable history before processing sensitive inputs. <br>\nRisk: JWT parsing in the artifact inspects token contents without validating the signature. <br>\nMitigation: Treat parsed JWT output as inspection-only and verify signatures with an appropriate JWT library before trusting token claims. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/534422530/laosi-crypto-encoder) <br>\n- [Publisher profile](https://clawhub.ai/user/534422530) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Text, Markdown, Code, Guidance] <br>\n**Output Format:** [Markdown with Python code examples and structured text] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Local helper behavior; no network, file access, persistence, or executable install behavior identified by security evidence.] <br>\n\n## Skill Version(s): <br>\n1.0.0 (source: frontmatter and server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>","readmeExcerpt":"Skill: Crypto Encoder Pro Owner: 534422530 Summary: 编码工具�?- Base64编码/解码、URL编码/解码、SHA256/MD5哈希计算、UUID生成、JWT解析 Tags: base64:2.0.0, crypto:2.0.0, encoding:2.0.0, hash:2.0.0, latest:2.0.0, pro:2.0.0, security:2.0.0 Version history: v2.0.0 | 2026-05-29T23:31:41.556Z | auto - Added premium badge to skill metadata. - Introduced hub.json file for metadata management. - Minor text encoding/corruption present in documentation.","codeSnippets":[],"executableExamples":[{"language":"python","snippet":"import base64, hashlib, hmac, uuid, json, re\nfrom datetime import datetime\nfrom typing import Dict, Optional\n\nclass CryptoEncoder:\n    def __init__(self):\n        self.history: list = []\n    \n    def base64_encode(self, text: str) -> str:\n        \"\"\"Base64编码\"\"\"\n        result = base64.b64encode(text.encode(\"utf-8\")).decode(\"ascii\")\n        self._log(\"base64_encode\", text, result)\n        return result\n    \n    def base64_decode(self, encoded: str) -> str:\n        \"\"\"Base64解码\"\"\"\n        result = base64.b64decode(encoded.encode(\"ascii\")).decode(\"utf-8\")\n        self._log(\"base64_decode\", encoded, result)\n        return result\n    \n    def url_encode(self, text: str) -> str:\n        \"\"\"URL编码\"\"\"\n        from urllib.parse import quote\n        result = quote(text, safe=\"\")\n        self._log(\"url_encode\", text, result)\n        return result\n    \n    def url_decode(self, encoded: str) -> str:\n        \"\"\"URL解码\"\"\"\n        from urllib.parse import unquote\n        result = unquote(encoded)\n        self._log(\"url_decode\", encoded, result)\n        return result\n    \n    def sha256(self, text: str) -> str:\n        \"\"\"SHA256哈希\"\"\"\n        result = hashlib.sha256(text.encode(\"utf-8\")).hexdigest()\n        self._log(\"sha256\", text, result)\n        return result\n    \n    def sha512(self, text: str) -> str:\n        \"\"\"SHA512哈希\"\"\"\n        return hashlib.sha512(text.encode(\"utf-8\")).hexdigest()\n    \n    def md5(self, text: str) -> str:\n        \"\"\"MD5哈希\"\"\"\n        return hashlib.md5(text.encode(\"utf-8\")).hexdigest()\n    \n    def hmac_sha256(self, message: str, key: str) -> str:\n        \"\"\"HMAC-SHA256签名\"\"\"\n        return hmac.new(\n            key.encode(\"utf-8\"),\n            message.encode(\"utf-8\"),\n            hashlib.sha256\n        ).hexdigest()\n    \n    def generate_uuid(self) -> str:\n        \"\"\"生成UUID v4\"\"\"\n        return str(uuid.uuid4())\n    \n    def parse_jwt(self, token: str) -> dict:\n        \"\"\"解析JWT Token（不验证签名�?\"\"\n        parts = token.split(\".\")\n        if len(parts) != 3:\n      "},{"language":"python","snippet":"import base64, hashlib, hmac, uuid, json, re\nfrom datetime import datetime\nfrom typing import Dict, Optional\n\nclass CryptoEncoder:\n    def __init__(self):\n        self.history: list = []\n    \n    def base64_encode(self, text: str) -> str:\n        \"\"\"Base64编码\"\"\"\n        result = base64.b64encode(text.encode(\"utf-8\")).decode(\"ascii\")\n        self._log(\"base64_encode\", text, result)\n        return result\n    \n    def base64_decode(self, encoded: str) -> str:\n        \"\"\"Base64解码\"\"\"\n        result = base64.b64decode(encoded.encode(\"ascii\")).decode(\"utf-8\")\n        self._log(\"base64_decode\", encoded, result)\n        return result\n    \n    def url_encode(self, text: str) -> str:\n        \"\"\"URL编码\"\"\"\n        from urllib.parse import quote\n        result = quote(text, safe=\"\")\n        self._log(\"url_encode\", text, result)\n        return result\n    \n    def url_decode(self, encoded: str) -> str:\n        \"\"\"URL解码\"\"\"\n        from urllib.parse import unquote\n        result = unquote(encoded)\n        self._log(\"url_decode\", encoded, result)\n        return result\n    \n    def sha256(self, text: str) -> str:\n        \"\"\"SHA256哈希\"\"\"\n        result = hashlib.sha256(text.encode(\"utf-8\")).hexdigest()\n        self._log(\"sha256\", text, result)\n        return result\n    \n    def sha512(self, text: str) -> str:\n        \"\"\"SHA512哈希\"\"\"\n        return hashlib.sha512(text.encode(\"utf-8\")).hexdigest()\n    \n    def md5(self, text: str) -> str:\n        \"\"\"MD5哈希\"\"\"\n        return hashlib.md5(text.encode(\"utf-8\")).hexdigest()\n    \n    def hmac_sha256(self, message: str, key: str) -> str:\n        \"\"\"HMAC-SHA256签名\"\"\"\n        return hmac.new(\n            key.encode(\"utf-8\"),\n            message.encode(\"utf-8\"),\n            hashlib.sha256\n        ).hexdigest()\n    \n    def generate_uuid(self) -> str:\n        \"\"\"生成UUID v4\"\"\"\n        return str(uuid.uuid4())\n    \n    def parse_jwt(self, token: str) -> dict:\n        \"\"\"解析JWT Token（不验证签名）\"\"\"\n        parts = token.split(\".\")\n        if len(parts) != 3:\n      "}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nbadge: premium\nname: crypto-encoder\nversion: 2.0.0\ndescription: 编码工具�?- Base64编码/解码、URL编码/解码、SHA256/MD5哈希计算、UUID生成、JWT解析\ntags: [crypto, encoding, base64, hash, uuid, security]\nauthor: laosi\nsource: original\n---\n\n# Crypto Encoder - 编码工具�?\n> 激活词: 编码 / base64 / 哈希 / hash / uuid\n\n## 功能\n\n- Base64 编码/解码\n- URL 编码/解码\n- SHA256/SHA512/MD5 哈希\n- HMAC 签名\n- UUID v4 生成\n- JWT Token 解析\n- 密码强度检�?\n## Python 实现\n\n```python\nimport base64, hashlib, hmac, uuid, json, re\nfrom datetime import datetime\nfrom typing import Dict, Optional\n\nclass CryptoEncoder:\n    def __init__(self):\n        self.history: list = []\n    \n    def base64_encode(self, text: str) -> str:\n        \"\"\"Base64编码\"\"\"\n        result = base64.b64encode(text.encode(\"utf-8\")).decode(\"ascii\")\n        self._log(\"base64_encode\", text, result)\n        return result\n    \n    def base64_decode(self, encoded: str) -> str:\n        \"\"\"Base64解码\"\"\"\n        result = base64.b64decode(encoded.encode(\"ascii\")).decode(\"utf-8\")\n        self._log(\"base64_decode\", encoded, result)\n        return result\n    \n    def url_encode(self, text: str) -> str:\n        \"\"\"URL编码\"\"\"\n        from urllib.parse import quote\n        result = quote(text, safe=\"\")\n        self._log(\"url_encode\", text, result)\n        return result\n    \n    def url_decode(self, encoded: str) -> str:\n        \"\"\"URL解码\"\"\"\n        from urllib.parse import unquote\n        result = unquote(encoded)\n        self._log(\"url_decode\", encoded, result)\n        return result\n    \n    def sha256(self, text: str) -> str:\n        \"\"\"SHA256哈希\"\"\"\n        result = hashlib.sha256(text.encode(\"utf-8\")).hexdigest()\n        self._log(\"sha256\", text, result)\n        return result\n    \n    def sha512(self, text: str) -> str:\n        \"\"\"SHA512哈希\"\"\"\n        return hashlib.sha512(text.encode(\"utf-8\")).hexdigest()\n    \n    def md5(self, text: str) -> str:\n        \"\"\"MD5哈希\"\"\"\n        return hashlib.md5(text.encode(\"utf-8\")).hexdigest()\n    \n    def hmac_sha256(self, message: str, key: str) -> str:\n        \"\"\"HMAC-SHA256签名\"\"\"\n        return hmac.new(\n            key.encode(\"utf-8\"),\n            message.encode(\"utf-8\"),\n            hashlib.sha256\n        ).hexdigest()\n    \n    def generate_uuid(self) -> str:\n        \"\"\"生成UUID v4\"\"\"\n        return str(uuid.uuid4())\n    \n    def parse_jwt(self, token: str) -> dict:\n        \"\"\"解析JWT Token（不验证签名�?\"\"\n        parts = token.split(\".\")\n        if len(parts) != 3:\n            return {\"error\": \"Invalid JWT format\"}\n        \n        try:\n            header = json.loads(base64.urlsafe_b64decode(parts[0] + \"==\"))\n            payload = json.loads(base64.urlsafe_b64decode(parts[1] + \"==\"))\n            return {\n                \"header\": header,\n                \"payload\": payload,\n                \"signature\": parts[2][:20] + \"...\",\n            }\n        except Exception as e:\n            return {\"error\": str(e)}\n    \n    def password_strength(self, password: str) -> dict:\n        \"\"\"密码强度检�?\"\"\n        score = 0\n        checks = {\n            \"length\": len(pa"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn71pk44ca87scz3pstt90r66n80xhaa\",\n  \"slug\": \"laosi-crypto-encoder\",\n  \"version\": \"2.0.0\",\n  \"publishedAt\": 1780097501556\n}"},{"path":"skill-card.md","content":"## Description:\n\nCrypto Encoder Pro provides Base64 and URL encoding and decoding, SHA-256/SHA-512/MD5 hashing, HMAC-SHA256 signing, UUID v4 generation, JWT parsing, and password-strength checks.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[534422530](https://clawhub.ai/user/534422530)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and technical users use this skill to generate or inspect common encodings, hashes, HMAC signatures, UUIDs, JWT payloads, and password-strength signals during application and API workflows.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Sensitive values used with encoding, hashing, or JWT parsing may be retained in local history.\n\nMitigation: Avoid using real credentials, JWTs, passwords, API keys, or bearer tokens unless logging is removed or redacted.\n\nRisk: The skill includes unsafe password-storage guidance based on MD5 or SHA-256 hashes.\n\nMitigation: Do not follow the MD5/SHA-256 password-storage guidance; use a dedicated password-hashing library instead.\n\nRisk: JWT parsing can expose header and payload fields without proving that the token is valid.\n\nMitigation: Use parsed JWT output for inspection only, and verify signatures and claims with a trusted JWT library before relying on them.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/534422530/skills/laosi-crypto-encoder)\n- [ClawHub publisher profile](https://clawhub.ai/user/534422530)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, code, guidance]\n\n**Output Format:** [Markdown text with Python code blocks and structured result snippets]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include generated encodings, hashes, UUIDs, parsed JWT fields, and password-strength assessments.]\n\n## Skill Version(s):\n\n2.0.0 (source: frontmatter, hub.json, release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."},{"path":"hub.json","content":"{\r\n    \"description\":  \"Premium version with full implementation, examples, and enterprise support\",\r\n    \"minOpenClawVersion\":  \"1.2.0\",\r\n    \"version\":  \"2.0.0\",\r\n    \"tags\":  [\r\n                 \"crypto\",\r\n                 \"encoding\",\r\n                 \"base64\",\r\n                 \"hash\",\r\n                 \"security\",\r\n                 \"pro\"\r\n             ],\r\n    \"author\":  \"laosi\",\r\n    \"name\":  \"crypto-encoder\",\r\n    \"pricing\":  {\r\n                    \"price\":  1500,\r\n                    \"model\":  \"one-time\"\r\n                },\r\n    \"license\":  \"MIT\",\r\n    \"displayName\":  \"Crypto Encoder Pro\"\r\n}"}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"编码工具�?- Base64编码/解码、URL编码/解码、SHA256/MD5哈希计算、UUID生成、JWT解析 Skill: Crypto Encoder Pro Owner: 534422530 Summary: 编码工具�?- Base64编码/解码、URL编码/解码、SHA256/MD5哈希计算、UUID生成、JWT解析 Tags: base64:2.0.0, crypto:2.0.0, encoding:2.0.0, hash:2.0.0, latest:2.0.0, pro:2.0.0, security:2.0.0 Version history: v2.0.0 | 2026-05-29T23:31:41.556Z | auto - Added premium badge to skill metadata. - Introduced hub.json file for metadata management. - Minor text encoding/corruption present in documentation.","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":1039,"uniquenessScore":47,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-12T02:39:08.310Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-12T02:39:08.310Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-14T02:37:51.340Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}