X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=hippotat.git;a=blobdiff_plain;f=PROTOCOL;h=e18cf0e1554da169e6ffdcd8994ba3a727f8c17c;hp=05cc44be9c2e12c79311edfbc83dd6823eaf3865;hb=e13eca8e1facf849a7825b815adc72ef142b7ca8;hpb=0c8302b2d475b472387874e93d66ba831b5000a5 diff --git a/PROTOCOL b/PROTOCOL index 05cc44b..e18cf0e 100644 --- a/PROTOCOL +++ b/PROTOCOL @@ -8,7 +8,9 @@ from the queue and returns them as the POST response body payload Each incoming request contains up to max_batch_up bytes of payload. It's a multipart/form-data. -Authentication: for now, plaintext password +Authentication: clock-based lifetime-limited bearer tokens. + +Encryption and integrity checking: none. Use a real VPN over this! Routing assistance: none in hippotat; can be requested on client from userv-ipif via `vroutes' parameter. Use with secnet polypath @@ -17,14 +19,19 @@ Routing assistance: none in hippotat; can be requested on client Client form parameters (multipart/form-data): m metadata, newline-separated list (text file) of client ip address (textual) - password + token target_requests_outstanding http_timeout d data (SLIP format, with SLIP_ESC and `-' swapped) +Authentication token is: + +(separated by a single space). The hmac is + HMAC(secret, ) + -Future nonce-based authentication: +Possible future nonce-based authentication: server keeps big nonce counter for each client meaning is: