Salut à toi visiteur !
Inscris toi en moins de 10 secondes pour profitez pleinement du site et partager avec la communauté ! S'inscrire


Exemple de chiffrement-déchiffrement 128 bits


#1
Un programme que j'ai écrit lorsque je débutais. C'est un exemple simple de chiffrement-déchiffrement avec une clef de 128 bits. Ca a été écrit pour Fasm et WIn32 mais c'est facilement adaptable pour d'autres compilateurs et Linux.

Par contre, ce n'est qu'un exemple, ça doit donc être considéré en tant que tel et non utilisé pour chiffrer des documents. Pour cela, il y a de vrais solutions fiables, comme l'AES par exemple.

Code :
format PE console
include 'include/windows/win32a.inc'
entry start

section '.text' code readable executable



start:
    stdcall    demo,buf1,32,buf2    ;chiffrement des bytes du buf1 vers le buf2
    stdcall    demo,buf2,32,buf3    ;déchiffrement des bytes du buf2 vers le buf3
    cinvoke    printf,forms,buf3    ;affichage des bytes déchiffrés du buf3

    ret



proc demo inbuf,len,outbuf

    mov    esi,dword [inbuf]
    mov    edi,dword [outbuf]
    mov    ecx,dword [len]

     @@:
    mov    ebx,table
    @re:
    mov    al,byte [ebx]
    or    al,al
    jz    @b
    inc    ebx
    shl    ax,8
    lodsb
    cmp    al,ah
    jz    @f
    xor    al,ah
     @@:
    stosb
    dec    ecx
    jnz    @re

    ret
endp




section '.data' data readable writeable

buf1 db 'la petite maison dans la prairie',0
buf2 rb 256
buf3 rb 256

table db 0x7d,0x72,0x6f,0xd7,0x84,0x09,0xb2,0x18,\
     0x12,0xd7,0x43,0xf3,0x33,0x1b,0xa4,0x6f

forms db '%s',13,10,0




section '.idata' import data readable writeable

library msvcrt, 'msvcrt.dll'

import msvcrt,\
printf, 'printf'
Connexion ou Inscription pour voir ce contenu ! C'est rapide ;)
[+] 1 utilisateur dit Merci à xddj pour ce message


Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  Exemple de chiffrement AES xddj 1 1,743 29-03-2019, 20:42
Dernier message: xddj
  Exemple de crc32 pour Linux xddj 0 1,341 26-02-2019, 15:00
Dernier message: xddj
  Exemple de base64 xddj 0 1,377 26-02-2019, 14:51
Dernier message: xddj

Atteindre :