2 คะแนน โดย GN⁺ 2024-03-29 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • Doom Captcha เป็นโปรเจกต์สนุก ๆ ที่เปลี่ยน CAPTCHA แบบทั่วไปให้กลายเป็นมินิเกมสไตล์ DOOM โดยเน้นเสียงหัวเราะและประสบการณ์มากกว่าจุดประสงค์ด้านความปลอดภัย
  • มาในรูปแบบเดโมที่นำไปติดกับฟอร์ม HTML ได้ และแสดงวิธีการทำงานด้วยโค้ดตัวอย่างที่มีช่องกรอกอีเมลและปุ่ม Unsubscribe
  • การตั้งค่ามีแบบเรียบง่ายด้วย countdown, label, enemies โดยค่าเริ่มต้นของ enemies คือจำนวนศัตรูที่ต้องกำจัดเพื่อผ่าน CAPTCHA ซึ่งอยู่ที่ 4
  • ในโหมดเดสก์ท็อปมี Easter egg คือใช้ iddqd เพื่อผ่าน CAPTCHA และ idkfa เพื่อปลดล็อก super shotgun
  • ซอร์สโค้ดเปิดเผยบน GitHub และด้วยผลงานบน Product Hunt รวมถึงการกดไลก์จาก John Carmack ทำให้โปรเจกต์พัฒนาแบบขำ ๆ นี้ได้รับความสนใจ

ประสบการณ์ CAPTCHA ที่เปลี่ยนเป็น DOOM

  • Doom Captcha เป็นโปรเจกต์เดโมที่ทำให้ผู้ใช้เล่นเกมเล็ก ๆ สไตล์ DOOM แทนการเจอ CAPTCHA ที่น่าเบื่อ
  • โปรเจกต์นี้มีหมายเหตุว่าไม่ควรจริงจังกับมันมากเกินไป และแจ้งว่าหากรู้การเขียนโค้ดก็สามารถเจาะระบบความปลอดภัยได้ง่าย
  • ตัวอย่างการใช้งานถูกจัดมาในโครงสร้างฟอร์ม HTML ทั่วไป
    • ภายใน <form> ที่มี action="success.html" จะมีช่องกรอกอีเมล
    • ข้อความบนปุ่มคือ Unsubscribe

ค่าการตั้งค่าและ Easter egg

  • Parameters ที่รองรับ
    • countdown: on / off
    • label: ข้อความที่แสดงหน้าคำว่า CAPTCHA และสามารถเว้นว่างได้
    • enemies: จำนวนศัตรูที่ต้องฆ่าเพื่อให้ CAPTCHA เสร็จสมบูรณ์ โดยค่าเริ่มต้นคือ 4
    • อัปเดตล่าสุดเมื่อ 30/05/2021
  • Easter eggs ที่พิมพ์ได้หลังจากคลิกเริ่มในโหมดเดสก์ท็อป
    • iddqd: ผ่าน CAPTCHA
    • idkfa: ปลดล็อก super shotgun

โค้ดสาธารณะและกระแสตอบรับ

  • ซอร์สโค้ดเปิดเผยอยู่บน GitHub และสามารถร่วมส่ง pull request หรือ fork ได้
  • Doom Captcha ขึ้นเป็น TOP 1 Product of the Day บน Product Hunt
    • ไอเดียเกิดขึ้นในวันศุกร์ และเวอร์ชันแรกถูกพัฒนาในเช้าวันเสาร์ ก่อนจะปล่อยออกมาในคืนนั้นและขึ้นใช้งานจริงในวันอาทิตย์
    • อัปเดตวันที่ 2021-05-26 ระบุว่า John Carmack ผู้สร้าง Doom ได้กดไลก์

