p7m, estrarre il file d’origine con openssl

Cosa sono i file pm7? Da quando è stata introdotta la fatturazione elettronica, cioè dal 1 gennaio, se ne cominciano a vedere in giro parecchi, estensioni xml.p7m. Ma non solo, già circolavano documenti pdf con ulteriore estensione p7m. Be, alla fine sono file firmati digitalmente, i quali per essere aperti devono prima essere decriptati.

Esistono tool come dike, che permettono sia di firmare file ma anche di visualizzarli. Se invece avete un mac o linux, siete un po’ pratici con il terminale, potete convertire i p7m nel loro file originale usando openssl. Di solito il tool si trova di serie sia su mac che su linux, se non fosse cosi basta installarlo con il solito homebrew oppure per linux usando apt-get.

Convertire i p7m con openssl

Per ottenere il file originale dal p7m basta digitare nel terminale:

openssl smime -decrypt -verify -inform DER -in $file_input_name -noverify -out  $file_output_name

ovviamente al posto di $file_input_name occorre inserire il nome del file di input, mentre al posto di $file_output_name va messo lo stesso nome del file input senza l’estensione .p7m. Il file ottenuto sarà visualizzabile con il software appropriato, ad esempio adobe reader o anteprima se trattasi di pdf.

Di seguito trovate uno script che potete usare in automator il quale vi permette di inserire nel menu servizi una scorciatoia per convertire i file al volo, basta selezionare il file e nel menu del Finder usare la scorciatoia p7m2original (io l’ho chiamata così ma voi potete chiamare la scorciatoia come vi pare)

on run {input, parameters}

set inputFile to POSIX path of input

set noverify to " -noverify -out "

set outputFile to text 1 thru -5 of inputFile

do shell script "openssl smime -decrypt -verify -inform DER -in " & inputFile & noverify & outputFile

return input

end run

In automator, selezionate “Azione rapida“, impostate come elementi del flusso “File e cartelle” e come applicazione il finder. Infine inserite il blocco “Esegui Applescript” e incollateci all’interno lo script precedente. Salvate e adesso nel vostro menu servizi del finder avete la vostra bella scorciatoia per domare i p7m.