Page 1 sur 1
[..] Cryptage de logs
Posté : mer. 03 août 2011 15:42
par ricky
Hello,
j'ai un fichier log qui est généré par un programme que j'ai réalisé et j'aimerais que le log soit crypté et que pour crypter ce fichier j'utilise l'entête du log, voici a quoi ressemble le log :
;=========================================================
; Log SAV v1.0.3.1
; PID : 2492
; Computer : WIN_XP_X86\01116-00504\atis
; Date/Time : 08-03-2011 15:26:48
;=========================================================
2011-08-03 15:26:48.765 #391 : Création du répertoire C:\DOCUME~1\atis\LOCALS~1\Temp\LogSAV Message : 1
2011-08-03 15:26:48.781 #391 : Création du répertoire C:\DOCUME~1\atis\LOCALS~1\Temp\LogSAV\01116-00504-20110803 Message : 1
2011-08-03 15:26:48.781 #405 : Fonction AtisApps : 0
...
J'aimerais que le code de cryptage soit les 6 premières lignes et que la suite soit crypté. Bien entendu, dans le fichier log ces 6 première lignes doivent apparaître pour que j'aie la clé.
Merci d'avance pour votre aide
Re: [..] Cryptage de logs
Posté : mer. 03 août 2011 15:57
par moi
si c'est avec un prog que tu écris le log tu creer un edit contenant les 6 premières lignes non crypter avec les infos qu'il te faut un deuxième et quand tu appuie sur un bouton 'ecri'
une var récupère les 6 lignes une deuxièmes le reste et la deuxième var tu la crypt avec _stringcrypt() et tu écris dans ton fichier les 6 lignes plus le string crypter....
mais c'est
juste un exemple ton prog est surement déja programmer compiler
ou alors j'ai rien compris...

Re: [..] Cryptage de logs
Posté : mer. 03 août 2011 16:10
par mikell
moi a écrit : ou alors j'ai rien compris...
ben non, tu as raison, pour que crypter des logs serve à qqchose il faut que les procédures crypt-décrypt soient dans le prog, et donc que le prog soit ouvert pour qu'on accède aux logs avec un bouton genre "voir les logs" qui lancera le décryptage

