draft-ietf-sidr-publication-08.txt | draft-ietf-sidr-publication-09.txt | |||
---|---|---|---|---|
Network Working Group S. Weiler | Network Working Group S. Weiler | |||
Internet-Draft Parsons | Internet-Draft Parsons | |||
Intended status: Standards Track A. Sonalker | Intended status: Standards Track A. Sonalker | |||
Expires: September 22, 2016 TowerSec | Expires: March 25, 2017 TowerSec | |||
R. Austein | R. Austein | |||
Dragon Research Labs | Dragon Research Labs | |||
March 21, 2016 | September 21, 2016 | |||
A Publication Protocol for the Resource Public Key Infrastructure (RPKI) | A Publication Protocol for the Resource Public Key Infrastructure (RPKI) | |||
draft-ietf-sidr-publication-08 | draft-ietf-sidr-publication-09 | |||
Abstract | Abstract | |||
This document defines a protocol for publishing Resource Public Key | This document defines a protocol for publishing Resource Public Key | |||
Infrastructure (RPKI) objects. Even though the RPKI will have many | Infrastructure (RPKI) objects. Even though the RPKI will have many | |||
participants issuing certificates and creating other objects, it is | participants issuing certificates and creating other objects, it is | |||
operationally useful to consolidate the publication of those objects. | operationally useful to consolidate the publication of those objects. | |||
This document provides the protocol for doing so. | This document provides the protocol for doing so. | |||
Status of This Memo | Status of This Memo | |||
skipping to change at page 1, line 37 | skipping to change at page 1, line 37 | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on September 22, 2016. | This Internet-Draft will expire on March 25, 2017. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2016 IETF Trust and the persons identified as the | Copyright (c) 2016 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
skipping to change at page 7, line 48 | skipping to change at page 7, line 48 | |||
so. This error code just provides a way for the server to explain | so. This error code just provides a way for the server to explain | |||
its (in-)action. | its (in-)action. | |||
other_error: A meteor fell on the server. | other_error: A meteor fell on the server. | |||
2.6. XML Schema | 2.6. XML Schema | |||
The following is a RelaxNG compact form schema describing the | The following is a RelaxNG compact form schema describing the | |||
Publication Protocol. | Publication Protocol. | |||
# $Id: rpki-publication.rnc 3595 2016-03-21 21:31:37Z sra $ | # $Id: rpki-publication.rnc 3785 2016-09-21 22:21:58Z sra $ | |||
# RelaxNG schema for RPKI publication protocol. | # RelaxNG schema for RPKI publication protocol. | |||
default namespace = | default namespace = | |||
"http://www.hactrn.net/uris/rpki/publication-spec/" | "http://www.hactrn.net/uris/rpki/publication-spec/" | |||
# This is version 4 of the protocol. | # This is version 4 of the protocol. | |||
version = "4" | version = "4" | |||
# Top level PDU is either a query or a reply. | # Top level PDU is either a query or a reply. | |||
start |= element msg { | start |= element msg { | |||
attribute version { version }, | attribute version { version }, | |||
attribute type { "query" }, | attribute type { "query" }, | |||
query_elt* | query_elt | |||
} | } | |||
start |= element msg { | start |= element msg { | |||
attribute version { version }, | attribute version { version }, | |||
attribute type { "reply" }, | attribute type { "reply" }, | |||
reply_elt* | reply_elt | |||
} | } | |||
# Tag attributes for bulk operations. | # Tag attributes for bulk operations. | |||
tag = attribute tag { xsd:token { maxLength="1024" } } | tag = attribute tag { xsd:token { maxLength="1024" } } | |||
# Base64 encoded DER stuff. | # Base64 encoded DER stuff. | |||
base64 = xsd:base64Binary | base64 = xsd:base64Binary | |||
skipping to change at page 8, line 50 | skipping to change at page 8, line 50 | |||
error |= "xml_error" | error |= "xml_error" | |||
error |= "permission_failure" | error |= "permission_failure" | |||
error |= "bad_cms_signature" | error |= "bad_cms_signature" | |||
error |= "object_already_present" | error |= "object_already_present" | |||
error |= "no_object_present" | error |= "no_object_present" | |||
error |= "no_object_matching_hash" | error |= "no_object_matching_hash" | |||
error |= "consistency_problem" | error |= "consistency_problem" | |||
error |= "other_error" | error |= "other_error" | |||
# <publish/> query | # <publish/> and <withdraw/> query elements | |||
query_elt |= element publish { tag, uri, hash?, base64 } | ||||
# <withdraw/> query | ||||
query_elt |= element withdraw { tag, uri, hash } | query_elt |= ( | |||
element publish { tag, uri, hash?, base64 } | | ||||
element withdraw { tag, uri, hash } | ||||
)* | ||||
# <success/> reply | # <success/> reply | |||
reply_elt |= element success { empty } | reply_elt |= element success { empty } | |||
# <list/> query and reply | # <list/> query and reply | |||
query_elt |= element list { empty } | query_elt |= element list { empty } | |||
reply_elt |= element list { uri, hash } | reply_elt |= element list { uri, hash }* | |||
# <report_error/> reply | # <report_error/> reply | |||
reply_elt |= element report_error { | reply_elt |= element report_error { | |||
tag?, | tag?, | |||
attribute error_code { error }, | attribute error_code { error }, | |||
element error_text { xsd:string { maxLength="512000" }}?, | element error_text { xsd:string { maxLength="512000" }}?, | |||
element failed_pdu { query_elt }? | element failed_pdu { query_elt }? | |||
} | }* | |||
3. Examples | 3. Examples | |||
Following are examples of various queries and the corresponding | Following are examples of various queries and the corresponding | |||
replies for the RPKI publication protocol. | replies for the RPKI publication protocol. | |||
Note the authors have taken liberties with the Base64, hash, and URI | Note the authors have taken liberties with the Base64, hash, and URI | |||
text in these examples in the interest of making the examples fit | text in these examples in the interest of making the examples fit | |||
nicely into RFC text format. | nicely into RFC text format. | |||
End of changes. 11 change blocks. | ||||
14 lines changed or deleted | 14 lines changed or added | |||
This html diff was produced by rfcdiff 1.42. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |