pixelated / pixelated-user-agent

User facing components of Pixelated: a JavaScript single page app and a RESTful service.
GNU Affero General Public License v3.0
159 stars 72 forks source link

fetch remote when key expired + key renewal + decrypt from inactive keys #857

Open ayoyoness opened 7 years ago

ayoyoness commented 7 years ago

To keep track of https://0xacab.org/leap/bitmask-dev/merge_requests/48

ayoyoness commented 7 years ago

This keeps track of:

From leap/bitmask-dev

SweetVirginia commented 7 years ago

So, about attached keys, we have an usability issue with that: https://github.com/pixelated/pixelated-user-agent/issues/841

@tuliocasagrande what are the solutions we have?

tuliocasagrande commented 7 years ago

hello @SweetVirginia

We need somehow to send the new key as an attachment to the user's contacts, so they can update it on their local keyrings. We can improve the heuristics for when to send the key attached, such as detect when the key changes, for example.

@meskio suggested a better solution could be to do autocrypt and attach the key in the headers, but this is not supported by most of the clients yet.

Regardless of what solution we decide, for now, we thought about sending the key attached at every email. This would be fairly easy to implement and it'd guarantee we're replacing old keys.

SweetVirginia commented 7 years ago

Thanks @tuliocasagrande

Just one more question, why it has to be in every email and not the first time the user exchange emails with any contact like we do when the user create their account?

I remember using enigmail and always attaching my keys and that was slowing down a lot my communication, when someone told me there was no need to do that every time my life got easier hehehe.

SweetVirginia commented 7 years ago

Oh wait, I re read and I think what I suggested is exactly the first option, which is hard to develop. Right? "We need somehow to send the new key as an attachment to the user's contacts, so they can update it on their local keyrings. We can improve the heuristics for when to send the key attached, such as detect when the key changes, for example."

So let's stick with the easy solution and then we prioritize this fix soon :)

meskio commented 7 years ago

Yes, we have not good place to store if we had sent the lattest version of the key to each recipient address. That is why is easier to attach all the time for now. I'm happy to explore how to store that and iterate it in the future.

Sending the key only once can also have issues, as people might not import it then and months latter when they needed they are not able to find it.

Anyway, all that will be solve if autocrypt gets implemented in most of the clients.