x

主要章節

  1. LimeSurvey Cloud 與 LimeSurvey CE 的差異
  2. 快速入門指南 - LimeSurvey 3.0+
  3. 安裝 - LimeSurvey CE
  4. 如何設計一份好的問卷(指南)
  5. 入門指南
  6. 管理 LimeSurvey
  7. 問卷 - 簡介
  8. 問卷設定
  9. 問卷選單
  10. 問卷結構
  11. 問題簡介
  12. 題組 - 簡介
  13. 問卷管理
  14. 問卷工具列選項
  15. 多語言問卷
  16. ExpressionScript 引擎 - 快速入門指南
  17. 未分類及進階功能
  18. 常見問題
  19. 疑難排解
  20. 應變方案
  21. 授權條款
  22. 版本更改紀錄檔
  23. 外掛程式
 Actions

資料加密

From LimeSurvey Manual

本頁面可能為機器翻譯,可能包含錯誤。 檢視英文原文 · 改善此翻譯
This page is a translated version of the page Data encryption and the translation is 100% complete.



簡介

資料加密功能旨在協助問卷管理員更妥善地因應世界各地所採行的新資料保護法規(例如 GDPR)。

此功能可對位於公用參與者資料庫及/或問卷參與者表格中的個人資料進行加密。此外,若啟用加密問題屬性,您也可以對從受訪者收集的資料進行加密。

請注意,您的資料在 LimeSurvey 介面中永遠都是可見的。只有資料庫中的項目會被加密,任何能存取 LimeSurvey 主機伺服器的人都無法檢視相關資料。因此,請謹慎決定要將全域權限與問卷權限授予哪些人。


  建立加密金鑰後,請務必進行備份。如果遺失金鑰,資料將無法再復原而變得無法使用。如果您使用 LimeSurvey CE,公開金鑰與私密金鑰位於 /application/config/security.php。


安裝完成後,您可以將這些設定移至 application/config/config.php。

何時應加密您的資料?

這個問題沒有唯一正確的答案,主要取決於:

  • 您所收集的資料類型
  • 您的問卷所在的地區
  • 國家或聯邦法規

在大多數情況下,加密可識別個人身分的資料非常重要(例如《一般資料保護規則》所建議的)。因此,名、姓、電子郵件地址、電話號碼、地址等欄位,都可用來識別某個人所提交的回應。

在其他情況下,應加密的資料不一定僅限於上述範例。在某些情境中(例如醫學研究),如果可以追溯回應是由哪個人提交的,您可能需要加密大部分的資料。

因此,請依照當地法規調整您的問卷與資料收集方式!

設定

LimeSurvey 中有三個地方可以設定資料加密:


問題屬性

問題屬性「已加密」用於對相應的回應啟用資料加密。此屬性預設為關閉。問卷一旦啟用,就無法再變更此屬性。



參與者屬性

三個核心屬性(名、姓和電子郵件)一律顯示在問卷參與者表格中,且加密預設為開啟。

每個新增的參與者屬性,加密預設為關閉。

加密可隨時開啟或關閉。



公用參與者資料庫屬性管理

三個核心屬性(名、姓和電子郵件)一律顯示在公用參與者資料庫中,且加密預設為開啟。

每個新增的參與者屬性,加密預設為關閉。

加密可隨時開啟或關閉。


進階

LimeSurvey 使用 Sodium 函式庫來提供資料加密與解密功能。

Sodium 是一個現代化且易於使用的軟體函式庫,可用於加密、解密、簽章、密碼雜湊等用途。它是 NaCl 的一個可移植、可跨平台編譯、可安裝、可封裝的分支,具備相容的 API,並擴充了 API 以進一步提升易用性。其目標是提供建構高階密碼學工具所需的所有核心運算。


Sodium 支援跨平台與跨語言。它可在多種編譯器與作業系統上執行,包括 Windows(使用 MinGW 或 Visual Studio,x86 與 x86_64)、iOS 和 Android。同時也提供 Javascript 與 WebAssembly 版本,並獲得完整支援。所有常見程式語言的繫結皆已提供,且支援良好。


PHP 程式語言 7.2.0 及更新版本內建 Sodium 擴充功能(稱為 ext/sodium)作為核心密碼學函式庫。PECL 中 PHP 擴充功能的第 2 版與 PHP 7.2 中的 ext/sodium 相容。


LimeSurvey 使用 Sodium Compat 函式庫來銜接不同的 PHP 版本。 此函式庫暫時支援 PHP 5.2.4 至 7.x(最新版),但官方僅支援尚未終止支援的 PHP 版本。


LimeSurvey 使用的資料加密/解密方法是基於公開金鑰簽章。公開金鑰和私密金鑰可在 /application/config/security.php 檔案中找到。金鑰會在首次使用加密功能時自動產生。


  警告 : 一旦啟用資料加密,對應資料庫欄位中的資料若未先解密將無法讀取。請務必備份您的加密金鑰,以免金鑰被刪除。 此外,加密金鑰一旦設定後,請勿再變更,否則所有現有資料都將無法使用。



對於含有加密資料的資料庫欄位,無法進行部分字串搜尋,僅能進行完全符合的搜尋。

錯誤

使用資料加密時可能出現的錯誤:

  • library doesn't exists:必須安裝 PHP Sodium 函式庫才能使用資料加密功能。以下是安裝該函式庫的指南:Sodium 安裝。如果您不想使用資料加密,則必須在屬性設定中停用加密。
  • wrong decryption key:自上次儲存資料以來解密金鑰已變更,因此無法解密資料。解密資料的唯一方法是從備份中取得原始金鑰,並以原始金鑰取代目前的解密金鑰。

注意:如果「wrong decryption key」錯誤僅在 LimeSurvey 發送電子郵件時發生(例如在您完成問卷時),請前往「設定」>「全域設定」>「電子郵件設定」,重新輸入您的 SMTP 密碼並按一下「儲存」。[1]

否則,您仍可嘗試比對並從備份中復原您的解密金鑰(您有做備份吧?對吧?)。