Actions

Difference between revisions of "Data encryption/nl"

From LimeSurvey Manual

(Created page with "=Inleiding=")
 
(47 intermediate revisions by 2 users not shown)
Line 8: Line 8:
  
  
'''Data encryption''' is a new feature provided in LimeSurvey 4. It has been created to help survey administrators better cope with the new data-protection regulations adopted in different parts of the world (e.g., GDPR).
+
'''Encryptie''' is een nieuwe functie in LimeSurvey 4. Het is gemaakt om enquêtebeheerders te helpen beter om te gaan met de nieuwe voorschriften voor gegevensbescherming die sinds 2016 in de Europese Unie zijn aangenomen (bijv. AVG).
  
This feature permits the encryption of personal data located in the [[Central_Participant_Database|central participant database]] and/or [[Survey participants|survey participants table]]. Moreover, you can also encrypt the data you collect from your respondents if the [[QS:Encryption|encryption question attribute]] is enabled.
+
Deze functie maakt het versleutelen mogelijk van persoonlijke gegevens in de [[Central_Participant_Database/nl|deelnemersdatabase]] en / of [[Survey participants/nl|deelnemers enquête]]. Bovendien kun je de gegevens die je van je respondenten verzamelt ook versleutelen als het [[QS:Encryption/nl|encryptie vraagattribuut]] is ingeschakeld.
  
Please note that your data will always be visible in the LimeSurvey interface. Only the database entries get encrypted - nobody that accesses the server where you host LimeSurvey can visualize the respective data. Therefore, please pay attention to whom you provide [[Manage users|global and survey permissions]].
+
Hou er rekening mee dat de gegevens altijd zichtbaar zijn in de LimeSurvey-interface. Alleen de opslag in de database is versleuteld. Iemand die toegang heeft tot de server waarop je LimeSurvey host, kan de respectieve gegevens niet bekijken, buiten LimeSurvey om. Let daarom op aan wie je [[Manage users/nl|rechten]] geeft.
  
  
{{Alert|Once you create encryption keys, make sure to create backups. If you lose the keys, the data will become unusable since it cannot be recovered any longer. If you use LimeSurvey CE, the public and secret keys can be found in '''/application/config/security.php'''.}}
+
{{Alert|Nadat je sleutels voor encryptie hebt gemaakt, moet je back-ups maken. Als je de sleutel verliest, worden de gegevens onbruikbaar omdat ze niet meer kunnen worden gelezen. Als je LimeSurvey CE gebruikt, zijn de openbare en geheime sleutels te vinden in '''/application/config/security.php'''.}}
  
  
===When to encrypt your data?===
+
=== Wanneer versleutelen? ===
  
  
There is no one correct answer to this question. It heavily depends on:
+
Dat is afhankelijk van:
  
*the type of data you collect
+
* het type gegevens dat wordt verzamelt
*where your survey is based on
+
* waar de gegevens staan
*national or federal legislation
+
* Nederlandse of Europese wetgeving
*...
+
* ...
  
Most of the time, it is important to encrypt personally identifiable data (e.g., as it is recommended in the General Data Protection Regulation). Therefore, fields such as first name, last name, email address, phone number, address, and so on can be used to identify the responses one person submitted.
+
Meestal is het belangrijk om persoonlijk identificeerbare gegevens te versleutelen (zoals aanbevolen in de Algemene Verordening Gegevensbescherming). Velden als voornaam, achternaam, e-mailadres, telefoonnummer, adres, ... kunnen worden gebruikt om de responsen te identificeren naar één persoon.
  
In other cases, the data that should be encrypted does not necessarily stop at the examples provided above. In certain scenarios (e.g., in medical research), you might need to encrypt most of your data if you can track back the responses to the person who submitted them.
+
In andere gevallen kunnen ook meer velden moeten worden versleuteld. Bijvoorbeeld in medisch onderzoek moet je mogelijk de meeste van de gegevens coderen als de antwoorden naar een persoon zijn te achterhalen.
  
'''As a result, please adapt your survey and the data collection to the local legislation!'''
+
'''Pas daarom de enquête en de gegevens aan de geldende wetgeving aan!'''
  
