Implementation Report for RFCs 3730-3734 ======================================================================= This report summarizes the results of implementation testing of the Extensible Provisioning Protocol (EPP) as originally specified in RFCs 3730, 3731, 3732, 3733, and 3734 and updated in Internet-Drafts 3730bis, 3731bis, 3732bis, 3733bis, and 3734bis. Primary test participants included two client implementers (DotRegistrar and Key Systems) and three server implementers (Afilias, NeuStar, and VeriSign). Additional tests were performed using a client developed by Patrick Mevzek of "Dot and Co" (http://www.dotandco.com/) and a server developed by the .se ccTLD registry. Mandatory and optional protocol features are described in the table below. Table rows represent features. Table columns represent client-server interactions. A successful client-server test is represented with an "X". At least one "X" must be present in each row to document successful implementation of a feature in at least two independent implementations. SUMMARY: All of the features described in the table were implemented by at least two implementers. EPP Test Matrix --------------- Key: D-C: DotRegistrar Client K-C: Key Systems Client A-S: Afilias Server N-S: NeuStar Server V-S: VeriSign Server "X": Feature implemented and tested by both client and server. "*": Feature implemented by server, but not tested by client. "-": Feature not implemented or not tested. Client Feature Client-Server Support ------------------------------------------------------------------------- | D-C | D-C | D-C | K-C | K-C | K-C | | A-S | N-S | V-S | A-S | N-S | V-S | ------------------------------------------------------------------------- 3734bis (TCP) TLS on TCP port 700 | X | X | X | X | X | X | TLS server authentication | X | X | X | X | X | X | TLS client authentication | X | X | X | X | X | X | EPP header | X | X | X | X | X | X | EPP on open | X | X | X | X | X | X | EPP close | X | X | X | X | X | X | ------------------------------------------------------------------------- 3730bis (EPP Core) EPP XML namespace URI | X | X | X | X | X | X | EPP XML schema URI | X | X | X | X | X | X | | X | X | X | X | X | X | | X | X | X | X | X | X | OPTIONAL | X | * | X | X | X | X | | X | X | X | X | X | X | OPTIONAL | X | X | - | X | - | - | | X | X | X | X | X | X | OPTIONAL | * | - | X | X | X | X | OPTIONAL | X | X | X | X | X | X | | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | - | - | X | - | - | - | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | - | X | - | X | X | X | | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | | X | X | X | X | X | X | | X | X | X | X | X | X | OPTIONAL | - | - | X | - | X | - | | X | X | X | X | X | X | | X | X | X | X | X | X | | X | X | X | X | X | X | query | X | X | X | - | - | - | | X | X | X | X | X | X | | X | X | X | X | X | X | | X | X | X | X | X | X | | X | X | X | X | X | X | | X | X | X | X | X | X | ------------------------------------------------------------------------- 3731bis (EPP Domain) Status values | X | X | X | X | X | X | | X | X | X | X | X | X | OPTIONAL | X | - | - | - | X | - | | X | X | X | X | X | X | OPTIONAL "hosts" attribute | X | X | - | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | query | X | X | X | - | - | - | OPTIONAL | X | X | X | * | - | - | OPTIONAL | X | X | X | - | - | - | | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | | X | X | X | X | X | X | | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL "roid" attribute | - | - | * | - | - | * | | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | - | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | Offline review | - | - | X | - | X | X | ------------------------------------------------------------------------- 3732bis (EPP Host) Status values | X | X | X | X | X | * | | X | X | X | X | X | X | OPTIONAL | - | - | - | - | X | X | | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | | X | X | X | X | X | X | | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | Offline review | - | - | X | - | X | X | ------------------------------------------------------------------------- 3733bis (EPP Contact) Status values | X | X | X | - | - | - | | X | X | - | X | X | X | OPTIONAL | - | - | - | - | X | X | | X | X | X | X | X | X | OPTIONAL | X | X | - | X | X | X | OPTIONAL | X | X | - | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | * | - | X | X | X | query | X | X | - | - | - | - | OPTIONAL | X | X | - | * | - | - | | X | X | - | X | X | X | OPTIONAL | X | X | - | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | - | X | X | X | | X | X | X | X | X | X | | X | X | - | X | X | X | | X | X | X | X | X | X | OPTIONAL | X | X | - | X | X | X | OPTIONAL | X | X | - | X | X | X | OPTIONAL | X | X | - | X | X | X | OPTIONAL | X | X | - | X | X | X | OPTIONAL | X | X | - | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | X | X | X | X | OPTIONAL | X | X | - | X | X | X | OPTIONAL | - | - | - | X | X | X | Offline review | * | - | X | * | - | - | ------------------------------------------------------------------------- At least one "X" is required in each row of the table above to confirm that a feature was tested using two independently-developed implementations. The table does not fully describe the testing of the "OPTIONAL "roid" attribute" feature documented in RFC 3731 and 3731bis. This feature was independently tested using the client developed by "Dot and Co" and the server developed by the .se ccTLD registry; the other features listed in the table were not completely tested by these two implementations. Scott Hollenbeck VeriSign, Inc. 21345 Ridgetop Circle Dulles, VA 20166 mailto:shollenbeck@verisign.com