ietf-clear
[Top] [All Lists]

[ietf-clear] more on no callbacks, please

2004-10-05 12:15:41
From: Dave Crocker [mailto:dcrocker(_at_)mipassoc(_dot_)org]
Sent: Tuesday, October 05, 2004 2:35 PM


Seth,

I probably did not read carefully enough, but I did not see the
answer to my question:

Nah, I didn't read carefully enough and answered the wrong question.  That's
unfortunate, because it was a good answer.



 When the server decrypts the signature, how does it know
 the string is valid?  Presumably it is some pre-
 established string that it recognizes?

When the call-back service gets data from the querier, the
call-back service does some decription and then validates the
results.  What is inside the decryption that the service uses for
that validation?

Since the signature is based on a one-way hash function, the validation
server recreates the signature using the secret key and compares it to the
one presented for validation.  If the object for validation is a signed
return-path that looks like:

MAIL FROM:<S=HHHHHHHHHHHT(_dot_)DDDDDDDDDDDd=local-part(_at_)example(_dot_)com>

and the validation method is DNS using defaults, the message recipient would
do a DNS "A" query for:

S=HHHHHHHHHHHT.DDDDDDDDDDDd=local-part._ses.example.com

The subdomain _ses.example.com is delegated to an appropriate validation
server that understands this is really a SES validation request for the
example.com domain.  Assuming the format appears correct, it reconstructs
the signed return-path as:

S=HHHHHHHHHHHT(_dot_)DDDDDDDDDDDd=local-part(_at_)example(_dot_)com

Using the secret key appropriate for the date code "T" for example.com, it
computes the HMAC-SHA1 over:

T(_dot_)DDDDDDDDDDDd=local-part(_at_)example(_dot_)com

and checks for equality with the "HHHHHHHHHHH" field.  If the HMAC result
matches, it returns a pass result with a TTL that is the remaining life of
that signature.  If the HMAC result does not match, it returns a fail result
with a TTL that is the time until that date code will next appear.

--

Seth Goodman