Estrarre xml da un file .p7m

Buongiorno, avrei bisogno di un programmino in python che mi estrae semplicemente il contenuto delle fatture xml firmate in p7m. Mi pare di aver capito che bisogna usare openssl ma non ho ben capito come procedere…se qualcuno ha già lavorato su un programma del genere o può dare qualche dritta sarebbe molto gradito.

Buongiorno Marco.
Io, in VB, utilizzo la seguente riga di comando:

Call shell(“c:\TuaCartella\openssl smime -decrypt -in C:\Gestionale\TuoFile.p7m -inform DER -verify -noverify -out c:\TuaCartella\TuoFile.xml”, 1)

Come già indicato da @ettore , il modo più semplice è richiamare openssl come programma esterno, però ti consiglio di usare il comando “cms” invece di “smime” perché ci sono alcuni file che non si riescono ad estrarre con smime, come indicato in un altro thread:

Purtroppo la libreria wrapper di OpenSSL per python (pyopenssl), come già quella per PHP, non espone la funzione necessaria (CMS_verify).

Ciao, un bel po’ di tempo fa ho fatto un semplice tool per estrarre e gestire in massa le fatture elettroniche presenti in una cartella PEC via IMAP.

Ed ho inserito un pezzettino di codice che estrae la fattura dal p7m (eventualmente verificando il certificato): fattura-elettronica-imap-extractor.py

In caso si può fare anche in forza bruta (come avviene in extract_p7m_invoice), ma non è proprio un sistema pulito :slight_smile: