[HN Gopher] How Telegram Messenger circumvents Google Translate'...
___________________________________________________________________
 
How Telegram Messenger circumvents Google Translate's API
 
Author : decrypt
Score  : 319 points
Date   : 2021-12-31 10:35 UTC (12 hours ago)
 
web link (danpetrov.xyz)
w3m dump (danpetrov.xyz)
 
| 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)