La cryptographie Denable décrit les méthodes de chiffrement, permettant d'utiliser le déni plausible des messages chiffrés existants, ce qui signifie qu'il n'y a aucun moyen de prouver l'existence de données dans le texte brut.
Dans de nombreux pays dans le monde (par exemple, au Royaume-Uni ou aux États-Unis), vous pouvez être emprisonné ou faire face à des problèmes juridiques pour refuser de fournir votre mot de passe comme l'exige les organismes d'application de la loi, même si vous n'êtes soupçonné d'aucune infraction à la loi.
De plus, si un groupe puissant de personnes (gouvernement, un gang de bandits) soupçonne que vous stockez les informations nécessaires sur votre ordinateur portable (documents confidentiels, portefeuille Bitcoin), venez à vous pour une recherche ou un vol et trouver un fichier crypté, ils ne les analyseront probablement pas pour des vulnérabilités potentielles, mais vous torturez simplement jusqu'à ce que vous leur disiez le mot de passe.
FractalCrypt permet un fichier chiffré avec un nombre arbitraire de clés. Si un ensemble d'hommes vous demande un mot de passe et que vous dites qu'il n'y a aucune information dans le conteneur crypté ou que vous avez oublié le mot de passe, il est beaucoup plus probable qu'ils ne vous croiront pas. Alors que, en utilisant la fractalcrypt, vous pouvez donner les clés en toute sécurité à des volumes non classifiés, et il n'y a aucun moyen de prouver qu'il y a en fait plus de volumes que vous ne l'avez révélé.
De plus, un fichier crypté d'une manière, contrairement, disons, un cryptocontaileur sur un espace d'entraînement non alloué, peut être transféré sur Internet, copié sur un bâton USB, etc.
Tout d'abord, il crée un cryptocontaileur d'une taille spécifiée par l'utilisateur, rempli de caractères aléatoires. Pour créer le premier volume, le programme arche les fichiers spécifiés par l'utilisateur au début du cryptocontaileur et le crypte en utilisant la première clé. Ainsi, en connaissant la première clé, vous pouvez accéder aux fichiers de première couche et au reste du cryptocontaileur.
Pour créer le deuxième volume, le programme archivera les fichiers dans le reste du cryptocontaileur et le cryptera avec la deuxième clé; Ainsi, la première clé est également nécessaire pour créer ou accéder aux données du deuxième volume.
La capacité du déni plausible est que le fichier crypté est indiscernable du bruit; Il n'y a aucun moyen de trouver la quantité de données stockées dans le cryptocontaileur.
Afin d'obtenir des fichiers N-Layer, l'utilisateur doit saisir n mots de passe.
Pour ajouter une nouvelle couche (également appelée volume) sans risque (c'est-à-dire en écrasant le bruit), vous devez saisir toutes les clés; Sinon, si vous entrez uniquement une partie des clés, la nouvelle couche sera écrite sur les données cryptées.
L'utilisateur peut également supprimer une couche, dans ce cas, elle est écrasée de bruit; Toutes les couches dessus sont également supprimées, donc seule la couche supérieure peut être supprimée en toute sécurité.
Fenêtre de démarrage
Création d'un nouveau conteneur
Fenêtre principale. Deux mots de passe sont entrés, il est donc possible d'obtenir les fichiers du deuxième volume ou d'en créer un troisième
Fenêtre de création d'archives
AES-256 est utilisé pour le cryptage en mode XTS. Argon2id est utilisé pour générer une clé avec 4 itérations, un coût de mémoire de 128 Mo et 1 fil
Chaque couche, lorsqu'elle est décryptée, a la tête suivante:
8 octets - Signature de cordes en C "fractale" (termination nul)
8 octets - La longueur des archives zippées suivantes dans Big Endian, alignées sur 16 octets
Les RP et contributions sont les bienvenus. Si vous avez une contribution en tête, veuillez consulter le guide de contribution pour plus d'informations sur la façon de le faire.
FractalCrypt utilise le framework QT (le téléchargement à partir du site officiel nécessite l'enregistrement), la bibliothèque OpenSSL pour le chiffrement et la bibliothèque Quazip pour la création et le traitement des archives zip.
Quazip est un emballage sur le package Minizip de Gilles Vollant (selon les termes de licence, nous informons que les fichiers de ces bibliothèques ont été modifiés dans notre projet) qui utilise la bibliothèque ZLIB.
Pour Windows, Zlib est livré avec QT.
Vous devez télécharger et installer individuellement OpenSSL, par exemple, en suivant le lien.
OpenSSL est censé être disponible sur C: OpenSSL-WIN64, vous pouvez le modifier dans votre fichier fractalcrypt.pro.
Par défaut, QT essaiera de lier OpenSSL dynamiquement, dans ce cas, vous pouvez avoir besoin du fichier C: OpenSSL-WIN64 bin libcrypto-1_1-x64.dll dans le répertoire avec un fichier exécutable.
Vous devez installer individuellement les bibliothèques ZLIB et OpenSSL si elles ne sont pas incluses dans votre distribution.
Sur les systèmes basés sur APT, cela peut être fait avec les commandes suivantes:
sudo apt-get install zlib1g-dev libssl-dev
sudo apt-get install qt5-default qt5-qmake qtbase5-dev-tools qtchooser libqt5core5a qtbase-abi-5-12-8
git clone https://github.com/zorggish/FractalCryptGUI.git
cd FractalCryptGUI
qmake -project
qmake FractalCrypt.pro
make
./FractalCrypt