and whether those IDs are visible to the applications.
Ah, but that's a very different issue. I think by definition the identifiers are visible to the application.
My choice of "visible" doesn't capture the distinction I wanted to make. Sorry.
What I mean was whether the applications need to do something
different because there is an ID (versus there just being a plain-old IPv6
address). The IDs can be visible, either by being part of an IPv6 locator,
or by some new mechanism by which the application can ask the stack for the ID,
but that wasn't the point I was trying to make.
Taking NOID as an example of with no new ID namespace, the amount of work (in the form of DNS lookups in forward and reverse maps) will also result in stronger association between FQDNs and locators than we have today.
Even if we assume DNSSEC?
Assume DNSSEC for the baseline (current Internet), for NOID, or for both
when comparing them?
I've received pushback from folks that I wouldn't characterize as security geeks, that this would be too weak.
I don't think this is universally true. Certainly, this is too weak for
TLS or IPsec sessions that can now be broken by an attacker, unlike
before. But why would this be too weak for talking to Google over
unprotected TCP/IP?
If I recall correctly, the main concern is when attackers and nodes move
around.
In today's if an attacker is on the path it can cause damage to the
communication if the communication isn't protected with something like IPsec
or TLS. But this ability to cause damage is limited to the time period while
the attacker is on the path.
If we add some multihoming signaling whereby an attacker, which was on
the path (e.g., by being on the same WiFi subnet as the victim) for a short
time period, can cause damage by essentially using the state creation
as a way to preserve it's on-path'ness forever, then folks are concerned.
But what you brought to the table is that if we can ensure that secured traffic
can not be redirected, by reusing the keys or otherwise "layering" on top of
IPsec or TLS, then at least we would know that secured traffic could never be
redirected by an attacker. So security-wise we'd gain some and loose some.
I'm thinking more along the line of violating layers and modify IPsec/TLS
such that the wedge or modified IP can obtain keys that are exchanged
by modified IPsec/TLS. Something like putting the secret instructions
for the messager in the locked briefcase he's carrying. This works well
except for the first trip of course...
This sounds tricky.
I guess I don't know enough how the TLS keys (and which keys; is there some master key used to generate the RC4 key?, etc) can be exported from TLS.
FWIW Doing the insecure signaling protocol for managing the contexts
is something I can do; a version of such a spec can be created by taking the
NOID spec and removing the places where it verifies things in the DNS.
Saying it is layered above IPsec is also easy to say, but the difficulty
is exploring the interaction with IPsec and IKE, as well as TLS.