ReCAPTCHA là gì và Tìm hiểu về mục đích chính của ReCAPTCHA

Recaptcha là gì

Khi tìm kiếm qua Google, đôi lúc chúng ta sẽ gặp phải việc Google bắt chúng ta phải lựa chọn hình ảnh theo mô tả. Sau khi chúng ta chọn đúng những hình ảnh đó, Google mới cho chúng ta bắt đầu tìm kiếm. Ngoài ra, một số trang web khác cũng bắt chúng ta phải chọn hình ảnh tương tự. Đó là một bài test giúp phân biệt người dùng với các hệ thống tự động khi truy cập đến một trang web có sử dụng reCAPTCHA. Bài sau đâyBizfly Cloud sẽ giới thiệu về bài test reCAPTCHA là gì và tại sao người dùng lại phải làm bài test reCAPTCHA.

Tổng quan về reCAPTCHA là gì?

Dựa trên CAPTCHA do Luis von Ahn, Ben Maurer, Colin McMillen, Harshad Bhujbal, Manuel Blum nghiên cứu và phát triển.

  • Phát triển bởi Google.
  • Bản đầu tiên vào ngày 27 tháng 3 năm 2007.
  • Phiên bản hiện tại là v2, bản v3 đang được phát triển và bắt đầu đưa vào sử dụng.
  • Website: www.google.com/recaptcha/

1. reCAPTCHA v1 là gì

Trước tiên, reCAPTCHA là một công nghệ dựa trên một hệ thống CAPTCHA. CAPTCHA là viết tắt của “Completely Automated Public Turing test to tell Computers and Humans Apart” (tạm dịch là “Phép thử Turing công cộng hoàn toàn tự động để phân biệt máy tính với người”). Tên hệ thống khá dài nhưng tóm lại, đó là một bài test dùng để xác định việc truy cập là đến từ người sử dụng hay là việc truy cập đó là tự động do máy tính tạo ra.

Phép thử Turing nói một cách đơn giản là một phép thử phân biệt con người và máy tính qua các hình thức kiểm tra nhất định.

CAPTCHA đôi khi được gọi là một phép thử Turing ngược (reverse Turing test) vì CAPTCHA có đối tượng kiểm tra là con người (xác định xem là con người hay không) còn phép thử Turing có đối tượng kiểm tra là máy tính (xác định xem là máy tính hay không), mặc dù đối với cả hai bài test, con người và máy tính đều là người tham gia kiểm tra.

CAPTCHA được thiết kế dựa trên một số điểm khác biệt giữa việc nhận thức được thông tin của con người với máy tính. Ví dụ như trước đây, việc đọc được chữ trên một hình ảnh nào đó đối với con người là một điều rất bình thường, nhưng đối với máy tính đã từng là một điều rất khó.

reCAPTCHA được phát triển bởi Google và được sử dụng miễn phí. Mục đích của reCAPTCHA ban đầu là dùng để giúp các trang web ngăn chặn tình trạng spambot: một máy tính được lập trình sẵn gửi rất nhiều request (mà người bình thường không thể gửi trong khoảng thời gian ngắn được) nhằm một mục đích nào đó (crawler data, DoS,…) gây ảnh hưởng đến việc vận hành web server.

Như các khung reCAPTCHA ở hình trên, khung màu đỏ, ta có thể đọc được chữ được viết là “Levelers critics”. Nhưng với các hệ thống tự động được lập trình sẵn, việc “đọc” sẽ gặp phải khó khăn do máy tính không giống như con người, khi phần lớn người sử dụng đã quá quen với việc đọc chữ qua mắt và ghi nhớ vào trong não.

Dưới mỗi khung reCAPTCHA, có một thanh input để ta nhập từ được hiện phía trên. Nếu đúng thì người nhập sẽ được đánh giá là qua bài test (hay là người), còn nếu sai, người nhập sẽ phải thử lại với một hình ảnh khác.

Với v1, reCAPTCHA chủ yếu đưa ra những bài test yêu cầu người dùng đọc và điền các chữ trên hình ảnh. Những hình ảnh chữ này được scan từ các quyển sách giấy, sau đó được tiền xử lí để tạo ra các hình ảnh như trên hình. Việc này đã giúp rất nhiều bộ sách, báo chí được lưu trữ số hóa như The New York Times Google Books.

Và cũng từ đây, một “cuộc chiến” nổ ra xung quanh reCAPTCHA kéo theo việc thay đổi của reCAPTCHA, với sự tham gia của nhiều bên và nhiều công nghệ liên quan:

Phe reCAPTCHA: reCAPTCHA v1 những phiên bản đầu tiên có chữ viết được scan từ sách, báo giấy, có kiểu chữ, phông chữ giống như khi in ấn và scan. Các chữ được lựa chọn qua OCR (Optical character recognition)

Optical character recognition (OCR) là một công nghệ dùng để chuyển chữ viết trên hình ảnh thành các kí tự lưu trữ trên máy tính.

Phe máy tính giả danh người dùng: Sử dụng chính công nghệ OCR nhưng với thuật toán tốt hơn để tạo ra những chương trình có thể nhận diện tốt hơn so với bên tạo ra reCAPTCHA.

Phe reCAPTCHA: Tăng độ khó của các chữ và kí tự bằng nhiều cách: làm mờ kí tự, làm méo chữ, gạch ngang chữ, tạo màu nền khác nhau ngay trong một từ, chữ viết tay…

Phe máy tính giả danh người dùng: Tiếp tục nâng cấp OCR và có thể giải được rất nhiều hình của reCAPTCHA. Ví dụ, một chương trình của Claudia Cruz, Fernando Uceda, và Leobardo Reyes được công bố vào ngày 27 tháng 2 năm 2012 tuyên bố có khả năng giải với độ chính xác 82%

