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

Contact discovery #52

Closed
wants to merge 1 commit into from
Closed

Contact discovery #52

wants to merge 1 commit into from

Conversation

rubdos
Copy link
Member

@rubdos rubdos commented Nov 21, 2020

Small patch, but depends on #50 because I didn't want to get into String-hell again :'-)

Will rebase once I get #50 finished.

@Be-ing
Copy link

Be-ing commented Apr 16, 2021

#50 has been merged and this has some merge conflicts now. Could you rebase?

@rubdos
Copy link
Member Author

rubdos commented Apr 16, 2021

#50 has been merged and this has some merge conflicts now. Could you rebase?

It's quite a bit of conflicts, sadly. I'll rebase when I work again on contact discovery; except if you want to continue this really soon?

@Be-ing
Copy link

Be-ing commented Apr 16, 2021

if you want to continue this really soon?

Rebasing someone else's branch isn't a very nice way to get started in a new codebase.

@rubdos
Copy link
Member Author

rubdos commented Jun 5, 2022

So, I've rebased this now, but retrieveDirectory / /v1/directory/tokens seems like it's gone from the Signal client. We probably want to drop this and implement the new contact discovery protocol with attestation.

@rubdos
Copy link
Member Author

rubdos commented Jun 7, 2022

the new contact discovery protocol with attestation.

Result of some investigative work:

Android's ContactDiscoveryRefreshV1.java contains the currently working logic to do contact lookup. However, Signal has been working on a V2, ContactDiscoveryRefreshV2.kt (notice Kotlin), tied to https://github.com/signalapp/ContactDiscoveryService. This version 2 has no endpoint on the production servers yet, but it has a lot of recent activity, and might replace V1 sooner than we want. Version 2 also has some components in Signal-Client, such that we don't have to implement everything ourselves.

So either we implement both, or we wait a bit longer until v2 is moved into production.

@rubdos
Copy link
Member Author

rubdos commented Jun 7, 2022

In other news: these Rust components in libsignal-client require ecdsa ^0.13, which transitively depends on Rust 2021 and is as such currenly unusable in Whisperfish (because we're still on 1.52-dev, which on itself is not that old... come on library devs, please don't do this...)

Downgrading those versions leads to other impossibilities (ecdsa's feature serde only exists in 0.13).

@rubdos
Copy link
Member Author

rubdos commented Nov 3, 2022

This stuff is completely deprecated and disfunctional by now. We should implement the new PNI system instead.

@rubdos rubdos closed this Nov 3, 2022
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

Successfully merging this pull request may close these issues.

None yet

2 participants