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

Stable OMEMO device IDs #3134

Open
samhoseinkhani opened this issue Feb 6, 2023 · 6 comments
Open

Stable OMEMO device IDs #3134

samhoseinkhani opened this issue Feb 6, 2023 · 6 comments
Labels

Comments

@samhoseinkhani
Copy link
Contributor

samhoseinkhani commented Feb 6, 2023

The device ID which is used in OMEMO constantly changes when session storage is cleared.

By changing the way of storing device ID in session we can generate a stable and unique ID for each device by using "Canvas Fingerprints"

@jcbrand
Copy link
Member

jcbrand commented Feb 8, 2023

It's a good suggestions, thanks.

I think it'll change when the browser gets updated however.

@jcbrand jcbrand added the Feature label Feb 8, 2023
@jcbrand jcbrand changed the title unique device ID Stable OMEMO device IDs Feb 8, 2023
@samhoseinkhani
Copy link
Contributor Author

@jcbrand Did you just check this link?
check the "Hash" in different browsers it will be unique and the same all the time...
canvas fingerprints are used in fraud detection in web applications.
by the way, would you like me to start working on it?

@jcbrand
Copy link
Member

jcbrand commented Feb 10, 2023

Yes I did check the link and am aware of how it works.

My point is that the browser version is one of the factors that can determine the uniqueness of the hash, so when the user updates their browser to a newer version, they're likely to get a different fingerprint hash.

@samhoseinkhani
Copy link
Contributor Author

Umm maybe, but isn't it better than generating new device each time browsers session gets cleared?

@jcbrand
Copy link
Member

jcbrand commented Feb 13, 2023

Yes I think it is better, I was just stating one of the limitations of this approach.

@based-a-tron
Copy link

The issue here is somewhat misidentified. OMEMO device IDs are not cryptographically significant, per se. Canvas fingerprinting is unreliable, and more of a bug than a feature. Browsers like the Tor Browser Bundle specifically have features to prevent canvas interaction, as may more advanced and or privacy concerned users. I've written #3142 to talk about the issue more in depth and to discuss what I think might be a viable solution, and I would appreciate comment on it. Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants