การเข้ารหัสข้อมูล
From LimeSurvey Manual
บทนำ
ฟีเจอร์ การเข้ารหัสข้อมูล ถูกสร้างขึ้นเพื่อช่วยให้ผู้ดูแลระบบแบบสำรวจรับมือกับกฎระเบียบด้านการคุ้มครองข้อมูลฉบับใหม่ที่ประกาศใช้ในหลายภูมิภาคทั่วโลกได้ดียิ่งขึ้น (เช่น GDPR)
ฟีเจอร์นี้ช่วยให้สามารถเข้ารหัสข้อมูลส่วนบุคคลที่อยู่ในฐานข้อมูลผู้เข้าร่วมกลางและ/หรือตารางผู้เข้าร่วมแบบสอบถาม นอกจากนี้ คุณยังสามารถเข้ารหัสข้อมูลที่เก็บรวบรวมจากผู้ตอบแบบสำรวจได้ หากเปิดใช้งานคุณสมบัติคำถามการเข้ารหัส
โปรดทราบว่าข้อมูลของคุณจะแสดงในอินเทอร์เฟซของ LimeSurvey ได้ตามปกติเสมอ เฉพาะรายการในฐานข้อมูลเท่านั้นที่ถูกเข้ารหัส ผู้ที่เข้าถึงเซิร์ฟเวอร์ที่โฮสต์ LimeSurvey จะไม่สามารถดูข้อมูลดังกล่าวได้ ดังนั้น โปรดระมัดระวังในการมอบสิทธิ์ระดับส่วนกลางและสิทธิ์ของแบบสอบถาม
ควรเข้ารหัสข้อมูลเมื่อใด?
คำถามนี้ไม่มีคำตอบที่ถูกต้องเพียงข้อเดียว ขึ้นอยู่กับปัจจัยต่อไปนี้เป็นสำคัญ:
- ประเภทของข้อมูลที่คุณเก็บรวบรวม
- สถานที่ที่แบบสำรวจของคุณตั้งอยู่
- กฎหมายระดับประเทศหรือระดับสหพันธรัฐ
โดยส่วนใหญ่แล้ว การเข้ารหัสข้อมูลที่ระบุตัวบุคคลได้เป็นเรื่องสำคัญ (เช่น ตามที่แนะนำไว้ในกฎระเบียบการคุ้มครองข้อมูลส่วนบุคคลของสหภาพยุโรป หรือ GDPR) ดังนั้น ข้อมูลอย่างชื่อ นามสกุล ที่อยู่อีเมล์ หมายเลขโทรศัพท์ ที่อยู่ และอื่น ๆ จึงสามารถใช้ระบุได้ว่าคำตอบชุดใดถูกส่งโดยบุคคลคนเดียวกัน
ในบางกรณี ข้อมูลที่ควรเข้ารหัสอาจไม่ได้จำกัดอยู่เพียงตัวอย่างข้างต้น ในบางสถานการณ์ (เช่น ในงานวิจัยทางการแพทย์) คุณอาจจำเป็นต้องเข้ารหัสข้อมูลส่วนใหญ่ หากสามารถสืบย้อนคำตอบไปถึงผู้ที่ส่งคำตอบนั้นได้
ดังนั้น โปรดปรับแบบสำรวจและการเก็บรวบรวมข้อมูลของคุณให้สอดคล้องกับกฎหมายในท้องถิ่น!
การตั้งค่า
ใน LimeSurvey มีสามที่ที่สามารถกำหนดการตั้งค่าการเข้ารหัสข้อมูลได้:
คุณสมบัติคำถาม
คุณสมบัติคำถาม "เข้ารหัสเรียบร้อยแล้ว" ใช้เพื่อเปิดใช้งานการเข้ารหัสข้อมูลสำหรับคำตอบที่เกี่ยวข้อง โดยค่าเริ่มต้นคุณสมบัตินี้จะปิดอยู่ เมื่อเปิดใช้งานแบบสำรวจแล้ว จะไม่สามารถเปลี่ยนคุณสมบัตินี้ได้

