Name (Algorithm frameworks)
Starting in version 6.0.8.0, Delphix has introduced a builtin Extensible Name Algorithm Framework, co-existing with the legacy FIRST NAME SL and LAST NAME SL ones. Name Framework provides masking functionality for String type input. It's based on Secure Lookup mechanism, and includes additional configuration flags making it more flexible and robust.
Similar to Secure Lookup it creates masking results which are deterministic (i.e. the same algorithm with the same configuration and security key will provide the same result for the same input) and not unique. If you are looking for a framework whose algorithm(s) will provide unique masking results, you should consider using other frameworks (for example Character Mapping).
The new framework uses SHA256 hashing method and allows case configurations for input and output (i.e. masked) values. It also allows filtering accents and configuring the maximum length of the masked value and the maximum number of masked names returned. A multi-word input name may contain particles, such as prefixes, suffixes, titles, etc. The new framework allows configuring which particles are to be preserved and removed.
Creating a Name Algorithm via UI

In the upper right-hand corner of the Algorithm tab, click Add Algorithm.
Select the Name Framework. The Create Name Algorithm pane appears.
Enter an Algorithm Name. (Required)
Info:
This MUST be unique on the Masking Engine.
Enter a Description. (Optional)
Choose the Case Sensitive Lookup configuration. The default is false (unchecked), which means lookup is not case sensitive, so the same input of different cases will be masked to the same value. For example:
CODEPeter -> John peter -> john
If the Case Sensitive Lookup box is checked, then the same input of different cases will be masked to the different values, for example:
CODEPeter -> John peter -> andrew
Choose the Filter Accent configuration. The default is true (checked). If the Filter Accent box is checked, then similar input with and without accented symbols will be masked to the same values. For example:
CODEAdrián -> John Adrian -> John
If the Filter Accent box is unchecked, it will be masked to the different values, for example:
CODEAdrián -> John Adrian -> Peter
Choose the Maximum Number of Names. (Range 1-4, default 2). This is the maximum number of names to be masked and returned. The rest are dropped.
Choose the Maximum Masked Name Length. (A number greater than or equal to 0, default is 0). This is the maximum number of characters or length of the masked output string. The masked result is trimmed to fit that length. Value 0 means length is unlimited.
Info:
We also try to detect the length of the destination field. Some Data Sources provide that value, while others don't. For example: if Data Source provides value 10 for the destination column length and current configuration field is set to 0 or any value longer than 10 - the shortest value wins, i.e. in this example masked result would be trimmed to 10 characters.
Warning:
Some UTF-8 characters might take 2 bytes. If lookup file contains those characters - the trimmed result might be not as expected, since we trim by the number of characters and not number of bytes. There is a bug open for that mismatch.
Choose the Output (Masked) Case configuration. (Default is Preserve Input Case)
Output (Masked) case options:
Preserve Lookup File Case - keep masked value as found in the Lookup File.
Preserve Input Case (Default) - check the input case, which can be one of the following three:
All uppercase - in that case force whole masked value to uppercase
All lowercase - in that case force whole masked value to lowercase
Mixed (if at least 1 character case is different from others) - in that case keep masked value as found in the Lookup File
Force all Uppercase - forces whole masked value to uppercase
Force all lowercase - forces whole masked value to lowercase
Specify a Particles to Preserve File. (Optional. A locally chosen file or a FileReference) Contains a list of particles to be preserved. These particles are not masked. For example, if the file contains the particle "von":
CODEvon Froum -> von Smith
Specify a Particles to Remove File. (Optional. A locally chosen file or a FileReference) Contains a list particles to be removed. These particles are removed prior to masking and do not affect masking result. For example, if the file contains the particle "von":
CODEvon Froum -> Smith Froum -> Smith
Info:
If particle is found in both "Preserve" and "Remove" files - it will be removed.
If the input contains only particles, a particle will be masked as if it were a name.Specify a Lookup File. (Required. A locally chosen file or a FileReference)
This file is a single list of values. It does not require a header. Every line of the Lookup File might be used as a masked value. The Lookup File must be ASCII or UTF-8 encoding compatible. The following is sample file content:
CODEAnn Marie Tomas Ann-Marie Basil Mark
When you are finished, click Save.
For information on creating Name algorithms through the API, see API Calls for Creating Algorithms - Name.