Outil de cryptographie basé sur RSA et AES
Project description
NyxCrypta
NyxCrypta est une bibliothèque de cryptographie Python qui combine le chiffrement asymétrique RSA et le chiffrement symétrique AES pour sécuriser vos données de manière efficace et simple.
Caractéristiques
- 🔒 Chiffrement hybride : Combine AES-256 et RSA (2048 à 4096 bits)
- 🎯 Niveaux de sécurité configurables : Standard, High, et Paranoid
- 🔑 Gestion des clés : Génération et utilisation simples des paires de clés RSA
- 📚 Interface en ligne de commande intuitive
- 🛡️ Sécurité proactive : Vérifications de fichiers et de permissions intégrées
Installation
pip install NyxCrypta
Guide rapide
1. Génération de clés
nyxcrypta keygen -o ./keys
Cette commande génère une paire de clés RSA et les sauvegarde dans le dossier spécifié.
2. Chiffrement d'un fichier
nyxcrypta encrypt -i secret.txt -o encrypted.nyx -k ./keys/public_key.pem
3. Déchiffrement d'un fichier
nyxcrypta decrypt -i encrypted.nyx -o decrypted.txt -k ./keys/private_key.pem
Niveaux de sécurité
NyxCrypta offre trois niveaux de sécurité :
-
STANDARD (par défaut) :
- RSA 2048 bits
- SHA-256 pour le padding OAEP
-
HIGH :
- RSA 3072 bits
- SHA-256 pour le padding OAEP
-
PARANOID :
- RSA 4096 bits
- SHA3-512 pour le hachage
La sélection du niveau de sécurité se fait via l'option --securitylevel
:
nyxcrypta --securitylevel 2 encrypt -i secret.txt -o encrypted.nyx -k ./keys/public_key.pem
Implémentation technique
- Utilisation d'AES-256 en mode CBC pour le chiffrement symétrique
- Chiffrement de la clé AES avec RSA-OAEP
- Génération sécurisée d'IV (Vecteur d'Initialisation) pour chaque opération
- Gestion automatique du padding des données
Meilleures pratiques de sécurité
-
Gestion des clés :
- Stockez les clés privées de manière sécurisée
- Limitez l'accès aux fichiers de clés
-
Choix des fichiers :
- Vérifiez toujours les chemins des fichiers d'entrée et de sortie
- Assurez-vous d'avoir les permissions nécessaires
-
Niveau de sécurité :
- Le niveau STANDARD est suffisant pour la plupart des usages
- Utilisez les niveaux supérieurs pour des besoins spécifiques
Exemple Python
from nyxcrypta import NyxCrypta, SecurityLevel
# Création d'une instance avec un niveau de sécurité personnalisé
nx = NyxCrypta(security_level=SecurityLevel.HIGH)
# Génération et sauvegarde des clés
nx.save_keys("./keys")
# Chiffrement d'un fichier
nx.encrypt_file("secret.txt", "encrypted.nyx", "./keys/public_key.pem")
# Déchiffrement d'un fichier
nx.decrypt_file("encrypted.nyx", "decrypted.txt", "./keys/private_key.pem")
Dépendances
- cryptography>=3.3.2
- argon2-cffi>=20.1.0
- cffi>=1.0.0
Licence
NyxCrypta est distribué sous la licence MIT. Voir le fichier LICENSE
pour plus de détails.
Auteurs
Division of Cyber Anarchy (DCA)
- Malic1tus
- Calypt0sis
- NyxCrypta
- ViraL0x
Contact : malic1tus@proton.me
"La simplicité est la sophistication suprême." - Léonard de Vinci
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file NyxCrypta-1.0.2.tar.gz
.
File metadata
- Download URL: NyxCrypta-1.0.2.tar.gz
- Upload date:
- Size: 6.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.20
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 846f79b5e52819517284b8b2320c8d69c3e27769e2f47001832778a74106e4ee |
|
MD5 | e5ba9f7ee87b64ef4dc63b8e7def7f01 |
|
BLAKE2b-256 | 3967d53f03b60adeb2575aba4ce65bb34006a947f1b52f041dc96565def9bac7 |
File details
Details for the file NyxCrypta-1.0.2-py3-none-any.whl
.
File metadata
- Download URL: NyxCrypta-1.0.2-py3-none-any.whl
- Upload date:
- Size: 6.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.20
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d7f4989d9fa6be9c3f2924307f48eacd9ff033e51b2aebb293565fd76adcb0c3 |
|
MD5 | 6210bd905d9fa83576b83e14bfc91d3d |
|
BLAKE2b-256 | cfe1a915c1fbc4dbd33caf0b1cc5aafeba5d75bd1abf23d3b5934a9b552021b7 |