{"_id":"@alessiofrittoli/crypto-algorithm","_rev":"12-70318d9f9586ba564fae893899acaffd","name":"@alessiofrittoli/crypto-algorithm","dist-tags":{"alpha":"2.3.1-alpha.1","latest":"2.4.0"},"versions":{"0.1.0-alpha.2":{"name":"@alessiofrittoli/crypto-algorithm","version":"0.1.0-alpha.2","keywords":["crypto","algorithms"],"author":{"url":"https://alessiofrittoli.it","name":"Alessio Frittoli","email":"info@alessiofrittoli.it"},"license":"MIT","_id":"@alessiofrittoli/crypto-algorithm@0.1.0-alpha.2","maintainers":[{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"}],"homepage":"https://github.com/alessiofrittoli/crypto-algorithm#readme","bugs":{"url":"https://github.com/alessiofrittoli/crypto-algorithm/issues","email":"info@alessiofrittoli.it"},"dist":{"shasum":"6bca6a77130d28431fa91ddc5d0dcc1011d8c588","tarball":"https://registry.npmjs.org/@alessiofrittoli/crypto-algorithm/-/crypto-algorithm-0.1.0-alpha.2.tgz","fileCount":11,"integrity":"sha512-2Xt3HYzf6DDJJrDkEvylzqyzOrbjtrEdcuonrpZUSC1U0ChBE7RUTRpXtvJ42sSawrIqWDVKEYuE/XxK9+XA+A==","signatures":[{"sig":"MEUCIQCyMaUR7FQ4OwjD+eBkumsDq072QhVi/Q0fZd3eDrbFzwIgCdRodVuA+bP+7ml3Vp9CgWYyBZpoJkdnOQuXt4z40V4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23904},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.mjs","require":"./dist/types.js"}},"gitHead":"d80214989500f08748dbf094866016b5ac195f17","scripts":{"lint":"eslint","test":"jest --watchAll --verbose","build":"eslint && jest --ci --verbose && tsup","test:ci":"jest --ci --verbose","test:jest":"pnpm test jest.test.ts","test:algorithm":"pnpm test algorithm.test.ts"},"_npmUser":{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"},"repository":{"url":"git+https://github.com/alessiofrittoli/crypto-algorithm.git","type":"git"},"_npmVersion":"10.9.0","description":"Lightweight TypeScript library with Node.js Crypto Algortihm utilities","directories":{},"sideEffects":false,"_nodeVersion":"20.18.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tsup":"^8.3.5","dotenv":"^16.4.5","eslint":"^9.16.0","globals":"^15.12.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","@eslint/js":"^9.16.0","typescript":"^5.7.2","@types/jest":"^29.5.14","@types/node":"^22.10.1","@jest/globals":"^29.7.0","typescript-eslint":"^8.16.0"},"_npmOperationalInternal":{"tmp":"tmp/crypto-algorithm_0.1.0-alpha.2_1732981781207_0.812302491421568","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"@alessiofrittoli/crypto-algorithm","version":"1.0.0","keywords":["crypto","algorithms"],"author":{"url":"https://alessiofrittoli.it","name":"Alessio Frittoli","email":"info@alessiofrittoli.it"},"license":"MIT","_id":"@alessiofrittoli/crypto-algorithm@1.0.0","maintainers":[{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"}],"homepage":"https://github.com/alessiofrittoli/crypto-algorithm#readme","bugs":{"url":"https://github.com/alessiofrittoli/crypto-algorithm/issues","email":"info@alessiofrittoli.it"},"dist":{"shasum":"d4ccb77e31dbea7cf3bbd47fd1bd290a75a1c8da","tarball":"https://registry.npmjs.org/@alessiofrittoli/crypto-algorithm/-/crypto-algorithm-1.0.0.tgz","fileCount":11,"integrity":"sha512-B/F0PROHSLWS6TW/RXascPGz0KUJdpFIJPm3J3DRNRnA2nazsz3gkVootuIZ5r4oGRPuu6y11SGLE5ULaaUSdA==","signatures":[{"sig":"MEUCIEiilnD+U1GZ66dfUfDaT++LA1oYUUXiFtN0inE1vAZaAiEAoV10ZkKjDTkgUOHn44FdRq6reZFGd43lbcQBb3JHrvc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23052},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.mjs","require":"./dist/types.js"}},"gitHead":"dcc7ad4c3a8199d1ba691af4bd23a9a193a1fe7f","scripts":{"lint":"eslint","test":"jest --watchAll --verbose","build":"eslint && jest --ci --verbose && tsup","test:ci":"jest --ci --verbose","test:jest":"pnpm test jest.test.ts","test:algorithm":"pnpm test algorithm.test.ts"},"_npmUser":{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"},"repository":{"url":"git+https://github.com/alessiofrittoli/crypto-algorithm.git","type":"git"},"_npmVersion":"10.9.0","description":"Lightweight TypeScript library with Node.js Crypto Algortihm utilities","directories":{},"sideEffects":false,"_nodeVersion":"20.18.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tsup":"^8.3.5","dotenv":"^16.4.5","eslint":"^9.16.0","globals":"^15.12.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","@eslint/js":"^9.16.0","typescript":"^5.7.2","@types/jest":"^29.5.14","@types/node":"^22.10.1","@jest/globals":"^29.7.0","typescript-eslint":"^8.16.0"},"_npmOperationalInternal":{"tmp":"tmp/crypto-algorithm_1.0.0_1732983062430_0.25846849010582784","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"@alessiofrittoli/crypto-algorithm","version":"1.1.0","keywords":["crypto","algorithms"],"author":{"url":"https://alessiofrittoli.it","name":"Alessio Frittoli","email":"info@alessiofrittoli.it"},"license":"MIT","_id":"@alessiofrittoli/crypto-algorithm@1.1.0","maintainers":[{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"}],"homepage":"https://github.com/alessiofrittoli/crypto-algorithm#readme","bugs":{"url":"https://github.com/alessiofrittoli/crypto-algorithm/issues","email":"info@alessiofrittoli.it"},"dist":{"shasum":"2996f9136b86b255bd8b1d079e69184d9d724dc8","tarball":"https://registry.npmjs.org/@alessiofrittoli/crypto-algorithm/-/crypto-algorithm-1.1.0.tgz","fileCount":11,"integrity":"sha512-eGDXruk7L3cGis6g2aKcwNiim/bHqmwN+MItvjGq4/hkwyIPXgtMh/XHvJEXN2shZrPTS6BVqazDbQ/oghxvbQ==","signatures":[{"sig":"MEUCIGBmj39I0Hw2tXhT4fTSwrOjWEjcKExn8yYqptuqGJswAiEAi00RwHiDxjzoUaHkKug2rs2rjkfTf+pqqTCze4Ug3SU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26642},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.mjs","require":"./dist/types.js"}},"gitHead":"dc29cf044300ca9d00d79a9c2247c6a3387b5c58","scripts":{"lint":"eslint","test":"jest --watchAll --verbose","build":"eslint && jest --ci --verbose && tsup","test:ci":"jest --ci --verbose","test:jest":"pnpm test jest.test.ts","test:algorithm":"pnpm test algorithm.test.ts"},"_npmUser":{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"},"repository":{"url":"git+https://github.com/alessiofrittoli/crypto-algorithm.git","type":"git"},"_npmVersion":"10.9.0","description":"Lightweight TypeScript library with Node.js Crypto Algortihm utilities","directories":{},"sideEffects":false,"_nodeVersion":"20.18.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tsup":"^8.3.5","dotenv":"^16.4.5","eslint":"^9.16.0","globals":"^15.12.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","@eslint/js":"^9.16.0","typescript":"^5.7.2","@types/jest":"^29.5.14","@types/node":"^22.10.1","@jest/globals":"^29.7.0","typescript-eslint":"^8.16.0"},"_npmOperationalInternal":{"tmp":"tmp/crypto-algorithm_1.1.0_1733060329443_0.5701280542461455","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"@alessiofrittoli/crypto-algorithm","version":"1.2.0","keywords":["crypto","algorithms"],"author":{"url":"https://alessiofrittoli.it","name":"Alessio Frittoli","email":"info@alessiofrittoli.it"},"license":"MIT","_id":"@alessiofrittoli/crypto-algorithm@1.2.0","maintainers":[{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"}],"homepage":"https://github.com/alessiofrittoli/crypto-algorithm#readme","bugs":{"url":"https://github.com/alessiofrittoli/crypto-algorithm/issues","email":"info@alessiofrittoli.it"},"dist":{"shasum":"876f469e2125bf47a1791f0f29c8bd1a6f9857c5","tarball":"https://registry.npmjs.org/@alessiofrittoli/crypto-algorithm/-/crypto-algorithm-1.2.0.tgz","fileCount":11,"integrity":"sha512-j6OQzQqyy4gI/5tNzTFheDNgTfEuXXYUiTDOBZtQ7thExhRakwVr6V4futacpVyjEdHujAQFGV0Mvz3nCjpVUA==","signatures":[{"sig":"MEUCIQDu4KrMtVztuM0xm/8rKSJkw52547siJn7raEg+dJiV8wIgL8By38cHiuGPL4XKMacmpPwASeQ36kSEkU6fVPqr0Xs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26637},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts","import":"./dist/types.mjs","require":"./dist/types.js"}},"gitHead":"8e1a7eeef9a7ba8b3f8eeeae950f17871bfa2e45","scripts":{"lint":"eslint","test":"jest --watchAll --verbose","build":"eslint && jest --ci --verbose && tsup","test:ci":"jest --ci --verbose","test:jest":"pnpm test jest.test.ts","test:algorithm":"pnpm test algorithm.test.ts"},"_npmUser":{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"},"repository":{"url":"git+https://github.com/alessiofrittoli/crypto-algorithm.git","type":"git"},"_npmVersion":"10.9.0","description":"Lightweight TypeScript library with Node.js Crypto Algortihm utilities","directories":{},"sideEffects":false,"_nodeVersion":"20.18.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tsup":"^8.3.5","dotenv":"^16.4.5","eslint":"^9.16.0","globals":"^15.12.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","@eslint/js":"^9.16.0","typescript":"^5.7.2","@types/jest":"^29.5.14","@types/node":"^22.10.1","@jest/globals":"^29.7.0","typescript-eslint":"^8.16.0"},"_npmOperationalInternal":{"tmp":"tmp/crypto-algorithm_1.2.0_1733061347347_0.4061595280403325","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"@alessiofrittoli/crypto-algorithm","version":"2.0.0","keywords":["crypto","algorithms"],"author":{"url":"https://alessiofrittoli.it","name":"Alessio Frittoli","email":"info@alessiofrittoli.it"},"license":"MIT","_id":"@alessiofrittoli/crypto-algorithm@2.0.0","maintainers":[{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"}],"homepage":"https://github.com/alessiofrittoli/crypto-algorithm#readme","bugs":{"url":"https://github.com/alessiofrittoli/crypto-algorithm/issues","email":"info@alessiofrittoli.it"},"dist":{"shasum":"6ec0f9b41c1e25a6fb4cad664999e69c77025c86","tarball":"https://registry.npmjs.org/@alessiofrittoli/crypto-algorithm/-/crypto-algorithm-2.0.0.tgz","fileCount":11,"integrity":"sha512-oa6Go+j9/XRlxW9ZqQtcho6MTsNtA/F6S50MQgQprR5FjrJatkKUZ5xJLpn0GUqvrssQxS2fYjVPAuVG41RIWA==","signatures":[{"sig":"MEQCIDKx85NNfHjbI0V8S6UFbPjqTM0zG21G1e0JTOOWZRUmAiAIN5CpP9S8TZi0Isq25rtq5Vyn00JBEYG74VKKLC+b5A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27171},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts"}},"gitHead":"46f14791b163c29a9d84a3b606a33183141898df","scripts":{"lint":"eslint","test":"pnpm test:watch","build":"pnpm lint && pnpm test:ci && tsup","release":"node scripts/publish.js --verbose --npm","test:ci":"jest --ci --verbose","test:jest":"pnpm test jest.test.ts","test:watch":"jest --watchAll --verbose","build:watch":"tsup --watch","test:coverage":"pnpm test:watch --coverage","test:algorithm":"pnpm test algorithm.test.ts","test:ci:coverage":"pnpm test:ci --coverage","test:coverage:serve":"concurrently --prefix none --kill-others \"pnpm test:coverage\" \"pnpm test:serve-coverage\"","test:serve-coverage":"http-server ./coverage/lcov-report --gzip true -p 0 -o --silent"},"_npmUser":{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"},"repository":{"url":"git+https://github.com/alessiofrittoli/crypto-algorithm.git","type":"git"},"_npmVersion":"10.9.0","description":"Lightweight TypeScript library with Node.js Crypto Algortihm utilities","directories":{},"sideEffects":false,"_nodeVersion":"20.18.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tsup":"^8.3.5","dotenv":"^16.4.7","eslint":"^9.17.0","globals":"^15.14.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","@eslint/js":"^9.17.0","typescript":"^5.7.2","@types/jest":"^29.5.14","@types/node":"^22.10.2","http-server":"^14.1.1","concurrently":"^9.1.1","@jest/globals":"^29.7.0","typescript-eslint":"^8.18.2","@alessiofrittoli/node-scripts":"^2.2.1"},"_npmOperationalInternal":{"tmp":"tmp/crypto-algorithm_2.0.0_1735502509844_0.14351930185868267","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@alessiofrittoli/crypto-algorithm","version":"2.1.0","keywords":["crypto","algorithms"],"author":{"url":"https://alessiofrittoli.it","name":"Alessio Frittoli","email":"info@alessiofrittoli.it"},"license":"MIT","_id":"@alessiofrittoli/crypto-algorithm@2.1.0","maintainers":[{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"}],"homepage":"https://github.com/alessiofrittoli/crypto-algorithm#readme","bugs":{"url":"https://github.com/alessiofrittoli/crypto-algorithm/issues","email":"info@alessiofrittoli.it"},"dist":{"shasum":"56b4a5a2970e7efa2f134ffb8c3799909e19393e","tarball":"https://registry.npmjs.org/@alessiofrittoli/crypto-algorithm/-/crypto-algorithm-2.1.0.tgz","fileCount":15,"integrity":"sha512-YHUSyxdnuK8Bmg/mciD+qY44CQYN7ndx5gQcSo9WRKsQPSqcz8Xh56apZ+/CFttGV4bktj14NIsIj4OqpoxySQ==","signatures":[{"sig":"MEUCIQD0aGcrdl2Z5Rn+eOfMll9Bywdrn2vYm3mkn0gNZgkXqAIgaaj4RU3YO3u60k9sYYAEgtUc1WZcG7aWgGxzji1Bu0M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69279},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["esbuild"]},"types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts"}},"funding":[{"url":"https://github.com/sponsors/alessiofrittoli","type":"github"}],"gitHead":"ff06695d034c04f21d26e4bb30d948f47f719433","scripts":{"//1a":"*********************************************************************","//1b":"*********************** BUILD - LINT - RELEASE **********************","//1c":"*********************************************************************","//2a":"*********************************************************************","//2b":"***************************** UNIT TESTS ****************************","//2c":"*********************************************************************","//3a":"*********************************************************************","//3b":"************************ UNIT TESTS COVERAGE ************************","//3c":"*********************************************************************","//4a":"*********************************************************************","//4b":"************************ TARGETED UNIT TESTS ************************","//4c":"*********************************************************************","lint":"eslint","test":"jest --verbose","build":"pnpm lint && pnpm test:ci && tsup","release":"node scripts/publish.js --verbose --npm","test:ci":"jest --ci --verbose","test:jest":"pnpm test:watch jest.test.ts","test:watch":"jest --watchAll --verbose","build:watch":"tsup --watch","test:coverage":"pnpm test:watch --coverage","test:algorithm":"pnpm test algorithm.test.ts","test:ci:coverage":"pnpm test:ci --coverage","test:coverage:serve":"concurrently --prefix none --kill-others \"pnpm test:coverage\" \"pnpm test:serve-coverage\"","test:serve-coverage":"http-server ./coverage/lcov-report --gzip true -p 0 -o --silent"},"_npmUser":{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"},"repository":{"url":"git+https://github.com/alessiofrittoli/crypto-algorithm.git","type":"git"},"_npmVersion":"10.9.0","description":"Lightweight TypeScript library with Node.js Crypto Algortihm utilities","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tsup":"^8.4.0","dotenv":"^16.4.7","eslint":"^9.22.0","globals":"^16.0.0","ts-jest":"^29.2.6","ts-node":"^10.9.2","@eslint/js":"^9.22.0","typescript":"^5.8.2","@types/jest":"^29.5.14","@types/node":"^22.13.10","http-server":"^14.1.1","concurrently":"^9.1.2","@jest/globals":"^29.7.0","typescript-eslint":"^8.26.1","@alessiofrittoli/node-scripts":"^2.3.1"},"_npmOperationalInternal":{"tmp":"tmp/crypto-algorithm_2.1.0_1742411186783_0.6630264726592865","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"@alessiofrittoli/crypto-algorithm","version":"2.1.1","keywords":["crypto","algorithms"],"author":{"url":"https://alessiofrittoli.it","name":"Alessio Frittoli","email":"info@alessiofrittoli.it"},"license":"MIT","_id":"@alessiofrittoli/crypto-algorithm@2.1.1","maintainers":[{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"}],"homepage":"https://github.com/alessiofrittoli/crypto-algorithm#readme","bugs":{"url":"https://github.com/alessiofrittoli/crypto-algorithm/issues","email":"info@alessiofrittoli.it"},"dist":{"shasum":"4d02765243357ed04a1bbb6017db47f42881a8a8","tarball":"https://registry.npmjs.org/@alessiofrittoli/crypto-algorithm/-/crypto-algorithm-2.1.1.tgz","fileCount":15,"integrity":"sha512-4eH8B1sp0Eavk+IsSLClxhT0p3XszdbOjyfY1IwLFKxDNZ18BW1nd9N1Cvd9SBoZNwkohFaqvrvmOj9tj6V+9Q==","signatures":[{"sig":"MEUCIQCSnab/wg4WMCRlHAvOXP2qHuslV8jlU9ckfRbxgqdVaQIgHdLFLa9eRMvne5OFUr08ZG6ejbU1g1Awdb98qkDn9wA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69285},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["esbuild"]},"types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts"}},"funding":[{"url":"https://github.com/sponsors/alessiofrittoli","type":"github"}],"gitHead":"a447021b6871b4be7b4831ccd5334f2a33859973","scripts":{"//1a":"*********************************************************************","//1b":"*********************** BUILD - LINT - RELEASE **********************","//1c":"*********************************************************************","//2a":"*********************************************************************","//2b":"***************************** UNIT TESTS ****************************","//2c":"*********************************************************************","//3a":"*********************************************************************","//3b":"************************ UNIT TESTS COVERAGE ************************","//3c":"*********************************************************************","//4a":"*********************************************************************","//4b":"************************ TARGETED UNIT TESTS ************************","//4c":"*********************************************************************","lint":"eslint","test":"jest --verbose","build":"pnpm lint && pnpm test:ci && tsup","release":"node scripts/publish.js --verbose --npm","test:ci":"jest --ci --verbose","test:jest":"pnpm test:watch jest.test.ts","test:watch":"jest --watchAll --verbose","build:watch":"tsup --watch","test:coverage":"pnpm test:watch --coverage","test:algorithm":"pnpm test:watch algorithm.test.ts","test:ci:coverage":"pnpm test:ci --coverage","test:coverage:serve":"concurrently --prefix none --kill-others \"pnpm test:coverage\" \"pnpm test:serve-coverage\"","test:serve-coverage":"http-server ./coverage/lcov-report --gzip true -p 0 -o --silent"},"_npmUser":{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"},"repository":{"url":"git+https://github.com/alessiofrittoli/crypto-algorithm.git","type":"git"},"_npmVersion":"10.9.0","description":"Lightweight TypeScript library with Node.js Crypto Algortihm utilities","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tsup":"^8.4.0","dotenv":"^16.4.7","eslint":"^9.22.0","globals":"^16.0.0","ts-jest":"^29.2.6","ts-node":"^10.9.2","@eslint/js":"^9.22.0","typescript":"^5.8.2","@types/jest":"^29.5.14","@types/node":"^22.13.10","http-server":"^14.1.1","concurrently":"^9.1.2","@jest/globals":"^29.7.0","typescript-eslint":"^8.26.1","@alessiofrittoli/node-scripts":"^2.3.1"},"_npmOperationalInternal":{"tmp":"tmp/crypto-algorithm_2.1.1_1742411363969_0.5774776735184739","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@alessiofrittoli/crypto-algorithm","version":"2.2.0","keywords":["crypto","algorithms"],"author":{"url":"https://alessiofrittoli.it","name":"Alessio Frittoli","email":"info@alessiofrittoli.it"},"license":"MIT","_id":"@alessiofrittoli/crypto-algorithm@2.2.0","maintainers":[{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"}],"homepage":"https://github.com/alessiofrittoli/crypto-algorithm#readme","bugs":{"url":"https://github.com/alessiofrittoli/crypto-algorithm/issues","email":"info@alessiofrittoli.it"},"dist":{"shasum":"0b0c8a675b46fe8c46527629b9abef8d76783ae0","tarball":"https://registry.npmjs.org/@alessiofrittoli/crypto-algorithm/-/crypto-algorithm-2.2.0.tgz","fileCount":15,"integrity":"sha512-uhGnh/4lvIb+EMnq9dSJ8v5xEVJJpFi0oOY/2gZ/DyUvW/t1nZPt1DpQLJa0Xtzu3HavYEircOtw6lFKnHVqkw==","signatures":[{"sig":"MEUCIQDUnQJjvHp3lwOAy4TTq70M/r0OHGM8RDrn2KL8JWUS4gIgfEXDk//5uD7SVW4vBGwp7Aq5jyZPsQiecMKxqK8MIJE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68856},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["esbuild"]},"types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts"}},"funding":[{"url":"https://github.com/sponsors/alessiofrittoli","type":"github"}],"gitHead":"404be240694d14e6bc30327208d590605aa4744a","scripts":{"//1a":"*********************************************************************","//1b":"*********************** BUILD - LINT - RELEASE **********************","//1c":"*********************************************************************","//2a":"*********************************************************************","//2b":"***************************** UNIT TESTS ****************************","//2c":"*********************************************************************","//3a":"*********************************************************************","//3b":"************************ UNIT TESTS COVERAGE ************************","//3c":"*********************************************************************","lint":"eslint","test":"jest --verbose","build":"pnpm lint && pnpm test:ci && tsup","release":"node scripts/publish.js --verbose --npm","test:ci":"jest --ci --verbose","test:watch":"jest --watchAll --verbose","build:watch":"tsup --watch","test:coverage":"pnpm test:watch --coverage","test:ci:coverage":"pnpm test:ci --coverage","test:coverage:serve":"concurrently --prefix none --kill-others \"pnpm test:coverage\" \"pnpm test:serve-coverage\"","test:serve-coverage":"http-server ./coverage/lcov-report --gzip true -p 0 -o --silent"},"_npmUser":{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"},"repository":{"url":"git+https://github.com/alessiofrittoli/crypto-algorithm.git","type":"git"},"_npmVersion":"10.9.0","description":"Lightweight TypeScript library with Node.js Crypto Algortihm utilities","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tsup":"^8.4.0","dotenv":"^16.4.7","eslint":"^9.23.0","globals":"^16.0.0","ts-jest":"^29.2.6","ts-node":"^10.9.2","@eslint/js":"^9.23.0","typescript":"^5.8.2","@types/jest":"^29.5.14","@types/node":"^22.13.11","http-server":"^14.1.1","concurrently":"^9.1.2","@jest/globals":"^29.7.0","typescript-eslint":"^8.27.0","@alessiofrittoli/node-scripts":"^2.4.0"},"_npmOperationalInternal":{"tmp":"tmp/crypto-algorithm_2.2.0_1742643705461_0.3991306422760317","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@alessiofrittoli/crypto-algorithm","version":"2.3.0","keywords":["crypto","algorithms"],"author":{"url":"https://alessiofrittoli.it","name":"Alessio Frittoli","email":"info@alessiofrittoli.it"},"license":"MIT","_id":"@alessiofrittoli/crypto-algorithm@2.3.0","maintainers":[{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"}],"homepage":"https://github.com/alessiofrittoli/crypto-algorithm#readme","bugs":{"url":"https://github.com/alessiofrittoli/crypto-algorithm/issues","email":"info@alessiofrittoli.it"},"dist":{"shasum":"f874badebf890ad02141380762de57b616241db8","tarball":"https://registry.npmjs.org/@alessiofrittoli/crypto-algorithm/-/crypto-algorithm-2.3.0.tgz","fileCount":11,"integrity":"sha512-rQM/XMasJMsGmhu9DzA77n+a8WSMbYdWXriQYT4SebwpxFawStHMFsgvXroAMUBaYmwNyVw7jTxl+MaxJKz95Q==","signatures":[{"sig":"MEYCIQDUmm5wD8Ro2QNSfwoo8WQNX17M2Sm4ghHNHDtWI2DaUwIhAN0iTiOALv7lATycFc1zGNHAM1edYodA1S2zj8MVlJC8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30767},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["esbuild"]},"types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"},"./types":{"types":"./dist/types.d.ts"}},"funding":[{"url":"https://github.com/sponsors/alessiofrittoli","type":"github"}],"gitHead":"c9b065a5afca2e3f12df3bdec6f293f91e37e87d","scripts":{"dev":"NODE_ENV=development tsup --watch","//1a":"*********************************************************************","//1b":"******************** DEV - BUILD - LINT - RELEASE *******************","//1c":"*********************************************************************","//2a":"*********************************************************************","//2b":"***************************** UNIT TESTS ****************************","//2c":"*********************************************************************","//3a":"*********************************************************************","//3b":"************************ UNIT TESTS COVERAGE ************************","//3c":"*********************************************************************","lint":"eslint","test":"jest --verbose","build":"pnpm lint && pnpm test:ci && pnpm build:prod","release":"node scripts/publish.js --verbose --npm","test:ci":"jest --ci --verbose","build:prod":"NODE_ENV=production tsup","test:watch":"jest --watchAll --verbose","test:coverage":"pnpm test:watch --coverage","test:coverage:ci":"pnpm test:ci --coverage","test:coverage:serve":"concurrently --prefix none --kill-others \"pnpm test:coverage\" \"pnpm test:serve-coverage\"","test:serve-coverage":"http-server ./coverage/lcov-report --gzip true -p 0 -o --silent"},"_npmUser":{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"},"repository":{"url":"git+https://github.com/alessiofrittoli/crypto-algorithm.git","type":"git"},"_npmVersion":"11.0.0","description":"Lightweight TypeScript library with Node.js Crypto Algortihm utilities","directories":{},"sideEffects":false,"_nodeVersion":"22.12.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","tsup":"^8.4.0","dotenv":"^16.5.0","eslint":"^9.26.0","globals":"^16.0.0","ts-jest":"^29.3.2","ts-node":"^10.9.2","@eslint/js":"^9.26.0","typescript":"^5.8.3","@types/jest":"^29.5.14","@types/node":"^22.15.3","http-server":"^14.1.1","concurrently":"^9.1.2","@jest/globals":"^29.7.0","typescript-eslint":"^8.31.1","@alessiofrittoli/node-scripts":"^2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/crypto-algorithm_2.3.0_1746273452642_0.05754806966667991","host":"s3://npm-registry-packages-npm-production"}},"2.3.1-alpha.1":{"name":"@alessiofrittoli/crypto-algorithm","version":"2.3.1-alpha.1","keywords":["crypto","algorithms"],"author":{"url":"https://alessiofrittoli.it","name":"Alessio Frittoli","email":"info@alessiofrittoli.it"},"license":"MIT","_id":"@alessiofrittoli/crypto-algorithm@2.3.1-alpha.1","maintainers":[{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"}],"homepage":"https://github.com/alessiofrittoli/crypto-algorithm#readme","bugs":{"url":"https://github.com/alessiofrittoli/crypto-algorithm/issues","email":"info@alessiofrittoli.it"},"dist":{"shasum":"1dd83623da2595350b15a7199ee30744bcf31f06","tarball":"https://registry.npmjs.org/@alessiofrittoli/crypto-algorithm/-/crypto-algorithm-2.3.1-alpha.1.tgz","fileCount":11,"integrity":"sha512-KqahjaoDM0eVfUU2SAv3f39ihbvI/kcZeEOWutjZ9M1I/JafvqTBAdZ79Ce2rOC1JHayqzCLvAaTrdNKupxpbQ==","signatures":[{"sig":"MEQCIAXl65cCFY+VsePtm3zxBi+uZ/mPCGPXfRbMsD0OGlB0AiAsBD/NwBIKo7JDxt7IH9fy9JJc3zfPQke9VMOxNZ7wZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30939},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./types":{"import":{"types":"./dist/types.d.mts","default":"./dist/types.mjs"},"require":{"types":"./dist/types.d.ts","default":"./dist/types.js"}}},"funding":[{"url":"https://github.com/sponsors/alessiofrittoli","type":"github"}],"gitHead":"50aededd8cc1556476ceab5c41d6dbe3211fbff1","scripts":{"dev":"NODE_ENV=development tsup --watch","//1a":"*********************************************************************","//1b":"******************** DEV - BUILD - LINT - RELEASE *******************","//1c":"*********************************************************************","//2a":"*********************************************************************","//2b":"***************************** UNIT TESTS ****************************","//2c":"*********************************************************************","//3a":"*********************************************************************","//3b":"************************ UNIT TESTS COVERAGE ************************","//3c":"*********************************************************************","lint":"eslint","test":"jest --verbose","build":"pnpm lint && pnpm test:ci && pnpm build:prod","release":"node scripts/publish.js --verbose --npm","test:ci":"jest --ci --verbose","build:prod":"NODE_ENV=production tsup","test:watch":"jest --watchAll --verbose","test:coverage":"pnpm test:watch --coverage","test:coverage:ci":"pnpm test:ci --coverage","test:coverage:serve":"concurrently --prefix none --kill-others \"pnpm test:coverage\" \"pnpm test:serve-coverage\"","test:serve-coverage":"http-server ./coverage/lcov-report --gzip true -p 0 -o --silent"},"_npmUser":{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"},"repository":{"url":"git+https://github.com/alessiofrittoli/crypto-algorithm.git","type":"git"},"_npmVersion":"11.4.0","description":"Lightweight TypeScript library with Node.js Crypto Algortihm utilities","directories":{},"sideEffects":false,"_nodeVersion":"22.15.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^30.0.0","tsup":"^8.5.0","dotenv":"^16.5.0","eslint":"^9.28.0","globals":"^16.2.0","ts-jest":"^29.3.4","ts-node":"^10.9.2","@eslint/js":"^9.28.0","typescript":"^5.8.3","@types/jest":"^29.5.14","@types/node":"^24.0.0","http-server":"^14.1.1","concurrently":"^9.1.2","@jest/globals":"^30.0.0","typescript-eslint":"^8.34.0","@alessiofrittoli/node-scripts":"^2.6.0"},"_npmOperationalInternal":{"tmp":"tmp/crypto-algorithm_2.3.1-alpha.1_1749560379685_0.1948644721438817","host":"s3://npm-registry-packages-npm-production"}},"2.3.1":{"name":"@alessiofrittoli/crypto-algorithm","version":"2.3.1","keywords":["crypto","algorithms"],"author":{"url":"https://alessiofrittoli.it","name":"Alessio Frittoli","email":"info@alessiofrittoli.it"},"license":"MIT","_id":"@alessiofrittoli/crypto-algorithm@2.3.1","maintainers":[{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"}],"homepage":"https://github.com/alessiofrittoli/crypto-algorithm#readme","bugs":{"url":"https://github.com/alessiofrittoli/crypto-algorithm/issues","email":"info@alessiofrittoli.it"},"dist":{"shasum":"49a149638ac5cd6334e2fd3e04c829095708ef69","tarball":"https://registry.npmjs.org/@alessiofrittoli/crypto-algorithm/-/crypto-algorithm-2.3.1.tgz","fileCount":11,"integrity":"sha512-NsngNmErg9BxX/uqGMxgg1fgXBH2Gg2nNd5hs+/xsaA1dIq3vQGJQBOSDGhBVGOZ57CSkHn49+4+N12Zsku8dA==","signatures":[{"sig":"MEUCIAI72SLON7Zb8zwst5Ly5wEw3ty2m73xOvnmC9a1ju8EAiEAtyWtKQx9kbe1N+fTEwx6L7WbjJ1EPCB/75Ww5aNMlf4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30931},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./types":{"import":{"types":"./dist/types.d.mts","default":"./dist/types.mjs"},"require":{"types":"./dist/types.d.ts","default":"./dist/types.js"}}},"funding":[{"url":"https://github.com/sponsors/alessiofrittoli","type":"github"}],"gitHead":"cc51054c64fbaaa4d3c987a430f188765de39281","scripts":{"dev":"NODE_ENV=development tsup --watch","//1a":"*********************************************************************","//1b":"******************** DEV - BUILD - LINT - RELEASE *******************","//1c":"*********************************************************************","//2a":"*********************************************************************","//2b":"***************************** UNIT TESTS ****************************","//2c":"*********************************************************************","//3a":"*********************************************************************","//3b":"************************ UNIT TESTS COVERAGE ************************","//3c":"*********************************************************************","lint":"eslint","test":"jest --verbose","build":"pnpm lint && pnpm test:ci && pnpm build:prod","release":"node scripts/publish.js --verbose --npm","test:ci":"jest --ci --verbose","build:prod":"NODE_ENV=production tsup","test:watch":"jest --watchAll --verbose","test:coverage":"pnpm test:watch --coverage","test:coverage:ci":"pnpm test:ci --coverage","test:coverage:serve":"concurrently --prefix none --kill-others \"pnpm test:coverage\" \"pnpm test:serve-coverage\"","test:serve-coverage":"http-server ./coverage/lcov-report --gzip true -p 0 -o --silent"},"_npmUser":{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"},"repository":{"url":"git+https://github.com/alessiofrittoli/crypto-algorithm.git","type":"git"},"_npmVersion":"11.4.0","description":"Lightweight TypeScript library with Node.js Crypto Algortihm utilities","directories":{},"sideEffects":false,"_nodeVersion":"22.15.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^30.0.0","tsup":"^8.5.0","dotenv":"^16.5.0","eslint":"^9.28.0","globals":"^16.2.0","ts-jest":"^29.3.4","ts-node":"^10.9.2","@eslint/js":"^9.28.0","typescript":"^5.8.3","@types/jest":"^29.5.14","@types/node":"^24.0.0","http-server":"^14.1.1","concurrently":"^9.1.2","@jest/globals":"^30.0.0","typescript-eslint":"^8.34.0","@alessiofrittoli/node-scripts":"^2.6.0"},"_npmOperationalInternal":{"tmp":"tmp/crypto-algorithm_2.3.1_1749561435231_0.1796973495268004","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"@alessiofrittoli/crypto-algorithm","version":"2.4.0","description":"Lightweight TypeScript library with Node.js Crypto Algortihm utilities","author":{"name":"Alessio Frittoli","email":"info@alessiofrittoli.it","url":"https://alessiofrittoli.it"},"license":"MIT","funding":[{"type":"github","url":"https://github.com/sponsors/alessiofrittoli"}],"keywords":["crypto","algorithms"],"homepage":"https://github.com/alessiofrittoli/crypto-algorithm#readme","bugs":{"url":"https://github.com/alessiofrittoli/crypto-algorithm/issues","email":"info@alessiofrittoli.it"},"repository":{"type":"git","url":"git+https://github.com/alessiofrittoli/crypto-algorithm.git"},"main":"./dist/index.js","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"./types":{"import":{"types":"./dist/types.d.mts","default":"./dist/types.mjs"},"require":{"types":"./dist/types.d.ts","default":"./dist/types.js"}}},"sideEffects":false,"scripts":{"//1a":"*********************************************************************","//1b":"******************** DEV - BUILD - LINT - RELEASE *******************","//1c":"*********************************************************************","dev":"cross-env NODE_ENV=development tsup --watch","build:prod":"cross-env NODE_ENV=production tsup","build":"pnpm lint && pnpm test:ci && pnpm build:prod","lint":"eslint","release":"node scripts/release.js --verbose --npm","//2a":"*********************************************************************","//2b":"***************************** UNIT TESTS ****************************","//2c":"*********************************************************************","test":"jest --verbose","test:watch":"jest --watchAll --verbose","test:ci":"jest --ci --verbose","//3a":"*********************************************************************","//3b":"************************ UNIT TESTS COVERAGE ************************","//3c":"*********************************************************************","test:coverage":"pnpm test:watch --coverage","test:coverage:ci":"pnpm test:ci --coverage","test:serve-coverage":"http-server ./coverage/lcov-report --gzip true -p 0 -o --silent","test:coverage:serve":"concurrently --prefix none --kill-others \"pnpm test:coverage\" \"pnpm test:serve-coverage\""},"devDependencies":{"@alessiofrittoli/node-scripts":"^3.2.0","@eslint/js":"^9.39.1","@jest/globals":"^30.2.0","@types/jest":"^30.0.0","@types/node":"^24.10.1","concurrently":"^9.2.1","cross-env":"^10.1.0","dotenv":"^17.2.3","eslint":"^9.39.1","globals":"^16.5.0","http-server":"^14.1.1","jest":"^30.2.0","ts-jest":"^29.4.6","ts-node":"^10.9.2","tsup":"^8.5.1","typescript":"^5.9.3","typescript-eslint":"^8.48.1"},"_id":"@alessiofrittoli/crypto-algorithm@2.4.0","gitHead":"6d0d8945f0501b6671b515bac08a3bb07537e9da","_nodeVersion":"22.15.0","_npmVersion":"11.5.2","dist":{"integrity":"sha512-sC/F/lVaWulthE88f5Sb3erZ5TM0ysKmqcbNfypmhvkwp6xg/RS3ESDkm/596tr4Ma42HmTaPDXJRlL5GDngYQ==","shasum":"572d253bc04a58e2d84fc2729c219bef336e368c","tarball":"https://registry.npmjs.org/@alessiofrittoli/crypto-algorithm/-/crypto-algorithm-2.4.0.tgz","fileCount":11,"unpackedSize":30977,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFEJUL9s+QYKwqSJHnG4JafKKNTF+soeK9qJY1UmYGQtAiAfg0vFnytuf6VyLnoS7BZ7sCQ8rL5E/Wo674Wu2VcAPQ=="}]},"_npmUser":{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"},"directories":{},"maintainers":[{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/crypto-algorithm_2.4.0_1764868262662_0.49758054599173174"},"_hasShrinkwrap":false}},"time":{"created":"2024-11-30T15:49:41.097Z","modified":"2025-12-04T17:11:03.007Z","0.1.0-alpha.2":"2024-11-30T15:49:41.386Z","1.0.0":"2024-11-30T16:11:02.642Z","1.1.0":"2024-12-01T13:38:49.664Z","1.2.0":"2024-12-01T13:55:47.506Z","2.0.0":"2024-12-29T20:01:50.021Z","2.1.0":"2025-03-19T19:06:26.991Z","2.1.1":"2025-03-19T19:09:24.566Z","2.2.0":"2025-03-22T11:41:45.690Z","2.3.0":"2025-05-03T11:57:32.829Z","2.3.1-alpha.1":"2025-06-10T12:59:39.874Z","2.3.1":"2025-06-10T13:17:15.410Z","2.4.0":"2025-12-04T17:11:02.811Z"},"bugs":{"url":"https://github.com/alessiofrittoli/crypto-algorithm/issues","email":"info@alessiofrittoli.it"},"author":{"name":"Alessio Frittoli","email":"info@alessiofrittoli.it","url":"https://alessiofrittoli.it"},"license":"MIT","homepage":"https://github.com/alessiofrittoli/crypto-algorithm#readme","keywords":["crypto","algorithms"],"repository":{"type":"git","url":"git+https://github.com/alessiofrittoli/crypto-algorithm.git"},"description":"Lightweight TypeScript library with Node.js Crypto Algortihm utilities","maintainers":[{"name":"alessiofrittoli","email":"info@alessiofrittoli.it"}],"readme":"# Crypto Algorithm 📟\n\n[![NPM Latest Version][version-badge]][npm-url] [![Coverage Status][coverage-badge]][coverage-url] [![Socket Status][socket-badge]][socket-url] [![NPM Monthly Downloads][downloads-badge]][npm-url] [![Dependencies][deps-badge]][deps-url]\n\n[![GitHub Sponsor][sponsor-badge]][sponsor-url]\n\n[version-badge]: https://img.shields.io/npm/v/%40alessiofrittoli%2Fcrypto-algorithm\n[npm-url]: https://npmjs.org/package/%40alessiofrittoli%2Fcrypto-algorithm\n[coverage-badge]: https://coveralls.io/repos/github/alessiofrittoli/crypto-algorithm/badge.svg\n[coverage-url]: https://coveralls.io/github/alessiofrittoli/crypto-algorithm\n[socket-badge]: https://socket.dev/api/badge/npm/package/@alessiofrittoli/crypto-algorithm\n[socket-url]: https://socket.dev/npm/package/@alessiofrittoli/crypto-algorithm/overview\n[downloads-badge]: https://img.shields.io/npm/dm/%40alessiofrittoli%2Fcrypto-algorithm.svg\n[deps-badge]: https://img.shields.io/librariesio/release/npm/%40alessiofrittoli%2Fcrypto-algorithm\n[deps-url]: https://libraries.io/npm/%40alessiofrittoli%2Fcrypto-algorithm\n\n[sponsor-badge]: https://img.shields.io/static/v1?label=Fund%20this%20package&message=%E2%9D%A4&logo=GitHub&color=%23DB61A2\n[sponsor-url]: https://github.com/sponsors/alessiofrittoli\n\n## Lightweight TypeScript library with Node.js Crypto Algortihm utilities\n\n### Table of Contents\n\n- [Getting started](#getting-started)\n- [Algorithm utility Class](#algorithm-utility-class)\n- [Development](#development)\n  - [Install depenendencies](#install-depenendencies)\n  - [Build the source code](#build-the-source-code)\n  - [ESLint](#eslint)\n  - [Jest](#jest)\n- [Contributing](#contributing)\n- [Security](#security)\n- [Credits](#made-with-)\n\n---\n\n### Getting started\n\nRun the following command to start using `crypto-algorithm` in your projects:\n\n```bash\nnpm i @alessiofrittoli/crypto-algorithm\n```\n\nor using `pnpm`\n\n```bash\npnpm i @alessiofrittoli/crypto-algorithm\n```\n\n---\n\n### Algorithm utility Class\n\nThe `Algorithm` class is designed to manage cryptographic algorithm schemas, including their mappings and retrievals based on various criteria.\n\n#### Overview\n\nThe `Algorithm` class provides utilities to manage and retrieve cryptographic algorithm specifications. The specifications include details like key type (`kty`), cryptographic algorithm identifier (`alg`), curve parameters, hash functions, and web crypto API names.\n\nThe algorithms supported by this class conform to [COSE Algorithms](https://iana.org/assignments/cose/cose.xhtml#algorithms) and the [Web Cryptography API](https://developer.mozilla.org/en-US/docs/Web/API/EcKeyImportParams#namedcurve).\n\n#### Static Properties\n\n##### `KTY`\n\nA map of key type constants. The supported key types are:\n\n| Key   | Value | Description        |\n|-------|-------|--------------------|\n| `OKP` | `1`   | Octet Key Pair     |\n| `EC2` | `2`   | Elliptic Curve (2) |\n| `RSA` | `3`   | RSA                |\n\n##### `Algorithm.MAP`\n\nA Map object that associates algorithm identifiers with their corresponding schemas. The schema includes:\n\n- `kty`: Key type.\n- `alg`: Algorithm identifier.\n- `crv`: Curve identifier (for elliptic curves).\n- `name`: Name of the algorithm.\n- `hash`: Hash function used.\n- `crvSchemeName`: Curve scheme name.\n- `namedCurve`: Named curve for elliptic curve algorithms.\n- `webcryptoName`: Corresponding Web Crypto API algorithm name.\n- `jwkAlg`: JSON Web Key (JWK) algorithm name.\n\n#### Static Methods\n\n##### `Algorithm.by()`\n\nRetrieves an algorithm schema based on a partial schema or `KeyAlgorithm`.\n\n###### Parameters\n\n- `scheme` `(Partial<Algo.Schema> | KeyAlgorithm)`: A partial schema or KeyAlgorithm object.\n\n###### Returns\n\n- `(Algo.Schema | undefined)`: The matching algorithm schema, or `undefined` if no match is found.\n\n###### Implementation\n\n- If the scheme contains an `alg` property, the method directly retrieves the schema from the `Algorithm.MAP`.\n- Otherwise, the method iterates through the `Algorithm.MAP` entries and performs a property-based match.\n\n---\n\n##### `Algorithm.byId()`\n\nRetrieves an algorithm schema by its identifier.\n\n###### Parameters\n\n- `alg` (Algo.Id): The algorithm identifier.\n\n###### Returns\n\n- `(Algo.Schema | undefined)`: The schema associated with the provided identifier, or `undefined` if no match is found.\n\n###### Implementation\n\n- Internally calls the `Algorithm.by()` method with an object containing the `alg` property.\n\n#### Usage examples\n\n#### Retrieve Schema by Algorithm ID\n\n```ts\nimport { Algorithm } from '@alessiofrittoli/crypto-algorithm'\n\nconst schema = Algorithm.byId( -7 )\nconsole.log( schema )\n// Output: Schema details for ECDSA using SHA-256\n```\n\n#### Retrieve Schema by Partial Properties\n\n```ts\nimport { Algorithm } from '@alessiofrittoli/crypto-algorithm'\nimport type { Algo } from '@alessiofrittoli/crypto-algorithm/types'\n\nconst partialScheme: Partial<Algo.Schema> = { name: 'RSA-PSS', hash: 'SHA-256' }\nconst schema = Algorithm.by( partialScheme )\nconsole.log( schema )\n// Output: Schema details for RSA-PSS with SHA-256\n```\n\n#### Supported Algorithms in `Algorithm.MAP`\n\nThe `Algorithm.MAP` includes schemas for:\n\n- `ECDSA` (Elliptic Curve Digital Signature Algorithm)\n- `EdDSA` (Edwards-curve Digital Signature Algorithm)\n- `RSA-PSS` (RSA Probabilistic Signature Scheme)\n- `RSASSA-PKCS1-v1_5` (RSA Signature Scheme with Appendix)\n- `HMAC` (Hash-based Message Authentication Code)\n- `DSA` (Digital Signature Algorithm)\n\nRefer to the [Algorithm.MAP](#algorithmmap) implementation for specific algorithm configurations.\n\n---\n\n### Development\n\n#### Install depenendencies\n\n```bash\nnpm install\n```\n\nor using `pnpm`\n\n```bash\npnpm i\n```\n\n#### Build the source code\n\nRun the following command to test and build code for distribution.\n\n```bash\npnpm build\n```\n\n#### [ESLint](https://www.npmjs.com/package/eslint)\n\nwarnings / errors check.\n\n```bash\npnpm lint\n```\n\n#### [Jest](https://npmjs.com/package/jest)\n\nRun all the defined test suites by running the following:\n\n```bash\n# Run tests and watch file changes.\npnpm test:watch\n\n# Run tests in a CI environment.\npnpm test:ci\n```\n\n- See [`package.json`](./package.json) file scripts for more info.\n\nRun tests with coverage.\n\nAn HTTP server is then started to serve coverage files from `./coverage` folder.\n\n⚠️ You may see a blank page the first time you run this command. Simply refresh the browser to see the updates.\n\n```bash\ntest:coverage:serve\n```\n\n---\n\n### Contributing\n\nContributions are truly welcome!\n\nPlease refer to the [Contributing Doc](./CONTRIBUTING.md) for more information on how to start contributing to this project.\n\nHelp keep this project up to date with [GitHub Sponsor][sponsor-url].\n\n[![GitHub Sponsor][sponsor-badge]][sponsor-url]\n\n---\n\n### Security\n\nIf you believe you have found a security vulnerability, we encourage you to **_responsibly disclose this and NOT open a public issue_**. We will investigate all legitimate reports. Email `security@alessiofrittoli.it` to disclose any security vulnerabilities.\n\n### Made with ☕\n\n<table style='display:flex;gap:20px;'>\n  <tbody>\n    <tr>\n      <td>\n        <img alt=\"avatar\" src='https://avatars.githubusercontent.com/u/35973186' style='width:60px;border-radius:50%;object-fit:contain;'>\n      </td>\n      <td>\n        <table style='display:flex;gap:2px;flex-direction:column;'>\n          <tbody>\n              <tr>\n                <td>\n                  <a href='https://github.com/alessiofrittoli' target='_blank' rel='noopener'>Alessio Frittoli</a>\n                </td>\n              </tr>\n              <tr>\n                <td>\n                  <small>\n                    <a href='https://alessiofrittoli.it' target='_blank' rel='noopener'>https://alessiofrittoli.it</a> |\n                    <a href='mailto:info@alessiofrittoli.it' target='_blank' rel='noopener'>info@alessiofrittoli.it</a>\n                  </small>\n                </td>\n              </tr>\n          </tbody>\n        </table>\n      </td>\n    </tr>\n  </tbody>\n</table>\n","readmeFilename":"README.md"}