Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Lettura file P7m
mercoledì 20 marzo 2024 - 09.41
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
C#
AntCiar
Profilo
| Expert
936
messaggi | Data Invio:
mer 20 mar 2024 - 09:41
Buongiorno a tutti.
Sono alle prese con la lettura dei file p7m relativi alle fatture elettroniche.
Ho usato questo codice (trovato sulla rete) per convertire i file p7m in file xml in modo da poterne leggere il contenuto
byte[] FileFirmatoP7m = File.ReadAllBytes(p7mFilePath);
SignedCms cmsFirmato = new SignedCms();
cmsFirmato.Decode(FileFirmatoP7m);
byte[] FileRilevato = cmsFirmato.ContentInfo.Content;
File.WriteAllBytes(System.IO.Path.Combine(System.IO.Path.GetDirectoryName(p7mFilePath), fileNameConvertito), FileRilevato);
res = System.IO.Path.Combine(System.IO.Path.GetDirectoryName(p7mFilePath), fileNameConvertito);
cmsFirmato = null;
Questo codice per ora ha sempre funzionato. Con alcuni file invece capita che quando viene chiamato il metodo .Decode solleva una eccezione.
Nel testo dell'eccezione mi da "Valore tag ASN1 non valido."
Ho cercato in rete qualcosa per risolvere il problema ma non ho trovato molto.
In molti usano openssl per "convertire" il file firmato in un altro formato "leggibile".
Ho provato con questo ad esempio
openssl smime -verify -noverify -in file.p7m -inform DER -out file.xml
ma ho errori del tipo
Error reading S/MIME message
B0130000:error:068000A8:asn1 encoding routines:asn1_check_tlen:wrong tag:crypto\asn1\tasn_dec.c:1188:
B0130000:error:0688010A:asn1 encoding routines:asn1_item_embed_d2i:nested asn1 error:crypto\asn1\tasn_dec.c:349:Type=PKCS7
Qualcuno di voi ha avuto problemi simili e in qualche modo superati?
Grazie a tutti
Cristian Barca
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !