Browser-compatible implementation of Node.js crypto module providing cryptographic operations in web environments.
Overall
score
100%
{
"context": "This criteria evaluates how effectively an engineer uses the crypto-browserify hashing API to implement file integrity checking functionality. The focus is on correct usage of createHash, Hash methods (update, digest), and getHashes functions.",
"type": "weighted_checklist",
"checklist": [
{
"name": "createHash usage",
"description": "Uses createHash() function to create hash objects for different algorithms (sha256, md5, sha512). Correctly passes algorithm names as strings to createHash().",
"max_score": 25
},
{
"name": "Hash update method",
"description": "Uses the update() method on hash objects to add data for hashing. Correctly handles different input types (strings, Buffers) and encodings.",
"max_score": 20
},
{
"name": "Hash digest method",
"description": "Uses the digest() method to finalize hash computation and retrieve the result. Correctly specifies output encodings ('hex', 'base64') as parameters to digest().",
"max_score": 20
},
{
"name": "getHashes function",
"description": "Uses getHashes() function to retrieve the list of supported hash algorithms. Returns the array of algorithm names correctly.",
"max_score": 15
},
{
"name": "Incremental hashing",
"description": "Implements incremental hashing by calling update() multiple times on the same hash object before calling digest(). Demonstrates understanding of the streaming/chainable API pattern.",
"max_score": 15
},
{
"name": "Proper algorithm names",
"description": "Uses correct algorithm name strings as documented in crypto-browserify ('sha256', 'md5', 'sha512', etc.) rather than incorrect variations.",
"max_score": 5
}
]
}Install with Tessl CLI
npx tessl i tessl/npm-crypto-browserifydocs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10