111 comments

[ 3.0 ms ] story [ 203 ms ] thread
It's really cool that Telegram is growing, even if it seems nowhere close to WhatsApp or Facebook. I keep recommending Telegram to people I know, but familiarity and the network effect keep most people on WhatsApp/FB.

My ultimate goal has been to move to Signal, but Signal being quite slow in the development and the infrastructure fronts, it's not a viable option for mass adoption right now.

For all its cryptographic weaknesses, I find Telegram to be a better choice. Message delivery is super fast. It syncs messages across devices. It's available on popular smartphone and tablet OSes and also on the major desktop OSes. It's also available on the browser (need phone to activate it for use, whereas in the other cases one single activation will hold good almost forever). Telegram has been adding new features (some of them are probably catch ups with WhatsApp) at a good pace.

My wishlist for Telegram is two fold - a) make the crypto better (or try to work with Signal and adapt that) and b) introduce a monetization plan so I can support the app financially for all the worth it has provided and keeps providing.

I wish Signal would hurry up with their web client. It would really boost adoption.
At least you're calling it web client.

Signal seems to consider that Chrome extension a 'Desktop Client'. Which it isn't, and unfortunately it won't help users that aren't using Chrome (a lot of my non-technical friends are on Edge now with Windows 10, the rest is split roughly 50/50 between Firefox and Chrome).

Signal, with decent support for multiple devices (and ideally: Without requiring a phone number!) would be awesome. Until then, Telegram works best for me.

Or you can wait for Actor - we are working on porting Signal's crypto to our platform and we are already have much better UX, Servers and full featured slack-like (but easier) desktop/web clients.
Why not just help fix Signal?
We are much more powerful team for UX/performance. We build entire platform from scratch. Signal uses simplest existing technologies on top of only pubsub. We are just working very differently. Making correct multidevice/federation/apps/etc are larger part of the work then crypto (specs are ready). It is much easier for us to integrate signal protocol to Actor instead of doing opposite.
It might be easier for you to do, but it seems like a worse end goal.
We can discuss this if you will explain why goal is worse.
Because people already use Signal and fragmentation of the secure messaging space makes it less useful.
When Signal will became federated network we can join networks together no problem here.
If you are going to build something new, I guess I'll throw my suggestion of Signal+Ricochet+Burner in.

* Signal - the crypto * Ricochet - no metadata leaking * Burner - the ability to have multiple IDs without trying to tie to PII

Last but not least, a commitment to have Actor code evaluated by credible outside security firm.

