﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	launchpad_bug
466	extendable Introducer protocol: dictionary-based, signed announcements	warner	warner	"Zooko and I have discussed a new API for the Introducer that would be more
extensible for future uses. We need three features out of the new design:

 * announce dictionaries rather than tuples, so that we can add new keys to
   the announcements without affecting older subscribers who won't understand
   them
 * handle signed announcements: eventually we'll be using ""blessed servers""
   to allow clients to restrict which storage servers they'll use (they can
   specify a public key, and only pay attention to announcements that were
   signed with the corresponding private key)
 * be compatible with v1.0/v1.1 clients, by using new remote_ methods and
   leaving the old methods in place.

This is one of the pre-requisites for implementing Accounting, since when we
require clients to use rights-amplification to obtain a reference to an
attenuated/labeled storage server object (instead of the current scheme in
which everybody gets access to a full-powered server reference), we'll be
announcing the ""login"" facet via a different interface name.

We're also planning on using the introducer to allow storage servers to
update their announcement when they get full (or when they free enough space
to resume accepting shares). This is a performance optimization: if a server
is going to reject all shares, it is faster to remove it from the list of
available writers than to ask and be rejected for each upload. The server
should remain available for reading, though. We're not yet sure how we'll do
this:

 * announce a ""writeable"" flag for each server
 * announce read-server and write-server separately

We should keep the idea of ""updating your earlier announcement"" in mind as we
implement this improvement.
"	enhancement	closed	major	1.10.0	code-network	1.1.0	fixed	introduction forward-compatibility performance accounting ecdsa pycryptopp	writefaruq@…	
