MySQL Enterprise Data Masking and De-Identification Elements •EU General Data Protection Directive (GDPR): Protection of Personal Data. •Data Protection Act (UK): Protection of Personal Data. •Sarbanes Oxley, GLBA, The USA Patriot Act, Identity Theft and Assumption Deterrence Act of 1998. •FERPA – Student Data, NASD, CA SB1386 and AB 1950, State Data Protection Laws, Basel II. •A server-side plugin named  data_masking . •A set of loadable functions provides an SQL-level API for performing masking and de-identification operations. Some of these functions require the  SUPER  privilege. 1576 To install the MySQL Enterprise Data Masking and De-Identification plugin and functions, use the INSTALL PLUGIN  and  CREATE FUNCTION  statements, adjusting the  .so  suffix for your platform as necessary: The plugin library file base name is  data_masking . The file name suffix differs per platform (for example, .so  for Unix and Unix-like systems,  .dll  for Windows). To be usable by the server, the plugin library file must be located in the MySQL plugin directory (the directory named by the  plugin_dir  system variable). If necessary, configure the plugin directory location by setting the value of  plugin_dir  at server startup. This section describes how to install or uninstall MySQL Enterprise Data Masking and De-Identification, which is implemented as a plugin library file containing a plugin and several loadable functions. For general information about installing or uninstalling plugins and loadable functions, see Section 5.6.1, “Installing and Uninstalling Plugins” , and Section 5.7.1, “Installing and Uninstalling Loadable Functions” . MySQL Enterprise Data Masking and De-Identification is based on a plugin library that implements these elements: The following sections describe the elements of MySQL Enterprise Data Masking and De-Identification, discuss how to install and use it, and provide reference information for its elements. 6.5.1 MySQL Enterprise Data Masking and De-Identification Elements 6.5.2 Installing or Uninstalling MySQL Enterprise Data Masking and De- Identification INSTALL PLUGIN data_masking SONAME ’data_masking.so’; CREATE FUNCTION gen_blocklist RETURNS STRING SONAME ’data_masking.so’; CREATE FUNCTION gen_dictionary RETURNS STRING SONAME ’data_masking.so’; CREATE FUNCTION gen_dictionary_drop RETURNS STRING SONAME ’data_masking.so’; CREATE FUNCTION gen_dictionary_load RETURNS STRING SONAME ’data_masking.so’; CREATE FUNCTION gen_range RETURNS INTEGER SONAME ’data_masking.so’; CREATE FUNCTION gen_rnd_email RETURNS STRING SONAME ’data_masking.so’; CREATE FUNCTION gen_rnd_pan RETURNS STRING SONAME ’data_masking.so’; CREATE FUNCTION gen_rnd_ssn RETURNS STRING SONAME ’data_masking.so’; CREATE FUNCTION gen_rnd_us_phone RETURNS STRING