
Un utilitaire pour jouer avec la cryptographie, destiné à l'analyse des rançongiciels.
Un utilitaire pour jouer avec la cryptographie, conçu pour l'analyse des ransomwares.

Toutes les vues hexadécimales utilisées dans CryptoTester offrent quelques capacités améliorées.
0D 0A) sont colorés en violetSur de nombreuses vues (par ex. Input et Output), cliquer sur la ligne des décalages (le 00 01 02 03... au-dessus de la vue respective) ouvrira une boîte de dialogue montrant les octets avec la vue décodée.
La plupart des entrées qui acceptent un entier acceptent également des valeurs spéciales et des fonctions.
Exemples :
x10 -> 16len -> 400block -> 16 (taille de bloc de l'algorithme sélectionné)up(60, 16) -> 64down(60, 16) -> 48Des opérations arithmétiques simples peuvent être utilisées en combinaison avec ces fonctions.
up(len-x100, b) - Soustrait 256 de la longueur d'entrée, puis arrondit à la taille de bloc supérieure de l'algorithme sélectionné (par ex. 16 pour AES)Toute valeur négative est supposée être len - valeur, c'est-à-dire relative à la fin de l'entrée.
Le panneau principal contient des outils pour utiliser des primitives cryptographiques sur une entrée. La vue hexadécimale Input accepte le collage direct d'octets, ou le menu File peut être utilisé pour charger un fichier, du texte, des octets encodés en base64, etc. Un fichier peut également être glissé-déposé directement dans la vue.
Permet de spécifier une clé dans de nombreux formats, et contient des options pour plusieurs fonctions de hachage et de dérivation de clé ; ces champs s'adaptent à l'algorithme actuellement sélectionné et à ce qu'il peut supporter.
Remarque : La clé est traitée dans le même ordre qu'elle est affichée dans l'interface utilisateur ; d'abord la clé est décodée selon le
Format, puis hachée à l'aide des paramètres deHash, et enfin dérivée à l'aide des paramètres deDeriveavant d'être transmise à l'algorithme cryptographique. Depuis la v1.7.0.0, vous pouvez échanger l'ordre de traitement deHashetDerive.
La longueur finale de la clé est affichée au-dessus de la zone de saisie. Cliquer dessus affichera la clé finale calculée dans une boîte de dialogue séparée.

Permet de sélectionner un algorithme cryptographique et ses paramètres, si supportés.
Remarque : Les
IV Bytes(ouNonce, selon l'algorithme) seront automatiquement remplis avec des octets00de la longueur appropriée pour l'algorithme si laissés vides.
L'entrée peut être sélectionnée en utilisant deux modes différents : "Plage" et "Blocs".
Une plage simple commençant à Offset, et prenant Length octets.
La Length sera automatiquement mise à jour à chaque modification de Input, sauf si la case Lock Parameters est cochée.
Si vous avez effectué des calculs dans le champ Length et souhaitez revenir à la longueur réelle de l'Input, vous pouvez simplement appuyer sur le bouton Reset Length.
Si Splice Remaining Bytes est coché, alors tous les octets avant Offset sont préfixés à la Output, et tous les octets après Offset+Length sont ajoutés.

Prend Take octets, puis ignore Skip octets, prend Take octets, ignore Skip octets... jusqu'à la fin de l'Input. Cela peut être utilisé pour un texte chiffré qui est en fait "entrelacé" entre des blocs de texte clair. L'algorithme cryptographique est exécuté sur les blocs résultants comme un seul bloc séquentiel, sans réinitialisation de la clé/IV/nonce, etc.
Si Splice Remaining Bytes est coché, alors tous les octets dans la section Skip sont réentrelacés dans la Output.

Cette section affiche des informations simples sur l'Input telles que la taille du fichier, le MIME détecté (s'il s'agit d'un fichier), l'entropie totale, et s'il est divisible par 16 (une taille de bloc courante).
Les vues Input et Output ont un défilement synchronisé ; pour le désactiver, décochez la case Synchronized scrolling entre elles.
Le bouton 🡨 entre Input et Output peut être utilisé pour déplacer la Output vers la vue Input.
L'Input ou l'Output peuvent être hachés à l'aide des listes déroulantes respectives sous leurs vues. L'Output peut également être soumise à un algorithme de vérification (support limité pour ECDSA actuellement).
Ce panneau permet de comparer un fichier chiffré avec son original. Les deux vues supportent le glisser-déposer, ou File -> Open File peut être utilisé pour ouvrir Original et Encrypted séquentiellement.
La vue Original peut également être remplie en utilisant n'importe quelle option de File -> Input ; par exemple, comparer avec une certaine longueur d'octets nuls ou l'image d'exemple Windows Chrysanthemum.jpg.
Les vues Original et Encrypted ont un défilement synchronisé ; pour le désactiver, décochez la case Synchronized scrolling entre elles.
Le bouton ⇆ entre les vues Original et Encrypted peut être utilisé pour échanger leur contenu.
Tout octet qui diffère entre les deux vues sera affiché en rouge foncé.

Affiche les informations de base sur les vues Original et Encrypted respectivement.
Une fois les deux vues remplies, une analyse rapide est effectuée sur elles.
Original est présent dans EncryptedEncryptedEncrypted (UTF-8 ou UTF-16)Encrypted (sous diverses formes et encodages)EncryptedCe panneau permet une utilisation primitive de quelques algorithmes de compression, et a des fonctionnalités similaires au panneau Chiffrer/Déchiffrer.
Un outil pour analyser les blobs CryptoAPI et les blobs CNG.
Les blobs peuvent être importés/exportés vers/depuis les formats binaire, base64, PEM, XML et ASN.1, lorsque supporté.

Outils supplémentaires liés aux blobs qui ne sont activés que pour les types de blobs supportés, le cas échéant.
Génère un blob CryptoAPI. La Bit Length est automatiquement mise à jour avec les valeurs supportées pour l'aiKeyAlg sélectionné. Notez que certaines combinaisons de bType et aiKeyAlg ne sont pas valides et généreront une erreur du fournisseur CryptoAPI.

Remarque : Les clés sont générées en interne à l'aide de CryptGenRandom, mais je ne peux pas garantir la sécurité cryptographique de l'utilisation de clés générées à partir de cet utilitaire.
Un outil pour analyser/calculer les clés RSA. Les paramètres séparés de la clé sont affichés, et peuvent être montrés en décimal ou en hexadécimal. Si suffisamment de paramètres sont présents, le reste de la clé peut être calculé.
La clé peut être exportée dans divers formats, notamment un blob CryptoAPI, un blob CNG, PEM, XML et ASN.1, vers un fichier, le presse-papiers ou la fenêtre principale (Chiffrer/Déchiffrer). De plus, si elle est exportée vers la fenêtre principale, les entiers bruts peuvent être exportés pour l'algorithme RSA brut.

Un outil qui recherche une clé cryptographique dans un fichier sous plusieurs formats.
Exemples de formats supportés :

Un outil pour tester divers algorithmes PRNG connus.

Définissez la Seed de départ pour le PRNG.
Définissez l’Algorithm du PRNG, ainsi que la Length des sorties à produire, et un Modulus optionnel à appliquer à chaque sortie. Par exemple, un Modulus de xFF peut être utilisé pour convertir chaque sortie en un octet.
Si Alpha est sélectionné :
L'entropie de la sortie produite est également affichée pour la sortie Alpha. Il s'agit d'une estimation approximative de l'entropie (ou du nombre de possibilités) pour une attaque par force brute aveugle de la sortie (sans attaquer directement le PRNG).
Un outil pour utiliser différents encodages de base. Supporte les jeux de caractères prédéfinis standard, ou fournissez votre propre jeu de caractères personnalisé.
À l'exception des encodeurs qui utilisent une somme de contrôle (par exemple Base58Check de Bitcoin), le décodage est effectué sans vérifier le padding, donc même les encodages partiels ou endommagés seront décodés bruts.

Un outil pour visualiser du texte ou des octets en ASCII, UTF-8 et UTF-16 simultanément.

Un outil pour valider les points de courbes elliptiques. Peut importer/exporter depuis/vers un ECPoint (formes non compressée ou compressée), PEM ou blob CNG.

Diverses opérations à effectuer en fonction du panneau actuel.
Prend l’Original et l’Encrypted du panneau Comparer, applique l'opération XOR ou AND, et affiche un flux.
Utilise les informations de l'algorithme du panneau Chiffrer/Déchiffrer et génère un flux de clé d'une longueur donnée à sauvegarder dans un fichier.
Affiche un graphique de la différence entre les pixels dans le panneau Comparer.

Utilise le matériel de clé fourni et l’Input du panneau Chiffrer/Déchiffrer, ainsi qu'une sortie attendue donnée, et énumère toutes les options possibles dans la section Encryption Options pour essayer de trouver une correspondance.
Cet outil peut être utilisé pour tester une liste ou un dossier de clés connues par rapport à l’Input en utilisant les paramètres de chiffrement spécifiés.
Byte Count octets du fichier à la fois.Si une clé est correctement appariée, le bouton Select sera activé pour permettre le passage de la clé et de ses paramètres à la fenêtre principale.

En utilisant la taille de bloc du chiffrement sélectionné, énumère chaque bloc possible et tente le déchiffrement avec la clé spécifiée.
Exemple : Vous avez une clé privée RSA-2048 et un blob de 0x1000 octets de possible texte chiffré comme Input. En utilisant cette opération, vous essayez de déchiffrer Input[0x00:0x100], puis Input[0x01:0x101], puis Input[0x02:0x102] etc...
Remarque : Cette opération ne supporte actuellement que l'algorithme RSA. Elle est également limitée à un maximum de 10000 octets d'entrée.
Utiliser l'ordre petit boutiste en interne (si l'algorithme le supporte).
Permet de définir des paramètres personnalisés si l'algorithme sélectionné en supporte. Par exemple, la famille d'algorithmes Salsa20 supporte des tours, une constante, une position personnalisés, ou la saisie d'une matrice brute.
Options pour l'IV, telles que la saisie à partir de texte ou de base64, et la récupération d'un IV à partir d'un texte clair connu.
Préréglages pour certains schémas de chiffrement, par exemple OpenSSL.
Petits outils pour les conversions.
Convertir un entier en DWORD, ou des octets DWORD en entier.

Convertir des octets hexadécimaux en une liste d'entiers, ou une liste d'entiers en octets. Les espaces et les virgules pour la sortie peuvent être définis optionnellement.
