มีวิธีการตรวจสอบข้อมูลตำแหน่ง GPS ที่ได้รับจากลูกค้าหรือไม่?


9

คำตอบสำหรับคำถามนี้อาจเป็น "ไม่" แต่มันสำคัญมากดังนั้นฉันคิดว่าฉันอาจจะถามเช่นกัน

นี่น่าจะเป็นปัญหาสำหรับเกมที่รับรู้ตำแหน่งไคลเอนต์เซิร์ฟเวอร์ที่ตำแหน่งผู้เล่นในโลกเป็นศูนย์กลางของการเล่นเกม มีวิธีใดบ้างที่เราสามารถตรวจสอบให้แน่ใจว่าข้อมูลตำแหน่งที่มาจากลูกค้านั้นเป็นของจริง (เช่นผู้เล่นอยู่ที่นั่น)

ทำงานกับเกมไคลเอนต์ - เซิร์ฟเวอร์เราทุกคนรู้ว่าเราไม่ควรเชื่อถือข้อมูลใด ๆ ที่มาจากไคลเอนต์ดังนั้นตรรกะเกมที่สำคัญทั้งหมดควรทำในฝั่งเซิร์ฟเวอร์ อย่างไรก็ตามด้วยข้อมูลสถานที่เราจะต้องได้รับจากลูกค้า มีวิธีตรวจสอบซ้ำเพื่อป้องกันการโกงหรือไม่?

คำตอบ:


10

คุณสามารถใช้บริการระบุตำแหน่งทางภูมิศาสตร์ IP เพื่อรับตำแหน่งโดยประมาณจากตำแหน่งที่ผู้ใช้เชื่อมต่อ เปรียบเทียบสิ่งนี้กับข้อมูล GPS ที่ได้รับและคุณสามารถกำจัดบางกรณีที่รุนแรง (ผู้เล่นเชื่อมต่อผ่านพร็อกซีและอื่น ๆ ) คุณสามารถคำนวณระยะทางระหว่างการเข้าสู่ระบบของผู้ใช้และถ้าสูงเกินไป (เช่นสถานที่นั้นย้าย 1,000 kms ระหว่างการเข้าสู่ระบบสองครั้งใน 5 หรือ 10 นาที) แจ้งผู้ใช้

อย่างไรก็ตามนี่ไม่ใช่สิ่งที่จะเข้าใจผิดได้และคุณจะทำให้เกิดความไม่สะดวกกับผู้เล่นที่ถูกกฎหมายมากกว่าหนึ่งคน


ขอบคุณฉันคิดว่าฉันจะตรวจสอบการตรวจสอบ IP เช่นเดียวกับพื้นที่สามเหลี่ยมระหว่างการเข้าสู่ระบบ / เช็คอินกับเซิร์ฟเวอร์ แน่นอนว่ามันจะทำให้เกิดปัญหาสำหรับผู้เล่นที่ชอบด้วยกฎหมายถ้าเราพึ่งพาการตรวจจับและแบนอัตโนมัติ ... ฉันคิดว่าฉันจะทำเครื่องหมายเพื่อตรวจสอบโดยผู้ดูแลระบบและให้ข้อ จำกัด บางอย่าง; เราอาจจะจัดการกับธงแต่ละกรณีเป็นกรณี ๆ ไป (หวังว่าตัวเลขจะต่ำพอที่จะนำไปใช้ได้จริง)
Jamornh

ตำแหน่งทางภูมิศาสตร์ค่อนข้างแม่นยำ คุณไม่ควรมีปัญหาใด ๆ ... ขึ้นอยู่กับความละเอียดที่คุณต้องการ
วอฮ์นฮิลต์ส

10

ไม่มีสิ่งใดในฝั่งไคลเอ็นต์ที่ไม่สามารถปลอมแปลงได้ทุกสิ่งที่ใครบางคนมีการเข้าถึงทางกายภาพสามารถจัดการได้

IP มีข้อมูลเส้นทางและคำแนะนำเกี่ยวกับที่ตั้ง แต่ผู้เล่นต้องการพร็อกซีและอ๊ะ ... คำแนะนำ IP ในตำแหน่งที่แตกต่างจากที่ผู้เล่นตั้งอยู่จริงๆ

