REKEY moved here

This commit is contained in:
Randy Bush 2019-04-18 13:12:22 -07:00
parent 38e89f3543
commit 257569c8be

View file

@ -15,7 +15,7 @@
<front> <front>
<title>Layer 3 Discovery and Liveness TOFU Security</title> <title>Layer 3 Discovery and Liveness Signing</title>
<author fullname="Randy Bush" initials="R." surname="Bush"> <author fullname="Randy Bush" initials="R." surname="Bush">
<organization>Arrcus &amp; IIJ</organization> <organization>Arrcus &amp; IIJ</organization>
@ -59,8 +59,8 @@
<t>The Layer 3 Discovery and Liveness protocol provides for the OPEN <t>The Layer 3 Discovery and Liveness protocol provides for the OPEN
PDU to contain a key which can be used to verify signatures on PDU to contain a key which can be used to verify signatures on
subsequent PDUs. This document describes two methods of key subsequent PDUs. This document describes two methods of key
generation and signing for use by L3DL when 'trust on first use' generation and signing for use by L3DL, Trust On First Use, AKA
authentication and integrity are sufficient.</t> TOFU, and PKI-based.</t>
</abstract> </abstract>
@ -82,24 +82,34 @@
<t>The Layer 3 Discovery and Liveness protocol [old ref because new <t>The Layer 3 Discovery and Liveness protocol [old ref because new
draft not yet pushed] <xref target="I-D.ietf-lsvr-lsoe"/> provides draft not yet pushed] <xref target="I-D.ietf-lsvr-lsoe"/> provides
for the OPEN PDU to contain a key which can be used to verify for the OPEN PDU to contain an algorithm specifier and a key which
signatures on subsequent PDUs. This document describes two methods can be used to verify signatures on subsequent PDUs. This document
of key generation and signing for use by L3DL when 'trust on first describes two methods of key generation and signing for use by L3DL,
use,' TOFU, authentication and integrity are sufficient.</t> Trust On First Use, AKA TOFU, and a PKI-based mechanism.</t>
<t>To the receiver, the two methods are indistinguishable, the key <t>To the receiver, the two methods are indistinguishable, the key
provided in the OPEN PDU is used to verify the signatures on the provided in the OPEN PDU is used to verify the signatures on the
subsequent PDUs. The difference is how that key is generated.</t> subsequent PDUs. The difference is how that key is generated.</t>
<t>The simple method is that the OPEN key is a 64-bit random. The <t>In the TOFU method the OPEN key is believed without question and
device sending the OPEN may use one key for all links, a different is used to verify all subsequent PDUs with the same Key Type.</t>
key for each link, or some aggregation(s) thereof.</t>
<t>If one is concerned about a Monkey In The Middle, then the OPEN <t>In the PKI method the OPEN key MUST be verified against the trust
key can be the public half of an asymmetric key pair. The sender anchor for the operational domain. It is then used to verify all
signs with the private key, of course. To reduce key generation subsequent PDUs with the same Key Type.</t>
load on the sending device, the key pair could be generated once per
device.</t> <t>The Key in the OPEN PDU SHOULD be the public half of an
asymmetric key pair. The sender signs with the private key, of
course. The device sending the OPEN may use one key for all links,
a different key for each link, or some aggregation(s) thereof.</t>
</section>
<section anchor="tofu" title="Trust On First Use Method">
</section>
<section anchor="pki" title="Public Key Infrastructure Method">
</section> </section>
@ -112,7 +122,7 @@
encapsulations. Therefore, a gentler rekeying is needed.</t> encapsulations. Therefore, a gentler rekeying is needed.</t>
<!-- <!--
protocol "Type = 8:8,Payload Length:16,New Auth Type:8,New Key Length:16,New Key ...:40,Old Sig Type:8,Old Signature Length:16,Old Signature ...:40" protocol "Type = 8:8,Payload Length:16,New Key Type:8,New Key Length:16,New Key ...:40,Old Sig Type:8,Old Signature Length:16,Old Signature ...:40"
--> -->
<figure> <figure>
@ -120,7 +130,7 @@
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 8 | Payload Length | New Auth Type | | Type = 8 | Payload Length | New Key Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| New Key Length | ~ | New Key Length | ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+
@ -133,7 +143,7 @@
</artwork> </artwork>
</figure> </figure>
<t>The New Auth Type, New Key Length, and New Key fields declare the <t>The New Key Type, New Key Length, and New Key fields declare the
replacement algorithm suite and key.</t> replacement algorithm suite and key.</t>
<t>The NEWKEY PDU is signed using the current (soon to be old) <t>The NEWKEY PDU is signed using the current (soon to be old)
@ -170,9 +180,9 @@
<figure> <figure>
<artwork> <artwork>
PDU PDU
Code PDU Name Code PDU Name
---- ------------------- ---- -------------------
8 NEWKEY 8 NEWKEY
</artwork> </artwork>
</figure> </figure>
@ -183,6 +193,7 @@
Number Name Number Name
------ ------------------- ------ -------------------
1 TOFU - Trust On First Use 1 TOFU - Trust On First Use
2 PKI
</artwork> </artwork>
</figure> </figure>