- แอป Android ที่วิเคราะห์สัญญาณ Bluetooth เพื่อตรวจจับแว่นตาอัจฉริยะรอบตัวและแสดงคำเตือน โดยสามารถระบุอุปกรณ์อย่าง Meta Ray-Ban หรือ Snap Spectacles ได้
- ตรวจจับโดยอิงจาก รหัสผู้ผลิตในแพ็กเก็ตโฆษณา BLE (เช่น Meta, Luxottica, Snap) และอาจมี การตรวจจับผิดพลาด จากอุปกรณ์อย่าง VR headset ได้
- แอป ไม่เก็บข้อมูลส่วนตัว และไม่มีโฆษณาหรือฟังก์ชันส่งข้อมูลออกระยะไกล โดยบันทึกจะถูกเก็บเมื่อผู้ใช้ส่งออกเองเท่านั้น
- มีฟังก์ชันตั้งค่าหลากหลาย เช่น การตั้งค่าเกณฑ์ RSSI, การแสดงบันทึก, การป้อนรหัสผู้ผลิตด้วยตนเอง, การรองรับหลายภาษา
- ผู้พัฒนามองว่าแว่นตาอัจฉริยะเป็น เทคโนโลยีที่ละเมิดความเป็นส่วนตัว และต้องการให้ผู้ใช้ตระหนักถึงสภาพแวดล้อมรอบตัวและระมัดระวังผ่านแอปนี้
ภาพรวมโครงการ
- Nearby Glasses คือ แอป Android ที่ตรวจจับแว่นตาอัจฉริยะใกล้ตัวและแจ้งเตือนผู้ใช้
- ใช้ รหัสระบุผู้ผลิต (Company ID) ของสัญญาณ BLE (Bluetooth Low Energy) เพื่อตรวจจับอุปกรณ์จาก Meta, Luxottica, Snap เป็นต้น
- อาจเกิดการตรวจจับผิดพลาดจาก อุปกรณ์อื่นของผู้ผลิตรายเดียวกัน เช่น VR headset
- แอป ใช้ฟรีและเปิดเผยซอร์สโค้ด แต่ใช้สัญญาอนุญาต PolyForm Noncommercial License 1.0.0 ที่อนุญาตเฉพาะการใช้งานที่ไม่ใช่เชิงพาณิชย์
- ไม่มีการเก็บข้อมูลส่วนตัว โฆษณา หรือการสื่อสารระยะไกลใด ๆ บันทึกจะถูกเก็บไว้เฉพาะในเครื่องและผู้ใช้สามารถส่งออกเองได้
คำเตือนและข้อควรระวังทางกฎหมาย
- การคุกคามหรือตามตื้อผู้สวมแว่นตาอัจฉริยะอาจเข้าข่ายอาชญากรรมได้
- ระบุชัดว่าไม่ควรใช้คำเตือนจากแอปเป็นเหตุในการโจมตีหรือคุกคามผู้อื่น
- ผู้ใช้ต้อง รับผิดชอบทางกฎหมายด้วยตนเอง และผู้สร้างแอปไม่รับผิดชอบ
- ข้อจำกัดของการตรวจจับผ่าน BLE อาจทำให้เกิดทั้งการตรวจจับผิดหรือไม่พบอุปกรณ์ได้ ดังนั้นไม่ควรตอบสนองต่อข้อความเตือนโดยทันทีและควรพิจารณาอย่างรอบคอบ
แรงจูงใจและพื้นหลัง
- ผู้พัฒนามองว่า แว่นตาอัจฉริยะเป็นเครื่องมือที่ละเมิดความเป็นส่วนตัวและใช้ถ่ายภาพโดยไม่ขอความยินยอม
- บางผลิตภัณฑ์สามารถ ปิดการทำงานของไฟ LED ที่ใช้บอกสถานะว่ากำลังบันทึกวิดีโออยู่ ได้
- มีรายงานกรณี ติดตั้งฟังก์ชันจดจำใบหน้า ซึ่งถูกกล่าวว่าเป็นภัยต่อความปลอดภัยส่วนบุคคล
- มีการยกตัวอย่างลิงก์ข่าวที่เกี่ยวข้องกับการแอบถ่ายผิดกฎหมายและการละเมิดสิทธิมนุษยชนโดยใช้ Meta Ray-Ban
วิธีการทำงานเชิงเทคนิค
- เนื่องจาก BLE ใช้ ที่อยู่ MAC แบบสุ่มและ UUID ที่ไม่เสถียร จึงไม่สามารถสแกนแบบ beacon อย่างง่ายได้
- จึงใช้ รหัสผู้ผลิต (Company ID) ของ Bluetooth SIG แทนในการตรวจจับ
- รหัสตัวอย่าง:
0x01AB Meta Platforms, Inc.
0x058E Meta Platforms Technologies, LLC
0x0D53 Luxottica Group S.p.A
0x03C2 Snapchat, Inc.
- ใช้ RSSI (ความแรงสัญญาณที่รับได้) เพื่อประเมินว่าอยู่ใกล้หรือไม่
- ค่าเกณฑ์เริ่มต้นคือ -75 dBm คิดเป็นระยะประมาณ 10~15 เมตร (ในอาคาร 3~10 เมตร)
- ค่า RSSI อาจเปลี่ยนแปลงตามกำลังส่ง สิ่งกีดขวาง การดูดซับโดยร่างกาย การสะท้อน ฯลฯ
- ใช้ Foreground Service เพื่อให้สามารถตรวจจับได้อย่างต่อเนื่องแม้อยู่เบื้องหลัง
ฟีเจอร์หลัก
- แสดงการแจ้งเตือนเมื่อตรวจพบแว่นตาอัจฉริยะ พร้อมประเมินระยะทางจากความแรงของสัญญาณ
- การแสดงและส่งออก debug log พร้อมการตั้งค่าสำหรับผู้ใช้ขั้นสูง
- การป้อนรหัสผู้ผลิตแบบกำหนดเอง เพื่อขยายรายการอุปกรณ์ที่ตรวจจับได้
- รองรับการตั้งค่าละเอียด เช่น ช่วงพักการแจ้งเตือน (ค่าเริ่มต้น 10 วินาที), ความยาวบันทึก, การแสดงเฉพาะ BLE ADV
- รองรับหลายภาษา เช่น อังกฤษ เยอรมัน สวิสเยอรมัน ฝรั่งเศส
วิธีใช้งาน
- ติดตั้งและเปิดใช้งานจาก GitHub Releases หรือ Google Play
- เริ่มการตรวจจับด้วยปุ่ม Start Scanning โดยต้องให้สิทธิ์ Bluetooth และการเข้าถึงอุปกรณ์ใกล้เคียง
- สามารถปรับ เกณฑ์ RSSI, การตั้งค่าการแจ้งเตือน, การแสดงบันทึก, debug mode ได้จากเมนู
- เมื่อมีการตรวจจับจะแสดงการแจ้งเตือน และสามารถหยุดได้ด้วย Stop Scanning
- บันทึกสามารถ ส่งออกเป็นไฟล์ข้อความหรือคัดลอกได้
แผนในอนาคต (Todos)
- ทดสอบในสภาพแวดล้อมจริงเสร็จแล้ว และ ลงทะเบียน Google Play เรียบร้อยแล้ว
- มีแผนเพิ่ม ฟังก์ชันรายการอุปกรณ์ที่ให้ละเว้นการตรวจจับผิดพลาด และโหมด ‘ไม่มีคำเตือน’ (canary mode)
- กำลังพิจารณา เพิ่มรหัสผู้ผลิตเพิ่มเติม และ พัฒนาเวอร์ชัน iOS
- มีแผนศึกษาการ ปรับปรุงความแม่นยำผ่านการวิเคราะห์ทราฟฟิก BLE
- แก้ปัญหา UI บนอุปกรณ์ Google Pixel แล้ว (อ้างอิงเวอร์ชัน 1.0.3)
ใบอนุญาตและเครดิต
- ที่มาของไอคอน: ไอคอน Eyeglass จาก Freepik (Flaticon)
- ใบอนุญาต: PolyForm Noncommercial License 1.0.0
- ภาษาที่ใช้พัฒนา: Kotlin 100%
1 ความคิดเห็น
ความเห็นจาก Hacker News
รันในย่านคนพลุกพล่านของบัลติมอร์ แต่ไม่มีใครใส่แว่นอยู่ใกล้ ๆ และก็ไม่พบการตรวจจับ
แต่รอบตัวมี อุปกรณ์ Bluetooth เยอะมาก เลยทำให้ debug log ไหลเร็วมาก
ปุ่มเริ่มสแกนไม่ได้เปลี่ยนเป็น ‘หยุด’ แต่ดูเหมือนการสลับจะยังทำงานอยู่
แถบด้านบนทับกับพื้นที่แจ้งเตือน และด้านล่างก็โดนตัดไปนิดหน่อยเพราะ แถบ gesture แบบ 3 ปุ่ม ของฉัน
ตอนอนุญาตสิทธิ์ครั้งแรก แอปค้างจนต้องรีสตาร์ต และแม้จะให้สิทธิ์หมดแล้วก็ยังเปิดการตั้งค่าไม่ได้
ตอนเปิดครั้งแรกมีชุดหูฟังเชื่อมต่ออยู่ แต่หลังจากขอสิทธิ์แล้วเหมือนมันถูกตัดการเชื่อมต่อ
ใน debug log ก็ไม่มีอะไรขึ้นเหมือนกัน ถึงอย่างนั้นก็ชอบไอเดียนี้ เลยคิดว่าจะลองใหม่ถ้ามีอัปเดต
โครงการนี้ดูเหมาะกับ F-Droid มากกว่า Google Play
เครือข่ายพื้นที่ส่วนบุคคลยังไม่พร้อม กระบวนการวิวัฒนาการก็คงเจ็บปวด แต่ก็จะมีบางคนได้ประโยชน์จากมัน
มี โลโก้ Laughing Man โผล่ขึ้นมาแทนใบหน้า ก็รู้สึกว่าน่าสนใจทีเดียว
เพราะงั้น XReal ของฉันเลยไม่ถูกตรวจพบ ฉันตั้งใจซื้อเพราะน่าจะเป็นรุ่นสุดท้ายที่ไม่มีกล้อง
แน่นอนว่าถ้าติดกล้องเสริมอย่าง XReal Eye ก็ยังถ่ายได้ แต่ฉันไม่ได้ใช้
แต่อย่างน้อยสาย USB ที่ห้อยจากหูก็ดูมีพิรุธมากพออยู่แล้ว
ก็หมายความว่าในหมู่คนทั่วไป ความรู้สึกต่อต้านผู้สวม ‘แว่นอัจฉริยะ’ อาจแรงกว่านี้มาก
มีทั้งมุกว่าเป็น “เครื่องตรวจจับพวกโรคจิตใกล้ตัว” และข้อเสนอให้เปลี่ยนชื่อเป็น “Nearby Glassholes”
ถึงขั้นมีคนพูดว่าถ้าถ่ายคนในที่สาธารณะด้วยแว่นแบบนี้ ก็ต้อง เตรียมใจโดนต่อย ไว้เลย
อยากให้มีฐานข้อมูล ลายนิ้วมือ BT/BTLE ที่ละเอียดกว่านี้
แต่ละอุปกรณ์หรือชิปเซ็ตน่าจะมีความต่างเล็ก ๆ ที่เอามาใช้ลด false positive ได้
ลิงก์ตัวระบุใน README เป็น relative path เลยเสีย ด้านล่างนี้คือลิงก์ที่ถูกต้อง
Bluetooth SIG company_identifiers.yaml
แม้จะอยู่บน GitHub จนทำให้เข้าใจผิดว่าเป็นโอเพนซอร์สได้
แต่ Polyform ก็มีปัญหาคล้ายไลเซนส์แบบ CC ในแง่ที่ ขอบเขตการใช้งานเชิงพาณิชย์ไม่ชัดเจน
ไฟล์ LICENSE
เว็บไซต์ทางการของ Polyform
กล้องเฝ้าระวังริมถนน, อุปกรณ์ของตำรวจ, กล้องสมาร์ตโฟน, โดรน เข้าไปอีก
ก็คงกลายเป็น ระบบเตือนภัยความหวาดระแวง ที่สมบูรณ์แบบ
คนใส่แว่นอัจฉริยะ มีภาพลักษณ์แย่อยู่แล้ว ไม่แน่ใจว่าสมเหตุสมผลไหม
แต่ยังช่วยเผยให้เห็น ปัญหาทางสังคมที่จะเกิดขึ้นเมื่อแว่น AI กลายเป็นเรื่องปกติ
ไม่นานมานี้ฉันเองก็เลิกใช้ แบรนด์แว่นที่เพิ่มฟังก์ชัน AI แล้วเปลี่ยนกลับไปใช้รุ่นธรรมดา
ถือเป็นการ ประกาศไม่ขอมีส่วนร่วม ในแบบของตัวเอง
https://julianoliver.com/projects/glasshole/