I have have a look after Ricochet it just uses Tor for clearing metadata. We had in the past prototypes with tor enabled messaging on mobile and it is not work as expected. Always too long to start on iOS (that can't execute in background), but we found a way to make it work much better i hope in some day we will be able to make it work together, but now it is much better to use tor proxy somewhere and point app to it. Not very user friendly.
Is there any documentation about what Actor is? Can't immediately find one. Some sort of non-marketing overview that gives rough ideas on how everything works, with pointers on where to read for the fine details.

I mean, are you interconnected with something (Signal interop a-la WhisperPush on CM? XMPP with OMEMO and GCM/APN via XEP-0357? Telegram network with Axolotl overlay? Something else?) or you're yet another proprietary standalone network?

My wish is for Signal to provide what Telegram provides for messaging (multi-platform, sync, speed of message delivery, etc.). Just a web client alone is not going to be a convenient replacement (if it implies that the phone should be around or that activation has to be done every time the browser is restarted or cookies are cleared).
This. Telegram got a lot of things right. They have clients that work well on all platforms. Features like the Bot API and Channels have a lot of potential. However, their home-grown crypto and dismissal of feedback from the crypto community makes it hard for me to recommend it to anyone.
I recommend it just because it has questionable crypto, to feed at least some data into Russia and not only to USA. Just to not have only one unchallenged world surveillance power.
The only thing that bothers me more than the homebrew crypto is their claims of security. False sense of security is worse than no security.
No one has cracked it, specially in the time they offered a $300.000 prize.
So far Telegram has done everything right. They have awesome native apps on all the platforms, no stupid web-wrappers that are slow and buggy. I haven't had a single bug, it's always been extremely fast and reliable. This is what makes a truly great user experience.
it would be great if open source solutions like Telegram, Signal and Matrix (and others) would all interoperate. I work on Matrix (https://matrix,.org) but I don't really care which client you want to use - as long as we can still talk to each other!
I think this is great news. One thing that looks suspicious is 15 billion messages a day. It must count group messages as a multiple of all subscribers and maybe some other dirty tricks. Can't believe that an average user sends 150 messages a day.
>Two and a half years after launch, Telegram is delivering over 15 billion messages daily – that's roughly the number of push notifications that are sent by Telegram each day.

https://telegram.org/blog/15-billion

So it's push notifications/notifications.

Oh, I see now. Then it is multiplied by the device number as well. But now I understand it and it seems impressive anyway.
Some people and sometimes I catch myself doing it send a sentence in multiple messages since the message doesn't cost anything compared to a sms where you would definitely try to fit as many characters as possible into a single message.

However I'm not sure how common this is and if it could be one of the reasons for the high amount of messages per user.

Yeah, sometimes it is used more in an "IRC" way than in a "SMS on steroids" way.

I think that the web and desktop clients just push this probability. Having a computer keyboard instead of a phone to write triggers a different "state of mind" in the user, I think. At least it's like that for me.

It says it's pushes which would be past fan-out for groups.
If you use a desktop client with a physical keyboard, sending tons of messages within a short span of time is very easy to do compared to doing the same with a touchscreen (unless you're quick there too). :)
I send well over that many a day on average.
I participate in a 40-user group chat that sees around 2,000 messages a day. That's 50 messages on average from one group chat alone. Group chats – at least the ones I'm in – tend to have a multiplicative effect.

If I talk to two people, over the course of two hours, at one message a minute, that's another 240 (2260) messages.

The numbers seem fairly plausible. (I do think there's a fair number of spam and bot messages included in the figures.)

I'm using Actor these days, made by former Telegram developers.

Coming along very nice in my opinion :)

https://actor.im

Would be nice to have a desktop client and pidgin integration, both of which Telegram has (although the latter is an unofficial plugin).
No privacy policy seems available though.
I hope when our project start it's next stage we will clean up all such stuff. Clean and easy privacy policy is one of our highest priority tasks.
Would you mind adding a FAQ somewhere as well? I was looking where your funding comes from but couldn't find anything (I'm going to guess reading the blog you want to sell an enterprise version?).
Yes, we need spend a lot of time to clarify everything.

We are selling services around actor and enterprise solutions, yes.

The page doesn't list any "Why would you want to use this over X" comparison. Why did you pick it over Telegram (or WhatsApp or whatever)? What sets it apart, if anything?

I'm not trying to make that thing look bad here. I'm interested, still haven't found the ~final~ IM solution (using Telegram for now though).

Can you say what you need for "final" solution?
In an ideal world:

- open source, client and server

- federation (both for the ability to split the net/have a private/enterprise solution and for redundancy)

- multi device support (tablet, phone, desktop etc)

- clients for all major platforms (that is, not just mobile platforms)

- strong cryptography

- no phone number required (can be installed on your desktop/tablet only, doesn't _need_ a phone number but might offer to search for contacts that gave one instead)

Note that Telegram fails quite some of those, but as far as I'm aware it's the closest I can get at this point.

xmpp is the solution.

use your own server, or use one of the many public ones. has clients for all major platforms, crypto is the best around (otr, gpg), does not require phone numbers or sim cards, is open and a public standard.

XMPP have a lot of problems:

- Every server support different extensions. Extreemly fragmented.

- No reliable file transfer

- No reliable cross device sync

- Almost all clients are junky

- OTR and GPG are not the best crypto, but more trusted one as it is old and simple. Axolotl Ratchet beat them in every part.

This problems lead us to make messaging (actor.im) from scratch.

I was running a prosody instance for a while. I have a 'Programming Jabber' book from O'Reilly sitting in the shelf next to me. I am (was?) a xmpp fan.

The big problem with that one was that

- clients are wildly varying in quality. Mobile clients are quite good by now, desktop clients are rather meh, ugly, all over the place

- multi-device support sucks. You need message carbons (extension, 'solved'), but you also need MAM for history, which was a moving target and unsupported in most clients/servers last time I checked.

That ignores that you need a good number of other extensions to make XMPP mobile friendly (stream management being the minimum, as far as I can tell. Otherwise you WILL just lose messages). XMPP isn't exactly mobile friendly (chattiness, bandwidth) either, as far as I am aware.

In short: Yeah, I would love to agree that XMPP is the solution. Right now I'd say it would be at best ~similar~ to Telegram: A solution with some (different) trade-offs.

I agree client quality is not perfect, however XMPP can do a lot of things with the proper extensions. Daniel Gultsch (dev of the Android 'Conversations' client [0]) held an interesting talk [1] in 2015 on modernizing XMPP. He explains a the issues XMPP has/had and how they fixed them. He also covers problems that still exist (or existed at the time) and possible solutions. Highly recommend watching it.

0: https://github.com/siacs/Conversations

1: https://media.ccc.de/v/froscon2015-1548-xmpp_2015_-_challeng...

Thank you for the link, I'm watching the video while I write this message.

But - I just checked again: My xmpp server of choice (Prosody) doesn't support MAM today¹. That's a killer, without that xmpp isn't even in the same league as WhatsApp, Telegram etc. for me. I expect to be able to open my client and be able to continue a conversation at this point.

1: There's https://modules.prosody.im/mod_mam.html but it is unclear if that's in a usable state. It states at the bottom of the page that this 'works' for 0.9 and 0.10, but the 'storage backend' sections gives an example that works for 0.10 only and links to https://prosody.im/doc/storage where you'll find a table with backends. ONLY the 'sql' backend seems to support the archive store, and that's for 0.10 only. 0.10 isn't released yet. The takeaway is: MAM seems to work if you're using the unreleased version 0.10 of prosody. And .. I haven't even checked the client support yet.

I'm using Prosody 0.10 with MAM and carbons with Gajim on Linux and Conversations on Android. Working fine.
> (stream management being the minimum, as far as I can tell. Otherwise you WILL just lose messages)

Oh, you also want Message Delivery Receipts (https://xmpp.org/extensions/xep-0184.html), not just Stream Management (https://xmpp.org/extensions/xep-0198.html)

I agree with you, XEPs fragmentation is a huge mess. I'd love to see more cohesive development around that specific point instead of just discussion about the technical parts of a XEP.

> clients are wildly varying in quality.

Yeah that's true. But psi+ on desktop and conversations on Android work pretty good.

> multi-device support sucks. You need message carbons (extension, 'solved'), but you also need MAM for history

I am running a prosody server, and those extensions work very well with the mentioned clients.

Can you look at my other comment in this thread about MAM seemingly not being available for prosody < 0.10? What did I misunderstand? Is the documentation unclear, can you clarify the situation? Or .. are you running a 0.10 snapshot?
I run 0.9, and the documentation says

   0.9  Works
and indeed it does (I am using it with the default storage backend).
Based on your statement I asked in the (excellent, friendly) prosody chat room. So, that mod_mam works for 0.9 because (from the mod_mam documentation) 'If no archive-capable storage backend can be opened then an in-memory one will be used as fallback.'

As far as I understand this means that a service restart (or a crash) wipes your archive and I assume you won't be able to migrate your archive between versions either?

So nice to hear it:

- We are completely open source under Apache License 2.0

- We are working on the federation. Unfortunately there are no production ready federation protocols at all. XMPP is dead.

- We are work on multiple devices

- We have Android, iOS, Win/Lin/Mac. Anything else? Windows Phone is dead too, other html5-based phones are not popular yet.

- We have two layer TLS with russian and us encryption together. We are in progress in porting Signal's end-to-end protocol.

- You can use email or phone based auth. Our Email-based auth is named "enterprise", but it is same as personal.

To be explicit (you implied being involved ofc): You're the CEO of actor, right? :) Thank you for the replies.

Questions:

1) My first "Why Actor" question still stands. How do you position yourself against Telegram (according to the first Actor post that's where you're coming from) or other solutions? The web page didn't help me.

2) How are you planning to make money/to stay in business?

Regarding the bullet points:

- How easy is it to build/run a server?

- Everytime federated messages come up, someone will mention matrix [1][2]. Did you look into that?

- Can you explain 'two layer TLS with russian and us encryption'? Or point me to a resource about that?

1: http://matrix.org 2: http://vector.im

> You're the CEO of actor, right?

Yes, my pleasure.

> How do you position yourself against Telegram (according to the first Actor post that's where you're coming from) or other solutions?

We are replacement for Jabber with powerful productivity-related apps on desktop and people-friendly mobile apps. We are completely open, high performant out of the box. Unlike Jabber we are not non-profit that helps us keep development of the platform, but our sources are completely open.

> How are you planning to make money/to stay in business?

Actor is already profitable company. A lot of people want to make their own messaging solution, integrate to existing systems, make some customizations and even solve email overflow or other communication issues in the big organizations (with 100k+ of employees). Server can handle millions of users just like Telegram and people need it if they have resources to launch niche messaging app in some country, but don't want to spend years to build it (like we was). That's how we make money.

We are lack of resources for landing page development - all forces used at our desktop/web app. If someone want to join us just email me) at steve (at) actor.im :) We are hope that we will clean up all sych stuff on the next stage of our product.

> How easy is it to build/run a server?

Almost just like apt-get install actor with required configuration: https://github.com/actorapp/actor-bootstrap/tree/master/docs...

> Everytime federated messages come up, someone will mention matrix

Yes. We talked to them. Actually we use matrix ideas in our s2s protocol drafts: https://github.com/actorapp/actor-platform/blob/master/docs/...

One problem with matrix is that it is not considered as production ready, but actor is and already serve 100k's users on foreign instances and it is production ready. We will work on our draft and will then merge our ideas with matrix one.

I'd like to point out about your statement on Windows Phone: your monetization plan is about business users, right? Well, there's quite a few enterprise players that are a good chunk on Windows Phone (now Windows Mobile), if not entirely Windows stack. I do not think it's wise to ignore a not-so-small target, given that your competition do support the platform.
Thank you. We can easily implement new apps for new platforms during our architecture. Will see if someone will ask about this and will be ready to pay for this.
Are you just using Signal's protocol internally, or will I be able to communicate with Signal users?
We have asked for Signal's detailed protocol specs, but we was unable to get them for months from Signal's team. Also i suppose our implementation is slightly different and can be incompatible. Also it is seems that they abandoned their federation support.
> XMPP is dead.

What makes you think so?

Every major non-enterprise vendor abandoned it. Every company that i know and worked with XMPP completely rewrite it's stack .
Hm. I've heard of at least two major non-enterprise vendors that still use XMPP a lot: Google (GCM, Chrome Sync) and EA (Origin).

I'm also not sure a technology needs even one vendor to live. Say, BitTorrent surely didn't care whenever it's used by big corps or not.

We need to distinguish XMPP as messaging for devices/servers or for people and so GCM is not an example of people friendly protocol. EA doesn't care about quality of their messaging.

There are no one large scale messaging that is not supported by at least one good vendor. XMPP started to die shortly after google disabled it's support in google talk.

Not sure I get the idea. Why does it matter? There is no messaging protocols for people, except for IRC, maybe. No human normally speaks XMPP, MSNP, MQTT, MTProto or anything like that.

And, for example, Signal essentially uses GCM (thus, XMPP, although in an uncommon manner) as a primary choice for their transport layer.

XMPP isn't dead. It's just that a) it has some warts and b) large vendors don't give a damn about interoperability or anything (Google tried to persuade others to interconnect, haven't worked for them, they shut it back) and prefer their own walled gardens.

>XMPP is dead.

Oh? The last I checked there were well over 100 public XMPP servers listed at IM Observatory. Those servers are federated. What would it take for XMPP to be not dead?

* https://www.xmpp.net/directory.php

Note that there are several popular server implementations in actual use and that the release dates for the software currently on the net mostly happened this year.

The thing is, all an IM provider has to do is create a XMPP transport for their protocol using the tons of existing XMPP software freely available and then you have XMPP federation. It isn't even that hard. So it always seems odd to hear that people absolutely can't interconnect with a large operating network that embodies the closest thing we have to an IM interoperability standard.

One thing shown not to work is creating yet another protocol under the theory that everyone else will become compatible with it. If you do that you are just wasting your time.

Reading this currently on a Windows Phone. It always stings a bit, but I guess it's true. Currently I'm stuck with WhatsApp though, because can't get my contacts to a different platform.
No metadata leakage

Easily resettable IDs

No metadata leakage

Easily resettable IDs

Sadly, Telegram is barely what they claim. They're very good at marketing it as an open and secure messenger, but it really is not.

Here is a brief summary: https://news.ycombinator.com/item?id=10639688

I assume the HN folks are already aware of the crypto-wise downsides of Telegram.

It's the closest we have to a user friendly messenger that is not entirely closed. I call that a step in the right direction. No reason to throw out the baby with rhe bathwater.
I don't use Telegram because of secure messaging, I use it because is clearly superior to WhatsApp and Facebook Messenger, and so many people.
I'm using it because it's really cross-platform, works reliably on Linux, Windows Phone, web (these three are the most problematic when it comes to messengers). Also, it's extremely lightweight and fast.
It's one of the few - if not the only - native, reliable and fast among all major platforms. It just works.

Sure, there's the whole security debacle behind, but all in all, as an instant messenger, it works wonderfully.

I use Telegram as a cross-platform alternative to SMS which offers zero security anyway so anything Telegram has is better than what I would get with SMS anyway.
I agree. While I love Telegram's UI/UX and cross-platform functionality to bits, their user support is abysmal, and it feels like the community is evolving into something of a walled garden.
I use it, I like it. It is simple, not riddled with ads/useless functionalities whatever, I does 1 thing and does it well. How are they going to monetize it ? I'm not sure though.
The founders aim to keep it free forever, should they want to earn money they'll add some non critical features so people who want to pay will keep the app running
How do you think of its business model? Keep it free to get a big user base then sell it to huge enterprise? Like Whatsapp and Facebook?
Line sells stickers . that's a very effective strategy
I guess they have several more years to introduce something. About the business model and monetization, the Telegram FAQ [1] has long stated this:

