|
| Const-me wrote:
| Visiting a publicly available web page doesn't create contractual
| obligation between end users and web server owners.
|
| If Google views what telegram doing as abuse, then how it's
| different from what end users are doing while interacting with
| https://translate.google.com/ web page? Especially if these end
| users are running an ad blocker or two in their web browser? BTW,
| uBlock origin blocked 4 pieces of content on that web page.
| dodobirdlord wrote:
| Because Telegram has their app in the Play Store, which does
| require legal agreements, that presumably forbid this sort of
| thing.
| dandiep wrote:
| One thing I don't see mentioned here is that the Google Cloud
| version of Translate is actually different than the user-facing
| one at translate.google.com. At least when I tried it a year ago,
| the Google cloud version was vastly inferior. I suspect it has to
| do with licensing agreements around certain datasets. Very
| curious if anyone knows more on this...
| zoomablemind wrote:
| Very questionable decision, rather irresponsible one to all
| parties involved. I hope this won't devolve into a 'rogue-dev'
| blame, the company has to own it up.
|
| I wonder if an alternative route could be somehow leveraging
| google's own app. The Translate app is likely already installed
| on user's platform. So is there a way to send the user's
| translation requests to the app?
|
| It's almost a unix-approach, a tool for a task. Instead of a
| megatool for all-you-want.
| bacan wrote:
| Telegram is just spyware. Whatsapp is better. Signal is the best
| ilrwbwrkhv wrote:
| Nice hackers way of thinking. This is what makes telegram the
| best.
| zarzavat wrote:
| The following predictable chain of events will happen. Someone
| working at Google will read this blog post and report it
| internally. Google will contact Telegram and inform them that
| they are violating the Play Store agreement and could they please
| use the official API instead. Telegram will remove the feature as
| they can't spend the GDP of the Earth on translations. The end.
| whimsicalism wrote:
| Don't know why they can't just roll their own... At this point
| you could probably even do reasonably well on-device.
| f311a wrote:
| The entire dev team of Telegram is less than 30 people.
| That's why.
| judge2020 wrote:
| I guess this would also be in a legal grey zone/break TOS,
| but I wonder if they could reuse the offline models the
| official Google Translate app downloads.
|
| > worst case you could just self host a translation service
| mikaraento wrote:
| We do offer an official SDK that does that, see
| https://developers.google.com/ml-kit/language/translation
|
| (I work for Google but do not speak for it)
| MiroF wrote:
| I would trust a 3rd party on-device service slightly
| more, given that Google's incentives aren't exactly
| aligned with making that service high quality.
| smeyer wrote:
| I don't think their incentives are exactly misaligned
| with it being high quality, either. If better translation
| can get folks to see more ads, they might not care much
| about losing out potential api-based translation revenue.
| whimsicalism wrote:
| What? How would this violate ToS? iirc even the Google
| translate app does on device translation.
|
| And worst case you could just self host a translation
| service.
|
| Google's translation is good, but it's not _that_ much
| better than what you can get OSS.
|
| e: Misunderstood your comment (I believe the quote was at
| the top and you edited), now I see that you were referring
| to your idea as the potential ToS violation. I agree, you
| can't violate IP law in your app.
| judge2020 wrote:
| As in, the translate models are owned by Google and AFAIK
| they don't allow anyone, even other developers, to use
| them. It's against ToS to use intellectual
| property/code/ml models/etc without permission from the
| owner
|
| > 11.2 If You use third-party materials, You represent
| and warrant that You have the right to distribute the
| third-party material in the Product. You agree that You
| will not submit material to Google Play that is subject
| to third -party Intellectual Property Rights unless You
| are the owner of such rights or have permission from
| their rightful owner to submit the material.
|
| https://play.google.com/about/developer-distribution-
| agreeme....
| 3pt14159 wrote:
| > Google's translation is good, but it's not that much
| better than what you can get OSS.
|
| Disagree on this one. For the languages of the European
| Union and a couple other outliers, sure it's close. For
| the long, long tail of languages software developers
| typically don't care about and are outside the wealthy
| world Google is the only thing that is remotely
| intelligible.
| behnamoh wrote:
| Reminds me of this thread a while ago:
|
| https://news.ycombinator.com/item?id=29485904
| criticaltinker wrote:
| Another plausible alternative is that Telegram embeds an open
| source NLP model in the app so translation can be performed
| locally (offline).
|
| To be fair we know that mobile hardware resources can be
| extremely limited, and I'd wager a server side model will
| always be bigger and therefore better.
|
| But recently there's been a lot of amazing progress in
| techniques to shrink large models down while preserving most of
| the accuracy (eg quantization aware training, etc).
|
| With some additional constraints on scope (maybe only
| supporting the handful of languages the user needs?), I believe
| a sharp team of a few experts could deliver this fairly
| quickly, with reasonable results that would of course improve
| over time.
| mikaraento wrote:
| Google also provides an official on-device translation SDK
| that is free-as-in-beer (https://developers.google.com/ml-
| kit/language/translation).
|
| The models are around 20M for any single language so there is
| a not insignificant cost on the user in terms of delay for
| downloading, data usage and disk space.
|
| Disclaimer: I work for Google and worked on the ML Kit
| Translate SDK, but I don't speak for Google.
| skinkestek wrote:
| As someone who has often defended Telegram I am somewhat puzzled
| by this one.
|
| While the legal aspects of this might have to be decided by
| someone more skilled than me I feel they are morally on the same
| ground as early Google and if Google makes a big case of it it
| might backfire spectacularly.
|
| More interesting is it that Telegram sends user texts directly to
| Google without any proxying (did I get that right and has the
| author studied it carefully enough?).
|
| This might (again, if this blog post is correct and I read kt
| correctly) be an actual dangerous move from Telegram. Unlike the
| problems that many here worry about regarding E2E-encryption,
| this can potentially drag Telegram down to WhatsApp levels,
| sending huge amounts of user data straight into Google.
|
| Then of course, we'll need to see. Very much of what Telegram has
| done security wise is very well thought out and has improved over
| time.
|
| Recently for example when I started my backup of one of the
| groups I participate in I had to confirm from a mobile client or
| wait 24 hours to start backup. Account recovery is almost
| automagically simple but has some nifty touches to prevent
| account hijacking. Settings to delete the account if I fail to
| log in has existed for years, I wonder if they even did this
| before Google launched it.
|
| So now I am anxious to know if Telegram has done something
| brilliant again or if this is a turning point.
| danpetrov wrote:
| Telegram is great if you like shiny native features like
| stickers and having lightweight native clients, but at
| everything else Telegram is at risk of losing in the long-term.
|
| The big reason for this is that Telegram decided to roll
| everything mostly on their own (including e.g. MTProto),
| Telegram is not compatible with Matrix unless you use a bridge,
| it is not e2e encrypted (unless you use mobile 1-to-1 secret
| chats. The server side code is proprietary, and the builds of
| the clients that are published to the app stores could be
| anything.
|
| While I love using Telegram right now for talking to some
| groups of friends, I would look at supporting
| https://matrix.org , since it will likely become the de-facto
| standard of building messaging platforms.
| RF_Savage wrote:
| Matrix still has ways to go but Elemental is now actually
| usable.
|
| On the Telegram security side of things my group of friends
| uses it as a more modern IRC. So no NSA proof security is
| truly even expected. We even bridge some IRC channels to
| Telegram with bots.
| skinkestek wrote:
| > and the builds of the clients that are published to the app
| stores could be anything.
|
| Isn't Telegram one of very few that provides verifiable
| builds, (including on iOS if you root it)?
|
| I might be wrong but I think not.
|
| Edit, see : https://core.telegram.org/reproducible-builds
|
| So it seems even on this point Telegram shines.
| saagarjha wrote:
| Telegram doesn't even post their source code to match their
| releases on macOS and iOS. Sometimes they'll do a code dump
| somewhere around that time, but it's not a guarantee.
| stanmancan wrote:
| >Telegram is great if you like shiny native features like
| stickers and having lightweight native clients, but at
| everything else Telegram is at risk of losing in the long-
| term.
|
| Whatever ends up winning is going to need: -
| Native clients on all major platforms - Full support
| for all the fun little extra's like emoji's, reactions, gifs,
| file transfers etc. - True multi-device support that
| doesn't require any sort of forwarding from another device
| - Group chats - Searchable history - Your full
| history to automatically load when you log in on a new device
| (manually transferring isn't going to be an acceptable
| solution) - No concept of selecting a server or
| anything. Users need to be able to just log in with a
| username/password and carry on. - E2E encryption that
| doesn't sacrifice the user experience
|
| Anything missing from this list? Also, does Matrix support
| all of that? Last time I checked Matrix out it seemed clunky
| and confusing (especially for non-technical users) and it was
| missing a ton of the 'basics' that people expect out of a
| chat app.
| godelski wrote:
| Signal seems to have everything you listed except for the
| full history transferring to a new device (works on Android
| but not as well with iOS). Though like you implied, it is
| done manually. I'm still not convinced that this can be
| done without making major sacrifices to security because I
| really do want a trustless system where my messages aren't
| stored on a company's servers (I am okay with optional
| backups though, so there's a middleground).
|
| > No concept of selecting a server or anything.
|
| This has been one of the big concepts that has bugged me
| with Matrix. It also is why I'm confused with why people
| pit Matrix vs Signal. Honestly I see
| Signal/WhatsApp/iMessage/WeChat as competitors whereas
| Matrix/Slack/Teams/IRC is a different ecosystem. But I
| can't get my parents or grandma to use something like
| Matrix (or even Slack) but they are able to use things in
| the former category. In fact, this has been one of the
| great successes of WhatsApp (looking at India with all the
| aunties and uncles using WA or China with WeChat).
|
| > Anything missing from this list?
|
| - Pinned messaging
|
| - Other class of extras/plugins: on-device translation,
| calendar reminders, etc
|
| Pinning messages is important for search, but seems to be
| overlooked frequently (I use this a lot in slack). I often
| know something is important and need to find it again in a
| day or two (e.g. traveling) but will also be talking with
| the other person and that message gets pushed. Pinning
| lightens the load of searching. It also lightens the load
| of backups as most people truly want a very small subset of
| their messages saved but are only aware of an all or
| nothing approach.
|
| Plugins will be important as well. To complement pinning
| calendar reminders are great. Google does stuff like this
| frequently like when you get an email about a flight and
| then your phone's home screen will have all the information
| on it. It's also naive to think that you can think of all
| the things people would want. That's why smartphones have
| been so successful, because they provide the ecosystem.
| This isn't too dissimilar from creating a super app. But
| there's none where the ecosystem is fully secure.
| tcfhgj wrote:
| > Signal/WhatsApp/iMessage/WeChat as competitors whereas
| Matrix/Slack/Teams/IRC is a different ecosystem. But I
| can't get my parents or grandma to use something like
| Matrix
|
| I can't get why people need to put Matrix in either Box.
| It's a communication protocol. Client UX is completely
| independent, like you can have K9Mail and Thunderbird
| brimnes wrote:
| Signal desktop clients are not native. They use Electron
| and are much slower than Telegram.
| godelski wrote:
| That's true. Something I wish they would fix but I think
| now it is tech debt.
| phreack wrote:
| - An option to not have a password at all and log in just
| by having a phone.
|
| It's a 100% must have feature for a phone IM, most people
| will forget a password the very moment they are forced to
| create it.
| ComodoHacker wrote:
| > Your full history to automatically load when you log in
| on a new device
|
| Most people don't actually need _full_ history in most
| situations, just recent history.
| pkulak wrote:
| I think I can speak to how Matrix deviates from your list:
|
| - There are technically native clients on every platform,
| so best kind of correct? However, the "official/main/most
| popular" client is Electron on Desktop. Partial credit?
|
| - Yup
|
| - Yup, even when using E2E, which is a hell of an
| accomplishment. You transfer keys from other devices, but
| not entire messages.
|
| - Yup. E2E or not, your choice.
|
| - Searchable history plus E2E is... hard, to say the least.
| Some clients will index your conversations while they
| happen, but that's obviously not the perfect solution. That
| said, the APIs are so open that I've written python scripts
| before that download and search entire rooms. It would be
| possible for a client to do the same, though I don't think
| any do. Non-encrypted rooms are trivial to search, or
| course.
|
| - This as well. As before, keys transfer from other
| devices, messages load from the server.
|
| - This seems like it was engineered to exclude Matrix. The
| default in every client is matrix.org, and there's no
| reason you ever need to change it if you're not concerned
| with it. In fact, most clients make it a couple clicks to
| change it (https://app.element.io/#/login).
|
| - Not totally sure this is possible, but Matrix comes very
| close. On par with Signal, though with different tradeoffs
| (stored history, for example).
| caslon wrote:
| - The native clients for Matrix suck. Even the _mobile_
| clients for Matrix are full of bugs.
|
| - No custom emojis; every chat application known to man
| has regular emojis supported in UTF-8, so the author must
| be talking about custom ones. Which Matrix still does not
| have: https://github.com/matrix-org/matrix-doc/pull/1951
|
| - I don't think doing what PGP does is really impressive,
| but okay, fine, one point.
|
| - Matrix group chats are broken and this is why Synapse
| eats resources like a bear.
|
| - No searchable history on all but one Electron client on
| one platform when using E2E is terrible, and further
| supports the argument that all clients suck.
|
| - Point; this is pretty convenient.
|
| - XMPP sucks. Matrix is modern XMPP. People don't like
| getting confused with servers and similar nonsense, and
| when your homeserver goes down, you're out of luck.
| Federation sucks. The question wasn't made to exclude
| Matrix, it was made to point out that federation sucks.
| Matrix didn't invent federation; it chose it long after
| it failed.
|
| - E2E degrades experience greatly. To list my two biggest
| complaints: It ruins search for all but one client, and
| the UX around keys is terrible. I frequently have
| conversations with incredibly technical people and
| they'll still get absolutely stumped by the UX around
| keys, because it's awful.
|
| Two out of eight isn't bad.
|
| I use Matrix every day. I have for years; long before the
| recent rebrand, and multiple presidents have vacated
| office since I started using Matrix. I love Matrix. But
| there's no reason to act like it's some golden goose when
| there are problems from 2015 that are no closer to being
| fixed than they were at the time. It's a comfortable
| protocol for usage by people who have powerful computers.
| For everyone else, it still isn't great.
| pkulak wrote:
| I also heard that Matrix will run off with your wife and
| kick your dog. It's a re-implementation of BoziBuddy, and
| will fail for the same reasons.
| tcfhgj wrote:
| > - I don't think doing what PGP does is really
| impressive, but okay, fine, one point.
|
| it's more than PGP, it includes variable PFS, automatic
| key exchanges
|
| > - Matrix group chats are broken and this is why Synapse
| eats resources like a bear.
|
| I have heard it's because Synapse is a proof of concept
| that went into production
|
| > Federation sucks. The question wasn't made to exclude
| Matrix, it was made to point out that federation sucks.
| Matrix didn't invent federation; it chose it long after
| it failed.
|
| I disagree. Federation is a burden, but it enables
| interoperability between independent parties.
|
| > But there's no reason to act like it's some golden
| goose when there are problems from 2015 that are no
| closer to being fixed than they were at the time.
|
| There's also no reason to do the same thing into the
| other direction.
| behnamoh wrote:
| Telegram the app, is the best among all messenger apps.
|
| Telegram the company, maybe not.
| Andrew_nenakhov wrote:
| It is best because they don't bother encrypting user data,
| loading it directly from its own servers.
| behnamoh wrote:
| I meant feature-wise, the app is spectacular, but
| security-wise, it's not that trustworthy.
| pkulak wrote:
| Exactly. Features are way easier with everything plain
| text.
| gcr wrote:
| it's my understanding that Telegram won't automatically
| translate messages unless the user chooses to click the
| translate button, and the option to enable the translate button
| does disclose that translated message content is sent to
| google.
| judge2020 wrote:
| > without any proxying (did I get that right and has the author
| studied it carefully enough?).
|
| Most likely, since the user-agent rotation code is in the app
| itself. If it were a Telegram proxy, the proxy would do its own
| UA and IP hopping and the clients would use their default UAs.
|
| At a certain point, I wonder why Google's abuse team don't
| simply look for 3+ occurrences of User Agent strings because UA
| rotation is rarely used for legitimate purposes.
| Const-me wrote:
| > UA rotation is rarely used for legitimate purposes
|
| It's not uncommon for hundreds of users to share a single
| public IPv4 IP address through an ISP-provided NAT. The same
| applies to corporate LANs with a single uplink channel.
|
| These users gonna have random UA corresponding to market
| share of web browsers and operating systems, all coming to
| the same web server from a single IP address.
| judge2020 wrote:
| I mean on the play store side, where they scan app
| submissions for TOS violations before they even hit the
| store. UA rotation on the client side is rarely used for
| good.
| oauea wrote:
| Why would they? This is the Google Play Store, not the
| Apple App Store with all its inane rules.
| fao_ wrote:
| HTML requests are just text, how would you even go about
| scanning for that?
| judge2020 wrote:
| As from the blog post, the source is public[0] and the
| Android review process is almost entirely automated
| static/dynamic analysis of apps submitted, so it wouldn't
| be super hard to find UA-like strings and have some
| elevated manual review if there are a lot of them (if
| they decided to implement this sort of abuse policy).
|
| 0: https://github.com/DrKLO/Telegram/blob/c1c2ebaf4690fd9
| 1c116d...
| Const-me wrote:
| I think that's only possible if they ban TCP/IP for play
| store apps, enforce that in the OS kernel (SELinux can
| probably do), and instead expose the one and only high-
| level HTTP API for apps.
| skinkestek wrote:
| These days Google isn't up to much on a technical level ;-)
|
| They cannot even fix the old verbatim feature that they broke
| a few years ago, so how should should they be able to stop
| this without breaking something else?
|
| Yep, this is somewhat hyperbolic but I'll write it anyway. I
| want my old Google back.
| ehPReth wrote:
| Tools -> All Results -> Verbatim is confirmed broken? I
| thought something was fishy...
| skinkestek wrote:
| Hasn't worked consistently for me for years.
|
| To be precise: I think it work sometimes, but I know it
| doesn't work most of the time unless verbatim means
| something completely different from what I think ;-)
|
| You can verify this quickly by searching for something
| slight unusual or very specific, apply verbatim and
| verify that most of the results still doesn't contain
| your words.
| patcon wrote:
| > Very much of what Telegram has done security wise is very
| well thought out and has improved over time
|
| Though I'm certainly not a cryptography expert, I used to work
| on Tails OS and some Tor-related projects, and I feel I know
| where/how to listen to the experts.
|
| Having said that, I am a hard _disagree_ on the quoted
| statement.
|
| My understanding is that there has been very few improvements
| that they weren't dragged into. imho telegram is a reckless
| tool from a cryptographic point of view, and still highly
| suspect
| skinkestek wrote:
| > My understanding is that there has been very few
| improvements that they weren't dragged into. imho telegram is
| a reckless tool from a cryptographic point of view, and still
| highly suspect
|
| Again, I cannot speak about the crypto but I can speak about
|
| - bugs: last time Telegram had a know bug where data could
| realistically leak except inside Telegrams infrastructure
| (which of course is a big deal) was around the time it
| launched as far as I know. Looking at Signal (which I
| recommend for anything super secret) they've had a couple of
| really nasty bugs in the much shorter life time: RCE in
| desktop client and spuriously sending images to persons
| except the intended recipient is just two.
|
| - things they haven't been dragged into: anti-hijacking,
| deletion on account inactivity, working backup, not syncing
| secret chats between clients and more.
| chrisfosterelli wrote:
| > Very much of what Telegram has done security wise is very
| well thought out and has improved over time
|
| This is not my understanding of the situation _at all_. There
| 's no end-to-end encryption by default [0], and the end-to-end
| encryption they do have received significant controversy at
| launch [1] for being essentially a "roll your own" crypto
| solution which indeed ended up being found to have some issues
| [2].
|
| They disable the OS backup and instead they effectively store
| all their user's contacts, messages, media, etc. directly on
| their servers except for the conversations that the users
| directly opt out of by turning on e2e. They've promised since
| 2014 to open source everything but the backend, which stores
| all this data, is still closed source.
|
| For small group or individual messaging, whatsapp, signal, or
| matrix are far better choices. I think it's worth acknowledging
| that telegram has a much bigger focus on large groups and
| therefore has to make different security tradeoffs, so I think
| if we consider telegram a social media service it's pretty good
| -- but is not the best messenger.
|
| [0]: https://www.howtogeek.com/710344/psa-telegram-chats-arent-
| en... [1]: https://www.vice.com/en/article/wnx8nq/why-you-dont-
| roll-you... [2]: https://eprint.iacr.org/2015/1177.pdf
| MomoXenosaga wrote:
| An advantage of Telegram is that they attract less attention
| from the authorities. Also Telegram seems to have a more,
| shall we say, lax attitude about criminal activity.
| skinkestek wrote:
| You are very precise in your criticism, have my upvote!
|
| A couple of things:
|
| 1. the crypto has been improved significantly after the
| launch as far as I know. That release was back in the dark
| ages about half a year after WhatsApp got caught sending data
| unencrypted (and I'm using that word in its original
| meaning).
|
| 2. Can we agree to stop recommending WhatsApp soon?
| chrisfosterelli wrote:
| Thanks! That's kind to say.
|
| I shared some notes on crypto issues more recently in
| another post above, but I would concede its generally more
| battle tested than the first version released at this
| point. The choice to start with home rolled crypto at all
| continues to concern me, but more importantly the fact that
| it's not default is now my biggest sticking point if I'm
| honest.
|
| I think WhatsApp comes with an asterisk in that I'd
| certainly recommend signal over it, but most non-technical
| people have never heard of signal so given the choice
| between WhatsApp and Telegram I'd personally opt for
| WhatsApp based on their e2e encryption by default, but I
| could understand if someone personally gave more weight to
| a distrust of Meta (even if encrypted) than they do to
| Telegram and made use of Telegram's secret chats.
| janeroe wrote:
| > For small group or individual messaging, whatsapp ... [is]
| far better choice.
|
| The whatsapp that leaks your data to the FBI in real time
| [1], or do you mean some other whatsapp?
|
| [1]: https://news.ycombinator.com/item?id=29381917
| Egrodo wrote:
| This is entirely false, stop spreading disinformation.
| Barrin92 wrote:
| as the first response to that post says the only thing that
| the FBI got was metadata if icloud backups were enabled,
| it's impossible for whatsapp to leak your actual messages
| because they're on device encrypted.
|
| These comments on whatsapp, which appear with regularity by
| the way, are misleading and just inflammatory.
| upofadown wrote:
| Last I heard there is nothing wrong with the E2EE in Telegram
| at this point in time. OTTOMH, the stuff that people were
| complaining about wasn't anything that anyone would
| realistically care about, particularly for something not
| really that secureable like instant messaging on a
| smartphone.
| chrisfosterelli wrote:
| The current version has no publicly known issues, but
| suspicion is the only valid response when an entity rolls
| their own cryptography for production when such well-
| studied and secure options already exist.
| diebeforei485 wrote:
| > suspicion is the only valid response when an entity
| rolls their own cryptography for production
|
| Strong disagree. I would rather have multiple solutions
| in production, and Telegram's is also well-studied.
| chrisfosterelli wrote:
| Most established approaches were well studied _before_
| they were put in production, while Telegram has had the
| luxury of beta testing their protocol in real time on
| their 500 million users, and the work isn 't yet done
| with issues discovered as recently as this year:
|
| > But ultimately they prove that the four key issues
| "could be done better, more securely and in a more
| trustworthy manner with a standard approach to
| cryptography," said ETH Zurich Professor Kenny Paterson,
| who was part of the team that uncovered the flaw.
|
| https://www.cyberscoop.com/telegram-app-security-
| encryption/
| diebeforei485 wrote:
| I'd suggest you actually read the paper[1] you're
| referring to, because it's actually a lot less critical
| of Telegram's approach than you make it out to be.
|
| We are better off that Telegram exists as an alternative.
| We don't need Signal's protocol (also used in Whatsapp
| etc) to be a potential SPOF.
|
| To quote: The central result of this work is a proof that
| the use of symmetric encryption in Telegram's MTProto 2.0
| can achieve the security of a robust bidirectional
| channel if small modifications are made.
|
| 1. https://mtpsym.github.io/paper.pdf
| chrisfosterelli wrote:
| I have read this paper. Not sure where you feel I
| mischaracterized it. The section you just quoted goes on
| to discuss caveats, including a recommendation that they
| swap out their low level cryptographic implementation
| with one that uses a standard and well-vetted library,
| and then criticizes them for not having e2e on by
| default.
| lowdose wrote:
| Yandex image search is superior to google image search because it
| does not interpret the content to a string and searches for this
| "one liner" but searches actually for similar images.
|
| Yandex also has Papiamento in their text translation. Which
| Google doesn't support at all.
| littlecranky67 wrote:
| Not sure if this is a smart move, especially since they piss off
| the same company that could remove them from the Play Store in no
| time.
| 88840-8855 wrote:
| Another useful feature, interesting article to look how it works
| under the hood.
|
| And again, i wonder how a tiny team can push such great and
| useful features into such amazing UI. And then I'm looking at
| other alternatives, from naked WhatsApp over laggy wechat to
| horrible UX in signal.
|
| What's the reason for telegram amazing performance and features?
| PragmaticPulp wrote:
| > Another useful feature, interesting article to look how it
| works under the hood.
|
| I think you might be missing the point of the article, which is
| that they're misusing Google APIs to avoid paying for the
| proper way of doing things.
|
| This feature _will_ break as soon as Google throws up a
| captcha, because these endpoints aren't intended to be used
| programmatically.
|
| > And again, i wonder how a tiny team can push such great and
| useful features into such amazing UI.
|
| The translate functionality comes from Google. They're just
| sending messages to Google and getting a result back, at least
| until Google detects the API misuse and breaks the response.
| iqanq wrote:
| >What's the reason for telegram amazing performance and
| features?
|
| Wouldn't a better question be "what's the reason for other apps
| having crappy performance and subpar features"?
| pjerem wrote:
| Telegram is pretty impressive when you take into account the
| number of (well implemented) features that they managed to
| shove in the app without breaking ergonomics and performance.
|
| At this point, I just think the answer is top notch
| developers and designers with an impressive alignment about
| what the product should be.
|
| I know no other free application with such an amazing
| usability. There must be some shitload of money behind them,
| for sure.
| BlueTemplar wrote:
| Discord ?
| sorenjan wrote:
| Does Discord have a native (not Electron) desktop app?
| BlueTemplar wrote:
| Nope. I guess though that with lots and lots of money you
| _can_ make even an Electron app work well ?
| iqanq wrote:
| I think it's the result of every one of the clients
| (desktop, android, ios) having only one developer each.
| lucb1e wrote:
| From what I gathered: a boatload of money from the rich owner
| for development and hosting, plus not caring about encryption
| in any way. Don't need to bother with tricky distributed device
| syncing protocols if your servers simply store everything and
| can index the data at leisure for fast global search etc.
|
| It's still impressive, though. It's not as if Facebook's chat
| works this well and that isn't (wasn't?) encrypted either and
| they've got an even bigger pile of cash. It's also a lot older
| though, just look at the evolution from IRC to MSN to Facebook
| to Telegram: each step it gets better. Maybe that's how that
| difference can be explained? Anyway, between normal messengers
| like Signal/Whatsapp/Wire/etc. and Telegram, the main
| difference is not caring about privacy. (To be clear, I don't
| mean that whatsapp is a privacy-conscious messenger as they
| will collect what they want behind the scenes, but on the
| client side they have to care about keeping the server
| "untrusted" and that will slow everything down a lot.)
| traveler01 wrote:
| Actually Pavel Durov made some very rough accusations against
| Signal and other "secure" apps for using the standard
| encryption method. For what he says, he doesn't trust others
| encryption protocols because he believes NSA made some pretty
| well hidden backdoors in them to easily decrypt them.
|
| Meanwhile I'm just here thinking, what's the matter if you're
| messager is super duper safe if your device OS running them
| is plagged with backdoors?
| lucb1e wrote:
| Kleptographic backdoors in the Signal protocol is FUD. I
| work as a security consultant, which is definitely not a
| cryptographer, but I do get around and "NSA made some
| pretty well hidden backdoors in them to easily decrypt
| them" is definitely false.
|
| > what [if your] mess[en]ger is super duper safe if your
| device OS running them is plag[u]ed with backdoors
|
| This is more relevant. Bugdoors more than backdoors, or
| perhaps just stupid bugs and enough budget to find them,
| but yeah basically that's how messages are decrypted these
| days (e.g. NSO group).
| ju-st wrote:
| Wouldn't it be a good idea to use two chained encryption
| methods? AES+whatever Telegram is using? This would be
| resistant against a AES backdoor and against bugs/backdoor
| in the Telegram encryption method. Similar to TrueCrypt
| where you can select AES+Serpent+Twofish to encrypt your
| files.
| lucb1e wrote:
| That would work, but historically this hasn't proven
| necessary and double encryption means double the CPU
| power (or more, if one of them has CPU extensions and the
| other encryption method does not). Doing group calls in
| Wire is already very taxing on nowadays' energy-efficient
| laptops or not-high-end phones.
|
| For example, people have been using Russian GOST
| algorithms as a hedge against the USA stuff, but it's
| falling out of style because it just hasn't proven
| necessary in the decades since the AES and SHA families
| came into existence. Any bugs we found, for example in
| SHA-1, affected everyone equally and did not create a
| backdoor as with Dual-EC (in which flaws were identified
| before release and which went unaddressed, very much
| unlike other common algorithms).
| p1anecrazy wrote:
| People tend to forget that Whatsapp encryption was introduced
| years after Telegram's secret chats. Now they are
| continuously bashed for no encryption by default, but their
| original proposition was "messenger done right" as compared
| to unencrypted Whatsapp and FB.
| lucb1e wrote:
| I'm well aware of that and I don't have WhatsApp because of
| its privacy problems (much to the annoyance of some family
| members, but I imagine it saved me from a lot of printer
| queries, and if _they_ aren 't willing to switch then why
| should I).
|
| What I think you're underappreciating is that Telegram was
| built on the premise of privacy and they've neglected that
| from day one. It was better than the status quo _on_ day
| one (at release), but have fallen further and further
| behind ever since.
|
| Telegram was launched when Whatsapp sent messages _without
| transport encryption_ over port 443 (this was fun on public
| wifi!) and got big when Whatsapp was bought by Facebook
| because Telegram was independent and had proper end to end
| encryption (with air quotes around "proper" if you like;
| it wasn't OTR-grade but at least it was better than the
| status quo). Since then, nothing happened whatsoever on the
| privacy front. Even the legal compliance is a complete joke
| (gdpr data exports only work in a few clients and not very
| well at that), but more importantly to me, they _need_ gdpr
| data exports because the servers _still_ know _everything_.
| Whatsapp moved on, Signal got a lot more mature, Wire has
| also come onto the playing field, and Telegram has done
| nothing since before Snowden told us to turn on https
| basically.
| gefhfffh wrote:
| Yeah and now every messenger uses encryption by default -
| in groups, mostly with multiple devices.
|
| Telegram is still at "open a secret chat" with worst UX
| lucb1e wrote:
| Not just UX, also availability. I simply _cannot_ use
| encrypted chats in the Telegram desktop client that I use
| the most and runs on the device that can actually get
| security updates while being fully owned by me (I, ahem,
| "rooted" my laptop and it can still install system
| updates without any hassle, it's amazing). This is why
| I'm slowly moving more and more friends to Signal but
| their UX is also very mediocre by comparison.
| gefhfffh wrote:
| Thought that could also be considered being part of the
| user experience
|
| But definitely
|
| I switched to Matrix though
| lucb1e wrote:
| I'm using Matrix with two friends and it's just a world
| of pain. Can never find any messages because search is
| not implemented on web or android (only ios seems to have
| it or an electron desktop client... no thanks to both),
| random issues with encrypted chats (it all works great if
| you leave e2ee off! Though it got a lot better already
| since a big update ~1.5 years ago) such as unavailable
| message keys, random bugs, and too complicated for use
| with non-techies (so not an option for my mom). What
| helps is having alternative contact channels for when a
| message fails to decrypt or the custom homeserver is down
| again.
|
| There has been a lot of work on it but the smart thing to
| do would have been to copy Wire or Signal and build on an
| existing thing if you don't have the manpower to start
| from scratch and want to be a mainstream alternative.
|
| I'd rather recommend Threema (best UX, not so great in
| features or encryption tech), Signal (network effect,
| best privacy, reasonable UX), or Wire (like Signal but
| slightly better desktop experience).
| gefhfffh wrote:
| I have been testing it for about 3 years now (FOSDEM 2019
| made me interested again)
|
| I started pulling people to it only a few months ago when
| I thought it was good enough (includes almost no
| encryption issues happening in all day usage)
|
| My mom uses it as well. It works fine. I had to install
| the app though, like all the other apps.
|
| The reasons why I found Matrix interesting, were:
|
| - Telegram like syncing messages across all devices while
| adding a new device is as simple as setting up WhatsApp
| Web
|
| - It's a standard for interoperability - I got sick of
| telling others what to use and being told so by the
| network effect
|
| Copying Wire or Signal just wouldn't work for technical
| reasons. I also wouldn't want a copy.
|
| I got all of your recommendations over time (including
| buying Threema with all my friends), but they just
| haven't been good enough for us and me. In practice, no
| one cares about Electron. It seldomly VScode or Teams are
| used at work
| sorenjan wrote:
| > not caring about encryption in any way
|
| That's hyperbole and I think you know it. It's not like the
| messages are sent unencrypted for anyone to sniff with
| minimal effort.
|
| https://telegram.org/faq#q-so-how-do-you-encrypt-data
| croes wrote:
| And you know that encryption for messengers means E2E not
| server to client. Privacy means even Telegram doesn't know
| what I wrote.
| lucb1e wrote:
| Of course, I find that to be a given these days. When
| people talk about encrypted chats in 2021, it's not about
| transport encryption... installing let's encrypt for your
| api is the easy part.
| Gigachad wrote:
| End to end encryption seems like an endless pain in the ass.
| So many expected features like server side searching and link
| embeds become basically impossible to do in a secure way.
| lucb1e wrote:
| The problem with having your own server instead (then you
| can just do transport encryption and call it a day) is that
| everyone needs to be on your server. Or go decentralized,
| but that has its own host of complications that may or may
| not be easier than end to end encryption.
|
| Also note that it's not impossible. Wire and Signal have
| come a very long way already, it's just the front-end (UX)
| that they're lacking on really. Telegram has features like
| a video editor and user-filtered search, but those are all
| client-side things and have nothing to do with e2e
| encryption. All the things that do (sending messages, emoji
| reactions, group chats, group video calls, etc.) are
| already implemented by both apps.
| jcelerier wrote:
| Written in C++ / Qt for the most part :-)
| drath wrote:
| On one hand, it's quite asshole-ish. On the other, google is
| serving broken frontends to their services and charge ridiculous
| prices on their API's. When I tried to make a third party search
| using google engine, I've exhausted the limit in less than an
| hour. It'd cost me like $40/mo to get what I get for free using
| their crappy frontend.
| typingmonkey wrote:
| Like telegram did with the translate api, there is also a way
| to have an unlimited api for search results. You have to find
| one of the old mobile pages of google.
| PragmaticPulp wrote:
| > On the other, google is serving broken frontends to their
| services and charge ridiculous prices on their API's.
|
| How does that make this okay? Nobody is entitled to get a
| company's services for free just because you think their price
| is too high or their front ends aren't built to your liking.
| rebolek wrote:
| Google isn't entitled to get my personal data for free to,
| yet they do it anyway.
| tyingq wrote:
| You could use the _" turnabout is fair play argument"_. If
| you publish a web page, and don't specifically block google,
| they scrape your content, and use it for their own purposes.
| And even use it for "rich snippets", products other than
| search, etc. You're basically doing the same to them...using
| their content for your own purposes until they specifically
| block you.
| PragmaticPulp wrote:
| Disagree. The web is clearly architected such that
| publishing a webpage makes it public and crawlable. You
| don't "block Google", you specify that the site is not for
| crawling in robots.txt according to well-known standards.
| This is all basically the contract of the internet and it
| shouldn't be surprising to anyone.
|
| Google specifically _does not_ publish their API for free
| consumption by other companies, yet that's what's happening
| here anyway. The company is also using specific tricks to
| circumvent detection of the behavior.
|
| In your analogy, this would be like a crawler ignoring
| robots.txt and then scraping the content for their own
| website with zero attribution to the source, which is
| nothing like Google indexing your site with full
| attribution and driving traffic to it for you.
|
| Regardless, "turnabout is fair play" is unequivocally _not_
| a legally or even ethically acceptable standard, so that
| argument wouldn't actually hold up anywhere anyway.
| tyingq wrote:
| _" driving traffic to it for you."_
|
| I did mention rich snippets.
| tshaddox wrote:
| I don't understand your argument. There is no actual
| "publishing" of web sites or APIs on the web. You simply
| make something available at a URL, and it's up to anyone
| else to discover that URL. In this regard, your personal
| web site is no different than this Google Translate web
| API.
| inportb wrote:
| > this would be like a crawler ignoring robots.txt
|
| Google ignores the _noindex_ directive in robots.txt now.
| You 're supposed to put it in your HTTP response headers
| or HTML meta tags...
| ldjb wrote:
| `noindex` was a Google-specific rule that was never
| officially documented nor supported. I think they were
| perfectly entitled to withdraw support for it, especially
| considering there are alternatives.
|
| https://developers.google.com/search/blog/2019/07/a-note-
| on-...
| agentdrtran wrote:
| "Nobody is entitled to get a company's services for free just
| because you think their price is too high or their front ends
| aren't built to your liking." Tell this to Google!
| yosito wrote:
| I really don't understand this. Is Telegram a legitimate app? If
| so, then why are they attempting to rip off other companies' work
| without paying them? You want an integration with a translation
| API? Then pay a fair price for one, or build your own?
|
| If Telegram really can't afford an integration, just make a
| translate button that opens a link to
| https://translate.google.com/?sl=es&tl=en&text=API%20de%20tr...
|
| Edit: not to mention the privacy implications of sending messages
| to Google.
| rfoo wrote:
| Okay, how about I open an embedded WebView of
| https://translate.google.com/?text=..., with the viewport
| carefully set to only show the translation results?
| ssl232 wrote:
| I guess, given its popularity, Google won't kick Telegram off the
| store for obfuscating the URL and using an unauthorised (?) API
| endpoint but I imagine this will get them in some sort of
| trouble.
| robby_w_g wrote:
| > I imagine this will get them in some sort of trouble.
|
| I'm not sure about this.
|
| I bet Google is happy to collect the text data of up to 500
| million users with zero restrictions from Telegram's end on how
| the data is used. I'm not a lawyer, but my hunch is that
| Google's data privacy policy applies to the official, premium
| service: https://cloud.google.com/terms/data-processing-terms
|
| Google might make the determination that they'll get more value
| from allowing Telegram to abuse the unofficial API. However,
| they might face some angry customers who are paying a premium
| to use the official API now that this loophole has been
| published.
| littlecranky67 wrote:
| I think they could do it. In Germany, Telegram is often cited
| by media as a platform for (illegal) right-wing, antivax and
| hatespeech. Some politicians openly demand to go ofter Telegram
| and/or block it. So google could kill two birds with one stone
| here. At least remove it from the Play Store in some countries.
| kaladin-jasnah wrote:
| I believe it is the same in the US.
|
| Although at the same time half my friends use it at our
| (critical) communication platform. So it's not in our best
| interests.
| littlecranky67 wrote:
| Telegram is basically opposed to any kind of censorship
| which is IMHO a good thing. Western politicians are
| outraged as hatespeech, murder threats, right-wing paroles
| etc. are openly distributed through Telegram and demand
| regulation/takedown. At the same time, when protesters in
| Belarus or HongKong use Telgram to coordinate and those
| Governments demand takedown, the West screams oppression
| and demands freedom of speech.
|
| In general I am pro Telegram, as I think any democracy
| needs to have censorship-free communication for
| whistleblowers etc. and to prevent attacks against
| democracy itself. Even if this means we have to live with
| stupid/illegal opinions being expressed too.
| einpoklum wrote:
| I wonder how useful this, considering how Telegram conversations
| are unencrypted by default. If they were to change this default,
| now _that_ would be something.
| ckastner wrote:
| I think it's possible construct to construct a (very weak)
| argument for the random user agent rotation, but why split the
| spring if not to avoid being flagged.
|
| On the other hand, I find it hard to believe that Telegram would
| risk a Play Store ToS violation, given how many tens of millions
| of users use the app.
| Bombthecat wrote:
| Would deepl cheaper?
| arihant wrote:
| I'm not sure if Google will start flagging the IP addresses of
| the users because of each request having a different agent.
| That would render normal Translate unworkable for them too!
| Nextgrid wrote:
| These users will just say "google translate down", shrug and
| go to Bing or competing translate services.
| vesinisa wrote:
| Pretty sure at the point you have over a billion(!) installs,
| even Google affords some leniency towards its Play Store
| policies. Or at least we are about to find out anyway..
|
| Meanwhile, indie developers with smaller user base are subject
| to unappealable automated decisions.
| lima wrote:
| Telegram is well-known for operating in grey areas.
| wccrawford wrote:
| Isn't Google going to move to always having the user agent be
| the same anyhow? They've already decided to break that contract
| with the tech community, so I don't see that they have much
| room to talk there.
| dmurray wrote:
| That contract was torn up a long time ago. Or do you really
| browse the web with "Mozilla/5.0 (Windows NT 10.0; Win64;
| x64) AppleWebKit/537.36 (KHTML, like Gecko)
| Chrome/96.0.4664.110 Safari/537.36"?
| barnabee wrote:
| Someone deleted an interesting comment about adversarial
| interoperability [0]
|
| I'd love to see and give money to a project to create and
| maintain easy to use and stable "adversarial interoperability"
| APIs for as many services and products as possible.
|
| Perhaps companies and projects would not often use these directly
| because of the risks (hopefully some would, though!) but
| individuals could drop the library or the URL to a server hosting
| it into their apps to gain extra features.
|
| If standardised, whole open source apps could be built around
| them that allow querying and analysis of data from services and
| aggregating and automating using the services including
| optimising prices, taking advantage of offers, and using
| undocumented APIs to the users advantage.
|
| Maybe something architected and incentivised like
| https://thegraph.com/ for adversarial intercom and undocumented
| APIs. Building as a network of nodes and funding with crypto
| would make it harder to attack and take down.
|
| [0] https://www.eff.org/deeplinks/2019/10/adversarial-
| interopera...
| zackmorris wrote:
| This is a really good idea!
|
| Along those lines: maybe we could use a middleware pattern for
| APIs, frameworks, etc where the interface/package would be
| built as a layer above two or more services.
|
| That way the developer could switch between them at any time,
| or even failover automatically.
|
| So for example, rather than going onto GitHub to download an
| SDK for something like Mailgun, you'd download a middleware
| framework built on Mailgun and Sendgrid.
|
| This pattern could be used to identify vulnerabilities in
| software at the conceptual level, by helping developers to
| avoid marrying their code to individual providers like AWS.
| Some mission critical software could even be certified as using
| all adversarial interoperability frameworks.
|
| It could even help third party services pull themselves up by
| their bootstraps, if they get added to one of these
| middlewares. An instant user base without having to rely on
| marketing or word of mouth.
|
| And could be used to identify monopolies when there's no
| middleware for a service.
| 3pt14159 wrote:
| I was advocating for this for years but gave up when I talked
| to someone at Pager Duty that was just straight out against
| it. For almost irrational reasons. I kept trying to make the
| case that for a company like their that literally can't be
| taken offline without risking huge chunks of the internet why
| _wouldn 't_ they want to run their whole business on an
| abstracted away platform to, say, switch to Windows if linux
| had a 0day, etc.
|
| > Too many moving pieces. Too much work.
|
| It still boggles my mind that this is the way we do things.
| "Patch fast!" Ok cool. That's going to keep working out
| forever.
| barnabee wrote:
| I totally agree.
|
| I would love to have applications that are more tools than
| products and weave together these APIs and middlewares, both
| in querying and visualising, combining, enriching, analysing,
| filtering etc. data and also taking the output and actioning
| it.
|
| With the amount of data and services that are now available
| online we should have superhuman capabilities but the
| productisation of the internet has left us stuck in company
| run silos fighting "user journeys", undocumented APIs and
| EULAs.
| sdeframond wrote:
| Do you know Woob ? https://woob.tech/
| crtasm wrote:
| Looks excellent.
|
| "pip3 install woob" succeeds but e.g. "woob config-qt"
| returns "not a woob command". Are the -qt versions not
| available via pip? I have python3-pyqt5 installed.
| kerneis wrote:
| Qt applications are maintained and packaged separately:
|
| pip install woob-qt
|
| https://gitlab.com/woob/woob-qt/-/blob/master/INSTALL
| crtasm wrote:
| Thanks, I'll suggest they add that to
| https://woob.tech/install
| [deleted]
| barnabee wrote:
| Thanks! This looks really cool
| xwolfi wrote:
| Ahah looking at the logos triggered my frenchness, this
| things is from the motherland.
| Fnoord wrote:
| This is nice, and feature rich. Its available in Homebrew,
| where I was able to try it out (if I ran Nix I'd been able to
| use nix-shell for such). However, its France and French
| oriented. Not the world-wide interface I expected it to be.
| Bands for example, only contains a metal database. Recipes, 5
| out of 6 entries is French. Travel, I don't see German or
| Dutch or UK or Belgian public transport.
| rakoo wrote:
| So they finally gave in to the complaints about the name (htt
| ps://lists.symlink.me/pipermail/weboob/2021-February/0016...)
| . woob is excellent but unfortunately its very existence
| means there is a problem. Hopefully they will gain visibility
| and problematic services will adopt standard protocols
| iqanq wrote:
| igammarays wrote:
| Holy s*t this is amazing! A set of web-scraper automations!
| danpetrov wrote:
| Wow that is really cool!
| folex wrote:
| such APIs could be running on https://fluence.network with an
| interoperability and composition across different services
| PragmaticPulp wrote:
| > Perhaps companies and projects would not often use these
| directly because of the risks
|
| If you provide a solution to someone's problem, it will be used
| all over the place.
|
| The biggest companies won't use these things, but plenty of
| smaller companies and individual programmers without oversight
| would use them without a second thought, at least until they're
| caught.
|
| Telegram is a relatively large business and here they are
| abusing an API exactly like you suggest.
| alpineidyll3 wrote:
| Bahhh do you want to get captchas? THIS IS HOW YOU GET
| CAPTCHAS!!!
| gregoriol wrote:
| Nobody pays for using Telegram, so why would Telegram pay for
| using... oh...
| morelish wrote:
| Quite a lot of libraries exist to do this. But doing this in an
| app with a large user base looks offensive. Solution would be for
| some decent open source translation APIs to appear.
| whimsicalism wrote:
| There are plenty of open source, decent translation APIs, the
| catch being that obviously nobody is going to pay for your
| translation compute.
| jlelse wrote:
| On iOS Telegram uses a system API, but on Android they seem to
| try to avoid the high Google Cloud fees:
| https://jlelse.blog/posts/telegram-translation
| Gigachad wrote:
| Is iOS using that local translation app added in iOS 14?
| marcellus23 wrote:
| Looks like it, but it's still an undocumented private API
| they're using.
| malf wrote:
| Is this an option for encrypted chats as well? Is there a warning
| that the content gets sent to Google?
| aquatica wrote:
| Yes.
|
| https://imgur.com/a/7UIFLxT
| cj wrote:
| As a small company who spends $70-80k per year on Google's
| official Translate API, it's disappointing if Google allows this
| type of abuse to continue.
|
| If they don't want to pay, they should be using a free open
| source alternative like
| https://github.com/LibreTranslate/LibreTranslate
| charcircuit wrote:
| Not everyone can afford to use these APIs or are able to get
| permission to use the external APIs. The internal APIs are very
| good for people who don't mind taking the risk of using a
| potentially unstable API.
| HatchedLake721 wrote:
| Then don't run a business with services you can't afford?
| charcircuit wrote:
| But using internal APIs are free. I can afford to use them
| since I don't mind having to update my usage of them / work
| around rate limiting.
| IX-103 wrote:
| Do you also only eat free samples from the grocery store?
| jokethrowaway wrote:
| Those are usually rate limited.
|
| I'd recommend pizza and beer at tech events instead
| (albeit the nutritional content of your diet could be
| more important than free food).
| Const-me wrote:
| Which part of https://translate.google.com/ web page says
| the service provided by the page is a free sample of
| commercially available API?
| yjftsjthsd-h wrote:
| The ToS, I expect
| Const-me wrote:
| I've looked for 5 minutes there, and found nothing
| relevant. They don't even have additional specific TOS
| for their translate service, the only link from
| https://policies.google.com/terms/service-specific?hl=en-
| US under "Translate" section points back to their common
| TOS at https://policies.google.com/terms?hl=en-US
|
| Even if they would have TOS for translate, pretty sure
| that's unenforceable. Not unless hiding that page behind
| a paywall, or requiring a google account. Merely visiting
| a publicly available web page doesn't create contractual
| relationship between end user and web server owner.
| dandiep wrote:
| I've spent some time looking into this and found very
| little. The closest I could get is that if you are a
| Google Cloud customer, it forbids you from reverse
| engineering other Google APIs that are not documented as
| supported, which would probably include this use case. No
| idea if they're a Google Cloud customer though.
| Const-me wrote:
| > No idea if they're a Google Cloud customer though.
|
| Even if they are, I have doubts that's enforceable
| either. One doesn't need to reverse engineer an API to
| consume that API, and it's hard to find out who did the
| reverse engineering. The reverse engineering might be
| accomplished by someone else who's not a Google's Cloud
| customer, like an unrelated person answering a question
| on stackoverflow.com.
| alisonkisk wrote:
| alisonkisk wrote:
| kukabynd wrote:
| Definitely would love to learn more about your use case.
| Recently I started to use DeepL and it's great if the language
| selection is enough for you.
| johnisgood wrote:
| Personally I have found DeepL to be more accurate in the
| languages they support than Google Translate. They used to
| support much less, but for the languages it did, it was
| pretty great. It supports way more now though!
| billygoat wrote:
| Still no Turkish on DeepL, even though it is one of the
| most widely spoken languages across much of Europe and uses
| the Latin alphabet.
|
| Yet tiny European languages like Latvian are supported, as
| are very difficult translation targets such as Estonian and
| Hungarian.
|
| My hopes are dashed every time they add another tiny
| European language and Turkish remains off the table. :-(
| johnisgood wrote:
| I am unsure if the support for those languages are better
| vs. Google Translate, but the small set of languages it
| used to support a year ago or something is definitely
| better. I remember French and Spanish being way better.
| DeepL's Polish is not that great, that I can say for
| certain! Not sure if better than Google Translate's
| though.
| Xorlev wrote:
| Qualitatively better, or quantitatively? If the latter,
| do you have some metrics you can share?
| commandnotfound wrote:
| Contrary to Turkish, Estonian, Latvian and Hungarian are
| all EU official languages. That means that all EU
| legislation is legally required to be translated to these
| languages and it is readily available in all these
| languages for free to train the AI model for translating
| to those languages.
| grandpoobah wrote:
| Crabs in a bucket.
| iqanq wrote:
| >As a small company who spends $70-80k per year on Google's
| official Translate API, it's disappointing if Google allows
| this type of abuse to continue.
|
| You mean that you are disappointed that you did not come up
| with this on your own...
|
| Also, calling this "abuse" is some sort of charged language...
| Like the word "piracy"
| cj wrote:
| > You mean that you are disappointed that you did not come up
| with this on your own
|
| I've been aware of this loophole for years, it's nothing new
| and is widely known.
|
| I just chose to build our business using legitimate above-
| board APIs and services, as should Telegram.
| jokethrowaway wrote:
| If it's public and available and Telegram didn't sign a
| contract or EULA which forbids using this endpoint, it's
| legitimate.
|
| The cons is that Google can break the endpoint at any time.
|
| That said, I wrote a similar hack for a Wordpress plugin 10
| years ago which automatically generated articles in
| multiple languages (think SEO farming).
|
| I just looked at what their frontend app was calling and
| used it.
|
| I run a business which needs to run programmatically
| searches on different search engines and using official
| APIs is out of the question. I didn't even check what their
| API offering is.
|
| The only search engine that seriously try to prevents
| scraper is Yandex which asks for a lot of captchas but I've
| built a system to allow humans to just process captchas and
| give back to the code the result.
| serioussecurity wrote:
| This definitely violates the terms of service, if that's
| what you're asking.
| iqanq wrote:
| They never agreed to the ToS, so they can't have violated
| them.
| digitaLandscape wrote:
| fault1 wrote:
| It does seem to violate the Google Play ToS in terms of
| applications not using unauthorized 3rd party resources.
|
| Google will most likely just fingerprint these calls and
| block them serverside, I'm guessing.
| kedmi wrote:
| It's smart.
|
| It allows Telegram users to hide in plain-sight, within the noise
| of other Google Translate web users.
|
| I'm pretty sure that using the official pre-built java SDK, as
| suggested by the author, would allow Google to cluster the
| content of Telegram users (since app-specific id/token should be
| sent).
|
| Other than that, a great read and kudos to the author for
| shedding light on it.
|
| Edit: typo.
| AndriyKunitsyn wrote:
| Shell game street fraud (with cups and balls) is also "smart"
| in some way, but it's not really the right thing to do.
| hdjjhhvvhga wrote:
| > It's smart.
|
| On the contrary - it's the most stupid thing to do. The only
| result will be their users wondering soon why this function is
| broken.
| dejj wrote:
| If Telegram or Google users would pay for services, they
| wouldn't treat them like the product being sold.
| michaelmcmillan wrote:
| A rotated user agent does not hide anything from Google.
| giomasce wrote:
| It doesn't look very well hidden if there are blog posts about
| it...
| OJFord wrote:
| The users are hiding among all the web traffic to
| translate.google.tld; not that that Telegram's doing this is
| top secret undiscoverable magic sauce. It's open source
| (GPL2): https://github.com/DrKLO/Telegram/blob/9e740dfd4d2b1a
| b6b8ed2...
| xg15 wrote:
| I think Google can still cluster Telegram users pretty easily,
| especially now that that the method is in the open.
|
| Yes, Telegram fakes the user-agent, but the rest of the request
| still looks very different from a request an actual browser
| would do. (No referrer, missing headers, different connection
| pooling behaviour, possibly different TLS and HTTP2 behaviour,
| etc).
|
| So if Google is doing any detection for browser vs non-browser
| requests, those requests should show up as suspicious.
| nothasan wrote:
| If they used cronet, they could get past these checks.
| [deleted]
| rossmohax wrote:
| Telegram should have disclosed that every time someone uses this
| feature, their IP address is leaked to Google.
| bencollier49 wrote:
| Ooooh, GDPR?
| Nextgrid wrote:
| Do you really expect _Telegram_ to get the GDPR hammer when
| Google and Facebook are still around and do orders of
| magnitude worse?
| [deleted]
| Krasnol wrote:
| I doubt users of Telegram care much or they wouldn't use
| Telegram in the first place.
| Gigachad wrote:
| Telegram includes google services baked in to the app for
| things like maps.
| ju-st wrote:
| There is a Telegram-FOSS fork with most Google services
| removed but the translation feature is not removed (yet?) in
| the code.
| fault1 wrote:
| I think they already do: https://imgur.com/a/7UIFLxT
|
| Well, the plain text, not the IP, but that should be implicit
| with how web services work.
| themacguffinman wrote:
| I wouldn't say it's obvious to either laymen or technical
| users, some apps will proxy a web service for the exact
| reason of hiding user info.
| Anunayj wrote:
| also the content of the translated message is leaked in plain
| text too?
| whimsicalism wrote:
| That is disclosed
| aenis wrote:
| This can't work for long. Translate is a profit center for
| google, and this also shows others that they can disregard
| google's monetization model for translate.
|
| Commercial use of those APIs is common, despite translate being
| pretty expensive. Also, GCP current leadership is so hell bent on
| nickel-and-diming their customers, and their compensation
| packages are so dependent on value share growth, that they simply
| can't afford anyone openly violating their pricing models.
| Especially a popular app. My guess is this will be down within
| the first week of January.
| hdjjhhvvhga wrote:
| I'm curious what techniques they will use to differentiate
| between Telegram and non-Telegram users. If I were them, I'd
| simply use my power leverage and threaten them to remove the
| app from the Play store unless they remove/fix the offending
| code - it's much simpler than an eternal mouse-and-cat game,
| with possible collateral damage.
| [deleted]
| izacus wrote:
| > I'm curious what techniques they will use to differentiate
| between Telegram and non-Telegram users.
|
| A cease-and-desist letter from Google legal tends to work
| pretty well as a technique in these cases.
| Nextgrid wrote:
| I'm pretty sure Telegram is outside of US jurisdiction and
| can trivially respond with a middle finger.
|
| Google's only real option here is to either engage in cat &
| mouse trying to block this usage or threaten a Play Store
| removal which comes with its own drawbacks (Telegram has
| significant marketshare).
| michaelt wrote:
| Given that Google runs ReCapcha - which is almost certainly
| the world's most widely used browser fingerprinting system -
| they have ample experience with is-it-a-real-browser cat and
| mouse games.
| iqanq wrote:
| In fact if you use this API constantly, you are presented
| with a recaptcha.
| rfoo wrote:
| In this case, Telegram may just display the captcha and
| let the user solve it.
|
| That's likely also why Telegram doesn't proxy every
| translation request over their server: so that it is
| users individually requesting small number of
| translations, from their phone, getting around quota of
| free APIs "naturally".
| aenis wrote:
| I think they will look for a legal solution. I doubt they
| will change the API; my guess it it exists to support some
| other services google sells -- and adding heuristics to
| detect freeloaders may impact legitimate customers. Nope,
| they will get a cease and desist letter, and if they happen
| to use any other GCP services, or rely on Google to do
| business, this will likely be pretty persuasive.
| hetspookjee wrote:
| Ah, you're suggesting Google uses its position on the Play
| Store to fend of abusers of an unrelated service, that
| happens to be owned by Google as well? I don't think that
| will work in Google's favor when they try to defend any anti-
| trust cases slung their way, or being active right now.
| Google has many other subtle ways that garner less attention
| to ward of any misuses. Subtly downrank in the search index,
| throttle any traffic heading their way, suggest other
| applications in the play store on top, accidentelly flag
| Telegram as a "risky" platform, etc.
| simias wrote:
| I see what you mean but surely there must be precedents of
| apps being pulled from the Play Store because they abused
| 3rd party APIs, be it Google's or somebody else's?
|
| I mean why even bother obfuscating the URL otherwise,
| surely the expected that it could be caught in the review
| process.
| not1ofU wrote:
| stop giving them ideas.
| hetspookjee wrote:
| I don't think you're serious as most of these ideas
| aren't that novel / intricate, but in general I'd rather
| publicise these ideas so they're general knowledge and
| everything would be aware of the absurd amount of power
| Google levies.
| not1ofU wrote:
| ;-) Happy New year!
| hetspookjee wrote:
| You too =D
| hdjjhhvvhga wrote:
| Well, Apple has no qualms about it[0] so why should Google?
|
| [0] https://dcurt.is/apple-card-can-disable-your-icloud-
| account
| taubek wrote:
| I see few possible issues: 1) If this is some kind of hack to
| reduce the cost this means that Google can pull the plug to this
| at any given time 2) How many users are aware that this means
| that the content is sent to Google? Yes, there is a warning on
| the screen where you turn one the option but will the users see
| it?
| [deleted]
| mdasen wrote:
| "It's a bold strategy, Cotton. Let's see if it pays off for 'em"
|
| Deciding to use the Google Translate API in a way that bypasses
| Google's API-key system seems like a dangerous game. Google
| controls your access to the Android platform+ and now that this
| blog post has been published, it seems like Google could remove
| the app from the Play Store for unauthorized access of Google
| services.
|
| If they'd found a way to use an API from some third party, maybe
| that third party would try and shut it down or whatnot. In this
| case, it feels like they're poking the bear - especially given
| how much traffic they might throw at it. At some point, Google
| might get annoyed that an API that they charge a lot of money for
| is being used for free and somewhat legitimately remove Telegram
| from the Play Store. Google can pretty legitimately claim that
| the Telegram app was accessing Google's servers in an
| unauthorized way and that they went through steps to obfuscate
| their access which shows that they knew what they were doing was
| wrong and tried to hide it.
|
| This seems like a bold move. Google might simply shrug and not
| care. Google might decide that they'll remove Telegram from the
| Play Store permanently. Google might decide they'll only allow
| Telegram in the Play Store if it doesn't have translation
| features. If Google removes Telegram from the Play Store, that's
| basically the end of Telegram. As people bought new phones, the
| number of people reachable on Telegram would dwindle++. As the
| app no longer could receive updates, eventually it would become
| old and stale. They'd have to start moving to another platform
| whether WhatsApp or Signal or Matrix.
|
| +sure, other stores and side-loading exist on Android, but Google
| does control access for the vast majority of Android users (at
| least in the US/Europe).
|
| ++yes, maybe one can transfer apps and side-loading does exist,
| but the number of users would dwindle
| fault1 wrote:
| Personally, I think Telegram has enough reach that
| removing/blocking it would get a lot of unwanted political
| attention against Google - I mean, a lot of politicians and
| decision makers seem to use Telegram depending on the country.
| So I don't think they would do that.
|
| I think they will just figure out how to break this feature.
| Nextgrid wrote:
| Telegram is also popular within the crypto circles and those
| are a lucrative target for advertisers which Google's
| business relies on. Banning it from Android may shrink that
| market.
| arihant wrote:
| My guess would be (given the size of that array) that this is
| done to prevent rate limits rather than cost. It could be that
| this was advised by Google themselves because they could not
| provision the correct rate limits due to end of year. It's hard
| to imagine a client of this size isn't in direct contact with
| Google Cloud engineers. Pretty sure they're paying for it too.
| Also, this may have been done just for the open source commit of
| the project to prevent leaking token? Can't jump to conclusions
| here.
|
| Google does the same thing in Google Pay Indian version.
| Government mandated that no one app can have more than 25%
| transaction volume of the country for UPI. So Google partnered
| with 4 banks, essentially having 4 UPI apps in the eyes of
| government.
| chagaif wrote:
| This sounds very reasonable and it's the only comment I found
| in a see of people talking about how Telegram is doing this
| illegally. Would be curious to see how this turns out.
| green-eclipse wrote:
| I think you're looking at this all wrong. If Telegram did this
| officially with Google, would they have had to craft this
| klunky workaround for breaking up RPC strings and randomizing
| the user agent? I don't think so.
|
| Also the Google Pay analogy seems off. Telegram backdooring
| free access to Google Translate is not at all the same as
| Google partnering with 4 banks for transaction processing. One
| is totally unofficial, the other is an actual partnership.
| arihant wrote:
| Yes the string split is a very odd. I agree with you there.
| Very confused that Google can't catch this. It's adding to
| the same string it should look same in the heap anyway?
| Simple college plagiarism programs like MOSS will catch this.
|
| For Google Pay, what Google is doing is actually not legal.
| Government wanted each third party (non bank) app to be
| restricted to 25%. Google will get in trouble when government
| actually starts cracking down (and when they get close to the
| 25% mark). We don't know how government is looking at them,
| because they're under threshold anyway. The legal way for
| GPay to handle over 25% of total transactions is to register
| at least as a Payment Bank.
| polote wrote:
| Is there any proof in this post that Telegram actually circumvent
| Google Translate API ? Because it is also possible that Google
| told Telegram to use the method explained in the article.
| user-the-name wrote:
| That is not how Google works.
| aenis wrote:
| Yup. And those guys will get bonus points for actively
| evading detection. IANAL, but its one thing to use an open
| api and claim ignorance, and quite another to intentionally
| defeat access restrictions/rate limits. Stupid thing to do.
| jmnicolas wrote:
| Why would they concatenate the API url string then? The only
| reason I see is to avoid detection when their app is scanned
| when submitted to the PlayStore.
| emilfihlman wrote:
| These comments are funny.
|
| Here's a thought for you, though:
|
| Telegram can be used just fine without Google Play Store. If
| Google blocks this new and cool feature and people like this
| feature, it only serves to push people into skipping the
| playstore completely because people are invested in their
| messaging applications.
|
| Now, normalising downloading and installing applications from
| outside the Play Store is a big red flag to Google.
|
| This is possibly the most genious and awesome thing Telegram has
| done, and imho an excellent play. Either TG gets cool new
| features easily, or people get freedom and still get cool new
| features.
|
| I'm very interested in how this is going to play out!
| skzv wrote:
| Telegram already encourages downloading the APK directly:
| https://telegram.org/android
| ape4 wrote:
| There are bound to be duplicate phrases for translation over all
| the many Telegram users. Why not cache to avoid API calls. How
| many times do you have to use the API to translate "OK" or other
| commonly used words.
| leodriesch wrote:
| I don't understand the way this was implemented.
|
| They are bound to get in trouble with Google for this, but they
| can't easily pull the feature. They can't just be like ,,oh
| you've had translate for two weeks now, but now we can't pay for
| it, so it's gone."
|
| What is the long term thinking behind this? Or is this just
| developers and management not communicating?
| PragmaticPulp wrote:
| This seems like one of those features that leadership demanded
| with a "just make it happen" decree and no budget for API
| calls.
|
| Then some developers facing a deadline cobbled together
| something that "just made it happen" so they could kick the can
| down the road with something that worked, ideally long enough
| to collect their bonuses and find a new job so it becomes
| someone else's problem.
|
| Or maybe Telegram the company just likes to abuse other
| people's things and see how long they can get away with bad
| behavior. Who knows.
| MomoXenosaga wrote:
| Telegram problem is that unlike WhatsApp they don't have a
| billion dollar corporation backing them. I wouldn't be
| surprised if they were bleeding money.
| whimsicalism wrote:
| Don't really think telegram works this way, you are imagining
| it like a Big N
| simias wrote:
| Yeah I'm a bit shocked honestly that it made it into an
| application as widely used as Telegram. It's bound to be
| detected eventually and the feature will suddenly break. Such a
| strange software engineering decision.
|
| They can't even plausibly pretend that they didn't know and
| it's all a big misunderstanding given the lengths they went to
| obfuscate it in the code.
| zenexer wrote:
| "Google cut us off--they're the bad guys, not us. Blame them."
|
| ...but with more elegant phrasing.
| sgjohnson wrote:
| s/elegant phrasing/corporate doublespeak
|
| blah blah blah on 31st of February 1970 Google unanimously
| decided to terminate our access to their Translate API blah
| blah blah blah
| skinkestek wrote:
| This is Telegram. They are actually known for elegant
| phrasing, not corporate doublespeak.
| zenexer wrote:
| Telegram knows how to play the PR game. It's going to be a
| bit more elegant than that, with a "we will rise from the
| ashes" tone. They know what they're doing, and I doubt they
| had any intention of getting away with this.
| ComodoHacker wrote:
| > They are bound to get in trouble with Google for this
|
| From first look, I don't think they are. Telegram gets a new
| feature, Google gets more data to mine. It's a win-win. I just
| hope they'll be clear with their users about sending data to
| Google.
| ozten wrote:
| This is an interesting data point for folks designing demo pages.
| The API was discovered by playing with the demo page [1]
| according to a link from a link in the article
|
| [1] https://weblog.west-
| wind.com/posts/2011/aug/06/translating-w...
| 01acheru wrote:
| I used something like this years past for image resizing, the URL
| was: https://images1-focus-
| opensocial.googleusercontent.com/gadge...
|
| It is now blocked, always responds 403, maybe tweaking some
| request parameters can make it work again.
|
| Edit: if you want to try it out the parameters I used were:
|
| - container: focus (there are other values I cannot find anymore)
|
| - url: urlencoded URL of the image to be resized
|
| - resize_w: width in px
|
| - resize_h: height in px
| tyingq wrote:
| It still works, just not with a direct url. It's checking that
| there's a referrer, I think. So that it only works if the image
| is in a web page:
|
| https://jsfiddle.net/depxb0gn/2/
| iwillnot wrote:
| On-device translations is quiet feasible, and there are ways to
| legally do this, such as this app [1] which translates other apps
| using Google's On-device (and officially free!) APIs. Surprising
| Telegram chose such a route instead.
|
| Edit - I tried it out, and the quality of on-device translations
| is pretty garbage. Really garbage.
|
| [1] https://github.com/akhilkedia/AllTrans
| [deleted]
| bratwurst3000 wrote:
| Someone else thinks that telegramm is only a coverup by the cia
| or russians to get data from people? I mean an app that tracks
| the living shit out of you and saves all your data unencrypted on
| their server and is the host of some rly strange groups.... Pure
| gold for such agencies
| Namidairo wrote:
| I remember seeing the aforementioned API endpoint being used a
| while ago for some automatic chat translation.
|
| From what I remember, there was some minor rate-limiting that I
| hit once or twice while using it, which complicated things a
| little.
| homami wrote:
| Off topic, but this is a code smell for me: [(int)
| Math.round(Math.random() * (userAgents.length - 1))]); This leads
| to a lower probability of selecting the 0th and the last items in
| the array.
| namdnay wrote:
| It should be floor right?
| Math.floor(Math.random()*userAgents.length)
| lern_too_spel wrote:
| There's a built-in method for randomly selecting an int in a
| range. Use that.
| csears wrote:
| Are you thinking of the Lodash random() function? Or
| Crypto.getRandomValues()?
| lern_too_spel wrote:
| https://docs.oracle.com/javase/8/docs/api/java/util/Rando
| m.h...
| homami wrote:
| Yeah.
|
| > The java.lang.Math.random() method returns a pseudorandom
| double type number greater than or equal to 0.0 and less than
| 1.0.
| Jerrrry wrote:
| When a dev gets a requirement and no red tape is involved.
| Markoff wrote:
| why even bother with any API, just implement it on client side as
| regular browser with regular google translate request through URL
| like
| https://translate.google.com/?sl=auto&tl=en&text=hello%20wor...
| oefrha wrote:
| This reminds me of my own usage of Google Translate's speech
| synthesis API in a chat bot way back. It was as easy as sending a
| GET request to https://translate.google.com/translate_tts. People
| loved it.
|
| Of course, my use case was neither commercial nor large scale.
| bencollier49 wrote:
| Using undocumented API features in a commercial product seems a
| bit fly-by-night to me - doesn't convey the best impression of
| the company.
| aenis wrote:
| Yeah, and doing this client side, and with the code open
| sourced? "Achievement unlocked".
___________________________________________________________________
(page generated 2021-12-31 23:00 UTC) |