==Settings==
+
== Instellingen ==
There are three places in LimeSurvey where data encryption settings can be set:  
+
De encryptie kan worden ingesteld bij:
* [[Data_encryption#Question_attributes|question attributes]]  
+
* [[Data_encryption/nl#Vraagattributen|Vraagattributen]]
* [[Data_encryption#Participant_attributes|participant attributes]]
+
* [[Data_encryption/nl#Deelnemerattributen|Deelnemerattributen]]
* [[Data_encryption#Central_participant_database_attribute_management|central participant database attributes]].
+
* [[Data_encryption/nl#Deelnemerstabelattributen|Deelnemerstabelattributen]].
  
  
===Question attributes===
+
===Vraagattributen===
Question attribute "Encrypted" is used to enable data encryption for corresponding responses. This attribute is '''turned off''' by default. Once survey is activated, it is not possible to change this attribute.
+
Het attribuut "Gecodeerd" wordt gebruikt om de encryptie van  responsen op de enquête in te schakelen. Standaard '''uitgeschakeld'''. Na het activeren van de enquête kan de waarde van het attribuut niet meer worden gewijzigd.
  
  
Line 48: Line 48:
  
  
===Participant attributes===
+
===Deelnemerattributen===
Three core attributes (firstname, lastname, and email) are always shown in the [[Survey_participants|survey participants table]], the encryption being '''turned on''' by default.
+
Drie kernattributen (voornaam, achternaam en e-mailadres) worden altijd weergegeven in de [[Survey_participants/nl|deelnemerstabel]], waarbij de codering standaard is '''ingeschakeld'''.
  
Each new participant attribute will have encryption '''turned off''' by default.
+
Bij elk nieuw deelnemerattribuut is standaard encryptie '''uitgeschakeld'''.
  
Encryption can be turned on or off at any moment.
+
Encryptie kan op elk moment worden ingeschakeld en uitgeschakeld.
  
  
Line 59: Line 59:
  
  
===Central participant database attribute management===
+
===Deelnemerstabelattributen===
Three core attributes (firstname, lastname and email) are always shown in the [[Central_Participant_Database|central participant database]], the encryption being '''turned on''' by default.
+
Drie kernattributen (voornaam, achternaam en e-mailadres) worden altijd getoond in de [[Central_Participant_Database/nl|centrale deelnemersdatabase]], waarbij de codering standaard is '''ingeschakeld'''.
  
Each new participant attribute will have encryption '''turned off''' by default.
+
Bij elk nieuw deelnemerattribuut is standaard encryptie '''uitgeschakeld'''.
  
Encryption can be turned on or off at any moment.  
+
Encryptie kan op elk moment worden ingeschakeld en uitgeschakeld.  
  
  
 
<center>[[File:Cpdb attribute management.png|800px]]</center>
 
<center>[[File:Cpdb attribute management.png|800px]]</center>
  
==Advanced==
+
==Geavanceerd==
Sodium library is used to provide data encryption and decryption functionality for LimeSurvey.
+
In LimeSurvey wordt de Sodium-bibliotheek gebruikt voor de gegevenscodering en decoderingsfunctionaliteit.
  
<blockquote>''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.''
+
<blockquote>''Sodium is een moderne, gebruiksvriendelijke softwarebibliotheek voor codering, decodering, handtekeningen en wachtwoordhashing. Het is een portable, cross-compileerbare, installeerbare, packagable vork van NaCl, met een compatibele API en een uitgebreide API om de bruikbaarheid nog verder te vergroten. Het doel is om alle kernactiviteiten te bieden die nodig zijn om cryptografische hulpmiddelen van een hoger niveau te bouwen.''
  
  
''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.''</blockquote>
+
''Sodium is platform-onafhankelijk en taaloverschrijdend. Het werkt op verschillende compilers en besturingssystemen, waaronder Windows (met MinGW of Visual Studio, x86 en x86_64), iOS en Android. Javascript- en WebAssembly-versies zijn ook beschikbaar en worden volledig ondersteund. Bindingen voor alle gangbare programmeertalen zijn beschikbaar en worden goed ondersteund. '' </blockquote>
  
  
Version 7.2.0 and newer of the PHP programming language includes the Sodium extension (referred to as ext/sodium) as a core cryptography library. Version 2 of the PHP extension in PECL is compatible with ext/sodium in PHP 7.2.
+
Versie 7.2.0 en hoger van de PHP programmeertaal bevat de sodium-extensie (ext/sodium genoemd) als een cryptografiebibliotheek. Versie 2 van de PHP-extensie in PECL is compatibel met ext/sodium in PHP 7.2.
  
  
LimeSurvey uses the [https://github.com/paragonie/sodium_compat Sodium Compat] library to bridge with different PHP versions.
+
LimeSurvey gebruikt de [https://github.com/paragonie/sodium_compat Sodium Compat] bibliotheek om te werken met verschillende PHP-versies.
This library tentatively supports PHP 5.2.4 - 7.x (latest), but officially it only supports [https://https://secure.php.net/supported-versions.php non-EOL'd versions of PHP].
+
Deze bibliotheek ondersteunt voorlopig PHP 5.2.4 - 7.x (laatste), maar officieel ondersteunt het alleen [https://secure.php.net/supported-versions.php niet-EOL-versies van PHP].
  
  
Data encryption/decryption methods used in LimeSurvey are based on [https://libsodium.gitbook.io/doc/public-key_cryptography/public-key_signatures public-key signatures]. Public and secret keys can be found in /application/config/security.php file. Keys are automatically generated on first usage of encryption feature.
+
Gegevenscodering / decoderingsmethoden die in LimeSurvey worden gebruikt, zijn gebaseerd op [https://libsodium.gitbook.io/doc/public-key_cryptography/public-key_signatures publieke sleutel handtekeningen]. Openbare en geheime sleutels zijn te vinden in het bestand /application/config/security.php. Sleutels worden automatisch gegenereerd bij het eerste gebruik van de coderingsfunctie.
  
  
{{Alert|title=Warning|text=Once data encryption is turned on, data in corresponding database columns would become unreadable without decrypting them first. '''You should always have a backup of your encryption keys in case they get deleted'''.
+
{{Alert|title=Waarschuwing|text=Zodra gegevenscodering is ingeschakeld worden gegevens in overeenkomstige databasekolommen pas leesbaar na decoderen. '''Je moet altijd een back-up van de coderingssleutels hebben voor het geval ze worden verwijderd'''.
Also, once encryption keys are set, you should never change them because it would make all existing data unusable.}}
+
Ook moet je zodra coderingssleutels zijn ingesteld, deze nooit meer wijzigen omdat hierdoor alle bestaande gegevens onbruikbaar worden.}}
  
  
Partial string search won't be possible for database columns with encrypted data, only exact match search.
+
Gedeeltelijk zoeken naar teksten is niet mogelijk op  databasekolommen met gecodeerde gegevens, wel het zoeken naar een exacte overeenkomst.
  
 
+
==Fouten==
==Errors==
+
* '''Bibliotheek bestaat niet''' (library doesn't exists): De PHP Sodiumbibliotheek moet geïnstalleerd zijn om de gegevenscoderingsfunctie te kunnen gebruiken. [https://www.php.net/manual/en/sodium.installation.php Installatie]. Als je geen gegevenscodering wilt gebruiken, moet je de codering uitschakelen in de [[Data_encryption/nl#Instellingen|attribuutinstellingen]].
Possible errors when using data encryption:
+
* '''Verkeerde decoderingssleutel''' (wrong decryption key): De decoderingssleutel is gewijzigd sinds de gegevens voor het laatst zijn opgeslagen, dus gegevens kunnen niet worden gedecodeerd. De enige manier om gegevens te decoderen, is door de oorspronkelijke sleutel uit de back-up te halen en de huidige decoderingssleutel te vervangen door de originele sleutel.
* '''library doesn't exists''': PHP Sodium library have to be installed to be able to use data encryption feature. Here is a guide on how to install library: [https://www.php.net/manual/en/sodium.installation.php Sodium installation]. If you don't want to use data encryption, you have to disable encryption in [https://manual.limesurvey.org/Data_encryption#Settings attribute settings].
 
* '''wrong decryption key''': decryption key has changed since data was last saved, so data can't be decrypted. The only way to decrypt data is to retrieve the original key from backup and replace the current decryption key with the original key.
 

Latest revision as of 22:20, 12 September 2019

Other languages:
English • ‎日本語 • ‎Nederlands



Inleiding

Encryptie is een nieuwe functie in LimeSurvey 4. Het is gemaakt om enquêtebeheerders te helpen beter om te gaan met de nieuwe voorschriften voor gegevensbescherming die sinds 2016 in de Europese Unie zijn aangenomen (bijv. AVG).

Deze functie maakt het versleutelen mogelijk van persoonlijke gegevens in de deelnemersdatabase en / of deelnemers enquête. Bovendien kun je de gegevens die je van je respondenten verzamelt ook versleutelen als het encryptie vraagattribuut is ingeschakeld.

Hou er rekening mee dat de gegevens altijd zichtbaar zijn in de LimeSurvey-interface. Alleen de opslag in de database is versleuteld. Iemand die toegang heeft tot de server waarop je LimeSurvey host, kan de respectieve gegevens niet bekijken, buiten LimeSurvey om. Let daarom op aan wie je rechten geeft.


Important.png
Nadat je sleutels voor encryptie hebt gemaakt, moet je back-ups maken. Als je de sleutel verliest, worden de gegevens onbruikbaar omdat ze niet meer kunnen worden gelezen. Als je LimeSurvey CE gebruikt, zijn de openbare en geheime sleutels te vinden in /application/config/security.php.


Wanneer versleutelen?

Dat is afhankelijk van:

  • het type gegevens dat wordt verzamelt
  • waar de gegevens staan
  • Nederlandse of Europese wetgeving
  • ...

Meestal is het belangrijk om persoonlijk identificeerbare gegevens te versleutelen (zoals aanbevolen in de Algemene Verordening Gegevensbescherming). Velden als voornaam, achternaam, e-mailadres, telefoonnummer, adres, ... kunnen worden gebruikt om de responsen te identificeren naar één persoon.

In andere gevallen kunnen ook meer velden moeten worden versleuteld. Bijvoorbeeld in medisch onderzoek moet je mogelijk de meeste van de gegevens coderen als de antwoorden naar een persoon zijn te achterhalen.

Pas daarom de enquête en de gegevens aan de geldende wetgeving aan!

Instellingen

De encryptie kan worden ingesteld bij:


Vraagattributen

Het attribuut "Gecodeerd" wordt gebruikt om de encryptie van responsen op de enquête in te schakelen. Standaard uitgeschakeld. Na het activeren van de enquête kan de waarde van het attribuut niet meer worden gewijzigd.


Question attributes.png


Deelnemerattributen

Drie kernattributen (voornaam, achternaam en e-mailadres) worden altijd weergegeven in de deelnemerstabel, waarbij de codering standaard is ingeschakeld.

Bij elk nieuw deelnemerattribuut is standaard encryptie uitgeschakeld.

Encryptie kan op elk moment worden ingeschakeld en uitgeschakeld.


Manage attribute fields.png


Deelnemerstabelattributen

Drie kernattributen (voornaam, achternaam en e-mailadres) worden altijd getoond in de centrale deelnemersdatabase, waarbij de codering standaard is ingeschakeld.

Bij elk nieuw deelnemerattribuut is standaard encryptie uitgeschakeld.

Encryptie kan op elk moment worden ingeschakeld en uitgeschakeld.


Cpdb attribute management.png

Geavanceerd

In LimeSurvey wordt de Sodium-bibliotheek gebruikt voor de gegevenscodering en decoderingsfunctionaliteit.

Sodium is een moderne, gebruiksvriendelijke softwarebibliotheek voor codering, decodering, handtekeningen en wachtwoordhashing. Het is een portable, cross-compileerbare, installeerbare, packagable vork van NaCl, met een compatibele API en een uitgebreide API om de bruikbaarheid nog verder te vergroten. Het doel is om alle kernactiviteiten te bieden die nodig zijn om cryptografische hulpmiddelen van een hoger niveau te bouwen.


Sodium is platform-onafhankelijk en taaloverschrijdend. Het werkt op verschillende compilers en besturingssystemen, waaronder Windows (met MinGW of Visual Studio, x86 en x86_64), iOS en Android. Javascript- en WebAssembly-versies zijn ook beschikbaar en worden volledig ondersteund. Bindingen voor alle gangbare programmeertalen zijn beschikbaar en worden goed ondersteund.


Versie 7.2.0 en hoger van de PHP programmeertaal bevat de sodium-extensie (ext/sodium genoemd) als een cryptografiebibliotheek. Versie 2 van de PHP-extensie in PECL is compatibel met ext/sodium in PHP 7.2.


LimeSurvey gebruikt de Sodium Compat bibliotheek om te werken met verschillende PHP-versies. Deze bibliotheek ondersteunt voorlopig PHP 5.2.4 - 7.x (laatste), maar officieel ondersteunt het alleen niet-EOL-versies van PHP.


Gegevenscodering / decoderingsmethoden die in LimeSurvey worden gebruikt, zijn gebaseerd op publieke sleutel handtekeningen. Openbare en geheime sleutels zijn te vinden in het bestand /application/config/security.php. Sleutels worden automatisch gegenereerd bij het eerste gebruik van de coderingsfunctie.


Important.png
Waarschuwing : Zodra gegevenscodering is ingeschakeld worden gegevens in overeenkomstige databasekolommen pas leesbaar na decoderen. Je moet altijd een back-up van de coderingssleutels hebben voor het geval ze worden verwijderd. Ook moet je zodra coderingssleutels zijn ingesteld, deze nooit meer wijzigen omdat hierdoor alle bestaande gegevens onbruikbaar worden.


Gedeeltelijk zoeken naar teksten is niet mogelijk op databasekolommen met gecodeerde gegevens, wel het zoeken naar een exacte overeenkomst.

Fouten

  • Bibliotheek bestaat niet (library doesn't exists): De PHP Sodiumbibliotheek moet geïnstalleerd zijn om de gegevenscoderingsfunctie te kunnen gebruiken. Installatie. Als je geen gegevenscodering wilt gebruiken, moet je de codering uitschakelen in de attribuutinstellingen.
  • Verkeerde decoderingssleutel (wrong decryption key): De decoderingssleutel is gewijzigd sinds de gegevens voor het laatst zijn opgeslagen, dus gegevens kunnen niet worden gedecodeerd. De enige manier om gegevens te decoderen, is door de oorspronkelijke sleutel uit de back-up te halen en de huidige decoderingssleutel te vervangen door de originele sleutel.