Weryfikacja Cli podpisanego cyfrowo e-maila

10

Jestem Alice i otrzymałem podpisany e-mail od Boba.

Korzystam z klienta poczty internetowej (np. Gmail) i widzę, że jednym z załączników jest smime.p7s.

Znalazłem opcję „pokaż oryginalną wiadomość” i zapisałem zawartość w message.orig.

Zakładając, że Bob podpisał wiadomość e-mail, jak mogę ją zweryfikować z wiersza poleceń?

(Załóżmy, że Bob używa certyfikowanego klucza podpisanego przez niektóre z szanowanych organów - nie wiem który, ale przypuszczam, że)

(Alice nie chce instalować klienta poczty e-mail z odpowiednią funkcją, tylko dla jednej wiadomości)

Grzegorz Wierzowiecki
źródło
+1 za odpowiedź, -1 za brak wzmianki o Trudy (edytuj: P)
Avio

Odpowiedzi:

9
openssl smime -verify -in message.orig

Dodaj opcję -CAfilelub -CApath, aby określić inną listę zaufanych certyfikatów niż domyślna w systemie.

Możesz uzyskać informacje z certyfikatu użytego do podpisania wiadomości e-mail za pomocą:

openssl smime -noverify -in message.orig -pk7out |
  openssl pkcs7 -print_certs -text -noout

Lub z pliku smime.p7s, jeśli już go rozpakowałeś:

openssl pkcs7 -in smime.p7s -text -inform DER -print_certs -noout
Stéphane Chazelas
źródło
ok, właśnie zaktualizowałem swoje ca-certificates(Arch pacman -S ca-certificates), ale Verification failure 140717529130664:error:21071065:PKCS7 routines:PKCS7_signatureVerify:digest failure:pk7_doit.c:1048: 140717529130664:error:21075069:PKCS7 routines:PKCS7_verify:signature failure:pk7_smime.c:410: pojawia się błąd: Czy masz jakieś pojęcie, co to znaczy? Może „otwórz oryginalny komunikat”, a następnie zapisując źródło, dokonałeś pewnych przekształceń w źródło wiadomości?
Grzegorz Wierzowiecki
Czy openssl pkcs7 -in smime.p7s -text -inform DER -print_certs -nooutdziała (aby przekazać informacje o certyfikacie w pliku pk7)?
Stéphane Chazelas
Tak. (btw. To bardzo przydatne polecenie, dodaj je do swojej odpowiedzi, sądzę, że inni użytkownicy również skorzystają.)
Grzegorz Wierzowiecki
Nowe polecenie też nie pomaga: pastebin.com/xNMG2gwQ
Grzegorz Wierzowiecki
Właśnie próbowałem „pokaż oryginał” w Gmailu, a potem użyłem „zapisz stronę jako” w Firefoxie i polecenie działało poprawnie. Zauważyłem również, że Gmail rozwija nagłówek „podpisany przez”.
Stéphane Chazelas