1 ความคิดเห็น

 
GN⁺ 2024-03-29
ความคิดเห็นจาก Hacker News
  • น่าเสียดายที่แค่สัปดาห์นี้เองมีคนเอาโมเดลภาษาขนาดใหญ่ Mistral-7B ไป fine-tune ให้เล่น DOOM แล้ว :P
    https://news.ycombinator.com/item?id=39813174

    • ดูเหมือนต้องตั้งเกณฑ์คำว่า “เล่น” ให้ต่ำมากหน่อย ถ้าบันทึกเดโมไฟล์แล้วเอามาเล่นกลับโดยไม่ต้องมีภาระเรื่องเวลาจริง ก็น่าจะน่าประทับใจกว่านี้
      ตอนนี้ทำได้แค่เดินหน้า/ถอยหลัง หมุน และยิง แล้วถ้าชนกำแพงก็พอจะรู้แค่ว่าต้องหันไปอีกทาง เลยยังด้อยกว่าบอต Doom พื้นฐานมาก จนเรียกว่าเล่นได้ก็ยังไม่ค่อยเต็มปาก
      ตัวแทนกลางแบบ ASCII ก็ดูไม่จำเป็นและมีข้อจำกัดมาก แต่ก็อาจเป็นทางเลือกเพื่อพยายามคงความใกล้เคียงเวลาจริงไว้ เท่าที่ดูเหมือนจะอยู่ราว 1 FPS
      ก็สงสัยเหมือนกันว่าทำไมถึงรันบน Mac ไม่ใช้พีซีแรง ๆ ที่มี GPU เพื่อให้คำนวณได้เร็วขึ้น
      ถึงอย่างนั้นก็ดูเป็นความท้าทายที่สนุก และน่าจะไปได้ไกลกว่านี้ด้วยการ fine-tune หรือฝึกเพิ่ม
    • ทำให้นึกถึง “เพาะเลี้ยงนิวรอนหนูที่ยังมีชีวิต... ให้เล่น DOOM?”
      https://www.youtube.com/watch?v=bEXefdbQDjw
    • สงสัยว่ามีโมเดลที่ fine-tune ให้เล่น เกมโอเพนซอร์สที่ไม่ใช่ GPL สำหรับไอเดียบอตเล่นเกมน่าสนใจที่ปล่อยบน App Store ได้หรือเปล่า
    • สงสัยจริง ๆ ว่าสิ่งนี้เข้าไปอยู่ใน ข้อมูลฝึก ได้ยังไง
  • ชอบมาก แคปชาที่แปลกดีแบบนี้ยอดเยี่ยม
    นี่ก็ทำให้นึกถึงเหมือนกัน: http://random.irb.hr/signup.php

    • ฉันเคยทำแคปชาสำหรับช่องคอมเมนต์บล็อกส่วนตัวเป็นโจทย์แคลคูลัส แต่พอเรียนจบไป 5 ปี ตัวเองก็จำวิธีทำไม่ได้แล้ว เลยเปลี่ยนมัน :-/
    • จริง ๆ ไม่ต้องใช้อะไรมากก็ได้ ฉันแค่เพิ่มคำว่า “กรอก 42 ตรงนี้” ลงในฟอร์มที่มีสแปมเข้ามา คนที่อ่านจริงก็กรอกได้ และ สแปมเป็น 0 เลย
      สำหรับเว็บที่ดังขึ้นมาหน่อยคงไม่พอ แต่ในมุมเล็ก ๆ ของอินเทอร์เน็ตที่ไม่ได้ถูกเล็งโจมตีแบบเฉพาะจง มันก็พอจะกันสแปมแนว fuzzing ที่พยายาม “กรอกทุกฟอร์ม” ได้
    • โจทย์ที่ได้มาง่ายจนน่าตกใจ เป็นประมาณ “หาค่ารากจริงที่น้อยที่สุดของพหุนาม p(x) = (x+5)(x-4)(x+1)”
      ถ้าเป็นผู้โจมตีที่ตั้งใจจริง ก็สามารถใช้ Tesseract OCR คร่าว ๆ แล้วโยนเข้า GPT-3.5 เพื่อเอาคำตอบของโจทย์แบบนี้ได้อย่างรวดเร็ว
      การรัน LLM ไม่ได้ถูกหรือสเกลง่ายนัก ดังนั้นในแง่นั้นแคปชาก็อาจยังทำหน้าที่ของมันได้ แต่ถ้าทำโจทย์ให้ยากกว่านี้ ก็จะเริ่มกันผู้ใช้จริงออกไปจำนวนมากด้วย
      จากคำตอบอื่น ๆ ดูเหมือนว่าความยากระดับตอนนี้ก็กันมนุษย์จริง ๆ ไปเยอะแล้ว ขณะที่ผู้โจมตีที่มีชุดเครื่องมือแบบที่ว่า กลับผ่านได้ไม่ยาก
    • จำได้ว่าเว็บแฟนไซต์เก่า ๆ ที่ตอนนี้หายไปแล้วเคยใช้ คำถามความรู้เนื้อเรื่อง เป็นแคปชา แต่ถ้าเป็น LLM ก็น่าจะตอบได้อยู่ดี
    • ถ้าผู้ใช้มีความบกพร่องทางการมองเห็น จะเล่นผ่าน สายโทรศัพท์เสียง ได้ไหม?
  • ฉันพยายามยิง cacodemon ด้วยปืนพก มันก็ยังให้ผ่าน
    Doom ขึ้นชื่อเรื่องพอร์ตไปได้ทุกที่มาก จนฉันนึกว่าจะเป็นแบบรัน Doom ในเบราว์เซอร์จริง ๆ แล้วให้ผ่านแผนที่ง่าย ๆ สักด่าน

  • ยังรอให้ใครสักคนทำ Mona Lisa Captcha อยู่: https://www.youtube.com/watch?v=WqnXp6Saa8Y

  • ยอดเยี่ยมมาก
    แต่ยังขาด การเล็งอัตโนมัติในแกนตั้ง ไปนะ ต่อให้เป้าเล็งอยู่ต่ำกว่าศัตรู ก็ควรยิงโดนได้
    อย่างไรก็ทำออกมาได้ดีมาก!

    • ทุกครั้งที่พยายามแนะนำ DOOM ให้เพื่อน ๆ คำถามว่า “แล้วจะเล็งขึ้นข้างบนยังไง?” มักเป็นจุดสะดุดใหญ่สุด
      ถ้าจะเอาไปแนะนำวัยรุ่นที่โตมากับ Halo กับ Call of Duty ก็พอเข้าใจได้ แต่ช่วงปลายยุค 90 ฉันก็เริ่มเห็นเพื่อนวัยเดียวกันติดตรงนี้เหมือนกัน
    • มีผู้เล่น Doom ตัวจริงอยู่ตรงนี้นี่เอง!
  • สงสัยว่าทำไมถึงไม่ใช้ Doom จริง ๆ ทั้งที่น่าจะมี JavaScript Doom implementation ให้เลือกหลายตัว

    • “เคลียร์ UV Hangar ให้ได้ภายใน 13 วินาที”
      ทำได้ไม่ยาก[0] แต่ก็ชวนหงุดหงิดสุด ๆ[1] เหมือนแคปชาทุกอย่างนั่นแหละ
      [0] ถ้าใช้จอสัมผัสคงต้องพึ่งปาฏิหาริย์
      [1] สำหรับคนส่วนใหญ่ โดยเฉพาะหลังจากความแปลกใหม่หายไปแล้ว
    • เท่าที่รู้ล่าสุด Doom ยัง มีลิขสิทธิ์คุ้มครอง อยู่ ซอร์สโค้ดเป็น GPL ก็จริง แต่พวกแอสเซ็ตเคยถูกปล่อยด้วยไลเซนส์เสรีหรือเปล่า? มันเกือบจะเหมือนงานที่ถูกปล่อยทิ้งไว้มากกว่า
      ถึงจะทำได้ก็เถอะ แต่ถ้าเป็นโปรเจ็กต์ที่จะแชร์ต่อ ฉันก็มักจะเคร่งเรื่องลิขสิทธิ์ไว้ก่อน ไม่งั้นจะรู้สึกไม่สบายใจกับเสียงบ่นเรื่องลิขสิทธิ์ที่ตามมา
    • ใช่เลย มันทำให้หมดความตื่นเต้นไปนิดหน่อย
  • น่าจะลองทำ Doom ให้เป็น เวอร์ชัน 3D เต็มรูปแบบ ไปเลย JavaScript น่าจะถูกพอร์ตมันมาสักหลายสิบรอบแล้วอย่างน้อย

    • จะหยุดแค่นั้นทำไม ใช้ พอร์ต WebAssembly ของเกมจริงไปเลย แล้วแอบแฮ็กพอร์ทัลที่ลิงก์ไปยังเว็บจริงสักแห่งใส่เข้าไป :P
  • น่าจะมี แถบความคืบหน้า ที่ให้ผู้ใช้เล่น Doom ระหว่างรอให้งานประมวลผลเสร็จ

  • ตอนนี้อยากได้ โหมด Men In Black แล้ว ให้ระบุภัยคุกคามที่ป๊อปอัปเสนอมา แล้วยิงให้ตรงตามนั้น
    เอเลียนที่กำลังวิดพื้น? โอเค เด็กผู้หญิงอายุ 8 ขวบที่ถือหนังสือฟิสิกส์ควอนตัมอยู่ในตรอกมืด? น่าสงสัย...

    • เพิ่งกลับไปดูหนังเรื่องนั้นอีกรอบไม่นานนี้ แล้วการตัดสินแบบนั้นก็ไม่ผิดเลย หนังสือแบบนั้นดูแปลกมากจริง ๆ ถ้าอยู่ในมือเด็กผู้หญิงวัย 8 ขวบ
      แถมตลอดทั้งแฟรนไชส์ก็มีเอเลียนที่ดูเหมือนมนุษย์อยู่เยอะพอสมควร
  • ทำแบบอิง มินิเกมตกปลาใน WoW ได้ไหม? คือให้คลิกทุ่นในจังหวะที่เหมาะสม
    ไม่ได้คาดหวังว่าจะทนได้นานกว่านี้หรอก แต่ระดับนี้ก็น่าจะมีบอตตกปลาที่เก่งพอสมควรแล้ว