Phe người giả danh người dùng: CAPTCHA farming, một hình thức sử dụng một người khác để giải các hệ thống CAPTCHA thay cho người dùng. Do người kiểm tra bài test là người nên có thể qua bài test dễ dàng. Những người giải CAPTCHA hộ này được gọi là CAPTCHA farmer.

CAPTCHA farmer được coi như những người “thi hộ” bài test CAPTCHA.

Phe reCAPTCHA: Dùng các biện pháp để ngăn chặn CAPTCHA farming như chặn IP, xác định máy tính và trình duyệt qua các dữ liệu có thể định danh hay gọi là Browser fingerprinting,…

Sau nhiều năm, độ khó của những reCAPTCHA nhận dạng chữ viết đã lên đến một mức độ mà cả máy tính và cả chính người dùng không thể giải được. Cuối cùng, vào ngày 31 tháng 3 năm 2018, Google tuyên bố kết thúc reCAPTCHA v1 hay reCAPTCHA chữ viết, và thay vào đó là reCAPTCHA v2.

2. reCAPTCHA v2 và v3

reCAPTCHA v2 thay vì sử dụng các hình ảnh chữ viết sẽ sử dụng các hình ảnh và yêu cầu người dùng chọn một ô hình ảnh theo mô tả như: chọn các hình ảnh có chứa vạch kẻ đường, chọn ô hình ảnh có chứa biển báo,… Nhưng trước tiên, một khung tickbox với nội dung “Tôi không phải là robot (I’m not a robot)” sẽ hiện lên.

Khi người dùng tick vào, Google sẽ phân tích các thông tin của người vừa gửi request qua một số cách như: Tài khoản Google đang đăng nhập, cookie của trình duyệt, lịch sử duyệt web,… Nếu như đánh giá của Google cho rằng người dùng không phải là các chương trình lập trình sẵn, người dùng sẽ không phải chọn hình ảnh mà được qua luôn bài test.

Với cả hai reCAPTCHA v1 và v2, người dùng có thể lựa chọn nghe audio thay vì nhận biết các hình ảnh. Với v1, chúng ta click vào hình cái loa và với v2 là hình cái tai nghe. Lúc này, reCAPTCHA sẽ gửi một đoạn âm thanh (thường là một đoạn ghi âm đọc một số hoặc một số từ nào đó), người nghe phải nghe và điền từ đã nghe được rồi nhấn xác nhận.

Phiên bản v3 được cải tiến hơn so với v2, không còn bắt người dùng phải nhận dạng hình ảnh hay âm thanh nữa. Google sẽ đưa ra mộ thang điểm từ 0 đến 1 cho mỗi người dùng. Thang điểm sẽ tăng lên hay giảm đi tùy thuộc vào hành vi người dùng duyệt web như thế nào. Nếu như điểm người dùng xuống 0 thì người dùng là chương trình lập trình sẵn, còn nếu là 1 thì người dùng là con người. Tất cả những hành động đánh giá này sẽ được chạy ngầm mà người dùng không nhìn thấy. Điều này sẽ giảm bớt đi sự khó chịu của các phiên bản reCAPTCHA trước.

Ưu, nhược điểm của ReCAPTCHA

ReCAPTCHA hiện là cách triển khai CAPTCHA được sử dụng rộng rãi nhất. Ngoài những ưu điểm vượt trội, ReCAPTCHA cũng tồn tại một số nhược điểm. Nhìn chung, ReCAPTCHA vẫn là một tính năng tốt trong trường hợp trang web đang bị spam.

1. Ưu điểm

ReCAPTCHA miễn phí và dễ cài đặt với nhiều ưu điểm như:

– Cải thiện bảo mật website

Mục đích chính của CAPTCHA là ngăn chặn truy cập tự động không mong muốn vào trang web, bao gồm nhiều loại bot tấn công và các tác nhân độc hại khác. ReCAPTCHA trở thành rào cản đầu tiên chống lại những vấn đề này, giúp cải thiện tính bảo mật tổng thể của trang web và bất kỳ hệ thống cơ bản nào có thể được kết nối với nó.

– Ngăn chặn spam

Một ưu điểm tuyệt vời khác của ReCAPTCHA là chống thư rác, spam bình luận khá hiệu quả. Các hiện tượng này đặc biệt phổ biến ở những nơi như trường bình luận mở – nơi bất kỳ ai cũng có thể đăng tải mà không cần tài khoản, tin nhắn riêng tư giữa những người dùng với nhau và biểu mẫu đăng ký. ReCAPTCHA không hoàn toàn ngăn chặn chúng, nhưng nó sẽ giảm thiểu kha khá số lượng các thư rác, giảm thiểu việc lạm dụng các dịch vụ email miễn phí.

– Một trang web có sử dụng CAPTCHA là minh chứng rằng chủ sở hữu rất coi trọng các biện pháp bảo mật với thông tin nhạy cảm của người dùng.

2. Nhược điểm

  • Gây ảnh hưởng đến trải nghiệm người dùng và tỷ lệ chuyển đổi của trang web.
  • Phần lớn các CAPTCHA yêu cầu người dùng có thể nhìn hoặc nghe thấy. Tuy nhiên, với một số người phải sử dụng công nghệ hỗ trợ và trình đọc màn hình do tuổi tác hoặc người dùng bị khiếm khuyết thì CAPTCHA là điều cản trở lớn khi họ truy cập website.
  • Mặc dù CAPTCHA có hiệu quả cao trong việc ngăn chặn bot và thư rác, nhưng không hoàn toàn tuyệt đối 100%. Các bot nâng cao hơn có thể dễ dàng khai thác CAPTCHA dạng văn bản.

>>> Xem thêm: ReCAPTCHA và những tranh cãi về reCAPTCHA