แอตทริบิวต์ผู้เข้าร่วม
แอตทริบิวต์หลักสามรายการ (ชื่อ นามสกุล และอีเมล) จะแสดงในตารางผู้เข้าร่วมแบบสอบถามเสมอ และโดยค่าเริ่มต้นการเข้ารหัสจะเปิดอยู่
แอตทริบิวต์ผู้เข้าร่วมใหม่แต่ละรายการจะปิดการเข้ารหัสโดยค่าเริ่มต้น
คุณสามารถเปิดหรือปิดการเข้ารหัสได้ทุกเมื่อ
การจัดการแอตทริบิวต์ฐานข้อมูลผู้เข้าร่วมกลาง
แอตทริบิวต์หลักสามรายการ (ชื่อ นามสกุล และอีเมล) จะแสดงในฐานข้อมูลผู้เข้าร่วมกลางเสมอ และโดยค่าเริ่มต้นการเข้ารหัสจะเปิดอยู่
แอตทริบิวต์ผู้เข้าร่วมใหม่แต่ละรายการจะปิดการเข้ารหัสโดยค่าเริ่มต้น
คุณสามารถเปิดหรือปิดการเข้ารหัสได้ทุกเมื่อ
ขั้นสูง
LimeSurvey ใช้ไลบรารี Sodium เพื่อให้ฟังก์ชันการเข้ารหัสและถอดรหัสข้อมูล
Sodium is a modern, easy-to-use software library for encryption, decryption, signatures, password hashing and more. It is a portable, cross-compilable, installable, packageable fork of NaCl, with a compatible API, and an extended API to improve usability even further. Its goal is to provide all of the core operations needed to build higher-level cryptographic tools.
Sodium is cross-platforms and cross-languages. It runs on a variety of compilers and operating systems, including Windows (with MinGW or Visual Studio, x86 and x86_64), iOS and Android. Javascript and WebAssembly versions are also available and are fully supported. Bindings for all common programming languages are available and well-supported.
ภาษาโปรแกรม PHP เวอร์ชัน 7.2.0 และใหม่กว่ามีส่วนขยาย Sodium (เรียกว่า ext/sodium) เป็นไลบรารีการเข้ารหัสหลัก ส่วนขยาย PHP เวอร์ชัน 2 ใน PECL เข้ากันได้กับ ext/sodium ใน PHP 7.2
LimeSurvey ใช้ไลบรารี Sodium Compat เพื่อเชื่อมต่อกับ PHP เวอร์ชันต่าง ๆ
ไลบรารีนี้รองรับ PHP 5.2.4 - 7.x (ล่าสุด) ในเบื้องต้น แต่อย่างเป็นทางการรองรับเฉพาะPHP เวอร์ชันที่ยังไม่สิ้นสุดการสนับสนุน (non-EOL)
วิธีการเข้ารหัส/ถอดรหัสข้อมูลที่ใช้ใน LimeSurvey อิงตามลายเซ็นแบบคีย์สาธารณะ คุณสามารถพบคีย์สาธารณะและคีย์ลับได้ในไฟล์ /application/config/security.php โดยระบบจะสร้างคีย์ให้โดยอัตโนมัติเมื่อมีการใช้งานฟีเจอร์การเข้ารหัสเป็นครั้งแรก
ไม่สามารถค้นหาบางส่วนของสตริงในคอลัมน์ฐานข้อมูลที่มีข้อมูลเข้ารหัสได้ ทำได้เฉพาะการค้นหาแบบตรงกันทุกตัวอักษรเท่านั้น
ข้อผิดพลาด
ข้อผิดพลาดที่อาจเกิดขึ้นเมื่อใช้การเข้ารหัสข้อมูล:
- library doesn't exists: ต้องติดตั้งไลบรารี PHP Sodium จึงจะสามารถใช้ฟีเจอร์การเข้ารหัสข้อมูลได้ ดูคู่มือการติดตั้งไลบรารีได้ที่: การติดตั้ง Sodium หากคุณไม่ต้องการใช้การเข้ารหัสข้อมูล คุณต้องปิดการเข้ารหัสในการตั้งค่าแอตทริบิวต์
- wrong decryption key: คีย์ถอดรหัสมีการเปลี่ยนแปลงนับตั้งแต่บันทึกข้อมูลครั้งล่าสุด จึงไม่สามารถถอดรหัสข้อมูลได้ วิธีเดียวที่จะถอดรหัสข้อมูลได้คือเรียกคืนคีย์เดิมจากข้อมูลสำรอง แล้วแทนที่คีย์ถอดรหัสปัจจุบันด้วยคีย์เดิม
หมายเหตุ: หากข้อผิดพลาด wrong decryption key เกิดขึ้นเฉพาะเมื่อ LimeSurvey ส่งอีเมล (เช่น เมื่อคุณทำแบบสำรวจเสร็จสิ้น) ให้ไปที่ Configuration > ตั้งค่าโดยรวม > E-mail settings แล้วกรอกรหัสผ่าน STMP ใหม่อีกครั้ง จากนั้นกด บันทึก[1]
หากไม่ได้ผล คุณยังสามารถลองเปรียบเทียบและกู้คืนคีย์ถอดรหัสจากข้อมูลสำรองได้ (คุณทำการสำรองข้อมูลไว้ใช่ไหม? ใช่หรือเปล่า?)