Przyznaję, że nie jestem bardzo biegły w weryfikacji klucza. Mam skrypt, który pobiera wiadomości z serwera POP3 i próbuję zweryfikować sygnatury DKIM w PHP. Znalazłem już sprawdzanie poprawności body hash (bh), ale nie mogę ustalić poprawności nagłówka.Jak sprawdzić podpis DKIM w PHP?
http://www.dkim.org/specs/rfc4871-dkimbase.html#rfc.section.6.1.3
Poniżej jest przykład moich nagłówków wiadomości. Byłem w stanie użyć pakietu Mail :: DKIM do sprawdzenia poprawności podpisu w Perlu, więc wiem, że to dobrze. Po prostu nie mogę wymyślić instrukcji w RFC i przetłumaczyć ich na kod PHP.
DomainKey-Signature: q=dns; a=rsa-sha1; c=nofws;
s=angrychimp-1.bh; d=angrychimp.net;
h=From:X-Outgoing;
b=RVkenibHQ7GwO5Y3tun2CNn5wSnooBSXPHA1Kmxsw6miJDnVp4XKmA9cUELwftf9
nGiRCd3rLc6eswAcVyNhQ6mRSsF55OkGJgDNHiwte/pP5Z47Lo/fd6m7rfCnYxq3
DKIM-Signature: v=1; a=rsa-sha1; d=angrychimp.net; s=angrychimp-1.bh; c=relaxed/simple;
q=dns/txt; [email protected]; t=1268436255;
h=From:Subject:X-Outgoing:Date;
bh=gqhC2GEWbg1t7T3IfGMUKzt1NCc=;
b=ZmeavryIfp5jNDIwbpifsy1UcavMnMwRL6Fy6axocQFDOBd2KjnjXpCkHxs6yBZn
Wu+UCFeAP+1xwN80JW+4yOdAiK5+6IS8fiVa7TxdkFDKa0AhmJ1DTHXIlPjGE4n5;
To: [email protected]
Message-ID: <EF.CC.24859.F1DCA9B4>
From: DKIM Tester <[email protected]>
Reply-To: [email protected]
Subject: Automated DKIM Testing (angrychimp.net)
X-Outgoing: dhaka
Date: Fri, 12 Mar 2010 15:24:15 -0800
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline
MIME-Version: 1.0
Return-Path: [email protected]
X-OriginalArrivalTime: 12 Mar 2010 23:25:50.0326 (UTC) FILETIME=[5A0ED160:01CAC23B]
mogę wydobyć z mojego klucza publicznego DNS dobrze, i wierzę, że jestem canonicalizing nagłówki poprawnie, ale po prostu nie może uzyskać podpis zatwierdzone. Nie sądzę, żebym przygotowywał mój klucz lub poprawnie obliczał poprawność podpisu.
Czy jest to coś, co jest możliwe (czy potrzebuję rozszerzeń gruszki czy coś takiego?) Lub czy ręczne sprawdzanie poprawności podpisu DKIM w PHP jest niewykonalne?
Umieszczam nagłówki w tagach kodu, jeśli nie podoba ci się, cofnij, ale myślę, że łatwiej jest je przeczytać. –
Dzięki. Myślałem, że to zrobiłem, ale chyba coś spieprzyłem. – angrychimp
Czy zdałeś sobie z tego sprawę? – Xeoncross