เชื่อใจผู้เล่นของคุณอย่าให้เหตุผลกับพวกเขาในการพยายามหลอกลวงระบบในตอนแรก


ฉันเห็นด้วยกับความไว้วางใจผู้เล่นและให้พวกเขาไม่มีเหตุผลที่จะหลอกลวงระบบ มันควรจะสะดวกกว่าที่จะทำตามระบบเพื่อให้ได้สิ่งที่ดีกว่าใช้เวลาในการหลอกลวงเพื่อทำสิ่งเดียวกัน แต่ผู้เล่นบางคนมักจะหาเหตุผลในการทำสิ่งที่พวกเขาไม่ได้ตั้งใจทำดีฉันหวังว่าตัวเลขจะต่ำมากหากระบบออกแบบมาอย่างดี
Jamornh

3

คุณไม่สามารถยืนยันข้อมูลนี้ได้อย่างแท้จริงเกินกว่าที่คุณจะสามารถยืนยันข้อมูลใด ๆ ที่สร้างขึ้นโดยแหล่งข้อมูลภายนอก ดังนั้นสิ่งที่คุณต้องการเป็นไปไม่ได้ในทางทฤษฎี แต่คุณอาจทำให้ปลอมยากขึ้นเล็กน้อย

ตัวอย่างเช่นบนโทรศัพท์ Android คุณมีผู้ให้บริการตำแหน่งต่างๆเช่นการค้นหาผู้ใช้ด้วยเสาโทรศัพท์มือถือในบริเวณใกล้เคียงระบบตำแหน่ง Wi-Fi เป็นต้นคุณอาจต้องการให้ผู้ให้บริการตำแหน่งอย่างน้อยสองรายคืนค่าที่คล้ายกันเพื่อให้แม่นยำยิ่งขึ้น ของทั้งสอง

ฉันจะไม่แนะนำให้ใช้ตำแหน่งทางภูมิศาสตร์ของ IP; ที่นี่ในสหราชอาณาจักรมันไม่ถูกต้องอย่างไร้ความหวังเนื่องจากพวกเราส่วนใหญ่ใช้ ISP ระดับชาติ ในวันที่ดีที่มีการกำหนดเป้าหมายทางภูมิศาสตร์หมายถึงตำแหน่งที่ตั้งที่อยู่ห่างออกไปประมาณ 20 ไมล์และในวันที่เลวร้ายพวกเขาคิดว่าฉันอยู่ห่างออกไป 100 ไมล์ แต่คุณสามารถใช้มันเพื่อยืนยันว่าผู้ใช้อยู่ในประเทศที่ถูกต้อง!


ขอบคุณสำหรับคำตอบนี้ เมื่อคุณอ้างถึง "ผู้ให้บริการตำแหน่ง" ฉันถือว่าคุณกำลังพูดถึง API ตำแหน่งของ Android และฮาร์ดแวร์ที่ใช้ในการคำนวณตำแหน่ง มันจะทำให้มันยากขึ้นเล็กน้อยสำหรับผู้ที่พยายามจะปลอมที่ตั้ง (ต้องให้ค่า 2-3 แทนที่จะเป็น 1) แต่เนื่องจากพวกเขากำลังให้ค่าปลอม ๆ อยู่เรื่อย ๆ นี่จึงไม่ควรทำงานเพิ่มเติมมากสำหรับพวกเขาที่จะเลี่ยงผ่าน (ให้ ค่าของปลอมเพิ่มเติม) เห็นด้วยกับจุดของคุณในการระบุตำแหน่งทางภูมิศาสตร์ IP ไม่ละเอียดพอ แต่ดีสำหรับการตรวจสอบหยาบ :) ขอบคุณสำหรับความช่วยเหลือ!
Jamornh

ใช่ไม่มีวิธีใดที่จะหยุดการรายงานค่าปลอมจากลูกค้า - สิ่งที่คุณทำได้คือหวังว่าจะทำให้เป็นเรื่องยาก
Kylotan

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.