
Table of Contents
Gem Wallet ผ่านการตรวจสอบความปลอดภัยเชิงลึกจาก Cure53 โดยไม่พบปัญหาระดับวิกฤติหรือระดับสูงใน Rust core ของกระเป๋าหรือในแอป iOS และ Android และปัญหาระดับปานกลางทุกรายการได้รับการแก้ไขหรือบรรเทาแล้ว รายงานฉบับสุดท้ายลงวันที่ 21 ตุลาคม 2026 สำหรับผู้ใช้ของเรา นี่คืออีกหนึ่งเหตุผลที่จะเก็บ ส่ง และ swap คริปโตใน Gem Wallet ได้อย่างสบายใจ
Cure53 คืออะไร
Cure53 เป็นบริษัทด้านความปลอดภัยไซเบอร์ในเบอร์ลินที่ทำ penetration test และตรวจสอบโค้ด โครงสร้างพื้นฐาน และการเข้ารหัสมาตั้งแต่ปี 2007 บริษัทก่อตั้งโดย Dr.-Ing. Mario Heiderich ผู้สำเร็จปริญญาเอกด้านวิศวกรรมในสาขาความปลอดภัยเว็บ และนักวิจัยด้านความปลอดภัยอิสระ 30 คนของบริษัทมีทั้งผู้ถือปริญญาเอกด้านวิศวกรรม วิทยาการเข้ารหัสประยุกต์ และฟิสิกส์ Cure53 ได้เผยแพร่รายงานการตรวจสอบมากกว่า 130 ฉบับบนเว็บไซต์
งานของ Cure53 ปกป้องผู้คนได้มากกว่าแค่ลูกค้าของบริษัท: ทีมนี้เป็นผู้สร้าง DOMPurify ไลบรารี open-source ที่ช่วยป้องกันเว็บแอปจากการโจมตีแบบ XSS และนักพัฒนาดาวน์โหลดไปใช้หลายสิบล้านครั้งทุกสัปดาห์ รายงานของ Cure53 ได้รับความไว้วางใจจากทีมผู้อยู่เบื้องหลัง 1Password, Mullvad VPN, Proton Pass, Threema และ Bitwarden ซึ่งเป็นผลิตภัณฑ์ที่คำมั่นทั้งหมดที่ให้ไว้กับผู้ใช้คือความเป็นส่วนตัวและความปลอดภัย
สิ่งที่ Cure53 ตรวจสอบใน Gem Wallet
Gem Wallet ได้รับการตรวจสอบโดยผู้ตรวจสอบอาวุโส 4 คนของ Cure53 ได้แก่ ผู้ก่อตั้ง Cure53 Dr.-Ing. Mario Heiderich, Dr. Alexander Pirker, Dr. Nadim Kobeissi และ MSc. C. Mayr Gem Wallet ว่าจ้างให้ทำการตรวจสอบนี้ในเดือนกรกฎาคม 2026 และในเดือนกันยายน 2026 ผู้ตรวจสอบทั้งสี่คนใช้เวลา 13 วันทำ penetration test และตรวจสอบซอร์สโค้ดของ Gem Wallet เวอร์ชัน 2.114.40 การตรวจสอบใช้แนวทางแบบ white-box: Cure53 เข้าถึงซอร์สโค้ดได้ทั้งหมด ตรวจทานโค้ด และทดสอบ release build ของ iOS และ Android ส่วน backend ไม่อยู่ในขอบเขตของการตรวจสอบครั้งนี้
การตรวจสอบเน้นที่ Rust core ซึ่งปกป้องคีย์ในทั้งสองแอป:
- Keystore ที่เข้ารหัส (v4 Keystore and UniFFI Secret Boundary): วิธีที่กระเป๋าเข้ารหัส จัดเก็บ และลบข้อมูลลับ รวมถึงวิธีที่ข้อมูลลับถูกส่งผ่านระหว่าง Rust core กับแอป
- คีย์และการเซ็น (Derivation, Import and Signing Primitives): การนำเข้า secret phrase การ derive บัญชี และการเซ็นธุรกรรม
- การปกป้องรหัสผ่าน (iOS/Android Password Custody): วิธีที่แอป iOS และ Android จัดเก็บและใช้รหัสผ่านของกระเป๋า
ผลการตรวจสอบ Gem Wallet
Cure53 ไม่พบปัญหาระดับวิกฤติหรือระดับสูง จากทั้งหมด 21 รายการ มี 17 รายการที่ได้รับการแก้ไขหรือบรรเทาแล้ว รวมถึงปัญหาระดับปานกลางทุกรายการ และ Cure53 ได้ยืนยันการแก้ไขแต่ละรายการในการตรวจทานรอบติดตามผล:
- Critical - 0
- High - 0
- Medium - 6 (แก้ไขหรือบรรเทาทั้งหมด)
- Low - 10 (แก้ไข 8 รายการ)
- Informational - 5 (แก้ไข 3 รายการ)
ปัญหาระดับปานกลางเกี่ยวข้องกับการยืนยันสิทธิ์บนตัวอุปกรณ์เอง เช่น การล็อกแอปไม่ได้เปิดไว้โดยค่าเริ่มต้น และบนโทรศัพท์ Android ที่ถูกรูท การตรวจสอบรหัสผ่านอาจถูกข้ามได้ ทุกรายการต้องอาศัยโทรศัพท์ที่ปลดล็อกอยู่หรือถูกรูทซึ่งตกอยู่ในมือผู้โจมตี หรือแอปอันตรายที่ผู้ใช้ติดตั้งเอง ส่วนอีก 4 รายการที่ยังเปิดอยู่เป็นข้อเสนอแนะด้านการเสริมความแข็งแกร่งระดับ Low หรือ Informational
Gem Wallet ปกป้องคีย์อย่างไร
Cure53 ติดตามข้อมูลลับของกระเป๋าตั้งแต่ต้นจนจบ ทั้งการนำเข้า การจัดเก็บแบบเข้ารหัส การ derive บัญชี การเซ็น การส่งออก และการลบ และยืนยันรากฐานต่อไปนี้:
- Rust core เดียวสำหรับทั้งสองแอป: แอป iOS (Swift) และ Android (Kotlin) ใช้ Rust core ตัวเดียวกัน ในการเซ็นตามปกติ คีย์ส่วนตัวที่ถอดรหัสแล้วจะอยู่ภายใน Rust และแอปได้รับเพียงธุรกรรมที่เซ็นแล้ว
- การเข้ารหัสข้อมูลที่จัดเก็บอย่างแข็งแกร่ง: ข้อมูลลับแต่ละรายการถูกเข้ารหัสด้วย AES-256-GCM โดยใช้คีย์ที่ derive ด้วย Argon2id และส่วนหัวของไฟล์ก็ได้รับการยืนยันความถูกต้องเช่นกัน Cure53 พบว่าพารามิเตอร์ Argon2id สอดคล้องกับคำแนะนำในปัจจุบัน และไม่มีการใช้ nonce ซ้ำ
- การจัดเก็บรหัสผ่านที่ได้รับการปกป้อง: รหัสผ่านของกระเป๋าถูกเก็บไว้ใน iOS Keychain หรือ Android Keystore
- การสุ่มที่ปลอดภัย: secret phrase, nonce และ salt มาจากแหล่งสุ่มที่ปลอดภัย
- การตรวจสอบที่อยู่ใน 56 เชน: การทดสอบการ derive ใช้ที่อยู่ที่คาดหวังแบบตายตัว และทั้ง 56 เชนที่ใช้ secret phrase ให้ผลตรงกัน
การแก้ไขของ Gem Wallet หลังการตรวจสอบของ Cure53
การแก้ไขส่วนใหญ่ทำให้การล็อกแอปแข็งแกร่งขึ้น ตอนนี้ Gem Wallet เสนอให้เปิดการล็อกแอปเมื่อคุณสร้างหรือนำเข้ากระเป๋า และเมื่อเปิดการล็อกแอปไว้ การลบกระเป๋าจะต้องใช้รหัสผ่านหรือไบโอเมตริกซ์ บน Android รหัสผ่านของกระเป๋าได้รับการปกป้องด้วยคีย์ของ Android Keystore เสมอ และเมื่อเปิดการล็อกแอปไว้ คีย์นั้นจะต้องใช้ PIN ของอุปกรณ์หรือไบโอเมตริกซ์ ซึ่งปิดช่องทางการข้ามที่ Cure53 พบบนโทรศัพท์ที่ถูกรูท
เรายังเสริมความแข็งแกร่งให้ตัวแอปด้วย บน Android ตอนนี้ dApp จะกลับมาที่ Gem ผ่านลิงก์ gemwallet.com ที่ได้รับการยืนยันซึ่งแอปอื่นไม่สามารถอ้างสิทธิ์ได้ บน iOS secret phrase และคีย์ส่วนตัวจะถูกซ่อนจากภาพหน้าจอ การบันทึกหน้าจอ และตัวสลับแอป ใน Rust core ตอนนี้ secret phrase และคีย์ที่ derive แล้วจะถูกล้างออกจากหน่วยความจำทันทีหลังใช้งาน การแก้ไขทั้งหมดนี้มีให้ใช้งานใน Gem Wallet เวอร์ชัน 2.114.73 ขึ้นไป
ทำไมสิ่งนี้จึงสำคัญสำหรับผู้ใช้ของเรา
Gem Wallet เป็นกระเป๋าคริปโตแบบ self-custody ที่ open-source 100%: คีย์ส่วนตัวถูกจัดเก็บไว้บนอุปกรณ์ของคุณเท่านั้น และไม่มีใคร รวมถึงทีมของเรา เข้าถึงคีย์ได้ โค้ดทั้งหมดเปิดเผยอยู่บน GitHub ทุกคนจึงตรวจดูเวอร์ชันที่ผ่านการตรวจสอบและการแก้ไขที่ตามมาได้
โค้ด open-source แสดงให้เห็นว่ากระเป๋าถูกสร้างขึ้นอย่างไร และการตรวจสอบอิสระยืนยันความปลอดภัยของกระเป๋า เมื่อรวมกัน ทั้งสองสิ่งมอบสิ่งที่สำคัญที่สุดให้ผู้ใช้ของเรา นั่นคือความมั่นใจว่าคริปโตของพวกเขาอยู่ภายใต้การควบคุมของพวกเขาเพียงผู้เดียว
รายงานการตรวจสอบ Cure53 (PDF)
📄 รายงานการตรวจสอบ Cure53 ของ Gem Wallet (PDF)
📄 สรุปการตรวจสอบ Cure53 ของ Gem Wallet (PDF)
ตอนนี้ Gem Wallet มีการตรวจสอบอิสระสองครั้งรองรับอยู่ คือ CertiK ในเดือนเมษายน 2026 และ Cure53 ในเดือนตุลาคม 2026 และเราจะเชิญผู้ตรวจสอบอิสระมาตรวจสอบโค้ดของเราต่อไป อัปเดต Gem Wallet เป็นเวอร์ชันล่าสุดเพื่อรับการแก้ไขทั้งหมดหลังการตรวจสอบ และจัดการคริปโตของคุณอย่างปลอดภัยและเป็นส่วนตัวตลอด 24/7
ข้อสงวนสิทธิ์: บทความนี้มีวัตถุประสงค์เพื่อให้ข้อมูลและความรู้เท่านั้น ไม่ใช่คำแนะนำทางการเงินหรือการลงทุน สินทรัพย์คริปโตมีความผันผวนสูง และคุณอาจสูญเสียเงินที่ลงทุนทั้งหมด โปรดศึกษาข้อมูลด้วยตนเองและตัดสินใจภายใต้ความเสี่ยงของคุณเอง


