ความปลอดภัยของ “ค้นหาของฉัน”
แอป “ค้นหาของฉัน” สำหรับอุปกรณ์ Apple ถูกสร้างขึ้นบนรากฐานการเข้ารหัสกุญแจสาธารณะขั้นสูง
ภาพรวม
แอป “ค้นหาของฉัน” เป็นการรวม “ค้นหา iPhone ของฉัน” และ “ค้นหาเพื่อนๆ ของฉัน” เข้าด้วยกันเป็นแอปเดียวใน iOS, iPadOS และ macOS “ค้นหาของฉัน” สามารถช่วยผู้ใช้ค้นหาอุปกรณ์ที่สูญหายได้ แม้ว่า Mac จะออฟไลน์อยู่ อุปกรณ์ที่ออนไลน์อยู่เพียงแจ้งตำแหน่งที่ตั้งของอุปกรณ์ให้แก่ผู้ใช้ผ่าน iCloud “ค้นหาของฉัน” ทำงานแบบออฟไลน์โดยการส่งสัญญาณบลูทูธระยะสั้นจากอุปกรณ์ที่สูญหายซึ่งสามารถตรวจพบได้โดยอุปกรณ์ Apple เครื่องอื่นๆ ที่ใช้งานอยู่ในบริเวณใกล้เคียง จากนั้นอุปกรณ์ที่อยู่ใกล้เคียงเหล่านั้นจะส่งต่อตำแหน่งที่ตั้งที่ตรวจพบอุปกรณ์ที่สูญหายไปยัง iCloud เพื่อให้ผู้ใช้สามารถระบุตำแหน่งที่ตั้งของอุปกรณ์ได้ในแอป “ค้นหาของฉัน” และในขณะเดียวกันก็ปกป้องความเป็นส่วนตัวและความปลอดภัยของผู้ใช้ทุกคนที่เกี่ยวข้อง “ค้นหาของฉัน” ทำงานแม้กระทั่งกับ Mac ที่ออฟไลน์อยู่และอยู่ในโหมดพัก
ด้วยการใช้บลูทูธและอุปกรณ์ iOS, iPadOS และ macOS หลายร้อยล้านเครื่องที่ใช้งานทั่วโลก ผู้ใช้สามารถระบุตำแหน่งอุปกรณ์ที่หายไปได้แม้ว่าอุปกรณ์จะไม่ได้เชื่อมต่อกับ Wi-Fi หรือเครือข่ายเซลลูลาร์ อุปกรณ์ iOS, iPadOS หรือ macOS เครื่องใดก็ตามที่เปิดใช้งาน “การค้นหาแบบออฟไลน์” ไว้ในการตั้งค่า “ค้นหาของฉัน” จะสามารถทำหน้าที่เป็น “อุปกรณ์ค้นหา” ได้ ซึ่งหมายความว่า อุปกรณ์ตรวจพบการมีอยู่ของอุปกรณ์อีกเครื่องที่สูญหายในขณะที่ออฟไลน์อยู่โดยใช้บลูทูธ จากนั้นอุปกรณ์จะใช้การเชื่อมต่อกับเครือข่ายเพื่อแจ้งตำแหน่งที่ตั้งโดยประมาณไปยังเจ้าของ เมื่ออุปกรณ์เปิดใช้งานการค้นหาแบบออฟไลน์ นั่นหมายความว่าผู้เข้าร่วมคนอื่นๆ จะสามารถค้นหาอุปกรณ์เครื่องนั้นได้ด้วยวิธีเดียวกัน การโต้ตอบทั้งหมดนี้ได้รับการเข้ารหัสแบบต้นทางถึงปลายทาง ไม่ระบุตัวตน และได้รับการออกแบบมาให้ใช้แบตเตอรี่และข้อมูลอย่างมีประสิทธิภาพ มีผลกระทบต่ออายุการใช้งานแบตเตอรี่และการใช้แผนบริการข้อมูลเซลลูลาร์เพียงเล็กน้อย รวมถึงผู้ใช้จะได้รับการปกป้องความเป็นส่วนตัวที่ดีขึ้น
หมายเหตุ: “ค้นหาของฉัน” อาจไม่มีให้ใช้ได้ครบทุกประเทศหรือภูมิภาค
การเข้ารหัสแบบต้นทางถึงปลายทาง
“ค้นหาของฉัน” ถูกสร้างขึ้นบนรากฐานการเข้ารหัสกุญแจสาธารณะขั้นสูง เมื่อการค้นหาแบบออฟไลน์เปิดใช้งานอยู่ในการตั้งค่า “ค้นหาของฉัน” คู่กุญแจการเข้ารหัสแบบส่วนตัว P-224 แบบเส้นโค้งรูปไข่ (EC) ที่ระบุเป็น {d,P} จะถูกสร้างขึ้นโดยตรงบนอุปกรณ์ โดยที่ d เป็นกุญแจส่วนตัวและ P เป็นกุญแจสาธารณะ นอกจากนี้ SK0 ลับ 256 บิต และตัวนับ i ก็จะเริ่มต้นที่ศูนย์ คู่กุญแจส่วนตัวและข้อมูลลับนี้จะไม่ถูกส่งไปที่ Apple และจะเชื่อมข้อมูลกับอุปกรณ์เครื่องอื่นๆ ของผู้ใช้เท่านั้น โดยจะเชื่อมในรูปแบบการเข้ารหัสแบบต้นทางถึงปลายทางโดยใช้พวงกุญแจ iCloud ข้อมูลลับและตัวนับจะใช้เพื่อรับกุญแจสมมาตรปัจจุบัน SKi ด้วยโครงสร้างแบบเรียกซ้ำต่อไปนี้: SKi = KDF(SKi-1, “update”)
อิงจากกุญแจ SKi จำนวนเต็มสองจำนวนที่มีค่ามาก ui และ vi จะถูกคำนวณด้วย (ui,vi) = KDF(SKi, “diversify”) ทั้งกุญแจส่วนตัว P-224 ที่แสดงด้วย d และกุญแจสาธารณะที่สัมพันธ์กันที่แสดงด้วย P จะมีการรับมาโดยใช้ความสัมพันธ์แบบสัมพรรคที่ประกอบด้วยจำนวนเต็มสองจำนวนเพื่อคำนวณคู่กุญแจระยะสั้น: กุญแจส่วนตัวที่ได้รับคือ di, โดยที่ di = ui * d + vi (โมดูโลลำดับของเส้นโค้ง P-224) และส่วนสาธารณะที่สัมพันธ์กันคือ Pi และตรวจสอบยืนยันว่า Pi = ui*P + vi*G
เมื่ออุปกรณ์สูญหายและไม่สามารถเชื่อมต่อกับ Wi-Fi หรือเซลลูลาร์ได้ เช่น MacBook Pro ถูกทิ้งไว้บนม้านั่งในสวนสาธารณะ อุปกรณ์นั้นจะเริ่มกระจายสัญญาณกุญแจสาธารณะ Pi ที่รับมาเป็นระยะๆ เป็นเวลาจำกัดในเพย์โหลดบลูทูธ เมื่อใช้ P-224 ตัวแทนกุญแจสาธารณะจะสามารถใส่ลงในเพย์โหลดบลูทูธรายการเดียวได้พอดี จากนั้นอุปกรณ์ที่อยู่รอบๆ จะสามารถช่วยค้นหาอุปกรณ์ที่ออฟไลน์ได้โดยเข้ารหัสตำแหน่งที่ตั้งของตัวเองไปยังกุญแจสาธารณะ ทุกๆ 15 นาทีโดยประมาณ กุญแจสาธารณะจะถูกแทนที่ด้วยกุญแจใหม่โดยใช้ค่าที่เพิ่มขึ้นของตัวนับและกระบวนการด้านบนเพื่อให้ผู้ใช้ไม่โดนติดตามโดยข้อมูลจำเพาะแบบต่อเนื่อง กลไกการดึงได้รับการออกแบบมาเพื่อป้องกันไม่ให้กุญแจสาธารณะ Pi ที่มีอยู่หลากหลายเชื่อมโยงกับอุปกรณ์เดียวกัน
การไม่เปิดเผยผู้ใช้และอุปกรณ์
นอกเหนือจากการทำให้แน่ใจว่าข้อมูลตำแหน่งที่ตั้งและข้อมูลอื่นๆ จะถูกเข้ารหัสอย่างสมบูรณ์แล้ว ข้อมูลประจำตัวของผู้เข้าร่วมยังถูกเก็บเป็นความลับจากกันและกัน และจาก Apple อีกด้วย ข้อมูลที่ส่งไปที่ Apple โดยอุปกรณ์ค้นหาจะไม่มีข้อมูลการตรวจสอบสิทธิ์ในเนื้อหาหรือส่วนหัว ด้วยเหตุนี้ Apple จึงไม่ทราบว่าตัวค้นหาคือใคร หรือว่าอุปกรณ์ที่พบคืออุปกรณ์ของผู้ใด นอกจากนี้ Apple ยังไม่เก็บบันทึกข้อมูลที่เปิดเผยตัวตนของตัวค้นหา และไม่เก็บข้อมูลที่ทำให้คนอื่นทราบความสัมพันธ์ระหว่างตัวค้นหาและเจ้าของได้ เจ้าของอุปกรณ์จะได้รับเพียงข้อมูลตำแหน่งที่ตั้งที่เข้ารหัสเท่านั้น ซึ่งจะถูกถอดรหัสและแสดงในแอป “ค้นหาของฉัน” โดยไม่ระบุว่าใครเป็นคนพบอุปกรณ์