>Q: How are you going to make money out of this? > We believe in fast and secure messaging that is also 100% free.

> Pavel Durov, who shares our vision, supplied Telegram with a generous donation through his Digital Fortress fund, so we have quite enough money for the time being. If Telegram runs out, we'll invite our users to donate and add non-essential paid options to break even. But making profits will never be a goal for Telegram.

[1]: https://telegram.org/faq#q-how-are-you-going-to-make-money-o...

Well, they do not aim to earn money out of Telegram, so I guess that'll just work fine if they sell some stickers or things like that. The thing about Whatsapp and others is that they are a profit minded company, Telegram isn't, they just need money to keep it running
> monetize it

The owner is a billionaire high-tech enterpreneur partial to the cypherpunk ideas. He is basically doing it out of spite, to piss off the establishment.

Paul was never billinaire. He got ~300M from selling vk.com. Spent ~100M in first year. Spending on telegram's servers only is ~1M/month and telegram is 48+ months old. So he already spent almost half of his money.
Even if he put that $150 million left in a bank and only earned 1% interest it would still be $1.5 million a year, so I doubt it's much of a problem.
> Spending on telegram's servers only is ~1M/month

Isn't that too much? I mean, setting aside if that's the precise number for Telegram, isn't 1 million a month just for 100M users not impossible?

Yes, we are always wondering how it is possible. But you need to understand that telegram rolled not only their own crypto, but their own DB, PHP compiler and so on. Everything is written in C++.

To solve one of the earliest DDOS attacks telegram's team take their servers put it on the track and install them to other DC. This is insane.

> But you need to understand that telegram rolled not only their own crypto, but their own DB, PHP compiler and so on. Everything is written in C++

All of these sound like once-off items, and don't support/explain why it would cost $1M+ a month

I doubt that their operations costs are $1M per month. They should be 1/10th that amount. If you're spending that much, you are being robbed by employees or providers. This number is simply not believable by anyone who has experience running a large datacenter operations organization.
I wonder how much of these are from Iran? I know that they are insanely popular in Iran. If I wanna guess, I would say more than 10% if not 20%!
I think Telegram does really well on both functionality and UX, but is really brought down by their closed-source policy. I'm not sure what the motivations behind that are.
The clients are all open source; the server isn't, but the last time I checked they plan to opensource it as soon as they make sure there aren't any major exploits someone could use against it. Which I know might sound silly, because the open source community could find and patch those, but in light of all the recent crypto-related security bugs lately, it makes you wonder if it is a wise decision after all.
Founders of Telegram was never successful in OSS, they just don't have interest in this. This was clearly marketing stuff. I tried to make something really opensourced, but no one was interested in the Telegram LLC.
I think that, when it comes to secure and private communications, you can't really make any sort of claim in that direction if you're not open source.
Also, I think you have to assume a powerful adversary already has the source code, even if it is closed source.

The only way you can level the playing field between the likes of the NSA and us is to open source it.

I like Telegram because there's a native app for Ubuntu Phone.
and a linux/Ubuntu desktop app
(comment deleted)
I like Telegram much better than the others because it's very fast, and having a native Windows app is awesome. Much better than the crappy Whatsapp web client which is not even an independent client.

The only problem is convincing people to migrate, and I have been highly unsuccessful in that :(

Same problem here. I bought an Ubuntu phone, but everyone is on Whatsapp. Got quite a few to convert, but I miss out on group messages started by others.
I love Whatsapp, but group chat with family and friends replaced any need for real live interaction, and its sad. I'd love to remove it, but sometimes its really useful with the wife and parents.
I love Telegram, one suggestion though, if security is one of their priorities than it would be good to have control over how one user is visible after joining the network. I think right now you are just visible immediately after joining to people who have you in the contacts by phone number.
I used Telegram for awhile, but then suddenly started having problems with the iPhone app. I can't remember what happened, message notifications didn't appear, or maybe the app crashed, or something like that. Essentially it became unusable, so I switched to Signal.
I moved to Telegram because Whatsapp doesn't allow robots. I have a robot that sends me alerts from the database I manage (lag on the dataguard, tablespace with less than 100MB free, etc). It is really useful.
Do you have an example article or resource for such a use? I'd like to carry over notifications to the IM instead of cluttering my e-mail needlessly.