a Secarta project ...

HTTPsec Authentication Protocol


Preamble

3.1.2. Initialization Response

The WWW-Authenticate header [HTTP][ 14.47] in protocol initialization responses has the following form:

"WWW-Authenticate: httpsec/1.0 initialize, "
 1#(  id
   |  dh
   | [certificate]
   |  token
   |  auth
   |  signature )
     
token       = "token=" <string-no-whitespace>
id          = "id=" <URI>
dh          = "dh=" base64
certificate = "certificate=" <URI>
auth        = "auth=" base64
signature   = "signature=" base64

Example message:

HTTP/1.1 401 Authorization Required
Expires: Thu, 11 Aug 2005 18:20:42 GMT
Cache-Control: no-transform
WWW-Authenticate: httpsec/1.0 initialize
    id=alice.example.com
    dh=+NcclW9y2I3W9X5Vy+5v5lAy4X56y+Ncrwrtv5lqe...
    certificate=http://alice.example.com/my-cert
    token=mCa5tx1vKBY
    auth=vpCNmx7MZ7iqgkzIe0HWwfyrOMeqwg0TdbpwefI...
    signature=2pX3SNgzWkV3w0W9y2X5V23hhy+5b8DQmo...

(For legibility, the example's protocol header is extended over multiple lines, as per [HTTP][4.2]. Additionally, the values of some directives are lengthy and have therefore been abbreviated; their terminating ellipsis "..." would NOT appear in the actual value.)