Código de Python - Codificar y Decodificar en Rijndael / AES

Imágen de perfil

Codificar y Decodificar en Rijndael / AESgráfica de visualizaciones


Python

estrellaestrellaestrellaestrellaestrella(1)
Publicado el 10 de Febrero del 2016 por xve
1.399 visualizaciones desde el 10 de Febrero del 2016. Una media de 21 por semana
Este código de ejemplo muestra como codificar un texto con Rijndael / AES a 128 bits

Versión 1.0
estrellaestrellaestrellaestrellaestrella(1)

Publicado el 10 de Febrero del 2016gráfica de visualizaciones de la versión: Versión 1.0
1.403 visualizaciones desde el 10 de Febrero del 2016. Una media de 21 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
from Crypto.Cipher import AES
import base64
import os
 
key = "\x01\x02\x03\x04\x05\x06\x07\x08\x09\x10\x11\x12\x13\x14\x15\x16"
iv = "\x01\x02\x03\x04\x05\x06\x07\x08\x09\x10\x11\x12\x13\x14\x15\x16"
replace_plus = "BIN00101011BIN"
 
BLOCK_SIZE = 16
 
pad = lambda s: s + (BLOCK_SIZE - len(s) % BLOCK_SIZE) \
* chr(BLOCK_SIZE - len(s) % BLOCK_SIZE)
unpad = lambda s : s[0:-ord(s[-1])]
 
# encrypta con AES y codifica con base64
def EncodeAES(s):
	c = AES.new(key, AES.MODE_CBC, iv)
	s = pad(s)
	s = c.encrypt(s)
	s = base64.b64encode(s)
	return s.replace("+", replace_plus)
 
def DecodeAES(enc):
	c = AES.new(key, AES.MODE_CBC, iv)
	enc = enc.replace(replace_plus, "+")
	enc = base64.b64decode(enc)
	enc = c.decrypt(enc)
	return unpad(enc)
 
texto = "la casa azul"
 
# encriptar
encoded = EncodeAES(texto)
print 'Cadena encriptada:', encoded
 
# desencriptar
decoded = DecodeAES(encoded)
print 'Cadena desencriptada:', decoded



Comentarios sobre la versión: Versión 1.0 (1)

Imágen de perfil
kip
14 de Marzo del 2017
estrellaestrellaestrellaestrellaestrella
No ha dejado ningún comentario
Responder

Comentar la versión: Versión 1.0

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s3429