{"id":16415434,"url":"https://github.com/aykxt/crypto","last_synced_at":"2025-10-13T17:36:06.313Z","repository":{"id":44455939,"uuid":"300318542","full_name":"aykxt/crypto","owner":"aykxt","description":"🔐 Fast crypto library for Deno written in pure Typescript. AES, Blowfish, CAST5, DES, 3DES, HMAC, HKDF, PBKDF2","archived":false,"fork":false,"pushed_at":"2025-02-15T06:26:02.000Z","size":185,"stargazers_count":52,"open_issues_count":0,"forks_count":5,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-09-06T08:23:19.196Z","etag":null,"topics":["3des","aes","blowfish","cast5","cbc","cfb","ciphers","crypto","ctr","deno","des","ecb","hkdf","hmac","ofb","pbkdf2","typescript"],"latest_commit_sha":null,"homepage":"https://deno.land/x/crypto","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aykxt.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-10-01T14:58:02.000Z","updated_at":"2025-08-27T13:21:29.000Z","dependencies_parsed_at":"2022-08-26T00:21:36.324Z","dependency_job_id":"65c27504-01f7-4612-a92c-ffa1b3c6bedf","html_url":"https://github.com/aykxt/crypto","commit_stats":{"total_commits":51,"total_committers":1,"mean_commits":51.0,"dds":0.0,"last_synced_commit":"b2195e2df873044bf43636e4acacacc52d06cfad"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"purl":"pkg:github/aykxt/crypto","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aykxt%2Fcrypto","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aykxt%2Fcrypto/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aykxt%2Fcrypto/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aykxt%2Fcrypto/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aykxt","download_url":"https://codeload.github.com/aykxt/crypto/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aykxt%2Fcrypto/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279016357,"owners_count":26085828,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-13T02:00:06.723Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3des","aes","blowfish","cast5","cbc","cfb","ciphers","crypto","ctr","deno","des","ecb","hkdf","hmac","ofb","pbkdf2","typescript"],"created_at":"2024-10-11T07:05:44.537Z","updated_at":"2025-10-13T17:36:06.295Z","avatar_url":"https://github.com/aykxt.png","language":"TypeScript","readme":"\u003ch1 align=\"center\"\u003e🔐 Deno Crypto\u003c/h1\u003e\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://github.com/aykxt/crypto/workflows/ci/badge.svg\" /\u003e\n\u003ca href=\"https://codecov.io/gh/aykxt/crypto\"\u003e\n\u003cimg src=\"https://codecov.io/gh/aykxt/crypto/branch/main/graph/badge.svg?token=P2B1SMA3TS\"/\u003e\n\u003c/a\u003e\n\u003ca href=\"https://deno.land/x/crypto\"\u003e\u003cimg src=\"https://img.shields.io/endpoint?url=https%3A%2F%2Fdeno-visualizer.danopia.net%2Fshields%2Flatest-version%2Fx%2Fcrypto\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003eA collection of useful cryptographic algorithms written in Typescript.\u003c/p\u003e\n\n---\n\n\u003e 🧪 **This project is still in an early stage of development. Expect breaking\n\u003e changes**.\n\n---\n\n## ✔ Supported algorithms\n\n### [Block ciphers]\n\n- [AES] (Rijndael)\n- [Blowfish]\n- [CAST5] (CAST-128)\n- [DES]\n- [3DES]\n- ECB, CBC, CFB, OFB, CTR and IGE [block modes]\n\n### [Message Authentication Code] algorithms (MACs)\n\n- [HMAC]\n\n### [Key Derivation Functions] (KDFs)\n\n- [HKDF]\n- [PBKDF2]\n\n## 📝 Examples\n\n#### AES-128-CBC\n\n```ts\nimport { Aes } from \"https://deno.land/x/crypto/aes.ts\";\nimport { Cbc, Padding } from \"https://deno.land/x/crypto/block-modes.ts\";\n\nconst te = new TextEncoder();\n\nconst key = te.encode(\"SuperDuperSecret\");\nconst data = te.encode(\"DataToBeEncrypted\");\nconst iv = new Uint8Array(16);\n\n// Ciphers have an internal state, you should therefore create\n// separate ciphers for encryption and decryption\nconst cipher = new Cbc(Aes, key, iv, Padding.PKCS7);\nconst decipher = new Cbc(Aes, key, iv, Padding.PKCS7);\n\nconst encrypted = cipher.encrypt(data);\nconst decrypted = decipher.decrypt(encrypted);\n```\n\n## 🔔 Disclaimer\n\nThis repository has not yet received any formal cryptographic and security\nreviews. **USE AT YOUR OWN RISK**\n\n[Block ciphers]: https://en.wikipedia.org/wiki/Block_cipher\n[block modes]: https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation\n[AES]: https://en.wikipedia.org/wiki/Advanced_Encryption_Standard\n[Blowfish]: https://en.wikipedia.org/wiki/Blowfish_(cipher)\n[CAST5]: https://en.wikipedia.org/wiki/CAST-128\n[DES]: https://en.wikipedia.org/wiki/Data_Encryption_Standard\n[3DES]: https://en.wikipedia.org/wiki/Triple_DES\n[Message Authentication Code]: https://en.wikipedia.org/wiki/Message_authentication_code\n[HMAC]: https://en.wikipedia.org/wiki/HMAC\n[Key Derivation Functions]: https://en.wikipedia.org/wiki/Key_derivation_function\n[HKDF]: https://en.wikipedia.org/wiki/HKDF\n[PBKDF2]: https://en.wikipedia.org/wiki/PBKDF2\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faykxt%2Fcrypto","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faykxt%2Fcrypto","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faykxt%2Fcrypto/lists"}