Connected: An Internet Encyclopedia
RFC 1510 - A.14. KRB_SAFE verification

Top: Connected: An Internet Encyclopedia
Up: Requests For Comments
Up: RFC 1510
Up: A. Pseudo-code for protocol processing
Prev: A.13. KRB_SAFE generation
Next: A.15. KRB_SAFE and KRB_PRIV common checks

### A.14. KRB_SAFE verification

            receive packet;
            if (packet.pvno != 5) then
                    either process using other protocol spec
                    or error_out(KRB_AP_ERR_BADVERSION);
            endif
            if (packet.msg-type != KRB_SAFE) then
                    error_out(KRB_AP_ERR_MSG_TYPE);
            endif
            if (packet.checksum.cksumtype is not both collision-proof
                                                 and keyed) then
                    error_out(KRB_AP_ERR_INAPP_CKSUM);
            endif
            if (safe_priv_common_checks_ok(packet)) then
                    set computed_checksum := checksum(packet.body);
                    if (computed_checksum != packet.checksum) then
                            error_out(KRB_AP_ERR_MODIFIED);
                    endif
                    return (packet, PACKET_IS_GENUINE);
            else
                    return common_checks_error;
            endif

Next: A.15. KRB_SAFE and KRB_PRIV common checks

Connected: An Internet Encyclopedia
RFC 1510 - A.14. KRB_SAFE verification