Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

As the designer of this SSI environment, i shall design a did-method-hd-key to allow for stateless authentication of agents #46

Open
francis-pouatcha opened this issue Sep 13, 2023 · 3 comments
Assignees

Comments

@francis-pouatcha
Copy link
Member

francis-pouatcha commented Sep 13, 2023

The purpose is to allow for state authentication of interaction between mobile agents and cloud agents.

A cloud agent can issue an hd public key to a consumer (mobile agent).

Generally for sending:

  • Sender will user the contact key of the recipient to encrypt the message.
  • Sender will use the recipient cloud agent's auth key to encrypt the message (ECDH) producing the first forward message
  • Sender will then use his own cloud agent's auth sending key to wrap the message in the second forward message that will then be deposited to the proxy of the send.

Particularity of this approach:

  • no DoS possibility, as each cloud agent only stores authenticated messages.
  • As cloud agent still has to decrypt outer envelope, key derivation provides an authentication layer that allows service to reject malicious clients.

ToDo:

  • rite a paper describing this approach
  • implements a did-hd-key method with corresponding features.
@francis-pouatcha
Copy link
Member Author

Event between cloud agents, IP based, pairwise authentication can help prevent flooding of the network with invalid packets. To realize this, a cloud agent can

  1. register an ip address with the peer
  2. then use the provided auth key to encrypt every message sent in subsequent messages.

@francis-pouatcha
Copy link
Member Author

A key performance principle here is

  • that with authenticated encryption, recipient will have to maintain a database of public key senders. But maintaining a database with all senders is deemed not scalable.
  • providing each sender with a hd key is more promising, as recipient can just use the key derivation to perform authentication. Combining this with a database (list) of blocked senders looks more efficient.

@francis-pouatcha francis-pouatcha self-assigned this Sep 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant