Skip to main content
Delphix

Algorithm: Summary (KBA4066)

 

KBA

KBA# 4066

Applicable Delphix Versions

Click here to view the versions of the Delphix engine to which this article applies
Major Release All Sub Releases
6.0 6.0.0.0, 6.0.1.0, 6.0.1.1, 6.0.2.0, 6.0.2.1, 6.0.3.0, 6.0.3.1, 6.0.4.0, 6.0.4.1, 6.0.4.2, 6.0.5.0, 6.0.6.0, 6.0.6.1, 6.0.7.0

5.3

5.3.0.0, 5.3.0.1, 5.3.0.2, 5.3.0.3, 5.3.1.0, 5.3.1.1, 5.3.1.2, 5.3.2.0, 5.3.3.0, 5.3.3.1, 5.3.4.0, 5.3.5.0, 5.3.6.0, 5.3.7.0, 5.3.7.1, 5.3.8.0, 5.3.8.1, 5.3.9.0

5.2

5.2.2.0, 5.2.2.1, 5.2.3.0, 5.2.4.0, 5.2.5.0, 5.2.5.1, 5.2.6.0, 5.2.6.1

5.1

5.1.0.0, 5.1.1.0, 5.1.2.0, 5.1.3.0, 5.1.4.0, 5.1.5.0, 5.1.5.1, 5.1.6.0, 5.1.7.0, 5.1.8.0, 5.1.8.1, 5.1.9.0, 5.1.10.0

5.0

5.0.1.0, 5.0.1.1, 5.0.2.0, 5.0.2.1, 5.0.2.2, 5.0.2.3, 5.0.3.0, 5.0.3.1, 5.0.4.0, 5.0.4.1, 5.0.5.0, 5.0.5.1, 5.0.5.2, 5.0.5.3, 5.0.5.4

At a Glance  

Location: UI: Settings - Algorithms
UI: Settings - Custom Algorithms
Algorithm Types:
  • Predefined Out-of-the-Box Algorithms.
  • Customer created using Delphix Algorithm Framework.
  • Algorithm SDK1.
  • Custom Algorithms (Legacy)1.
New and Deprecated
Algorithms:
With the New Algorithm Framework, a new set of algorithms have been released in version 6.0.x and additional algorithms are being created. 

This means that some old algorithms have been deprecated or will be in the future. See below for details. 

1 This is Frameworks to create Custom Algorithms. These are created by Delphix Technical Services or by one of our partners.  

Predefined Out of the Box Algorithms 

These algorithms are predefined, Out-of-the-Box, and ready to be used upon deployment of the Delphix Masking Engine. There are a total of 33 predefined algorithms, which are grouped below by algorithm type.  

Algorithm # F.work Ref.Int. Mapping Encoding Ver. Docs
Date Shift (Discrete) 1 Plugin Yes No ASCII Num 6.0.7.0 TBC
Date Shift (Fixed) 1 DS Yes Yes ASCII Num 6.0.7.0 TBC
Date Shift (Variable) 1 Plugin No Random ASCII Num 6.0.7.0 TBC
Credit Card 1 PC Yes TBC ASCII Num 6.0.7.0 TBC
CM Alpha-Numeric 1 CM Yes Yes TBC 6.0.6.0 TBC
CM Digits 1 CM Yes Yes ASCII Num 6.0.6.0 TBC
CM Numeric 1 Plugin Yes Yes ASCII Num 6.0.6.0 TBC
Secure Lookup (Legacy) 20 SL Yes No ASCII - KBA1243
Tokenization 3 TA Yes Yes ASCII * - KBA1002
Phone SL 1 Code Yes No ASCII -  
Zip-4 1 Code Yes No ASCII Num - KBA4071
Secure Shuffle 1 Code  No No Any - KBA4088
Credit Card - Code No Random ASCII Num 6.0.7.0 KBA4068
Date Shift (Discrete) - Code Yes No ASCII Num 6.0.7.0 KBA1812
Date Shift (Fixed) - Code Yes Yes ASCII Num 6.0.7.0 KBA1812
Date Shift (Variable) - Code No Random ASCII Num 6.0.7.0 KBA1812
  • Algorithm - Algorithm Type 
    • x n - The number of Out-of-the-Box algorithms using this algorithm type. 
  • F.work - Framework - How the masked value is generated:
    • Code - uses a hard-coded algorithm.
    • Lookup - uses a hashed lookup table.  
  • Ref.Int: - Referential Integrity - This defines that the input value will be masked to the same output value, even across tables and between different job executions.
  • Mapping - Describes if the algorithm will map input values to a unique masked value.
    • Yes - means the mapping is unique. (For example, only the value Fred will mask to George). 
    • No - means that the mapping isn't unique and collisions are possible/likely. (Multiple input values could mask to the same masked value).  
    • Random - means that the output value is randomly generated so it is indeterminate, but not guaranteed to be unique within a single run or between runs. 
  • Encoding - The output character encoding. 
  • Ver. - Version algorithm was added or deprecated.  It is recommended to not use deprecated algorithms. 
  • Docs - Links to more specific information about the algorithm.  
