{"id":"cmuxjzccm1gbmad07nmc8pt5w","slug":"nodejs-keccak256","publicId":"af8d15a7-6e61-49c6-bd27-917db23ecaa6","name":"nodejs-keccak256","description":"Prevent Ethereum hashing bugs in JavaScript and TypeScript. Node's sha3-256 is NIST SHA3, not Ethereum Keccak-256, and silently breaks selectors, signatures, storage slots, and address derivation. Use when hashing for Ethereum in JavaScript or TypeScript, or when a selector, signature, storage slot, or derived address is wrong.","version":"1.0.0","author":"affaan-m","license":"MIT","compatibility":"","status":"completed","overallGrade":"A","scannerVersion":11,"fileCount":1,"hasSkillMd":true,"hasScripts":false,"hasReferences":false,"hasEvals":false,"hasAssets":false,"sourceType":"github","sourceUrl":"https://github.com/affaan-m/ecc/tree/main/skills/nodejs-keccak256","createdAt":"2026-10-07T03:33:45.555Z","completedAt":"2026-10-07T03:33:45.482Z","visibility":"public","publishedAt":"2026-08-06T17:13:23.146Z","category":"","frameworks":[],"badgeStatus":"vettd","downloadCount":0,"verdictRationale":{"summary":"Skill failed: 0 hard fails in skill checks.","verdict":"fail","scanners":[{"source":"vettd","weight":1,"verdict":null},{"source":"cisco","weight":0.8,"verdict":"pass"}],"consensus":"pending","warnTriggers":[],"policyVersion":"consensus-v1","hardFailTriggers":[]},"verdictPolicyVersion":"consensus-v1","skillId":"cmshryiz105t0ad0745eth981","findings":[{"id":"cmuxjzccm1gbnad07er8ndp7i","source":"cisco","category":"security","label":"Skill does not specify a license","detail":"SKILL.md — Skill manifest does not include a 'license' field. Specifying a license helps users understand usage terms.","severity":"info","ruleId":"MANIFEST_MISSING_LICENSE","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"592f7ac7731768f0fd0bba83f30850f9","filepath":"SKILL.md"}],"scannerRuns":[{"source":"cisco","status":"success","verdict":null,"grade":"A","findingCount":1,"criticalCount":0,"highCount":0},{"source":"vettd","status":"success","verdict":null,"grade":"A","findingCount":0,"criticalCount":0,"highCount":0}],"user":{"name":"Justin Pacella","image":"https://avatars.githubusercontent.com/u/97124458?v=4"},"repository":{"owner":"affaan-m","name":"ecc"},"freshness":{"status":"verified_unchanged","reason":null,"retryable":false,"renamedTo":null,"lastCheckedAt":"2026-10-22T01:35:39.442Z","lastVerifiedAt":"2026-10-22T01:35:39.442Z","lastChangeDetectedAt":"2026-08-25T20:06:24.063Z","scannedHash":"69f4a0a16718920a42b050d0beb23987d0a00f13","latestUpstreamHash":"69f4a0a16718920a42b050d0beb23987d0a00f13","nextCheckDueAt":"2026-10-23T02:03:17.567Z"},"signalCategories":[{"category":"safety","label":"Safety","form":"graded","verdict":null,"rows":[]},{"category":"reliability","label":"Reliability & Quality","form":"graded","verdict":null,"rows":[]},{"category":"performance","label":"Performance","form":"measured","verdict":{"form":"measured","magnitudes":[{"ruleId":"performance/static-context-tokens","label":"Static context tokens","value":743,"unit":null,"method":"tiktoken/cl100k_base/skill-md-body"}]},"rows":[{"origin":"signal","id":"cmuxjzhld1gu8ad07okr0jryg","subjectType":"skill_audit","subjectId":"cmuxjzccm1gbmad07nmc8pt5w","relatedType":"","relatedId":"","dataCategory":"performance","sourceClass":"scan","source":"vettd","ruleId":"performance/progressive-disclosure","severity":null,"label":"Progressive disclosure","detail":null,"valueNum":null,"valueText":"absent","unit":null,"method":null,"derivation":"read","confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T03:33:42.000Z","payload":null},{"origin":"signal","id":"cmuxjzffv1gfqad07qrjziowr","subjectType":"skill_audit","subjectId":"cmuxjzccm1gbmad07nmc8pt5w","relatedType":"","relatedId":"","dataCategory":"performance","sourceClass":"scan","source":"vettd","ruleId":"performance/static-context-tokens","severity":null,"label":"Static context tokens","detail":null,"valueNum":743,"valueText":null,"unit":null,"method":"tiktoken/cl100k_base/skill-md-body","derivation":null,"confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T03:33:42.000Z","payload":null}]},{"category":"cost","label":"Cost","form":"measured","verdict":null,"rows":[]},{"category":"compatibility","label":"Compatibility","form":"unjudged","verdict":{"form":"unjudged"},"rows":[{"origin":"signal","id":"cmuxjzfia1ggiad07yrj37gxm","subjectType":"skill_audit","subjectId":"cmuxjzccm1gbmad07nmc8pt5w","relatedType":"","relatedId":"","dataCategory":"compatibility","sourceClass":"scan","source":"vettd","ruleId":"compatibility/declared-environment-assumptions","severity":null,"label":"Declared environment assumptions","detail":null,"valueNum":null,"valueText":"","unit":null,"method":null,"derivation":"read","confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T03:33:42.000Z","payload":null},{"origin":"signal","id":"cmuxjzg711gmiad07gxioffne","subjectType":"skill_audit","subjectId":"cmuxjzccm1gbmad07nmc8pt5w","relatedType":"","relatedId":"","dataCategory":"compatibility","sourceClass":"scan","source":"vettd","ruleId":"compatibility/declared-name","severity":null,"label":"Declared skill name","detail":null,"valueNum":null,"valueText":"nodejs-keccak256","unit":null,"method":null,"derivation":"read","confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T03:33:42.000Z","payload":null}]},{"category":"sentiment","label":"Popularity","form":"unjudged","verdict":null,"rows":[]},{"category":"characteristics","label":"Characteristics","form":"unjudged","verdict":null,"rows":[]}],"signalCount":24,"publisherSupplied":["name","description","author","version","license"]}