Re: [..] Cryptage de logs
Posté : mer. 03 août 2011 16:13
par perfaram
Tu peux utiliser un des exemples fourni avec autoIT :
Voici son code, il se situe dans AutoIt3\Examples\GUI\Advanced\encrypt.au3 :
► Afficher le texte
;====================================================
;============= Encryption Tool With GUI =============
;====================================================
; AutoIt version: 3.0.103
; Language: English
; Author: "Wolvereness"
;
; ----------------------------------------------------------------------------
; Script Start
; ----------------------------------------------------------------------------
#include <GUIConstantsEx.au3>
#include <String.au3>
;#include files for encryption and GUI constants
Opt('MustDeclareVars', 1)
_Main()
Func _Main()
Local $WinMain, $EditText, $InputLevel, $InputPass, $UpDownLevel
Local $EncryptButton, $DecryptButton, $string
#forceref $UpDownLevel
;~~
$WinMain = GUICreate('Encryption tool', 400, 400)
; Creates window
;~~
$EditText = GUICtrlCreateEdit('', 5, 5, 380, 350)
; Creates main edit
;~~
$InputPass = GUICtrlCreateInput('', 5, 360, 100, 20, 0x21)
; Creates the password box with blured/centered input
;~~
$InputLevel = GUICtrlCreateInput(1, 110, 360, 50, 20, 0x2001)
$UpDownLevel = GUICtrlSetLimit(GUICtrlCreateUpdown($InputLevel), 10, 1)
; These two make the level input with the Up|Down ability
;~~
$EncryptButton = GUICtrlCreateButton('Encrypt', 170, 360, 105, 35)
$DecryptButton = GUICtrlCreateButton('Decrypt', 285, 360, 105, 35)
; Encryption/Decryption buttons
;~~
GUICtrlCreateLabel('Password', 5, 385)
GUICtrlCreateLabel('Level', 110, 385)
; Simple text labels so you know what is what
;~~
GUISetState()
; Shows window
;~~
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
ExitLoop
Case $EncryptButton
; When you press Encrypt
;~~
GUISetState(@SW_DISABLE, $WinMain)
; Stops you from changing anything
;~~
$string = GUICtrlRead($EditText)
; Saves the editbox for later
;~~
GUICtrlSetData($EditText, 'Please wait while the text is Encrypted/Decrypted.')
; Friendly message
;~~
GUICtrlSetData($EditText, _StringEncrypt(1, $string, GUICtrlRead($InputPass), GUICtrlRead($InputLevel)))
; Calls the encryption. Sets the data of editbox with the encrypted string
;~~
GUISetState(@SW_ENABLE, $WinMain)
; This turns the window back on
;~~
Case $DecryptButton
; When you press Decrypt
;~~
GUISetState(@SW_DISABLE, $WinMain)
; Stops you from changing anything
;~~
$string = GUICtrlRead($EditText)
; Saves the editbox for later
;~~
GUICtrlSetData($EditText, 'Please wait while the text is Encrypted/Decrypted.')
; Friendly message
;~~
GUICtrlSetData($EditText, _StringEncrypt(0, $string, GUICtrlRead($InputPass), GUICtrlRead($InputLevel)))
; Calls the encryption. Sets the data of editbox with the encrypted string
;~~
GUISetState(@SW_ENABLE, $WinMain)
; This turns the window back on
;~~
EndSwitch
WEnd
EndFunc ;==>_Main
Re: [..] Cryptage de logs
Posté : mer. 03 août 2011 16:18
par moi
bah pour le cryptage
et pour décrypter
ps :j'ai un doute
quand tu dis ça
mikell a écrit :ben non, tu as raison
ça veut dire ben non, tu as raison
ou ça veut dire
ben non,tu as raison, t'as rien compris...?
Re: [..] Cryptage de logs
Posté : jeu. 04 août 2011 04:03
par overflow
blablabla . . .
Repondez par du concret ^^
tient essaye ca
Code : Tout sélectionner
;
;
#include <GuiConstantsEx.au3>
#include <String.au3>
#include <File.au3>
Do
$crypt=InputBox("Choix . . . ","Cryptage tapez 1 " & @CRLF & "Decryptage tapez 0")
Until $crypt=1 Or $crypt=0
$file_key="fichier.log"
$key=""
For $x=1 to 6
$key &=FileReadLine($file_key,$x)
Next
$x=7
While 1
$data=FileReadLine($file_key,$x)
If @error = -1 Then ExitLoop
$data=_StringEncrypt($crypt,$data,$key)
_FileWriteToLine("Fichier.log",$x,$data,1)
$x +=1
WEnd
c est rudimentaire (juste pour l exemple en faite)
mais c est l effet rechercher
j ai utiliser _stringencrypt pour l exemple mais bon ca gonfle pas mal le fichier
tu devrais rajouter un flag sur ton entete pour detecter si le log est crypter ou pas car si tu crypte 2 fois ou decrypte 2 fois d affiler le fichier est en vrac ^^
Re: [..] Cryptage de logs
Posté : jeu. 04 août 2011 10:23
par moi
au lieu d'un flags tu creer un ini (crypter ou non) :
[nom du files.log]
$key = ../../files.log
le prog vérifie si le nom du log est dans le ini si oui il peut être decrypt si non le fichier sera creer et crypter puis son nom sera écris dans le ini....
Re: [..] Cryptage de logs
Posté : jeu. 04 août 2011 16:09
par overflow
si c est lui qui a fait le prog qui généré les log c est plus simple de
mettre un indicateur dans le fichier log
apparemment il y a pas mal de fichiers généré et si tu passe par un ini tu vas être vite dépasser par la taille du fichier