UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 32: ordinal not in range(128)
Publicado por Jose Omar (1 intervención) el 02/09/2019 06:04:00
Trato de encriptar este texto:
Este examen solo es una prueba más en la vida de que todo lo que se proponen lo pueden lograr(incluso lo que sueñan), sin embargo es importante saber que solo con "esfuerzo" se pueden lograr ciertas cosas, #sino la mayoría#, así como aprendieron las vocales a e i o u, los numeros 0123456789 y posteriormente el abecedario abcdefghyjklmnñopqrstuvwxyz. ¿suerte?... quizás; más bien esfuerzo, el esfuerso se premia con 100%
y lo hago con este script:
y al ingresar el texto a encriptar el terminal me devuelve esto
Traceback (most recent call last):
File "asimetrico.py", line 25, in <module>
mensaje = mensaje.encode()
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 32: ordinal not in range(128)
Como prodria solucionar esto, cambie el encoding a otros formatos y no hay solucion a menos que quite acentos y las "ñ" del texto a encriptar
Este examen solo es una prueba más en la vida de que todo lo que se proponen lo pueden lograr(incluso lo que sueñan), sin embargo es importante saber que solo con "esfuerzo" se pueden lograr ciertas cosas, #sino la mayoría#, así como aprendieron las vocales a e i o u, los numeros 0123456789 y posteriormente el abecedario abcdefghyjklmnñopqrstuvwxyz. ¿suerte?... quizás; más bien esfuerzo, el esfuerso se premia con 100%
y lo hago con este script:
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
# -*- coding: utf-8 -*-
import Crypto
import binascii
from Crypto.PublicKey import RSA
from Crypto. Cipher import PKCS1_OAEP
random_generator = Crypto.Random.new().read
private_key = RSA.generate(4096, random_generator)
public_key = private_key.publickey()
private_key = private_key.exportKey(format='DER')
public_key = public_key.exportKey(format='DER')
private_key = binascii.hexlify(private_key).decode("utf8")
public_key = binascii.hexlify(public_key).decode("utf8")
#print(private_key)
#print(public_key)
private_key = RSA.importKey(binascii.unhexlify(private_key))
public_key = RSA.importKey(binascii.unhexlify(public_key))
mensaje = raw_input("Introduce mensaje: \n")
mensaje = mensaje.encode()
cipher = PKCS1_OAEP.new(public_key)
mensaje_encriptado = cipher.encrypt(mensaje)
print(mensaje_encriptado)
cipher = PKCS1_OAEP.new(private_key)
mensaje = cipher.decrypt(mensaje_encriptado)
print(mensaje)
y al ingresar el texto a encriptar el terminal me devuelve esto
Traceback (most recent call last):
File "asimetrico.py", line 25, in <module>
mensaje = mensaje.encode()
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 32: ordinal not in range(128)
Como prodria solucionar esto, cambie el encoding a otros formatos y no hay solucion a menos que quite acentos y las "ñ" del texto a encriptar
Valora esta pregunta


0