anchor.diff:  
   
   ;; ------------- the authenticator -------------
  +
   (defxenum authdes-namekind 
     (:fullname 0)
     (:nickname 1))
  
positive.code:     (make-authdes-verf-server :adv-timeverf (dh-encrypt (make-dh-cipher conversation) v)
  			      :adv-nickname nickname)))
  
  
  
  ;; --------------------------------------------
  
negative.code:   (adv-timeverf (:varray* :octet)) ;; encrypted (timestamp - 1)
    (adv-nickname :int32)) ;; nickname to be used for the conversation
  
  ;; -----------------------------------------------
  
  ;; Diffie-Hellman encryption
  
  ;; these constants are specified in the rfc
  (defconstant +dh-base+ 3)
  (defconstant +dh-modulus+ (parse-integer "d4a0ba0250b6fd2ec626e7efd637df76c716e22d0944b88b" 
  					 :radix 16))
  
  (defun dh-key (number)
    "Convert a number into a 192-bit DH key."
    (let ((key (nibbles:make-octet-vector 24)))
  