Note

Note:

When the algorithm is used in masking, the encoding is only ASCII. When this algorithm is used in Tokenization, it works on all encodings.

Delphix Algorithm Frameworks (Custom Algorithms)

Below is a listing of the default Out-of-the-Box Algorithm Framework. These are used to create Custom Algorithms.  For example, a customer can create their own version of a secure lookup algorithm by supplying their own lookup file.

Framework Code Ref.Int Mapping Encoding Pool Ver. Docs
Payment Card PC         6.0.7.0 TBC
Date DS         6.0.7.0 TBC
Dependent Date Shift DDS         6.0.7.0 TBC
Character Mapping CM Yes Yes US-ASCII 7   6.0.5.0 TBC
Secure Lookup (New) SL Yes No All < 500K 6.0.3.0 TBC
Binary Lookup BinarySL Yes -- Binary - - TBC
Free Text Redaction DA Yes -- All1 - - TBC
Mapping MA Yes Yes All < 5M - KBA1328
Tokenization TA  Yes Yes All / US-ASCII 7 No limit - KBA1002
Min-Max MM  Yes No US-ASCII 7 N/A EOL KBA1754
Segment Mapping SM Yes Yes US-ASCII 7 < 10K EOL KBA1775
Data Cleansing DC Yes Yes All < 500K EOL TBC
Secure Lookup SL Yes No All < 500K 6.0.3.0 KBA1243
  • Algorithm - Algorithm Type.
  • Type - How the masked value is generated:
    • Code - uses a hard-coded algorithm.
    • Lookup - uses a hashed lookup table.  
  • Ref.Int: - Referential Integrity - This defines that the input value will be masked to the same output value, even across tables and between different job executions.
  • Mapping - Describes if the algorithm will map input values to a unique masked value.
    • Yes - means the mapping is unique. (For example, only the value Fred will mask to George). 
    • No - means that the mapping isn't unique and collisions are possible/likely. (Multiple input values could mask to the same masked value).  
    • Random - means that the output value is randomly generated so it is indeterminate, but not guaranteed to be unique within a single run or between runs. 
  • Encoding - The output character encoding. 
  • Pool - Recommended max number of records in the algorithm (the pool of lookup values).
  • Dep. - Deprecated version or if planned to be deprecated in the future.  It is recommended to not use these algorithms. 
  • Docs - Links to more specific information about the algorithm.  

 1 Words in Free Text Redaction have to be separated by space (or be the first or last word). This might limit the use in some languages where words are represented by one single character. 

Algorithm SDK

If none of the Algorithms above meet your needs, you might need to get Delphix or a Delphix Partner to create a Custom Algorithm.

Examples of special requirements can be:

  • Retaining case from input to masked value.
  • Masking of consistently different fields with first, surname, and full name.
  • Masking large lookup pool of Credit Card or ID numbers containing special rules or mathematical formulas. 
  • Addresses with locality rules. 
  • Multi-data type fields - for example, phone, mobile, and email in the same field.

Custom Algorithms (Legacy)

The Custom Algorithm (Mapplets) framework will be deprecated and has been replaced with the Algorithm SDK.

 

Related Articles