[..] Probleme _Crypt_DecryptData

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
mantisis
Niveau 1
Niveau 1
Messages : 6
Enregistré le : ven. 03 janv. 2014 00:57
Status : Hors ligne

[..] Probleme _Crypt_DecryptData

#1

Message par mantisis »

Bonjour, nouveau dans le monde de l'AutoIT je me trouve face à un problème.
J'utilise la fonction _Crypt_EncryptFile afin d'encrypter un fichier en RC4.
Dans un autre script je récupère morceau par morceau ce qui a été codé et j'utilise _Crypt_DecryptData, cependant j'ai une erreur qui m'empêche d'y décrypter correctement. Je penses avoir trouver l'origine de l'erreur, en effet une fois la chaine crypté elle ressemble à quelque chose du genre %;¼¯Ç䈙ګ—$ cependant quand j'utilise un FileOpen+FileRead pour y récupérer et qui j'y affiche via ConsoleWrite , ma chaine devient %;[SI][SO]¼[RS]¯Ç䈙ګ[DC3]—$ ( avec les [SI][SO][RS][DC3] qui sont des caractères control dans la table ASCII non ? ). Je penses que le soucis vient de là à moins que je me trompe ( fort possible ) ? Comment y remédier ?
Merci
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Probleme _Crypt_DecryptData

#2

Message par Tlem »

Bonjour mantisis
En lisant la doc de FileOpen, vous auriez dût voir ceci :
FileOpen ( "filename" [, mode = 0] )

$FO_READ (0) = Read mode (default)
Soit une lecture en mode texte ANSI standard.

Je pense que vous devriez essayer ceci :
A file can be read as binary (byte) data by using FileOpen() with the binary flag.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
mantisis
Niveau 1
Niveau 1
Messages : 6
Enregistré le : ven. 03 janv. 2014 00:57
Status : Hors ligne

Re: [..] Probleme _Crypt_DecryptData

#3

Message par mantisis »

En effet, j'avais déjà essayé la lecture en mode binaire cependant plus loin dans mon script je dois chercher une chaine de caractère particulière "65GFEHT8795" par exemple. J'utilise donc StringInStr($ReadedFile, "65GFEHT8795") mais cela me retourne 0 car le fichier est "lu" en binaire. J'ai donc essayé un StringToBinary sur ma chaine mais cela ne marche toujours pas a priori.
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Probleme _Crypt_DecryptData

#4

Message par mikell »

Le fichier peut être lu "normalement" mais _Crypt_DecryptData retourne du binaire
► Afficher le texte
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
mantisis
Niveau 1
Niveau 1
Messages : 6
Enregistré le : ven. 03 janv. 2014 00:57
Status : Hors ligne

Re: [..] Probleme _Crypt_DecryptData

#5

Message par mantisis »

J'aimerais bien déjà qu'il me retourne du binaire sa me changerais de -1 ...
Voici une partie du code que j'utilise pour décrypter

Code : Tout sélectionner

#NoTrayIcon
#include <Crypt.au3>
#include <FileConstants.au3>

$OpenFile = FileOpen(@ScriptDir & "\essai.txt", $FO_BINARY)
$Mdp_Recup = FileReadLine($OpenFile, 9643)
$Algo_Recup = FileReadLine($OpenFile, 9644)
FileSetPos($OpenFile, 0, $FILE_CURRENT)
$Adecrypt = FileRead($OpenFile)
$Decrypt = _Crypt_DecryptData($Adecrypt, $Mdp_Recup , $Algo_Recup)
Cependant _Crypt_DecryptData ne parvient pas a décrypter $Adecrypt, quand je fais une msgbox sur $Mdp_Recup et $Algo_Recup les valeurs sont bonne elle m'affiche la clé et l'algo utilisé et quans je le fais sur $Adecrypt elle m'affiche tout ce qu'il faut décrypter en héxadécimal. Je comprend pas ce qu'il ne va pas :s
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Probleme _Crypt_DecryptData

#6

Message par mikell »

Apparemment c'est parce que tu ne prends qu'une partie du fichier crypté
Faut faire les choses dans l'ordre : FileRead(tout le fichier) > _Crypt_DecryptData > BinaryToString > StringInStr
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
mantisis
Niveau 1
Niveau 1
Messages : 6
Enregistré le : ven. 03 janv. 2014 00:57
Status : Hors ligne

Re: [..] Probleme _Crypt_DecryptData

#7

Message par mantisis »

Le problème ce que une seule partie du fichier est crypté ( la partie que je récupère en l'occurence. Si je devais tout décrypter j'aurais utilisé _Crypt_DecryptFile. Il n'y a donc pas de solution en AutoIT ?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11824
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Probleme _Crypt_DecryptData

#8

Message par Tlem »

Si votre fichier est crypté en un bloc, vous devez évidemment le décrypter dans sa totalité. Si vous cherchez à décrypter par tronçons, vous devrez crypter par tronçon, c'est une question de logique.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
mantisis
Niveau 1
Niveau 1
Messages : 6
Enregistré le : ven. 03 janv. 2014 00:57
Status : Hors ligne

Re: [..] Probleme _Crypt_DecryptData

#9

Message par mantisis »

Oui j'avais bien compris sa, c'est donc ce qu'est censé faire le bout de code posté quelques post avant. Cependant cela ne marche pas comme dit dans le meme post, j'ai peut etre fait une erreur dans le code ou c'est autre chose ?
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Probleme _Crypt_DecryptData

#10

Message par mikell »

mantisis a écrit :J'utilise la fonction _Crypt_EncryptFile afin d'encrypter un fichier en RC4.
mantisis a écrit :Le problème ce que une seule partie du fichier est crypté
:?:

_Crypt_DecryptData retourne des données en binaire, _Crypt_DecryptFile retourne un fichier, c'est pas le même usage ^^
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
mantisis
Niveau 1
Niveau 1
Messages : 6
Enregistré le : ven. 03 janv. 2014 00:57
Status : Hors ligne

Re: [..] Probleme _Crypt_DecryptData

#11

Message par mantisis »

Enfaite j'ai une partie du script qui encrypte un fichier avec _Crypt_EncryptFile et qui recupere ce qu'il contient pour y assembler des choses et tout fourrer dans un seul fichier. La deuxieme partie que j'ai post a pour but de décrypter la partie crypté precedemment. Au final j'ai réussi a m'en sortir en laissant tomber l'encryptage fourni par les fonction de l'AutoIT et en utilisant celle qu'un membre du forum a posté. Merci de votre aide en tout cas.
Répondre