The details of the new guest experience for Riot are on the project plan: vector-im/riot-meta#59
To make starting to use Riot as painless and as rewarding as possible, we want people to be able to experience full access after only having chosen their username.
This risks exposing the platform to abuse - to avoid this, we (reluctantly) want to deploy a CAPTCHA. The right CAPTCHA is a balance between accessibility, privacy, effectiveness, UX, reliability, aesthetics and price.
The scope of this task is to evaluate the CAPTCHA options and recommend the most appropriate technical solution.
I've reviewed some of the options already here: https://docs.google.com/spreadsheets/d/1wD_8TF_k3BYMGhN6YQtPvfC8gxVi0RNOx1fF24RJb20 (screenshot below)
The two frontrunners so far are:
i'll close https://github.com/vector-im/riot-web/issues/2759 as a dup of this one
phpcaptcha looks cosmetically rather terrible, but visualcaptcha looks promising?
I would definitely vote for option #2, visualcaptcha.net. Typical wiggly
word CAPTCHAs have been crackable for almost a decade; but image based
CAPTCHAs are considered safer.
http://gracelandtower.com/2014/05/10/is-captcha-obsolete/
Also, I agree -- it looks better.
VisualCaptcha certainly looks a whole lot better, and you're right is probably less vulnerable to off-the-shelf CAPTCHA crackers. I'd like to see a much larger image set (though that is something we can supply ourselves).
We could implement something along the lines of this (immediately after the user's having chosen their desired mxid):
@lampholder let's keep this discussion limited to the capcha itself.
https://github.com/emotionLoop/visualCaptcha
Please note visualCaptcha is no longer actively developed :(
This may not necessarily be a showstopper if it works, but means we'd probably have to either maintain it ourselves or hope "the community" (ie. someone else) does
What is the point of adding captchas to Riot though? If they are not enforced by the Matrix protocol, it won't prevent spam and be an annoyance for the users.
I believe the point is they would be enforced by the homeserver, so you can protect your homeserver against becoming a bot-dominated spam/abuse machine.
Apparently https://github.com/isislovecruft/gimp-captcha is quite nice, according to Tor folks, but looks like it depends on gimp(!) :(
apparently "whatever diaspora does" is good
It seems to just use a "dumb" old squiggly text Captcha
Since google is blocked from my entire network, I cannot even complete the sign up for Riot due to the reliance on google. I vote for anything other than google.
It's not really a riot thing, it's the server you're choosing to attempt to sign up on requiring it as part of sign up. Most public servers do
@t3chguy This may be the case, but the matrix.org server is using Google Captcha. And people on Matrix HQ chat directed me to this ticket to voice my objection. In my view. google is using captcha to train their image AI.
This ticket isn't for voicing objections to recaptcha. We already know that people don't like recaptcha. This ticket is for proposing alternatives and evaluating them.
As per Matrix HQ: I think this ticket is at the status of gathering options to replace the captcha offered by matrix.org. This is a priority 1 issue and is therefore on the hot path for being dealt with.
Edit: It would be really great if github showed replies before I posted my comment
I see I don't have to argue my case against google recaptcha. All Google services are a no-go and the present implementation on riot.im is buggy when JS is managed per-site.
Please use any of the discussed alternatives interim but stop using google recaptcha now. I tried to get matrix a top spot on privacy-conscious recommendation lists but that's not possible as long as google services are used.
Google recaptcha is a huge privacy hole that deserves more attention imo.
Back in 2014, a reverse engineering attempt showed what it is capable of:
Google servers will receive and process, at least, the following information: Plug-ins; User-agent; Screen resolution; Execution time, timezone; Number of click/keyboard/touch actions (in the
This was 4 years ago, imagine where the tech is now.
For cryptocurrency communities that begin to appreciate Matrix and are apparently endorsed by it, this means all Riot users (potentially asset holders) are fingerprinted by Google.
Perhaps this issue deserves a 'privacy' label.
this means all Riot users (potentially asset holders) are fingerprinted by Google.
Not all homeservers employ recaptcha so this is not true, its up to the server if it wants to use it or not, they can technically provide other captcha solutions via fallback auth and it'll work just fine with riot.
they can technically provide other captcha solutions via fallback auth
Can you please go more in detail about this?
I would like to use matrix/riot.
But i do not want to become a spam machine.
Google is also blocked on my network and i would never force someone to use reCaptcha, just to be able to register. More bad, when i think on GDPR, this would highly hit my private server (in terms of privacy) as i then have to follow a lot of rules (adding an imprint, etc.)
@damnms https://matrix.org/docs/spec/client_server/r0.4.0.html#fallback
A server can provide an unknown auth method and then fallback will be used where the client just shows a HTML iframe which could contain any other captcha you so wish for.
So i have to code it myself in matrix that another captcha provider is used? Means, this ticket should go to matrix instead of riot?
Then, why not close this ticket and redirect it to matrix? :)
I see I don't have to argue my case against google recaptcha. All Google services are a no-go and the present implementation on riot.im is buggy when JS is managed per-site.
Please use any of the discussed alternatives interim but stop using google recaptcha now. I tried to get matrix a top spot on privacy-conscious recommendation lists but that's not possible as long as google services are used.
If you make any progress, please let me know. I would love to use matrix/riot, but reCAPTCHA is a absolute no go (which would result in legal problems regarding GDPR, an imprint on my private homepage which i do not want, etc.)
When the project will drop the non-free recaptcha?, it uses non-free java script, and it track users
People seem to have overlooked a single click captcha that looks and works similar to recaptcha, yet is self hosted.
Is it possible to consider the use of alternative captcha systems equal in design to Google Recaptcha, such as Coinhive? It would allow such JavaScript to be self hosted, uses proof of work to make spam expensive, and causes attackers to earn the website some money. This would at least be acceptable in the case of cryptocurrency communities already. If coinhive is blocked by adblock systems (sometimes people get even more angry about mining than ads), then users could get to use google recaptcha as a fallback. :^)
https://coinhive.com/documentation/captcha
EDIT: I mean you can just run your own matrix identity server in lieu of using matrix.org that uses any different captcha in an iframe as stated by this issue comment. Identities are federated so you can connect to matrix.org without ever encountering their recaptcha ever.
FYI to any new readers: For those with privacy concerns regarding ReCaptcha (it is designed explicitly to make captchas faster by using AI browser profiling that carries over in their proprietary database and algorithms, so it is a legitimate concern),
You could self host your own homeserver and identity provider that uses your own captcha solution (such as Coinhive in an iframe) as stated in this issue), and then federate to matrix.org or other homeserver channels without ever using Google Recaptcha. After you have some matrix identity you can then use riot.im web client without encountering any fonts.google.com library imports or google javascript, or just use any other matrix client, as stated in my basic independent audit.
that uses your own captcha solution
I am no developer. I can configure some applications, but i am not going to develop something, as this would lack my skill. And i guess that is the main reason why some people complain.
If i would be able to simply hack that myself in a couple of days, and to exactly know what i do (especially in security), then i would do it. But i can't.
So as long as there is no "simple" guide which leads through that process, this does not help me. Simple for me means: i do not have to code.
I have a homeserver, but i do not want to host also an identity provider.
Is a self hosted identity provider required to be able to use another captcha provider?
Is a self hosted identity provider required to be able to use another captcha provider?
Technically, what I meant that you need to use an identity provider other than matrix.org to avoid it's current configuration with Google ReCaptcha.
You know if you managed to make your own home server it is a system configuration matter to enable the identity provider, not a code developer matter, so read over the docs and try again? I did not even know it was possible to configure it without an identity provider from past experience. And yes if you are looking out for privacy by self hosting you should go to the trouble. Why trust others to know, host, and attest to your identity when your homeserver can do it by itself?
But yes, for the general public you could just find any other matrix identity provider online that uses some other captcha or verification system, and still chat to matrix.org channels and use any matrix or riot.im client just fine with federation (just specify the different identity provider URL). I haven't been able to test all the different identity servers for this but there must be one that doesn't. (Though it probably may be getting quite a bit of spam accounts if they aren't having some effective captcha mechanism)
https://www.hello-matrix.net/public_servers.php
Maybe as a future feature request matrix.org could switch to allowing users to make a choice between the type of captcha, such as coinhive. But that's an implementation thing up to them and will take time to figure out. I would say you shouldn't swear off the entire matrix ecosystem when you can either join a non-recaptcha identity provider or run your own.
Are you sure that the IDENTITY server is responsible for this? I highly doubt so. As far as i know, it is the matrix server itself who is responsible for the fallback. The identity server only handles the mapping (3PIDs) which is optional if you do not want to federate with matrix.org servers.
I am not interested in federation (at the moment). I just want a "secure" platform for me and some friends to chat.
@damnms is correct: In Matrix terminology, the "identity server" is not involved here. (A Matrix identity server is basically just a mapping of things like emails to Matrix IDs.)
The Matrix homeserver is the one that defines the available registration flows for creating an account, and therefore the homeserver is also what determines if you see a captcha or not.
@damnms: well I may be corrected there but you already have the answer you just disable your captcha and set a whitelist of users and then you have all that you need to chat internally or federate with the rest of the matrix ecosystem. So you successfully avoided Google Recaptcha at matrix.org by self hosting.
If you want to spam, then please do this somewhere else. The topic is: evaluate captcha options.
Not: evaluate workarounds for some people.
For me, it is NO option to turn off protection. Period.
It is NO option for me, to whitelist people, do the registration for them on my server, etc. - this would be a very very ugly workaround. But far away from a solution.
Also: if anyone of them has the need to use riot.im or any other matrix client to talk to other federated networks, i am back at the beginning. Even worse, then they maybe drop matrix completly because of lacking features, which i do not want to use because of privacy/law concerns.
ReCAPTCHA is broken: https://github.com/ecthros/uncaptcha2
ReCAPTCHA can lock people out when it's down: https://twitter.com/joepie91/status/1025105028485472256
We are all d'accord that recapta is the worst possible solution. The original topic @lampholder posted was "evaluate the CAPTCHA options and recommend the most appropriate technical solution", so back to topic. Sadly I couldn't read his preliminary research since he hosted it with google :-(
I'd vote for a simple text or math captcha and honeypot. The diaspora solution posted above (probably phpcaptcha?) and 2 checkboxes "I'm a human" (client-side JavaScript) and "I'm not a human" (last one hidden by css as a honeypot) should be enough. Screen readers won't have a problem and Google would be out. I don't expect the servers to be flooded by bots but if this happened, a time-check could additionally be used (fill the form too quickly and you are out).
Visualcaptcha as a last resort but the less invasive method should be tested first.
The Diaspora* solution might not be that good either.
Due to invasion of spam accounts attacking for last weeks, we have decided to temporarily close registration on diaspora. We will use this time to cleanup the user base from all spam accounts and work on performance improvement so needed on diaspora.
I hope the captcha selected won't be Google's as privacy.resistfingerprinting
appears to increase amount of captchas and difficulty and there was another interesting comment on how they punish Chrome users less at https://github.com/ghacksuserjs/ghacks-user.js/issues/7#issuecomment-466074390.
Edit 2019-04-07 09:13 UTC: the privacy.resistfingerprinting
thing is known on Firefox Bugzilla reCAPTCHA v3 fails with Resist Fingerprinting Enabled
Sadly I couldn't read his preliminary research since he hosted it with google :-(
I have added a screenshot of the Google sheet in the original comment. Hopefully that helps!
OT: i have a static ip. Wherever there is a reCaptcha, i have to feed the google AI as this shit pops up. Either related to my IP or to Chromium (ungoogled, of course).
I'd consider a proof of work based captcha the most reasonable, they can be self-hosted. Ask to start the captcha before the user enters reg info, making it faster to do reg.
I'd actually direct the attention to what happens, when a person creates their own homeserver and spams the matrix? Can it be banned? What if the spam-homeservers are created once every 5 minutes?
https://wehatecaptchas.com/ and https://www.hcaptcha.com/ have also been suggested in some discussions on the issue
Are we discussing this for web _and_ mobile? Seems like it's best to have a unified UX from flow perspective.
The captcha used is not up to the client but the homeserver. Homeservers can already use any html based captcha they want using the fallback auth mechanism written into matrix.
why is this ticket not closed if the client just prints out what the homeserver sends?
this is a problem with matrix-synapse, not with riot/riot-web
imo here is some PITA listed (people which dont want google stuff), but it ends up here, which is wrong. this should go directly to the matrix devs so they can add other, simple to configure, captcha providers. and to see how many people woud love to have such a feature
Because google captcha is tighter integrated, it has explicit support rather than just an iframe, so the final replacement should be also. This repository is quite often also simply a dumping ground of user-facing issues, and here it'll get the most visibility for people to give their opinions.
is this also recognized by the matrix devs? i have my doubts, but maybe i am wrong.
if googles recaptcha is integrated in matrix-synapse, it makes sense to show the matrix-synapse guys that there is something the people are not happy with.
i guess, riot supports google captcha because matrix-synapse supported that from the beginning.
so if matrix-synapse adds another captcha provider, then it would make sense to add this to riot too. but before this, it makes no sense (imo) to discuss what to add to the ui. because no one (without coding skills) can add another provider.
maybe i misunderstood the ticket at all.
does this ticket mean: we are looking for something to replace reCAPTCHA in a central way (like, one company hosts the captcha provider and this is added to the ui) or is it going to be hosted on the server where the homeserver also runs at?
my english is not the best, maybe i just understood everything wrong ;)
So this isn't a Synapse vs Riot thing, this is a thing which should get 1st class support in the Matrix specification, this issue is just where all the conversation lives but the developers of riot and matrix have HUGE overlap so it is globally understood. Here is the existing spec for captcha: https://matrix.org/docs/spec/client_server/r0.5.0#google-recaptcha
Google recaptcha is a brilliant fingerprinting machine.
While you solve the puzzles, it gets all it can get to fingerprint you, using obfuscated and advanced tech https://github.com/neuroradiology/InsideReCaptcha - this report is from 2014. Imagine where it is now.
It is a smart strategy to provide a useful "free" service that everybody begin to depend on, and use it to collect precious user data.
I'm very surprised that Matrix spec explicitly endorses this. What next, Cloudflare?
the matrix.org homeserver and website are actually behind CloudFlare due to previously having many issues with DDoS. I believe CloudFlare is used as the CDN for the Riot desktop downloads too.
Doesn't CF have their own captcha? (though only for accessing pages)
New user, going through the sign up and I'm instantly turned off by the familiar Google tracker captcha. I came to Riot for free software that won't spy on me and I'm already being tracked before I've logged in.
Its up to the homeserver you're registering on/logging in to whether they want to use recaptcha, feel free to find one which doesn't or host your own
No idea what that means, I just want to chat to my contacts. (and not be tracked by Google).
It's not riot requiring the recaptcha, it's the matrix server you're connecting it to, defaults to matrix.org which demands it
I see. How about using a different server as the default? Clearly I'm not the only one having an issue with this based on the length of this thread and the other similar threads here.
I think every major Matrix server has recaptcha on to battle spam accounts
I see. How about using a different server as the default? Clearly I'm not the only one having an issue with this based on the length of this thread and the other similar threads here.
Considering matrix.org is the core org behind Matrix and Riot, I don't see why that shouldn't be the default server. Having it as a current default (Google's ReCaptcha) is intended to thwart bot abuse. I believe it would be good if the default one was not Google hosted, but I do believe the whole intent of this thread was to discuss (and eventually finalise on) alternative options.
but I do believe the whole intent of this thread was to discuss (and eventually finalise on) alternative options.
It is indeed, I'm just trying to disarm this from being a "Riot is shady by using recaptcha" thing
It is indeed, I'm just trying to disarm this from being a "Riot is shady by using recaptcha" thing
I don't think it's shady, I just think it's a poor choice. I rather have spam bot abuse than Google abuse :p What about using a honey trap instead of captcha?
i wrote a little application myself (for my homeserver) as i have no idea about how to change/provide my own captcha - with that i can give friends a pre-shared key and they can register. without google surveillance. but its a PITA when i have to develop an application which handles that for me just because i do not want my friends being spy'ed by google. this thread is now over 2 years old, i guess there wont be much more progress in the next years. feels like, people just ignore the privacy problems that come with google recaptcha.
btw. riot is shady just because of this - at least it is just because of this flagged in f-droid and other open source stores as shady because, for the regular user (when using the public matrix server), it uses recaptcha.
Honeypot is not possible here because keep in mind the Matrix API is properly defined and completely open, so just because riot has a honeypot, doesn't stop anyone from using a bot on the API to get around the honeypot
@damnms Your personal server used by you and your friends won't need captcha at all if you restrict account creation to that small curated group and remove any weird accounts, so you should be good. Did you have a link to that script?
@davidhealey I think if someone volunteered to put links to their non ReCaptcha servers it could help some people out when they drop in this thread and aren't able to make their own identity servers. Of course, this would make them a big target as the few identity servers that don't use it would put themselves at risk, which is probably why no one has stepped up to put their urls here.
Anyway, the reliance on ReCaptcha is a greater problem in all public internet services with account creation too, not just Riot.im. I think that reflects the dawn of the entrenchment of AI algorithms in spam prevention and also with DDoS prevention as seen with the need for a load balancer like Cloudflare or Amazon Cloudfront where moderately sized websites literally cannot survive an attack or large traffic without them filtering out bots. Publicly accessible services are now hooked to these algorithms much like we were hooked to polluting cars or monopolist ISPs. As the AI arms race pushed forward, huge incentives in cracking the basic captchas of the past have paid off and even off the shelf captcha bypass methods keep Google Recaptcha on its toes, demanding it use more invasive data mining. The only effective centralized captcha alternative that I've seen been effective is that puzzle one (GeeTest) as seen in Binance, but it's provided by China and does even more data tracking...
Now those who say they would just face the account creation spam probably has never seen it at full force on even a moderately sized forum. If someone can suggest a decent alternative captcha system I'd like to deploy it, but decent means it needs to stay up to date against ever wealthier attackers (everyone is a target with automated crawling bots).
@damnms I would have suggested a mining captcha myself since these sorts of blockchain solutions are a proven effective decentralized trustless anti-spam prevention measure (as seen in public blockchains themselves!), and a disincentive to the spammer too because more spam demands more hardware for proof of work, while making the provider money too.
Unfortunately, mining captchas seems to be an even more toxic suggestion to users at large than Google ReCaptcha's data collection: It gained a bad reputation with misappropriation of its applications to burn your electricity in coin mining ads, and just makes people get up and protest in furious anger in a way they would never bother to care with data mining. Now any mining scripts are now getting blocked by default in browsers anyway.
@antonizoon no captcha at all is no solution for me, because i do not want to know the password of my friends. Also, i want that friends can invite friends. It is not a script its a rest application which uses, at the moment, the executable to register people by command line, which will be removed in a future release by a rest api call of matrix. it is located here: https://gitlab.com/olze/matrixregistration
to prevent bots, if the preshared key is entered too many times with a failure, that ip address is blocked for some time. quiet easy, but works. it would be, of course, nice to have a pool of preshared keys which could be used to register (like a couponing system), but at the moment i do not have that time, so quick and dirty, one preshared key.
@damnms have you seen https://github.com/zeratax/matrix-registration?
@aaronraimist yes, thats where i took the registration screen from. but i do not like python and i do not want to install so many python libraries on my mail/matrix server, thats why i created my own little project.
Thanks for the explanation @antonizoon!
I wonder if it's time to accept that there's no free stuff and enable crypto-paywalled account creation? But give the user a choice what to pay with, e.g.
[x] pay with crypto (default)
[ ] enter invite token
[ ] pay with your privacy by
(1) executing advanced obfuscated 3rd party code
and sending the data to most powerful AIs in the world
(2) trusting powerful middleman servers
hackint uses a proof-of-work system (Hashcash) for account creation.
PoW ist not a CAPTCHA but it may be enough.
I don't see how crunching coin is an effective means to prove humanity.
Invite tokens are not gonna really work: the attacker can generate many to themselves, and normal users may not be able to generate enough of them.
Proof of work might be plausible. It takes pretty much the same time as normal captchas.
If one really does want to create accounts and spam, they can get through everything, even google's latest captcha. They just pay humans to solve captchas all day. It's all about the 'is it worth it' and cost per account. In my everyday browsing, I prefer to pay them and do other things for a minute.
If you get the proof-of-work in the right balance, it will work.
On the other end you have mobile users (or just old computers, think about "third-world countries"). This is also why paywalling will not work. They don't have the money to get fast things and if you make them wait for 10 minutes, they might as well go to other platforms.
Captchas are a bad problem to have. Currently we have only proof-of-work systems:
In my opinion, the best of the worst is to give a choice of recaptcha or proof-of-work. Since asking for it at the beginning isn't user-friendly, asking at the end would be better.
I would actually recommend adding a small notice somewhere, that "your computer is solving a captcha in the background with cryptopmining" (for example firefox blocks cryptominers, it would give a reason to the notification by firefox and a reason to disable the block). If the ETA on the proof-of-work is lower than 10-15 seconds, just show the progress bar, if not, show the progress bar, with ETA and let users choose, if they want to solve a google one.
Thanks for the writeup!
I should have clarified that by "invite token" I mean one that is generated by server admin and it means "admin is your friend and will pay for your account".
Additionally, regular users could generate invite tokens by paying for them. So if you really want to onboard a friend with no money into your favorite chat ecosystem, buy him an account for $0.5-1. "Pay with your CPU" is an option too.
I didn't like paywalls because of poor UX and privacy issues with credit cards. But now when we have crypto it changed my mind about paywalls. Crypto has its own UX issues but it's not too bad already, and it's getting better every year.
Eventually _someone_ has to pay for each account. Every time we try to get rid of this uncomfortable fact and make them "free", we add complexity and begin to sell privacy.
jtagcat is right, nothing is going to really work for riot.im/matrix.org. But since most homeservers don't even have the spam problem, they can go well without any captcha. An invite token system would be a good addition for those that want to scare away the occasional spammer. I wouldn't mind if that was default.
Just some remarks regarding the other suggestions:
"pay with privacy" looks bad because everybody would think that matrix is somehow abusing your privacy and not google. But I agree that the recaptcha implementation should carry a big privacy warning. That would reflect badly upon riot.im/matrix.org and rightly so.
"pay with crypto" is way off - which normal person even has exotic stuff like that? I don't know a single person that has crypto currency (AFAIK) and I know programmers. Don't even think about the rest of the population.
All kind of other payments heavily depend on the payment methods available to the user. Not an option as long as micropayments are always privacy-invasive and still non-existing in many countries. Why anonymous accounts if you identify the user via payment?
I didn't propose to present it as 'pay with privacy'. Rather something including google and just google.
Also payment (even crypto) will not work. First of all, it's against the 'privacy is for everyone' and such. There's a long list of services, that I could include, but for example look at ProtonMail.
An additional factor is that if people want to pay, they use modular.im.
Matrix.org server will probably never require (or paywall for features) any cash. It paints the picture for the whole platform, when one compares say Facebook Messenger to Matrix.im and Riot.im combo, the first thing is: You already have a Facebook account, you don't pay for it (nevermind privacy for this sentence), that thing there you have to put in effort. Cash from your job effort, brain power for an username, brain power for your password, reading stuff, discovering/learning to use the new platform etc...
If you don't believe me, tag one Matrix.org employee.
I'd like to put in a vote for hCaptcha.
I just tried hCaptcha and while the UX on desktop is pretty alright, the UX for what you need to solve on mobile is very frustrating. To the point where I see users would just walk away from whatever is using hCaptcha.
It's a good idea, from what I'm reading about it, but the UX for mobile needs to be a lot more streamlined. It's pretty good so far, but not good enough for production, IMO.
And I for one think that whatever we use, should be universal between all Riot clients, not just desktop, or any one platform.
I just tried it and it's no worse than reCAPTCHA on mobile I think. The biggest barrier I see is potentially new challenges where everyone is used to reCAPTCHA, but other sites (github included) have started using different captchas recently without much uproar.
I just tried it and it's no worse than reCAPTCHA on mobile I think. The biggest barrier I see is potentially new challenges where everyone is used to reCAPTCHA, but other sites (github included) have started using different captchas recently without much uproar.
The hCAPTCHA I solved on mobile involved creating multiple xy points in 2-D space by dragging a cross hair to make boxes. It would be okay on desktop with a mouse, but to have to do it with touch is really obnoxious. I can't speak for the other "solving" methods it has, but after trying that one, I know it will increase the rate people just don't complete whatever form it is applied to.
here's the gitlab equiv issue: https://gitlab.com/gitlab-org/gitlab-foss/issues/46548
Some useful links:
Having had a think through this:
I think the ideal solution here would be some kind of federation of privacypass brokers who host a privacy-preserving captcha of some kind, letting the result being trusted (assuming the broker is trusted) for use in general on the 'net. But this is scifi, and still requires a good captcha to bootstrap it. So we're back at square one of trying to find a good enough self-hosted captcha which isn't trivially game-able via ML of some kind.
I'd like to put in a vote for hCaptcha.
Please see my answer about hCaptcha (and reCaptcha) bypass here on the Matomo equivalent issue : https://github.com/matomo-org/matomo/issues/13905#issuecomment-608175017
what about reCAPTCHA v3? like, as a not-solvable thing (not proposing it as a solution in this topic, just a comparison?)
reCAPTCHA v3 is also easily bypass by services like anti-captcha
And it has to track user behaviour to be able to give a "score", not sure if it is the best for user privacy.
But the fact is there is no captcha that can't be bypassed (either by anti-captcha or by public libs), so maybe we will have to deal with that and just use the most "user-friendly" (and user privacy complient) captcha...
The API's for hCaptcha are very similar to reCaptcha, it would be nice to see any alternative, this issue has been open for too long imo. :(
Cloudflare went from reCaptcha to hCaptcha and in my daily use, I've been more satisfied with the latter.
So I just had to complete Re-Captcha 17 TIMES(yes I counted). I did it correctly every single time, I am 100% confident I did and no one can tell me otherwise. I have never had to spend this much time doing re-captcha, but why would Riot even be using that is beyond me, it ruins the point of an application like this.
So I just had to complete Re-Captcha 17 TIMES(yes I counted)
I had a lot of odd cases like this where I clicked everything correctly but then it restarts with a red message at the bottom, like there was some error.
One guess is that it keeps wasting your time until it can collect enough data to uniquely fingerprint your device.
The fact that Matrix/Riot help Google collect fingerprinting user data and is even endorsed at the protocol level is pretty sad.
The fact that Matrix/Riot help Google collect fingerprinting user data and is even endorsed at the protocol level is pretty sad.
Agreed. Ideally, a privacy-focused web app should not pull in any off-site resources, but if it's unavoidable, reCAPTCHA (aka Google) in particular is a terrible choice. It undermines privacy and undermines the credibility of the people developing and running the service.
undermines the credibility of the people developing and running the service.
It's been over three years, and counting. This is no accident. They never had credibility, only the appearance of it. We were duped.
Edit: INB4 more excuses and weak justifications, closing discussions on the topic, etc, like EVERY time this comes up.
Edit: "This comment has been marked as disruptive". CALLED IT.
i think they will never "fix" that, so probably its better to search an alternative if you do not want to share your personal information with google. sad but true.
Element does not impose Recaptcha. The recaptcha requirement is from the service you are choosing to register on via Element.
(Why is this issue on Element-Web?)
Because issues for Element are broken out into three different github repos? Could be more efficient if it were in one, but yeah ;)
But it affects matrix clients other than Element too.
@BloodyIron That's not what I was talking about. What I mean is why is this issue here when Element has very little to do with captchas. The captcha is enforced by the server, Element just displays whatever the server tells it to. This issue should be tracked under https://github.com/matrix-org/matrix-doc/issues/1281 or on https://github.com/matrix-org/synapse.
I think it's best to close this and focus on https://github.com/matrix-org/matrix-doc/issues/1281 for further discussion, as any change would need to be reflected in the spec.
Most helpful comment
So I just had to complete Re-Captcha 17 TIMES(yes I counted). I did it correctly every single time, I am 100% confident I did and no one can tell me otherwise. I have never had to spend this much time doing re-captcha, but why would Riot even be using that is beyond me, it ruins the point of an application like this.