I hadn't seen that, I was thinking about a way to augment vitor's nip along the same lines. It's a good idea, but maybe could be improved by generalizing to a session key, which can represent one or more parties in a private chat (for scaling purposes) and which can be periodically invalidated or expire to limit the scope of key leakage.