Validar assinatura digital de nfe

Alguem como posso validar se a assinatura de um XML de NFE recebido do fornecedor é valida ?

Bom, eu sei que já se passou mais de um ano desde que essa pergunta foi feita mas, fato é que, procurando no Google, ninguém parece ter a resposta! É o tipo de erro que fica fácil de resolver depois que você descobre o que você tem que procurar. Já que eu acabei de passar por isso, eis o que eu fiz:

Peguei este exemplo, que quase funcionava, mas não encontrava a chave.
Então, fiz algumas modificações, adicionando algumas linhas para suportar validação da assinatura X509:
http://snipt.org/EBQ3