Can there be a way to form a shared secret key between two nodes of a Wireless Sensor Network who are more than one hop away, simply on the basis of their IDs?
-
1$\begingroup$ I edited your question to talk about "key agreement" instead of "secret sharing" because the latter is "you have a secret and you want to split it up so that a certain subset of people is needed to reconstruct" whereas "key agreement" is "you have a set of nodes who want to have a shared secret but only have a public channel available". $\endgroup$– SEJPMJun 12, 2020 at 7:40
2 Answers
If you make the IDs of the nodes public keys, you can easily derive shared keys by only using node IDs. But the IDs themselves will be rather large like 32 bytes.
Yes, using identity-based cryptography; in particular the Sakai-Ohgishi-Kasahara non-interactive key distribution protocol, generalized in "Provably secure non-interactive key distribution based on pairing".
The downside is that it requires a "Private Key Generator", a trusted party which is able to compute the private key of any node. The private keys also need to be securely deployed in each node.
Using the protocol, each node will have and ID. They simply need to exchange IDs and will be able to compute a shared key.