OpenPGP_Message::verify_one PHP Method

verify_one() public method

public verify_one ( $verifier, $sign, $sig )
    function verify_one($verifier, $sign, $sig)
    {
        if ($sign[0] instanceof OpenPGP_LiteralDataPacket) {
            $sign[0]->normalize();
            $raw = $sign[0]->data;
        } else {
            if (isset($sign[1]) && $sign[1] instanceof OpenPGP_UserIDPacket) {
                $raw = implode('', array_merge($sign[0]->fingerprint_material(), array(chr(0xb4), pack('N', strlen($sign[1]->body())), $sign[1]->body())));
            } else {
                if (isset($sign[1]) && ($sign[1] instanceof OpenPGP_PublicSubkeyPacket || $sign[1] instanceof OpenPGP_SecretSubkeyPacket)) {
                    $raw = implode('', array_merge($sign[0]->fingerprint_material(), $sign[1]->fingerprint_material()));
                } else {
                    if ($sign[0] instanceof OpenPGP_PublicKeyPacket) {
                        $raw = implode('', $sign[0]->fingerprint_material());
                    } else {
                        return NULL;
                    }
                }
            }
        }
        return call_user_func($verifier, $raw . $sig->trailer, $sig);
    }