Güvenlik kodları kullanılabilirliğin azaltılmasına değer mi?


16

Bir captcha kullanmak ne zaman yararlıdır? Ne zaman gereksiz bir engel? Bir captcha, tembel / deneyimsiz programcı için hızlı bir çözüm mü yoksa spam ve botları önlemenin en iyi yolu mu?



WebMasters.SE yerine bu soru Kullanıcı Deneyimi.SE'ye çok yakışır . Ancak, taşınmayacağım çünkü o site hala beta aşamasında ve soru eski ve cevaplandı.
Adam Lear

Yanıtlar:


7

ReCAPTCHA oldukça güvenli görünüyor ve muhtemelen diğer OCR tabanlı CAPTCHA çözümlerinden daha uzun sürecek. CAPTCHA'lar bir bot veya insan olup olmadığından emin değilseniz, yani ikinci veya üçüncü giriş denemesinden sonra veya anonim yorumlara izin verdiğinizde yararlıdır. Bir kullanıcının kimliği doğrulandıktan sonra, CAPTCHA'yı boşaltın.

Henüz ortaya çıkmamış bir alternatif " SAPTCHA " dır .


2
Bir captcha'nın etik olmadığından şikayet etmek kör insanlar için mevcut değildir çünkü (a) konuşabilirsiniz ve (b) insanların% 0.5'inden daha azı kördür.
Josh K

5
@ Josh K: (b) etik yapmaz. (a) gerçekten uygularsanız yapar.
Nemanja Trifunovic

3
@Nemanja: Kör ve sağır insanlar hakkında ne yapıyorsun? Şefler tadamayacak insanlar için ne yapar? Bir şeyin 'etik olmayan' olduğunu söyleyemezsiniz, çünkü her kişi için işe yaramaz. IE ile uyumlu olmayan siteler ne olacak? 'Etik' değiller mi? Oh, ve reCAPTCHA yerleşik olarak konuştu.
Josh K

1
@Josh: Bu sadece kör insanlar değil, renk körlüğü veya kısmen gören insanlar da etkilenir (daha az ölçülerde olsa da). Ayrıca, İngilizce'yi çok iyi okuyabiliyorum, ama bu konuşulan captcha'lar çoğunlukla benim kavrama dışında. Yine de etik olmayan bir şey demem , ancak bu bir erişilebilirlik sorunudur.
Matthieu M.Nis

1
@Josh K .: Şeflerin ne yaptığını bilmiyorum, ama programcılar olarak neler yapabileceğimiz işimizi erişilebilir kılmak. Bu sadece etik meselesi değil, bazı durumlarda yasal bir gerekliliktir.
Nemanja Trifunovic

9

Sadece insanların CATPCHA'larla ilgili "geleneksel bilgeliği" nasıl kolayca kabul ettiklerini seviyorum. On yıllık deneyime ve erişilebilirlik konusunda uzmanlığa sahip profesyonel bir Web geliştiricisi olarak, hiçbir koşulda benim görüşüme göreCAPTCHA'ları uygulamalısınız. Çizgileri, el yazısı fontları, 3d efektleri vb. renk körlüğü) veya İngilizce'nin ilk dili olmadığı kişiler. İkinci olarak, "güvenlik" den bahsetmek yeterince iyi bir neden değildir. Bunun nedeni, istenmeyen postaların% 99,5'i için, birinin beş harfli bir kelimeyi yeniden yazması için yeterli "güvenlik" olmasıdır. İnsanların sıklıkla bahsettiği bu efsanevi "robotlar" aslında o kadar sofistike değildir. Ve o zaman bile, sofistike olanlar için (yine, çok küçük bir sayıdır), tipik bir CAPTCHA zaten yeterli olmayacaktır. Dolayısıyla, tüm olumsuzlukların gerçek bir faydadan çok daha ağır bastığı düşünüldüğünde, bu da çoğunlukla hayal ediliyor, onları kullanmak için iyi bir neden yok. SPAM'ı önlemek istiyorsanız, tek ihtiyacınız olan kişilerin "blog" gibi bir kelimeyi yeniden yazmasını sağlamaktır (ve kopyalayıp yapıştırabilirlerse sorun olmaz). Bu tamamen erişilebilir ve bana güven yeterli "güvenlik" yeterlidir. Tüm spam'lerinizin ortadan kaldırıldığını görünce şaşıracaksınız ve büyük kullanıcı segmentlerini bile kesmenize gerek yoktu.

aynı kullanıcı tarafından başka bir cevaptan kopyalandı

Bu gönderiyi belirli bir noktaya kadar kabul ettim: "Deneyimlerime göre, dünyanın en iyi captcha'sına sahip olsanız bile, bugünlerde siteyi basit bir şekilde ziyaret etmek için çok düşük ücretler için gerçek insanları istihdam eden çok sayıda spamcı var. (veya her neyse) ve spam'larını 'manuel' olarak yayınlayın.

Dolayısıyla, "insan" ve "bot" arasında ayrım yapmanızı gerektiren herhangi bir sistem, gerçek bir insanla karşılaştığında çalışmayacaktır. Hangi sistemi bulursanız alınmayacaksınız ve anonim (veya "anonim" - yani yeni kayıt) içeriği manuel olarak doğrulamanız gerekecek. "

Sonra yayınlanan bazı karmaşık Javascript önermek başladı. Yine, yukarıda belirttiğim gibi, sadece bir şeyi yeniden yazmak için istemek (rastgele seçilen metni eklemeliyim idealdir) deşifre etmeniz gereken bir şeyin belirsiz bir görüntüsünü göstermek kadar etkilidir. Deşifre yönü bence gereksiz bir katman. Yine, bu sadece benim görüşüm, ama bu benim için tamamen etkili oldu.

Ayrıca CAPTCHA'ları hükümet web sitelerinde kullanılamayacaklarını da eklemeliyim çünkü Bölüm 508 kurallarını ihlal ediyorlar.


Aslında yaptığım bu. Cevabımda söylediğim gibi, sadece sizin için cut'n'paste yapan biraz javascript var.
Dean Harding

Alternatifiniz aslında cevabımda bahsettiğim "SAPTCHA" dır :).
Iiridayn

7

Deneyimlerime göre, dünyanın en iyi captcha'sına sahip olsanız bile , günümüzde siteyi basitçe ziyaret etmek, kaydolmak (veya herhangi bir şekilde) ve spam'larını 'manuel' olarak göndermek için çok düşük ücretlerle gerçek insanları istihdam eden çok sayıda spamcı var.

Dolayısıyla, "insan" ve "bot" arasında ayrım yapmanızı gerektiren herhangi bir sistem, gerçek bir insanla karşılaştığında çalışmayacaktır . Hangi sistemi bulursanız alınmayacaksınız ve anonim (veya "anonim" - yani yeni kayıt) içeriği manuel olarak doğrulamanız gerekecek.

Aslında oldukça iyi bir sistemin javascript gerektiren bir sistem olduğunu gördüm. Yani, sayfada rastgele oluşturulmuş bir değeri formdaki özel bir alana kopyalayan bazı javascript'lere sahip olun. Sunucuda, değerin kopyalandığını doğrulayın. Deneyimlerime göre, bu çok sayıda spam göndericiyi durdurdu. % 100 değil ve ReCAPTCHA kadar iyi değil, ancak üzerinde çalıştığım siteler için yeterince iyi çalışıyor ve erişilebilirlik hakkında endişelenmenize gerek yok (javascript olmayan müşteriler var, ancak bunlar bu günlerde daha az ve daha fazla).


Spam gönderenlerin decaptcher.com gibi sitelerde 1000 CAPTCHA'yı atlamak için 2 dolar ödemesi iyi bir anlaşma gibi görünüyor. Bu korkunç - reCAPTCHA kullanan ziyaret ettiğim birçok site şimdi büyük miktarlarda spam tarafından vuruluyor.
Allon Güralnek

6

Bal küpü alanlarını kullanmak , gerçek kullanılabilirlik maliyeti olmadan spam'ı azaltmanın bir yöntemidir.

İşte bazı CSS büyüsü ile nasıl çalıştığını açıklayan bir makale ve etkinliğinin azaldığını belirtmekle birlikte, yine de bazı botlar yakalayacak. Büyük olasılıkla, bal küplerinin etkinliğini artırabilecek CSS (read: JS) dışında daha gelişmiş teknikler de vardır.


+1, sadece yeni Captcha sistemlerini sevdiğim için. (Oy kalmadı, geri döneceğim!)
Josh K

Django varsayılan Yorum formunda bir bal küpü alanı kullanır, ancak yine de spam alıyorum. Yine de kaç denemeyi engellediğini bilmiyorum.
jonescb

+1 Bunları blogumda kullanıyorum. Çok şey yakalar. Ama sonra tekrar blogum popüler değil, belki de hiç kimse denemek ve spam spam umurunda değil.
Tony

3

Spam ve bot'ları önlemenin başka bir yolu var, ancak captcha'nın işi en iyisidir. Bazen "2 + 10 =" veya "İnsan mısınız?" Gibi bir form hakkında basit bir soru sormak en azından bir süre captcha olarak çalışıyor.


3

Ben reCaptcha kullanıyorum çünkü spam'ın % 90'ını% 5 çaba ile kesiyor.

İnsanların captcha'nın zor olduğunu, işleri daha zor hale getirdiğini veya kullanılabilirliğinin azaldığını şikayet etmedim.

Spam gönderenler ve botlar bol miktarda bulunur. Bir formu kazımak ve toplu olarak kötü istekleri göndermeye başlamak çok kolaydır . Spam ve botları önemli ölçüde azaltmanın basit, güvenli ve kanıtlanmış bir yoludur. Tembel veya deneyimsiz için hızlı bir düzeltme değil, daha ziyade deneyim bu çözüme yol açtı ve şimdi uygulanması kolay.

Captcha'ları sever miyim ? Asla. Kıvrımlı çizgiler, ne anlama geliyor, opps yanlış girdim. Yine de etkilidir.


1
@josh "şikayet etmenin görünür ve kolay ulaşılabilir bir yolu var mı?" Şahsen onlardan nefret ediyorum ama reCaptcha (konuştuğunuz gibi) ve aynı zamanda
Chris

@Chris: Elbette, bana bir e-posta bırakabilir, başka bir yerde kaltak yapabilir veya captcha'yı bir kez tamamlayıp bana bir yorumda söyleyebilirsin.
Josh K

Ben reCaptcha inanıyorum da kodu dinleyebilirsiniz, biliyorum sadece bir çöp monitörü kullandığım için bir veya iki kez kullanmak zorundayım
WalterJ89

@Walter: reCaptcha'yı uygulamak inanılmaz derecede basit, bu yüzden kullanıyorum. Resmi değiştirebilir veya konuşulmasını dinleyebilirsiniz, neredeyse hiç iş yapmadan.
Josh K

1
Ayrıca şöyle saçmalıklarınız da var: meta.stackexchange.com/questions/48840/…
TheLQ

3

Ayrıca, karşı önlemi almadan ve uygulamadan önce, aldığınız spam miktarını azaltmanın gerekli olduğunu kabul edeceğim, diyelim ki?

  1. Algılamayı otomatikleştirmek gerekli mi? Düşük trafik alan bir web sitesi için manuel denetleme yeterli olabilir. Yine de insanların ırkçı / aşağılayıcı yorum eklemelerini önlemek isteyeceksiniz, değil mi?
  2. Herhangi bir yorum için Turing sınavını geçmek gerekli mi? Spam gönderenler genellikle URL'leri aktarmaya çalışır, bu nedenle yalnızca bir URL tespit edildiğinde karşı önlemleri etkinleştirmek uygulanabilir (biraz daha karmaşık olsa da).
  3. Her seferinde bir Turing testinden geçmek gerekli mi? Anonim kullanıcıların filtrelenmesi gerekebilir (IP'leri hatırlasanız da), ancak kimliği doğrulanan kullanıcılar yalnızca "spam" olduklarında, örneğin her 5. yorum bir saatten daha kısa bir sürede (veya bir gün içinde) ve yalnızca kendilerini ispatlamış (manuel veya otomatik olarak beslenen beyaz liste tabanlı sistem)

Bu 3 fikir, bu karşı önlemlere maruz kalan insan sayısını ve onlara maruz kalma sayısını büyük ölçüde azaltmalıdır.

Bunun da ötesinde, e-posta adresi istemek, mesaj göndermek ve gerçekte göndermeden önce (bir saat içinde) belirli bir metinle (rastgele oluşturulmuş) bir yanıt beklemek gibi captcha'lardan başka karşı önlemlerdir. yorumu çöp kutusuna atmadan önce zaman aşımı, diyelim).


1

Deneyimlerime göre, captchas spam'ı önlemenin en iyi yoludur, form ne kadar iyi programlanmış olursa olsun, uygulamanızdan daha iyi bir spam botu olacaktır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.