← Back to context

Comment by maqp

17 days ago

>These things do not matter in this conversation

The largest UX hit is when launching a client after it's been powered off for a while.

Telegram uses a symmetric session key. The client can with SINGLE AES-IGE decryption operation decrypt a massive packet containing every message received to every non-secret chat.

Signal uses Diffie-Hellman ratchet or SCIMP ratchet for every received message. That means there's X25519 and AES-CBC involved for every message. It is not, and will never be as fast as Telegram's insecure approach.

Thus the security design will absolutely affect the smoothness of the experience.

But Signal has blazing fast search function since it's local only. Telegram's search functionality freezes when you go over the server's chat history cache limit, to try to find years old posts.

>The UI/UX of the scrolling and chat display is the problem.

My desktop computer loads messages from my Signal history as fast as I can scroll my mouse.

My cheap smart phone loads messages from my Signal history as fast as I can swipe my fingers.

You can solve this with faster hardware.

> Signal uses Diffie-Hellman ratchet or SCIMP ratchet for every received message. That means there's X25519 and AES-CBC involved for every message. It is not, and will never be as fast as Telegram's insecure approach.

I'm aware.

That said, if Signal is able to render mostly fine in their current desktop app, then I've no reason to believe that the speed of decrypting messages is a blocker to optimizing the UI layer. Glossy-ness is a factor in why people still use shit like Telegram. Signal has no blocker to implementing it.

This has been my entire point for pretty much every comment in this chain.

> My desktop computer loads messages from my Signal history as fast as I can scroll my mouse. > My cheap smart phone loads messages from my Signal history as fast as I can swipe my fingers. > You can solve this with faster hardware.

Or they could write better UI/UX/frontend-specific code. That layer isn't rocket science.