Tại sao mã Captcha ngày càng khó giải

0:00 / 0:00
0:00
  • Nam miền Bắc
  • Nữ miền Bắc
  • Nữ miền Nam
  • Nam miền Nam
Việc chứng minh bản thân không phải là một robot trên môi trường Internet ngày nay không còn là một nhiệm vụ dễ dàng.

Người dùng Internet chắc hẳn từng bị quấy rầy bởi những hộp xác thực Captcha với câu "I'm not a robot" và yêu cầu tìm ra vạch kẻ đường, biển hiệu hay đèn tín hiệu giao thông... Tuy nhiên, độ khó của hệ thống này ngày càng được nâng lên. Giờ đây đèn giao thông bắt đầu ẩn hiện sau tán cây, sương sớm che khuất ngôi nhà đằng xa, biển hiệu không được viết tiếng Anh mà là bất cứ thứ ngôn ngữ gì trông có vẻ phức tạp.

"Tôi không phải người máy" (I’m not a robot) là một phiên bản của reCAPTCHA. Ảnh: Analytics Insight.
"Tôi không phải người máy" (I’m not a robot) là một phiên bản của reCAPTCHA. Ảnh: Analytics Insight.

Captcha là gì


Những dòng chữ lộn xộn này là một trong nhiều phương pháp kiểm tra khác nhau của bài thử Captcha, viết tắt của "Completely Automated Public Turing test to tell Computers and Humans Apart" (Bài kiểm tra Turing công khai hoàn toàn tự động nhằm phân biệt máy tính và người), được phát triển bởi các nhà khoa học tại Đại học Carnegie Mellon (CMU) và IBM năm 2000.

Lúc đó, một hình ảnh chứa ký tự không rõ ràng cũng đủ để hạ gục hầu hết các spambot. Có giai đoạn, phương thức Captcha này được sử dụng bởi 200 triệu người dùng mỗi ngày, tương đương với việc bỏ ra xấp xỉ 500.000 giờ giải mã các đoạn văn bản bị xáo trộn. Tới năm 2009, Google quyết định mua lại Captcha nhằm tận dụng lượng người dùng Internet khổng lồ để số hóa kho sách Google Books của mình. Chữ lúc này cũng phải uốn éo hơn, khó đọc hơn, để chống lại những phần mềm nhận diện ký tự viết đang phát triển.

Chính những nhà phát triển Captcha cũng thừa nhận hệ thống này là một công cụ tuyệt vời để đào tạo AI, bất kỳ hình thức kiểm tra truy cập nào đều chỉ là tạm thời. Đối với các nhà nghiên cứu của Google, khả năng giải hàng tỷ câu đố Captcha chỉ là khởi đầu cho tương lai máy móc sẽ vượt qua con người. Năm 2014, Google đã đưa ra một thuật toán máy học thi đấu với con người trong cuộc thi đọc mã Captcha. Trong khi máy tính đọc đúng 99,8% số lần thử, ngồi trước dòng chữ bị biến tướng méo xẹo, con người chỉ đúng được 33%.

Để giải quyết vấn đề này, Google đã chuyển sang sử dụng NoCaptcha ReCaptcha, đọc dữ liệu và quan sát hành vi người dùng để chỉ cần một cú click chuột vào ô trống "Tôi không phải robot", hệ thống sẽ biết ngay đây là người. Tuy nhiên, nếu bạn vẫn không thể khiến công cụ này tin mình là người, lại một lần nữa ReCaptcha sẽ sử dụng các hình ảnh để xác định.

Jason Polakis, Giáo sư ngành khoa học máy tính tại Đại học Illinois nhận định, khi xét tới việc nhận dạng ký tự cơ bản, hình ảnh đơn giản và nhận dạng giọng nói, machine learning đã giỏi ngang tầm con người. Nếu con người tạo ra bài kiểm tra làm khó được hệ thống máy tính, khả năng cao đa số người dùng sẽ không giải nổi.

Con người cần những cách tiếp cận mới, nhưng chưa tìm ra được kế hoạch cụ thể nào cả. Năm 2016, Polakis xuất bản một nghiên cứu sử dụng công cụ nhận dạng hình ảnh sẵn có trên Internet (bao gồm chức năng tìm kiếm nguồn hình ảnh của Google) để giải mã các bài thử Captcha của Google. Hệ thống của Polakis đạt độ chính xác 70%. Một số nhà nghiên cứu khác cũng đạt thành tựu tương tự, vượt qua bài thử Captcha âm thanh của Google bằng chính phần mềm nhận dạng âm thanh của hãng này.

Chặng đường phát triển Captcha chứa đầy những thử nghiệm thất bại, những nỗ lực nhằm tìm ra thứ con người rất giỏi nhưng máy móc phải khó khăn để vượt được qua. Các nhà nghiên cứu thậm chí đã cân nhắc tới chuyện sử dụng nhận dạng khuôn mặt, giới tính hay sắc tộc. Hay cũng có những đề xuất sử dụng các bài kiểm tra dạng câu đố hoặc các giai điệu các bài hát phổ biến để làm Captcha.

Người ta cũng thử sử dụng hình ảnh đã được biến tấu để làm Captcha, như yêu cầu tìm hình ảnh những con lợn nhưng đáp án lại xuất hiện một con lợn hoạt hình và đeo kính. Hay những hình khắc trên vách hang cổ đại – máy tính rất kém trong việc xác định hình ảnh vẽ trên tường là thứ gì bởi chúng không có trí tưởng tượng. Có những nỗ lực mới mẻ hơn, như lồng ghép trò chơi vào Captcha, yêu cầu người dùng phải chọn đúng giá trị, hay tham gia một trò chơi ghép hình mà không có chỉ dẫn gì – chỉ một hình lớn và vài mảnh ghép còn thiếu, yêu cầu người dùng phải tự nhận ra mình đang phải giải đố.

Vấn đề với hầu hết những bài kiểm tra này không nằm ở việc AI quá thông minh, mà là con người giải Captcha quá kém. Điều này không có nghĩa là con người thiếu thông minh. Con người nói nhiều ngôn ngữ, ảnh hưởng bởi vô số nền văn hóa và từng cá nhân lại có một trải nghiệm khác nhau. Làm sao để một bài thử có thể thỏa mãn vài tỷ biến số?

"Bài thử vẫn bị giới hạn bởi khả năng của con người", Polakis nói. "Không chỉ ở khả năng tư duy, ta cần cái gì đó cho mọi người ở mọi nền văn hóa, nói mọi thứ ngôn ngữ có thể hiểu được. Nó cần loại bỏ được các rào cản văn hóa và ngôn ngữ. Cần thứ gì đó đơn giản cho một người bình thường cũng có thể giải nhưng phải đủ khó để máy tính không giải được. Đó phải là một bài kiểm tra đủ đơn giản để một người có thể thực hiện nhanh chóng ".

Captcha đang bị máy móc hóa giải


Theo lời Shuman Ghosemajumder, Giám đốc công nghệ của Shape Security, bất kỳ loại Captcha nào rồi cùng sẽ bị máy móc hóa giải. Ông không coi trọng các bài thử, mà thích thú với ý tưởng "xác thực liên tục" - continuous authentication - nhằm quan sát mọi hành động của người dụng Internet với mục đích xác định danh tính của lượt truy cập.

"Con người không thể di chuyển chuột thực hiện nhiều thao tác cùng một lúc, ngay cả khi cố gắng thế nào đi nữa", nhà nghiên cứu bảo mật Ghosemajumder nói. Một con bot có thể tương tác với trang web mà không cần động đến chuột. Nó cũng có thể sử dụng chuột cực kỳ chính xác. Con người thì có những cử động hỗn loạn rất khó làm giả.

Đội ngũ nghiên cứu Captcha của Google cũng có suy nghĩ tương tự. Phiên bản mới nhất của họ, reCaptcha v3 ra mắt cuối năm ngoái hoạt động dựa trên phân tích hành vi duyệt web, từ đó xác định là người hay máy.

Đầu tiên họ sẽ phải xác nhận xem đâu là những hành động bình thường, từ đó suy ra những hành động được cho là bất thường. Một trong những cách Google sử dụng là dựa vào Google cookie được cài trên trình duyệt. Tuy nhiên, hệ thống xác thực dựa trên điểm rủi ro này lại đi cùng với một nhược điểm lớn là sự riêng tư của người dùng. Điểm trừ nữa của phương pháp này là nếu người dùng sử dụng trình duyệt bảo mật riêng tư, như Tor Browser hay thông qua VPN, họ sẽ bị hệ thống nghi ngờ là một con bot.

Aaron Malenfant, kỹ sư trưởng nhóm nghiên cứu Captcha tại Google nói, việc không áp dụng bài thử Turing là một bước dừng trên cuộc đua mà con người đã bị bỏ lại sau. "Khi người ta đầu tư càng nhiều vào machine learning, những thử thách chứng minh mình không phải robot sẽ càng khó hơn với con người", Malenfant nói. Trong thời gian tới, mã Captcha sẽ bị "tuyệt chủng" và thay vào đó sẽ là những bài kiểm tra Turing liên tục chạy ngầm trong các trang web.

Trong cuốn sách The Most Human Human, tác giả Brian Christian đã mô tả lần tham gia cuộc thi Bài thử Turing với tư cách con người và nhận thấy việc chứng minh mình là con người qua việc trò chuyện không hề đơn giản. Mặt khác, những lập trình viên làm bot lại thấy việc vượt bài thử Turing khá dễ dàng, không phải bằng việc tạo ra một con bot nói chuyện cực kỳ linh hoạt, mà một con bot biết cách tránh né câu hỏi bằng một câu chuyện đùa đánh lạc hướng hay bằng việc cố tình lồng những từ sai chính tả, sai ngữ pháp vào câu trả lời.

Trong tương lai, rất có thể Captcha sẽ phải thay đổi bản thân, thay vì chọn ra đúng hình ảnh hay dòng chữ nữa, mà phải dựa trên những lỗi lầm người dùng hay mắc phải khi duyệt web. Năm 2017, Amazon công bố bằng sáng chế về bài thử liên quan tới ảo giác quang học và các câu đố logic, thứ con người thường gặp nhiều khó khăn mới giải ra được. Với tên gọi bài thử Turing nhằm vào khía cạnh thất bại, cách duy nhất để vượt qua chúng là lựa chọn đáp án sai.

Theo VnExpress