{"_id":"@alekhor/iut-encrypt","name":"@alekhor/iut-encrypt","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@alekhor/iut-encrypt","version":"1.0.0","description":"Module de cryptage de mots de passe - SHA1 encryption","main":"lib/index.js","scripts":{"test":"node test.js"},"keywords":["encryption","password","sha1","crypto"],"author":{"name":"IUT"},"license":"ISC","repository":{"type":"git","url":"git+https://github.com/A-Lajoinie/Node_project.git"},"engines":{"node":">=10.0.0"},"_id":"@alekhor/iut-encrypt@1.0.0","gitHead":"6459186be8a9def68159fff3976f4920931c83e1","bugs":{"url":"https://github.com/A-Lajoinie/Node_project/issues"},"homepage":"https://github.com/A-Lajoinie/Node_project#readme","_nodeVersion":"23.7.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-bHXH+mxCJKwQ6zzeihjHXsFKHbU7YfqzBrekerLDglUIG+yGh5P3hqdTEdpAIaeNRU7AgwBA3wjs0/Ii7UkZyQ==","shasum":"8f132947127398cd5afcb85edcbee7af998a8332","tarball":"https://registry.npmjs.org/@alekhor/iut-encrypt/-/iut-encrypt-1.0.0.tgz","fileCount":4,"unpackedSize":5369,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDGWWTL7l9UYg/VbQ92CUF3HGMYSEOliFTK8/y4+FVK1wIhAPt1gz1LRouA/lWuS9Zr6E1GQcCJwAQ0dbTK1AW4vbpl"}]},"_npmUser":{"name":"alekhor","email":"ax.lajoinie@gmail.com"},"directories":{},"maintainers":[{"name":"alekhor","email":"ax.lajoinie@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/iut-encrypt_1.0.0_1769607650370_0.4707703862249377"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-28T13:40:50.205Z","1.0.0":"2026-01-28T13:40:50.515Z","modified":"2026-01-28T13:40:50.764Z"},"maintainers":[{"name":"alekhor","email":"ax.lajoinie@gmail.com"}],"description":"Module de cryptage de mots de passe - SHA1 encryption","homepage":"https://github.com/A-Lajoinie/Node_project#readme","keywords":["encryption","password","sha1","crypto"],"repository":{"type":"git","url":"git+https://github.com/A-Lajoinie/Node_project.git"},"author":{"name":"IUT"},"bugs":{"url":"https://github.com/A-Lajoinie/Node_project/issues"},"license":"ISC","readme":"# @dan/iut-encrypt\r\n\r\nModule NPM de cryptage de mots de passe permettant de simplifier les appels du module encrypt fourni par Node.JS.\r\n\r\n## Installation\r\n\r\n```bash\r\nnpm install @dan/iut-encrypt\r\n```\r\n\r\n## Utilisation\r\n\r\n```javascript\r\n'use strict';\r\n\r\nconst Encrypt = require('@dan/iut-encrypt');\r\n\r\nconst plainTextPassword = 'motdepasse';\r\n\r\n// Encoder un mot de passe en SHA1\r\nconst passwordSha1 = Encrypt.sha1(plainTextPassword);\r\n\r\n// Comparer un mot de passe saisi avec le hash stocké\r\nif (Encrypt.compareSha1('motdepassesaisit', passwordSha1)) {\r\n    console.log('Connexion validée');\r\n} else {\r\n    console.log('Connexion refusée');\r\n}\r\n```\r\n\r\n## API\r\n\r\n### `sha1(plainTextPassword)`\r\n\r\nEncode un mot de passe en SHA1.\r\n\r\n**Paramètres:**\r\n- `plainTextPassword` (string): Le mot de passe en clair\r\n\r\n**Retour:**\r\n- (string): Le hash SHA1 du mot de passe\r\n\r\n**Exemple:**\r\n```javascript\r\nconst hash = Encrypt.sha1('monmotdepasse');\r\n// hash = '9c1c3d5e73f2b5d5c8e1f5b5d5c8e1f5b5d5c8e'\r\n```\r\n\r\n### `compareSha1(plainTextPassword, hashedPassword)`\r\n\r\nCompare un mot de passe en clair avec son hash SHA1.\r\n\r\n**Paramètres:**\r\n- `plainTextPassword` (string): Le mot de passe en clair à vérifier\r\n- `hashedPassword` (string): Le hash SHA1 à comparer\r\n\r\n**Retour:**\r\n- (boolean): `true` si les mots de passe correspondent, `false` sinon\r\n\r\n**Exemple:**\r\n```javascript\r\nconst hash = Encrypt.sha1('motdepasse');\r\nconst isValid = Encrypt.compareSha1('motdepasse', hash);\r\n// isValid = true\r\n```\r\n\r\n## Architecture Modulaire\r\n\r\nCe module est conçu comme **évolutif** pour permettre l'ajout de nouvelles méthodes de cryptage dans le futur:\r\n\r\n- `sha1()` - Cryptage SHA1 (actuellement implémenté)\r\n- Futures méthodes possibles: `sha256()`, `bcrypt()`, `md5()`, etc.\r\n\r\n## Mode Strict\r\n\r\nLe module utilise le mode strict (`'use strict'`) qui:\r\n- Élimine les erreurs silencieuses en les changeant en erreurs explicites\r\n- Améliore les performances d'exécution\r\n- Interdit les mots-clés susceptibles d'être définis dans les futures versions d'ECMAScript\r\n\r\n## Tests\r\n\r\n```bash\r\nnpm test\r\n```\r\n\r\n## Licence\r\n\r\nISC\r\n","readmeFilename":"README.md","_rev":"1-3ffe4b35457c9c3f7eb38a793414c54e"}