{"id":19878842,"url":"https://github.com/veliovgroup/meteor-aes-crypto","last_synced_at":"2026-05-13T04:39:08.402Z","repository":{"id":146650006,"uuid":"44490154","full_name":"veliovgroup/meteor-aes-crypto","owner":"veliovgroup","description":"🔐 Simplified isomorphic API for AES cipher by CryptoJS","archived":false,"fork":false,"pushed_at":"2019-12-18T00:04:28.000Z","size":20,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-11T17:49:11.463Z","etag":null,"topics":["aes","aes-cipher","cryptojs","meteor","meteor-package","meteorjs"],"latest_commit_sha":null,"homepage":"https://atmospherejs.com/ostrio/aes-crypto","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/veliovgroup.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-10-18T18:15:56.000Z","updated_at":"2021-01-01T17:58:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"5cdb62d8-45cf-40d9-a4b9-463acca7a0cb","html_url":"https://github.com/veliovgroup/meteor-aes-crypto","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/veliovgroup%2Fmeteor-aes-crypto","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/veliovgroup%2Fmeteor-aes-crypto/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/veliovgroup%2Fmeteor-aes-crypto/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/veliovgroup%2Fmeteor-aes-crypto/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/veliovgroup","download_url":"https://codeload.github.com/veliovgroup/meteor-aes-crypto/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241309093,"owners_count":19941722,"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","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":["aes","aes-cipher","cryptojs","meteor","meteor-package","meteorjs"],"created_at":"2024-11-12T17:06:50.724Z","updated_at":"2026-05-13T04:39:08.341Z","avatar_url":"https://github.com/veliovgroup.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Isomorphic AES cipher\n\nSimplified isomorphic API for AES cipher by CryptoJS.\n\nThis implementation uses a random salt for every encrypted value and CFB padding. This means if you even encrypt two times the same value with the same password the encrypted result will be both times different. So encrypted values by this method are strong against rainbow tables and all other precomputed tables.\n\n- 😎 No external dependencies;\n- ㊗️ Has Unicode, Cyrillic, emoji support for values and keys;\n- 👷‍♂️ __100%__ tests coverage.\n\n## Installation\n\n```shell\nmeteor add ostrio:aes-crypto\n```\n\n## ES6 Import\n\n```js\nimport { AESencrypt, AESdecrypt } from 'meteor/ostrio:aes-crypto';\n```\n\n## API\n\n### Encrypt\n\n- `AESencrypt(value, password)`\n  - `value` {*String*}\n  - `password` {*String*}\n\n```js\nAESencrypt('My Plain String', 'TXkgUGxhaW4gU3RyaW5n');\n// Returns: '{\"ct\":\"ZQAp/MEV0pMDn6V7oY5YFVvEGNxvG2eJliNPZpT9U2I=\",\"iv\":\"0e472d2cd20892ac9cfcf91dea4fe98e\",\"s\":\"35e808ccc71b8c13\"}'\n```\n\n### Decrypt\n\n- `AESdecrypt(value, password)`\n  - `value` {*String*} - In form of *JSONableString*\n  - `password` {*String*}\n\n```js\nAESdecrypt('{\"ct\":\"ZQAp/MEV0pMDn6V7oY5YFVvEGNxvG2eJliNPZpT9U2I=\",\"iv\":\"0e472d2cd20892ac9cfcf91dea4fe98e\",\"s\":\"35e808ccc71b8c13\"}', 'TXkgUGxhaW4gU3RyaW5n');\n// Returns: 'My Plain String'\n```\n\n### Validate encrypted JSONable String\n\nTo validate returned object from `AESencrypt` function use this regular expression:\n\n```js\n/^{\"ct\":\"([A-Za-z0-9+\\/]+(\\={0,2}))\",\"iv\":\"([0-9a-f]{32})\",\"s\"\\:\"([0-9a-f]{16})\"}$/;\n```\n\n## Example:\n\n```js\nconst JSONableString = AESencrypt('My Plain String', 'TXkgUGxhaW4gU3RyaW5n');\n/^{\"ct\":\"([A-Za-z0-9+\\/]+(\\={0,2}))\",\"iv\":\"([0-9a-f]{32})\",\"s\"\\:\"([0-9a-f]{16})\"}$/.test(JSONableString);\n// Returns: true\n\nAESdecrypt(JSONableString, 'TXkgUGxhaW4gU3RyaW5n');\n// Returns: 'My Plain String'\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fveliovgroup%2Fmeteor-aes-crypto","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fveliovgroup%2Fmeteor-aes-crypto","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fveliovgroup%2Fmeteor-aes-crypto/lists"}