Come decodificare il testo cifrato da chiavi pubbliche e private in formato intero RSA?

0

Ho un testo cifrato c :

25891321569730591340908100200084238908526220639262493280132434760408339201 

E un modulo di chiave pubblica n :

26968512395163253601932973308752915431751775641665954651069702885890373293

E esponente e :

65537

Tutti sono nel formato intero. Ho anche la chiave privata nello stesso formato (numero intero). Come posso decifrare il testo cifrato allora? Devo convertire nel formato OpenSSL .pem? Se sì, allora come posso farlo?

Ho provato a decifrare tramite OpenSSL, ho ricevuto questo errore:

error:0406506C:rsa routines:RSA_EAY_PRIVATE_DECRYPT:data greater than mod len

Ho anche provato a cercare su questo sito e ho ricevuto questo link . Quando ho provato ho ricevuto il seguente errore:

0:d=0  hl=2 l=  50 prim: appl [ 27 ]       
Error in encoding
894:error:0D07209B:asn1 encoding routines:ASN1_get_object:too long:

Qualcuno può aiutarti?

    
posta Rajat 29.10.2016 - 00:26
fonte

2 risposte

2

In realtà non è necessario convertire le chiavi o utilizzare OpenSSL. Apri una console Python e decrittografa il tuo messaggio:

>>> m = (c ** d) % n

dove d è il tuo esponente privato.

    
risposta data 28.01.2017 - 21:19
fonte
0

Se vuoi seguire i suggerimenti nei commenti alla tua domanda, ti suggerisco di guardare la libreria Python "crittografia", in particolare su "cryptography.hazmat.primitives.asymmetric.rsa". È abbastanza ben documentato.

Vedi link per la documentazione.

Nota che stai lavorando in territorio hazmat, quindi non usare questo per la crittografia seria senza capire le insidie dell'uso di primitive crittografiche in un cryptosystem.

    
risposta data 30.10.2016 - 17:50
fonte

Leggi altre domande sui tag