draft-ietf-rtgwg-yang-key-chain-21.txt   draft-ietf-rtgwg-yang-key-chain-22.txt 
Network Working Group A. Lindem, Ed. Network Working Group A. Lindem, Ed.
Internet-Draft Cisco Systems Internet-Draft Cisco Systems
Intended status: Standards Track Y. Qu Intended status: Standards Track Y. Qu
Expires: October 28, 2017 Huawei Expires: October 30, 2017 Huawei
D. Yeung D. Yeung
Arrcus, Inc Arrcus, Inc
I. Chen I. Chen
Jabil Jabil
J. Zhang J. Zhang
Juniper Networks Juniper Networks
April 26, 2017 April 28, 2017
Routing Key Chain YANG Data Model Routing Key Chain YANG Data Model
draft-ietf-rtgwg-yang-key-chain-21.txt draft-ietf-rtgwg-yang-key-chain-22.txt
Abstract Abstract
This document describes the key chain YANG data model. Key chains This document describes the key chain YANG data model. Key chains
are commonly used for routing protocol authentication and other are commonly used for routing protocol authentication and other
applications requiring symmetric keys. A key chain is a list of applications requiring symmetric keys. A key chain is a list of
elements each containing a key string, send lifetime, accept elements each containing a key string, send lifetime, accept
lifetime, and algorithm (authentication or encryption). By properly lifetime, and algorithm (authentication or encryption). By properly
overlapping the send and accept lifetimes of multiple key chain overlapping the send and accept lifetimes of multiple key chain
elements, key strings and algorithms may be gracefully updated. By elements, key strings and algorithms may be gracefully updated. By
skipping to change at page 1, line 45 skipping to change at page 1, line 45
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 October 28, 2017. This Internet-Draft will expire on October 30, 2017.
Copyright Notice Copyright Notice
Copyright (c) 2017 IETF Trust and the persons identified as the Copyright (c) 2017 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 2, line 35 skipping to change at page 2, line 35
2. Problem Statement . . . . . . . . . . . . . . . . . . . . . . 3 2. Problem Statement . . . . . . . . . . . . . . . . . . . . . . 3
2.1. Applicability . . . . . . . . . . . . . . . . . . . . . . 4 2.1. Applicability . . . . . . . . . . . . . . . . . . . . . . 4
2.2. Graceful Key Rollover using Key Chains . . . . . . . . . 4 2.2. Graceful Key Rollover using Key Chains . . . . . . . . . 4
3. Design of the Key Chain Model . . . . . . . . . . . . . . . . 5 3. Design of the Key Chain Model . . . . . . . . . . . . . . . . 5
3.1. Key Chain Operational State . . . . . . . . . . . . . . . 6 3.1. Key Chain Operational State . . . . . . . . . . . . . . . 6
3.2. Key Chain Model Features . . . . . . . . . . . . . . . . 6 3.2. Key Chain Model Features . . . . . . . . . . . . . . . . 6
3.3. Key Chain Model Tree . . . . . . . . . . . . . . . . . . 6 3.3. Key Chain Model Tree . . . . . . . . . . . . . . . . . . 6
4. Key Chain YANG Model . . . . . . . . . . . . . . . . . . . . 8 4. Key Chain YANG Model . . . . . . . . . . . . . . . . . . . . 8
5. Security Considerations . . . . . . . . . . . . . . . . . . . 15 5. Security Considerations . . . . . . . . . . . . . . . . . . . 15
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16
7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 16 7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 17
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 16 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 17
8.1. Normative References . . . . . . . . . . . . . . . . . . 16 8.1. Normative References . . . . . . . . . . . . . . . . . . 17
8.2. Informative References . . . . . . . . . . . . . . . . . 17 8.2. Informative References . . . . . . . . . . . . . . . . . 17
Appendix A. Examples . . . . . . . . . . . . . . . . . . . . . . 18 Appendix A. Examples . . . . . . . . . . . . . . . . . . . . . . 19
A.1. Simple Key Chain with Always Valid Single Key . . . . . . 19 A.1. Simple Key Chain with Always Valid Single Key . . . . . . 19
A.2. Key Chain with Keys having Different Lifetimes . . . . . 19 A.2. Key Chain with Keys having Different Lifetimes . . . . . 19
A.3. Key Chain with Independent Send and Accept Lifetimes . . 21 A.3. Key Chain with Independent Send and Accept Lifetimes . . 21
Appendix B. Acknowledgments . . . . . . . . . . . . . . . . . . 22 Appendix B. Acknowledgments . . . . . . . . . . . . . . . . . . 22
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 22
1. Introduction 1. Introduction
This document describes the key chain YANG [YANG] data model. Key This document describes the key chain YANG [YANG] data model. Key
chains are commonly used for routing protocol authentication and chains are commonly used for routing protocol authentication and
skipping to change at page 6, line 31 skipping to change at page 6, line 31
implementations. For example, not all vendors support configuration implementations. For example, not all vendors support configuration
of an acceptance tolerance or configuration of key strings in of an acceptance tolerance or configuration of key strings in
hexadecimal. They are also used to support of security requirements hexadecimal. They are also used to support of security requirements
(e.g., TCP-AO Algorithms [TCP-AO-ALGORITHMS]) not yet implemented by (e.g., TCP-AO Algorithms [TCP-AO-ALGORITHMS]) not yet implemented by
vendors or only a single vendor. vendors or only a single vendor.
3.3. Key Chain Model Tree 3.3. Key Chain Model Tree
+--rw key-chains +--rw key-chains
+--rw key-chain* [name] +--rw key-chain* [name]
+--rw name string | +--rw name string
+--rw description? string | +--rw description? string
+--rw accept-tolerance {accept-tolerance}? | +--rw accept-tolerance {accept-tolerance}?
| +--rw duration? uint32 | | +--rw duration? uint32
+--ro last-modified-timestamp? yang:date-and-time | +--ro last-modified-timestamp? yang:date-and-time
+--rw key* [key-id] | +--rw key* [key-id]
+--rw key-id uint64 | +--rw key-id uint64
+--rw lifetime | +--rw lifetime
| +--rw (lifetime)? | | +--rw (lifetime)?
| +--:(send-and-accept-lifetime) | | +--:(send-and-accept-lifetime)
| | +--rw send-accept-lifetime | | | +--rw send-accept-lifetime
| | +--rw (lifetime)? | | | +--rw (lifetime)?
| | +--:(always) | | | +--:(always)
| | | +--rw always? empty | | | | +--rw always? empty
| | +--:(start-end-time) | | | +--:(start-end-time)
| | +--rw start-date-time? | | | +--rw start-date-time?
| | | yang:date-and-time | | | | yang:date-and-time
| | +--rw (end-time)? | | | +--rw (end-time)?
| | +--:(infinite) | | | +--:(infinite)
| | | +--rw no-end-time? empty | | | | +--rw no-end-time? empty
| | +--:(duration) | | | +--:(duration)
| | | +--rw duration? uint32 | | | | +--rw duration? uint32
| | +--:(end-date-time) | | | +--:(end-date-time)
| | +--rw end-date-time? | | | +--rw end-date-time?
| | yang:date-and-time | | | yang:date-and-time
| +--:(independent-send-accept-lifetime) | | +--:(independent-send-accept-lifetime)
| | {independent-send-accept-lifetime}? | | | {independent-send-accept-lifetime}?
| +--rw send-lifetime | | +--rw send-lifetime
| | +--rw (lifetime)? | | | +--rw (lifetime)?
| | +--:(always) | | | +--:(always)
| | | +--rw always? empty | | | | +--rw always? empty
| | +--:(start-end-time) | | | +--:(start-end-time)
| | +--rw start-date-time? | | | +--rw start-date-time?
| | yang:date-and-time | | | | yang:date-and-time
| | +--rw (end-time)? | | | +--rw (end-time)?
| | +--:(infinite) | | | +--:(infinite)
| | | +--rw no-end-time? empty | | | | +--rw no-end-time? empty
| | +--:(duration) | | | +--:(duration)
| | | +--rw duration? uint32 | | | | +--rw duration? uint32
| | +--:(end-date-time) | | | +--:(end-date-time)
| | +--rw end-date-time? | | | +--rw end-date-time?
| | yang:date-and-time | | | yang:date-and-time
| +--rw accept-lifetime | | +--rw accept-lifetime
| +--rw (lifetime)? | | +--rw (lifetime)?
| +--:(always) | | +--:(always)
| | +--rw always? empty | | | +--rw always? empty
| +--:(start-end-time) | | +--:(start-end-time)
| +--rw start-date-time? | | +--rw start-date-time?
| | yang:date-and-time | | | yang:date-and-time
| +--rw (end-time)? | | +--rw (end-time)?
| +--:(infinite) | | +--:(infinite)
| | +--rw no-end-time? empty | | | +--rw no-end-time? empty
| +--:(duration) | | +--:(duration)
| | +--rw duration? uint32 | | | +--rw duration? uint32
| +--:(end-date-time) | | +--:(end-date-time)
| +--rw end-date-time? | | +--rw end-date-time?
| yang:date-and-time | | yang:date-and-time
+--rw crypto-algorithm identityref | +--rw crypto-algorithm identityref
+--rw key-string | +--rw key-string
| +--rw (key-string-style)? | | +--rw (key-string-style)?
| +--:(keystring) | | +--:(keystring)
| | +--rw keystring? string | | | +--rw keystring? string
| +--:(hexadecimal) {hex-key-string}? | | +--:(hexadecimal) {hex-key-string}?
| +--rw hexadecimal-string? yang:hex-string | | +--rw hexadecimal-string? yang:hex-string
+--ro send-lifetime-active? boolean | +--ro send-lifetime-active? boolean
+--ro accept-lifetime-active? boolean | +--ro accept-lifetime-active? boolean
+--rw aes-key-wrap {aes-key-wrap}?
+--rw enable? boolean
4. Key Chain YANG Model 4. Key Chain YANG Model
<CODE BEGINS> file "ietf-key-chain@2017-04-18.yang" <CODE BEGINS> file "ietf-key-chain@2017-04-18.yang"
module ietf-key-chain { module ietf-key-chain {
yang-version 1.1; yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-key-chain"; namespace "urn:ietf:params:xml:ns:yang:ietf-key-chain";
prefix key-chain; prefix key-chain;
import ietf-yang-types { import ietf-yang-types {
skipping to change at page 9, line 31 skipping to change at page 9, line 31
"Support for clear-text algorithm. Usage is "Support for clear-text algorithm. Usage is
NOT RECOMMENDED."; NOT RECOMMENDED.";
} }
feature aes-cmac-prf-128 { feature aes-cmac-prf-128 {
description description
"Support for AES Cipher based Message Authentication "Support for AES Cipher based Message Authentication
Code Pseudo Random Function."; Code Pseudo Random Function.";
} }
feature aes-key-wrap {
description
"Support for Advanced Encryption Standard (AES) Key Wrap.";
}
feature replay-protection-only { feature replay-protection-only {
description description
"Provide replay-protection without any authentication "Provide replay-protection without any authentication
as required by protocols such as Bidirectional as required by protocols such as Bidirectional
Forwarding Detection (BFD)."; Forwarding Detection (BFD).";
} }
identity crypto-algorithm { identity crypto-algorithm {
description description
"Base identity of cryptographic algorithm options."; "Base identity of cryptographic algorithm options.";
} }
skipping to change at page 15, line 23 skipping to change at page 15, line 27
} }
leaf accept-lifetime-active { leaf accept-lifetime-active {
type boolean; type boolean;
config false; config false;
description description
"Indicates if the accept lifetime of the "Indicates if the accept lifetime of the
key-chain key is currently active."; key-chain key is currently active.";
} }
} }
} }
container aes-key-wrap {
if-feature "aes-key-wrap";
description
"AES Key Wrap encryption for key-chain key-strings. The
encrypted key-strings are encoded as hexadecimal key
strings using the hex-key-string leaf.";
leaf enable {
type boolean;
default "false";
description
"Enable AES Key Wrap encryption.";
}
}
} }
} }
<CODE ENDS> <CODE ENDS>
5. Security Considerations 5. Security Considerations
The YANG module defined in this document is designed to be accessed The YANG module defined in this document is designed to be accessed
via network management protocols such as NETCONF [NETCONF] or via network management protocols such as NETCONF [NETCONF] or
RESTCONF [RESTCONF]. The lowest NETCONF layer is the secure RESTCONF [RESTCONF]. The lowest NETCONF layer is the secure
transport layer, and the mandatory-to-implement secure transport is transport layer, and the mandatory-to-implement secure transport is
Secure Shell (SSH) [NETCONF-SSH]. The lowest RESTCONF layer is Secure Shell (SSH) [NETCONF-SSH]. The lowest RESTCONF layer is
HTTPS, and the mandatory-to-implement secure transport is TLS [TLS]. HTTPS, and the mandatory-to-implement secure transport is TLS [TLS].
The NETCONF access control model [NETCONF-ACM] provides the means to The NETCONF access control model [NETCONF-ACM] provides the means to
restrict access for particular NETCONF or RESTCONF users to a pre- restrict access for particular NETCONF or RESTCONF users to a pre-
configured subset of all available NETCONF or RESTCONF protocol configured subset of all available NETCONF or RESTCONF protocol
operations and content. The key strings are not accessible by operations and content. The key strings are not accessible by
default and NETCONF Access Control Mode [NETCONF-ACM] rules are default and NETCONF Access Control Mode [NETCONF-ACM] rules are
required to configure or retrieve them. required to configure or retrieve them.
When configured, the key-strings can be encrypted using the AES Key
Wrap algorithm [AES-KEY-WRAP]. The AES key-encryption key (KEK) is
not included in the YANG model and must be set or derived independent
of key-chain configuration. When AES key-encryption is used, the
hex-key-string feature is also required since the encrypted keys will
contain characters that are not representable in the YANG string
built-in type [YANG]. It is RECOMMENDED that key-strings be
encrypted using AES key-encryption to prevent key-chains from being
retrieved and stored with the key-strings in clear text. This
recommendation is independent of the access protection that is
availed from the NETCONF Access Control Model (NACM) [NETCONF-ACM].
The clear-text algorithm is included as a YANG feature. Usage is NOT The clear-text algorithm is included as a YANG feature. Usage is NOT
RECOMMENDED except in cases where the application and device have no RECOMMENDED except in cases where the application and device have no
other alternative (e.g., a legacy network device that must other alternative (e.g., a legacy network device that must
authenticate packets at intervals of 10 milliseconds or less for many authenticate packets at intervals of 10 milliseconds or less for many
peers using Bidirectional Forwarding Detection [BFD]). Keys used peers using Bidirectional Forwarding Detection [BFD]). Keys used
with the clear-text algorithm are considered insecure and SHOULD NOT with the clear-text algorithm are considered insecure and SHOULD NOT
be reused with more secure algorithms. be reused with more secure algorithms.
Similarly, the MD5 and SHA-1 algorithms have been proven to be Similarly, the MD5 and SHA-1 algorithms have been proven to be
insecure ([Dobb96a], [Dobb96b], and [SHA-SEC-CON]) and usage is NOT insecure ([Dobb96a], [Dobb96b], and [SHA-SEC-CON]) and usage is NOT
RECOMMENDED. Usage should be confined to deployments where it is RECOMMENDED. Usage should be confined to deployments where it is
required for backward compatibility. required for backward compatibility.
It is RECOMMENDED that keys be encrypted or otherwise obfuscated when
stored internally on a network device supporting this specification.
6. IANA Considerations 6. IANA Considerations
This document registers a URI in the IETF XML registry This document registers a URI in the IETF XML registry
[XML-REGISTRY]. Following the format in [XML-REGISTRY], the [XML-REGISTRY]. Following the format in [XML-REGISTRY], the
following registration is requested to be made: following registration is requested to be made:
URI: urn:ietf:params:xml:ns:yang:ietf-key-chain URI: urn:ietf:params:xml:ns:yang:ietf-key-chain
Registrant Contact: The IESG. Registrant Contact: The IESG.
XML: N/A, the requested URI is an XML namespace. XML: N/A, the requested URI is an XML namespace.
This document registers a YANG module in the YANG Module Names This document registers a YANG module in the YANG Module Names
registry [YANG]. registry [YANG].
name: ietf-key-chain name: key-chain
namespace: urn:ietf:params:xml:ns:yang:ietf-key-chain namespace: urn:ietf:params:xml:ns:yang:ietf-key-chain
prefix: key-chain prefix: key-chain
reference: RFC XXXX reference: RFC XXXX
7. Contributors 7. Contributors
Contributors' Addresses Contributors' Addresses
Yi Yang Yi Yang
SockRate SockRate
skipping to change at page 17, line 18 skipping to change at page 17, line 45
[XML-REGISTRY] [XML-REGISTRY]
Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
January 2004. January 2004.
[YANG] Bjorklund, M., "The YANG 1.1 Data Modeling Language", RFC [YANG] Bjorklund, M., "The YANG 1.1 Data Modeling Language", RFC
7950, August 2016. 7950, August 2016.
8.2. Informative References 8.2. Informative References
[AES-KEY-WRAP]
Schaad, J. and R. Housley, "Advanced Encryption Standard
(AES) Key Wrap Algorithm", RFC 5649, August 2009.
[BFD] Katz, D. and D. Ward, "Bidirectional Forwarding Detection [BFD] Katz, D. and D. Ward, "Bidirectional Forwarding Detection
(BFD)", RFC 5880, June 2010. (BFD)", RFC 5880, June 2010.
[CRYPTO-KEYTABLE] [CRYPTO-KEYTABLE]
Housley, R., Polk, T., Hartman, S., and D. Zhang, Housley, R., Polk, T., Hartman, S., and D. Zhang,
"Table of Cryptographic Keys", RFC 7210, April 2014. "Table of Cryptographic Keys", RFC 7210, April 2014.
[Dobb96a] Dobbertin, H., "Cryptanalysis of MD5 Compress", Technical [Dobb96a] Dobbertin, H., "Cryptanalysis of MD5 Compress", Technical
Report (Presented at the RUMP Session of EuroCrypt 1996), Report (Presented at the RUMP Session of EuroCrypt 1996),
2 May 1996. 2 May 1996.
skipping to change at page 19, line 4 skipping to change at page 19, line 19
[TLS] Dierks, T. and E. Rescorla, "The Transport Layer Security [TLS] Dierks, T. and E. Rescorla, "The Transport Layer Security
(TLS) Protocol", RFC 5246, August 2008. (TLS) Protocol", RFC 5246, August 2008.
[YANG-CRYPTO-KEYTABLE] [YANG-CRYPTO-KEYTABLE]
Chen, I., "YANG Data Model for RFC 7210 Key Table", draft- Chen, I., "YANG Data Model for RFC 7210 Key Table", draft-
chen-rtg-key-table-yang-00.txt (work in progress), chen-rtg-key-table-yang-00.txt (work in progress),
November 2015. November 2015.
Appendix A. Examples Appendix A. Examples
A.1. Simple Key Chain with Always Valid Single Key A.1. Simple Key Chain with Always Valid Single Key
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> <data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<key-chains xmlns="urn:ietf:params:xml:ns:yang:ietf-key-chain"> <key-chains xmlns="urn:ietf:params:xml:ns:yang:ietf-key-chain">
<key-chain> <key-chain>
<name>keychain-no-end-time</name> <name>keychain-no-end-time</name>
<description> <description>
A key chain with a single key that is always valid for tx/rx A key chain with a single key that is always valid for
transmission and reception.
</description> </description>
<key> <key>
<key-id>100</key-id> <key-id>100</key-id>
<lifetime> <lifetime>
<send-accept-lifetime> <send-accept-lifetime>
<always/> <always/>
</send-accept-lifetime> </send-accept-lifetime>
</lifetime> </lifetime>
<crypto-algorithm>hmac-sha-256</crypto-algorithm> <crypto-algorithm>hmac-sha-256</crypto-algorithm>
<key-string> <key-string>
skipping to change at page 20, line 10 skipping to change at page 20, line 10
</key-chains> </key-chains>
</data> </data>
A.2. Key Chain with Keys having Different Lifetimes A.2. Key Chain with Keys having Different Lifetimes
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> <data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<key-chains xmlns="urn:ietf:params:xml:ns:yang:ietf-key-chain"> <key-chains xmlns="urn:ietf:params:xml:ns:yang:ietf-key-chain">
<key-chain> <key-chain>
<name>keychain2</name> <name>keychain2</name>
<description> <description>
A key chain where each key contains a different send time A key chain where each key contains different send time
and accept time and a different algorithm illustrating and accept time and a different algorithm illustrating
algorithm agility algorithm agility.
</description> </description>
<key> <key>
<key-id>35</key-id> <key-id>35</key-id>
<lifetime> <lifetime>
<send-lifetime> <send-lifetime>
<start-date-time>2017-01-01T00:00:00Z</start-date-time> <start-date-time>2017-01-01T00:00:00Z</start-date-time>
<end-date-time>2017-02-01T00:00:00Z</end-date-time> <end-date-time>2017-02-01T00:00:00Z</end-date-time>
</send-lifetime> </send-lifetime>
<accept-lifetime> <accept-lifetime>
<start-date-time>2016-12-31T23:59:55Z</start-date-time> <start-date-time>2016-12-31T23:59:55Z</start-date-time>
skipping to change at page 21, line 14 skipping to change at page 21, line 14
A.3. Key Chain with Independent Send and Accept Lifetimes A.3. Key Chain with Independent Send and Accept Lifetimes
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> <data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<key-chains xmlns="urn:ietf:params:xml:ns:yang:ietf-key-chain"> <key-chains xmlns="urn:ietf:params:xml:ns:yang:ietf-key-chain">
<key-chain> <key-chain>
<name>keychain2</name> <name>keychain2</name>
<description> <description>
A key chain where each key contains different send time A key chain where each key contains different send time
and accept time and accept times.
</description> </description>
<key> <key>
<key-id>35</key-id> <key-id>35</key-id>
<lifetime> <lifetime>
<send-lifetime> <send-lifetime>
<start-date-time>2017-01-01T00:00:00Z</start-date-time> <start-date-time>2017-01-01T00:00:00Z</start-date-time>
<end-date-time>2017-02-01T00:00:00Z</end-date-time> <end-date-time>2017-02-01T00:00:00Z</end-date-time>
</send-lifetime> </send-lifetime>
<accept-lifetime> <accept-lifetime>
<start-date-time>2016-12-31T23:59:55Z</start-date-time> <start-date-time>2016-12-31T23:59:55Z</start-date-time>
 End of changes. 18 change blocks. 
82 lines changed or deleted 117 lines changed or added

This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/