Describe the bug
Every connected XMPP session has a unique identifier, the "resource". Currently the app sets the resource to "iPhone", or rather, whatever is returned from UIDevice.current.name.
This can cause conflicts when multiple devices of the same name are on the account, and it can also cause a privacy leak by allowing people who know your address to check whether you are currently connected to the server.
Solution
A new resource string should be generated which is specific to the current app installation.
It should be in the format Snikket.XXXX
The XXXX should be a random alphanumeric string, e.g. QBdf, xpe2, eQDp
The resource should stay the same, unless the app is uninstalled or its data is wiped.
The random part should not reveal any other identifiers (but it may be derived from them).
Options:
Generate and store a unique identifier for each account
Hash an existing unique device/app identifier
Details (please complete the following information):
Describe the bug Every connected XMPP session has a unique identifier, the "resource". Currently the app sets the resource to "iPhone", or rather, whatever is returned from
UIDevice.current.name
.This can cause conflicts when multiple devices of the same name are on the account, and it can also cause a privacy leak by allowing people who know your address to check whether you are currently connected to the server.
Solution
A new resource string should be generated which is specific to the current app installation.
Snikket.XXXX
QBdf
,xpe2
,eQDp
Options:
Details (please complete the following information):