Ad a) jak uz jsem psal v predchozi odpovedi, hlavicky se nepodepisuji. A s prilohami je to tak, ze se vygeneruje cela zprava ve formatu MIME vcetne vsech priloh, sakumprask se podepise a ten podpis se ulozi na konec se jako dalsi priloha. Takze pak je struktura treba takova:
Part.1 (puvodni MIME zprava)
Part.1.1 (text)
Part.1.2 (obrazek)
Part.2 (podpis)
Takoveto zprave se rika S/MIME a ma MIME hlavicku:
Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"
Ad b) OpenPGP pouziva uplne jiny druh certifikatu - duveryhodnost neni "strom" s korenem v Certifikacni Autorite ktere kdyz verite, tak implicitne verite i vsem ji podepsanym certifikatum. U OpenPGP (GnuPG, PGP, ...) si lide kteri si duveruji certifikaty podepisuji vzajemne a teoreticky by mel fungovat tranzitivni vztah: pokud Jarda podepsal Pepuv certifikat a Pepa podepsal Karluv certifikat, tak by Jarda mel verit i Karlovu certifikatu, protoze je podepsan nekym komu on sam veri.
Technicky je mozne PGP podpis resit dvema zpusoby - bud "inline", kdy je podepsan jen text e-mailu a ne prilohy. V tom pripade se text ohranici znackami "BEGIN PGP SIGNED MESSAGE" / "BEGIN PGP SIGNATURE" / "END PGP SIGNATURE" a mezi BEGIN/END signature je vlastni podpis. V mailovem klientovi ktery PGP neumi tyto znacky uvidite vlozene primo v textu zpravy.
Druha moznost je PGP/MIME, kdy je format zpravy prakticky stejny jako jsem popsal u S/MIME v bodu (a), az na to, ze zprava je typu "multipart/signed; protocol="application/pgp-signature".

