Format preservation based masking system and method.
Abstract
A system and method of masking based on the preservation of formats, computer implemented are provided. The system obtains a first set of letters and a private key, and encrypts the first set of letters for a list of CAPTCHAs, using the first set and private key. CAPTCHAs list comprises a set of CAPTCHAs. a dynamic mapping is generated based on the encrypted letters, including one or more keys, each key to a specific point in the first set of letters. a position of each maskable letters in a second set of characters is calculated, using the dynamic mapping and masking the maskable letters is performed, based on the position of each maskable letters, for masked data ,

Term
9.4 yearsleft in the term
Expires 25 February 2036.
- Priority
- Filed
- Granted
- Today
- Expires
12 claims: 2 independent, 10 dependent
- 1REIVINDICACIONES 1. Un sistema de enmascaramiento basado en la preservación de formatos, caracterizado porque comprende:una memoria que almacena instrucciones;un procesador de hardware acoplado con dicha memoria, en el que dicho procesador de hardware está configurado por dichas instrucciones para: obtener un conjunto de entrada de letras y una clave privada procedentes de un usuario, cifrar un conjunto de letras para obtener una lista de letras cifradas, usando dicho conjunto de letras y dicha clave privada, en el que dicha lista de letras cifradas comprende un conjunto de letras cifradas, generar una correlación dinámica basada en dicha lista de letras cifradas, en la que dicha correlación dinámica comprende un conjunto de claves, en la que cada clave es específica para una letra en dicho conjunto de letras, calcular una posición de cada una de las letras enmascarables, en dicho conjunto de entrada de letras, que ha de ser enmascarado, usando dicha correlación dinámica, y realizar el enmascaramiento de dichas letras enmascarables, en base a dicha posición de cada una de dichas letras enmascarables, para obtener datos enmascarados, usando dicha correlación dinámica.
- 2El sistema de enmascaramiento basado en la preservación de formatos de conformidad con la reivindicación 1, caracterizado porque dicho conjunto de letras y dicho conjunto de entrada de letras comprenden al menos uno entre un carácter, un valor numérico y un símbolo.
- 3El sistema de enmascaramiento basado en la preservación de formatos de conformidad con la reivindicación 1, caracterizado porque dicho conjunto de letras y dicho conjunto de entrada de letras son seleccionados a partir de uno o más idiomas.
- 4El sistema de enmascaramiento basado en la preservación de formatos de conformidad con la reivindicación 1, en el que, cuando dicho conjunto de entrada de letras comprende uno o más números, dicho procesador de hardware es adicionalmente configurado por dichas instrucciones para:generar una correlación de Bits Más Significativos (MSB) para dichos uno o más números,. calcular una posición de cada una de las letras enmascarables en dicho conjunto de entrada de letras, usando dicha correlación dinámica y dicha correlación de MSB, y realizar el enmascaramiento de dichas letras enmascarables, en base a dicha posición de cada una de dichas letras enmascarables, para obtener datos enmascarados, usando dicha correlación dinámica y la correlación de MSB.
- 5El sistema de enmascaramiento basado en la preservación de formatos de la reivindicación 1, caracterizado porque dicho procesador de hardware es adicionalmente configurado por dichas instrucciones para:determinar un orden de las letras en dicha lista de letras cifradas, clasificar dicha lista de letras cifradas, a partir de dicho orden de letras, para obtener una lista clasificada de letras cifradas, generar una correlación dinámica basada en dicha lista clasificada de letras cifradas, en la que dicha correlación dinámica comprende un conjunto de claves y valores, siendo cada clave específica para al menos una letra en dicho conjunto de letras y cada valor comprende una o más letras re-dispuestas, para ser enmascaradas a partir de dicho conjunto de letras, calcular una posición de cada una de las letras enmascarables en dicho conjunto de entrada de letras que han de ser enmascaradas usando dicha correlación dinámica, y realizar el enmascaramiento de dichas letras enmascarables, en base a dicha posición de cada una de dichas letras enmascarables, para obtener datos enmascarados, usando dicha correlación dinámica.
- 6El sistema de enmascaramiento basado en la preservación de formatos de conformidad con la reivindicación 1, caracterizado porque dicha correlación dinámica comprende además un índice indicativo de la letra de reemplazo enmascarada, para cada letra en dicho conjunto de letras.
- 7El sistema de enmascaramiento basado en la preservación de formatos de conformidad con la reivindicación 4, caracterizado porque, cuando dichos uno o más números son indicativos de un intervalo especificado, dichas letras enmascarables, que comprenden dichos uno o más números, son enmascaradas dentro de dicho intervalo especificado.
- 8Un procedimiento de enmascaramiento basado en la preservación de formatos, implementado por ordenador, caracterizado porque comprende los pasos de:obtener un conjunto de entrada de letras y una clave privada provenientes de un usuario;cifrar un conjunto de letras para obtener una lista de letras cifradas, usando dicho conjunto de letras y dicha clave privada, en el que dicha lista de letras cifradas comprende un conjunto de letras cifradas;generar una correlación dinámica basada en dicha lista de letras cifradas, en la que dicha correlación dinámica comprende un conjunto de claves, en la que cada clave es específica para una letra en dicho conjunto de letras;calcular una posición de cada una de las letras enmascarables, en dicho conjunto de entrada de letras, que han de ser enmascaradas, usando dicha correlación dinámica;y realizar el enmascaramiento de dichas letras enmascarables, en base a dicha posición de cada una de dichas letras enmascarables, para obtener datos enmascarados, usando dicha correlación dinámica.
- 9El procedimiento de enmascaramiento basado en la preservación de formatos, implementado por ordenador, de conformidad con la reivindicación 8, caracterizado porque dicho conjunto de letras y dicho conjunto de entrada de letras comprenden al menos uno entre un carácter, un valor numérico y un símbolo, y en el que dicho conjunto de letras y dicho conjunto de entrada de letras son seleccionados a partir de uno o más idiomas.
- 10El procedimiento de enmascaramiento basado en la preservación de formatos, implementado por ordenador, de conformidad con la reivindicación 8, caracterizado porque, cuando dicho conjunto de entrada de letras comprende uno o más números, dicho procedimiento comprende los pasos de:generar una correlación de Bits Más Significativos (MSB) para dichos uno o más números;calcular una posición de cada una de las letras enmascarables en dicho conjunto de entrada de letras, usando dicha correlación dinámica y dicha correlación de MSB;y realizar el enmascaramiento de dichas letras enmascarables en base a dicha posición de cada una de dichas letras enmascarables, para obtener datos enmascarados, usando dicha correlación dinámica y dicha correlación de MSB.
- 11El procedimiento de enmascaramiento basado en la preservación de formatos, implementado por ordenador, de conformidad con la reivindicación 8, caracterizado porque comprende además los pasos de:determinar un orden de las letras en dicha lista de letras cifradas;clasificar dicha lista de letras cifradas, a partir de dicho orden de letras, para obtener una lista clasificada de letras cifradas;generar una correlación dinámica en base a dicha lista clasificada de letras cifradas, en la que dicha correlación dinámica comprende un conjunto de claves y valores, cada clave es específica para al menos una letra en dicho conjunto de letras y cada valor comprende una o más letras re-dispuestas para ser enmascaradas a partir de dicho conjunto de letras;calcular una posición de cada una de las letras enmascarables, en dicho conjunto de entrada de letras, que han de ser enmascaradas, usando dicha correlación dinámica;y realizar el enmascaramiento de dichas letras enmascarables, en base a dicha posición de cada una de dichas letras enmascarables, para obtener datos enmascarados, usando dicha correlación dinámica.
- 12El procedimiento de enmascaramiento basado en la preservación de formatos, implementado por ordenador, de conformidad con la reivindicación 10, caracterizado porque, cuando dichos uno o más números son indicativos de un intervalo especificado, dichas letras enmascarables, que comprenden dichos uno o 10 más números, son enmascaradas dentro de dicho intervalo especificado.
Independent claims12
149 paragraphs in 6 sections, as filed
(54) Title: MASKING SYSTEM AND PROCEDURE BASED ON PRESERVATION OF FORMATS.
(54) Title: FORMAT PRESERVATION BASED MASKING SYSTEM AND METHOD.
(57) Summary
A computer-implemented format preservation-based masking system and procedure are provided. The system obtains a first set of letters and a private key, and encrypts the first set of letters to obtain a list of encrypted letters, using the first set and the private key. The cipher letter list comprises a set of cipher letters. A dynamic correlation is generated based on the encrypted letters, which includes one or more keys, each key being specific for a letter in the first set of letters. A position of each of the masked letters is calculated in a second set of letters, using dynamic correlation, and masking of the masked letters is performed, based on the position of each of the masked letters, to obtain masked data. , using dynamic correlation.
(57) Abstract
A Computer implement format preservation based masking system and method is provided. The system obtains a first set of letters and a private key, and encrypts the first set of letters to obtain an encrypted letters list using the first set and private key. The encrypted letters list comprises a set of encrypted letters. A dynamic map is generated based on the encrypted letters, which ineludes one or more keys, each key being specific to a letter in the first set letters. A position of each of the maskable letters in a second set of letters is calculated using the dynamic map, and performs masking of the maskable letters based on the position of each of the maskable letters to obtain masked data using the dynamic map.
MASKING SYSTEM AND PROCEDURE BASED ON PRESERVATION OF FORMATS
FIELD OF THE INVENTION
The embodiments herein relate generally to information privacy systems and more specifically to a format preservation-based masking system and procedure.
BACKGROUND OF THE INVENTION
Multiple organizations inadvertently share production data for testing purposes in a non-production environment. This increases the risk of data breaches. Masking of sensitive data is a heuristic approach that organizations take in order to comply with data privacy mandates. Today's data masking tools have been used by organizations to share data in a non-production environment, in order to maintain high data usability and non-disclosure of sensitive customer data. These tools offer a wide variety of masking techniques that are capable of masking sensitive data to meet various expectations for data privacy. However, these tools mask data using a predefined static query to replace the original data. Using such techniques (or tools), the original data is easy to reproduce (or decrypt) and is therefore less secure, leading to compromise on utility and privacy. Furthermore, existing solutions require that the data be specified within a specific range.
Additionally, existing solutions work on physical queries of original and masked data correlations, which requires a computer system to consume more disk space, and more time in terms of creating, updating and processing the data in a presentable and consolidated format. . It is, therefore, a challenge in maintaining consistency of data sharing at the enterprise level, without disturbing the format of the data.
BRIEF DESCRIPTION OF THE INVENTION
The following presents a simplified summary of some embodiments of the disclosure, in order to provide a basic understanding of the embodiments. This summary is not a comprehensive overview of accomplishments. It is not intended to identify key / critical elements of the realizations, or to delineate the scope of the realizations. Its sole purpose is to present some embodiments in simplified form, as a prelude to the more detailed description that follows.
In light of the foregoing, one embodiment herein provides a format preservation based masking system. A masking system based on the preservation of formats, which comprises a memory that stores instructions; a hardware processor coupled with memory, where the hardware processor is configured by instructions to: get an input set of letters and a private key from a user, encrypt a set of letters to get a list of encrypted letters, using the set of letters and the private key, where the list of encrypted letters includes a set of encrypted letters, generating a dynamic map based on the list of encrypted letters, wherein the dynamic map includes a set of keys, and each key is specific to a letter in the letter set; calculate a position of each of the masked letters in the input set of letters to be masked using dynamic correlation, and perform masking of the masked letters based on the position of each of the masked letters, to obtain masked data, using dynamic correlation.
The letter set and the letter input set comprise at least one of a character, a numeric value, and a symbol. The letter set and the letter input set are selected from one or more languages. When the input set of letters comprises one or more numbers, the hardware processor is further configured by the instructions to: generate a Most Significant Bit (MSB) correlation for said one or more numbers, calculate a position of each of the masked letters in the input set of letters, using dynamic correlation and MSB correlation, and perform masking of the masked letters, based on the position of each of the masked letters, to obtain masked data, using dynamic correlation and MSB correlation.
The hardware processor is further configured by the instructions to determine an order of the letters in the cipher letter list, sort the cipher letter list from the letter order, to obtain a sorted cipher letter list, generate a correlation dynamic based on the classified list of encrypted letters, where the dynamic correlation comprises a set of keys and values, each key being specific for at least one letter in the set of letters, and each value comprises one or more letters re-arranged to be masked from the set of letters; calculate a position of each of the masked letters in the input set of letters to be masked, using dynamic correlation, and perform masking of the masked letters, based on the position of each of the masked letters, to obtain masked data using dynamic correlation. The dynamic correlation further comprises an index indicative of the masked replacement letter for each letter in the set of letters.
When said one or more numbers are indicative of a specified range, the maskable letters, comprising said one or more numbers, are masked within the specified range.
In another aspect, a computer implemented format preservation based masking procedure is provided. The procedure comprises: obtaining an input set of letters and a private key from a user; encrypting a set of letters to obtain a list of encrypted letters, using the set of letters and the private key, wherein the list of encrypted letters comprises a set of encrypted letters; generating a dynamic map based on the list of encrypted letters, wherein the dynamic map comprises a set of keys, where each key is specific to a letter in the set of letters; calculating a position of each of the masked letters in the input set of letters to be masked, using dynamic correlation; and performing masking of the masked letters based on the position of each of the masked letters, to obtain masked data, using dynamic correlation.
The letter set and the letter input set comprise at least one of a character, a numeric value and a symbol, and wherein the letter set and the letter input set are selected from one or more languages.
When the input set of letters comprises one or more numbers, the method comprises: generating a Most Significant Bit (MSB) correlation for said one or more numbers; calculating a position of each of the maskable letters in the input set of letters using dynamic mapping and MSB mapping; and performing masking of the masked letters based on the position of each of the masked letters, to obtain masked data, using dynamic correlation and MSB correlation.
Understanding the procedure: determine an order of the letters in the list of encrypted letters; sort the list of encrypted letters from the order of the letters, to obtain a ranked list of encrypted letters; generate a dynamic correlation based on the classified list of cipher letters, where the dynamic correlation comprises a set of keys and values, each key being specific to at least one letter in the set of letters, and each value comprises one or more letters rearranged to be masked from the set of letters; calculating a position of each of the masked letters in the input set of letters to be masked, using dynamic correlation; and performing masking of the masked letters, based on the position of each of the masked letters, to obtain masked data, using dynamic correlation.
In yet another aspect, one or more non-transient, machine-readable information storage means is provided comprising one or more instructions. Said one or more instructions, when they are executed by one or more hardware processors, cause the obtaining of an input set of letters and a private key from a user; encrypting a set of letters to obtain a list of encrypted letters, using the set of letters and the private key, wherein the list of encrypted letters comprises a set of encrypted letters; generating a dynamic map based on the list of encrypted letters, wherein the dynamic map comprises a set of keys, where each key is specific to a letter in the set of letters; calculating a position of each of the masked letters in the input set of letters to be masked, using dynamic correlation; and performing masking of the masked letters, based on the position of each of the masked letters, to obtain masked data, using dynamic correlation.
The letter set and the letter input set comprise at least one of a character, a number and a symbol, and wherein the letter set and the letter input set are selected from one or more languages.
When the input set of letters comprises one or more numbers, said one or more instructions, when executed by one or more hardware processors, cause: the generation of a Most Significant Bit (MSB) correlation for said one or more numbers ; calculating a position of each of the masked letters in the input set of letters, using dynamic correlation and MSB correlation, and performing masking of the masked letters, based on the position of each of the masked letters, to obtain masked data, using dynamic correlation and MSB correlation.
The one or more instructions, when executed by one or more hardware processors, further cause: the determination of an order of the letters in the list of encrypted letters; sorting the list of encrypted letters from the order of the letters, to obtain a classified list of encrypted letters; the generation of a dynamic correlation based on the classified list of encrypted letters, wherein the dynamic correlation comprises a set of keys and values, each key being specific for at least one letter in the set of letters, and each value comprises one or more letters re-arranged to be masked from the letter set; calculating a position of each of the masked letters in the input set of letters to be masked, using dynamic correlation; and performing masking of the masked letters, based on the position of each of the masked letters, to obtain masked data, using dynamic correlation. When said one or more numbers are indicative of a specified range, the maskable letters, comprising said one or more numbers, are masked within the specified range.
It should be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative systems that implement the principles of the present subject matter. Similarly, it will be appreciated that any flowchart, flowchart, state transition diagram, pseudo-code, and the like represents various processes that can be essentially represented on a computer-readable medium, and therefore executed by a device. or computer processor, whether said device or computer processor is explicitly displayed or not.
BRIEF DESCRIPTION OF THE DRAWINGS
The embodiments herein will be better understood from the following detailed description, with reference to the drawings, in which:
FIG. 1 illustrates a block diagram of a format preservation-based masking system 100, according to one embodiment of the present disclosure;
FIG. 2 is a flowchart illustrating a computer implemented format preservation-based masking procedure using the format preservation-based masking system of FIG. 1, according to one embodiment of the present disclosure;
FIG. 3A illustrates comparative exemplary views of the original data and the masked data for a set of letters comprising characters (eg, address) according to one or more embodiments of the present disclosure;
FIG. 3B illustrates an exemplary view of the original data and the masked data for the minimum wage, with specified interval according to one or more embodiments of the present disclosure;
FIG. 3C illustrates an exemplary view of the original data and the masked data for the minimum wage, with no specified interval, according to one or more embodiments of the present disclosure;
FIG. 3D illustrates an exemplary view of the original data and the masked data for Chinese characters, according to one or more embodiments of the present disclosure; and FIG. 3E illustrates an exemplary view of the original data and the masked data for exceptional scenarios, indicative of certain values to be masked with predefined values, according to one or more embodiments of the present disclosure.
DETAILED DESCRIPTION OF THE INVENTION
The embodiments herein and the various advantageous features and details thereof are more fully explained with reference to the non-limiting embodiments which are illustrated in the accompanying drawings, and which are detailed in the following description. The examples used herein are intended merely to facilitate an understanding of the ways in which the embodiments herein may be practiced and to further enable those skilled in the art to practice the embodiments herein. . Accordingly, the examples should not be construed as limiting the scope of the embodiments herein.
The words "comprises", "has", "contains" and "includes", and other forms thereof, are conceived to be equivalent in meaning and open, in that an element, or elements, following any one These words are not intended to be an exhaustive enumeration of such item (s), nor are they intended to be limited only to the item (s) listed.
It should also be noted that, as used herein and in the appended claims, the singular forms "a", "an" and "the" include plural references, unless the context clearly indicates otherwise. Although any systems and procedures similar or equivalent to those described herein may be used in practice or testing of embodiments of the present disclosure, preferred systems and procedures are now described.
Some embodiments of this disclosure, which illustrate all its characteristics, will now be discussed in detail. The disclosed embodiments are merely exemplary of the disclosure, which can be made in various ways.
Before setting out the detailed explanation, it is noted that the entire discussion below, regardless of the specific implementation described, is exemplary in nature, rather than limiting.
With reference now to the drawings and, more specifically, to FIGS. 1 to 3F, where like reference characters indicate corresponding characteristics consistently throughout the length of the figures, preferred embodiments are shown, and these embodiments are described in the context of the following exemplary system and / or method.
FIG. 1 illustrates a block diagram of a format preservation-based masking system 100, according to one embodiment of the present disclosure. The terms "format preservation-based masking system" and "system" may be used interchangeably herein. The format preservation-based masking system 100 comprises a memory 102, a hardware processor 104, and an input / output (I / O) interface 106. The memory 102 further includes one or more modules 108 (or modules 108) . Memory 102, hardware processor 104, input / output (I / O) interface 106, and / or modules 108 may be coupled by a system bus or similar mechanism.
Memory 102 can store instructions, any number of pieces of information and data, used by a computer system, for example, format preservation-based masking system 100, to implement the functions (or embodiments) of the present disclosure. . Memory 102 may include, for example, volatile memory and / or non-volatile memory. Examples of volatile memory can include, but are not limited to, volatile random access memory (RAM). The non-volatile memory may additionally or alternatively comprise an electrically erasable and programmable read-only memory (EEPROM), a flash memory, a hard disk controller, or the like. Some examples of volatile memory include, but are not limited to, random access memory, dynamic random access memory, static random access memory, and the like. Some examples of non-volatile memory include, but are not limited to, hard drives, magnetic tapes, optical discs, programmable read-only memory, erasable and programmable read-only memory, electrically erasable and programmable read-only memory, flash memory, and Similar. The memory 102 may be configured to store information, data, applications, instructions, or the like, to allow the format preservation-based masking system 100 to perform various functions, according to various exemplary embodiments.
Additionally or alternatively, memory 102 may be configured to store instructions that, when executed by hardware processor 104, cause format preservation-based masking system 100 to behave in a manner as described in various embodiments ( eg, dynamic correlation generation, data masking, letter list encryption, and encryption letter list sort, if any). Memory 102 stores information, for example, information comprising at least one letter, and the like. The letters comprise at least one character, a number, a symbol or a blank space. The character is at least one uppercase, or one lowercase. The letters comprise one or more languages (eg, English, Hindi, Kannada, Tamil, Telugu, Chinese, Japanese, and the like).
The hardware processor 104 can be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuits and / or any other devices that manipulate signals based on instructions. operational. Additionally, the hardware processor 104 may comprise a multi-core architecture. Among other capabilities, hardware processor 104 is configured to capture and execute computer-readable instructions or modules stored in memory 102. Hardware processor 104 may include circuitry that implements, among others, the audio and logic functions associated with the communication. For example, hardware processor 104 may include, but is not limited to, one or more digital signal processors (DSP), one or more microprocessors, one or more special purpose computer chips, one or more arrays of programmable gates. in the field (FPGA), one or more application-specific integrated circuits (ASIO), one or more computers, various analog-to-digital converters, digital-to-analog converters and / or other supporting circuits.
The hardware processor 104 may therefore also include the functionality to encode messages and / or data or information. The hardware processor 104 may include, among other things, a clock, an arithmetic logic unit (ALU), and logic gates configured to support the operation of the hardware processor 104. In addition, hardware processor 104 may include functionality to run one or more software programs, which may be stored in memory 102 or otherwise accessible to hardware processor 104.
Hardware processor 104 is configured by instructions stored in memory 102. Hardware processor 104, when configured by instructions, obtains a set of letters and a private key as input. The input can be obtained from one or more users, in one or more languages. The input can include a selection of letters from one or more languages, using one or more input devices (eg. e.g., multi-language keyboards), as described above. Consider the set of letters (also referred to herein as a character set) and a private key (also referred to herein as a "user key"), as follows:
Set of letters = {a, b, c, d, e, .... x, y, z}
Private key = 'Key'
The hardware processor 104 is configured to receive an input set of letters (eg, Name, Salary, Address, etc.) from the user. The letter set may be optional, in case the format preservation-based masking system 100 uses an English character keyboard (eg, in the case of a client system using an English keyboard). When the letter set (can also be referred to as the first letter set) and the letter input set (a second letter set) are of non-English characters, the letter set, and the letter input set, can be received as input from one or more input devices (eg, non-English keyboards or any virtual keyboard that is capable of providing non-English letters). In one embodiment, non-English letters cannot be stored in memory 102. The set of letters and the input set of letters (from one or more languages) may (or may not) be stored in memory 102. In another In realization, the letter set and the letter input set (from one or more languages) can be obtained from one or more sources (e.g., the cloud, remote servers and / or third party sources), in real time or near real time. Hardware processor 104 is further configured by instructions to encrypt the set of letters (eg, the first set of letters) using one or more encryption techniques. The hardware processor 104 performs the encryption on the letter set so that it takes the private key into account as one of the parameters. In other words, the hardware processor 104 encrypts the set of letters to obtain a list of encrypted letters, using the set of letters and the private key. The cipher letter list comprises a set of cipher letters as shown in Table 1 below:
<td>Letter set (input)</td><td>List of encrypted letters</td>
<td>to</td><td>dcmn</td>
<td>b</td><td>edoi</td>
<td>c</td><td>fend</td>
<td>d</td><td>cbvf</td>
<td>and</td><td>baiu</td>
Table 1
After encryption, the hardware processor 104 checks whether or not the list contains a classified set of encrypted letters. When the cipher letter list, comprising a set of cipher letters, is found to be sorted in a specific order (eg, ascending order), the hardware processor 104 generates a dynamic correlation based on the set of letters encrypted, without necessarily having to sort. Dynamic mapping comprises a set of keys in which each key is specific to one letter in the set of letters.
In case the cipher letter list, comprising the cipher set of letters, is found to be in another specific order (eg, an unacceptable order), the hardware processor 104 sorts the cipher set of letters (p g., unclassified cipher letters), so that the format preservation-based masking system 100 outputs a classified list of ciphertext, as shown in Table 2 below:
<td>Letters</td><td>Classified encrypted letters</td>
<td>and</td><td>baiu</td>
<td>d</td><td>cvf</td>
<td>to</td><td>dcmn</td>
<td>c</td><td>edoi</td>
<td>b</td><td>fend</td>
<td>Tab</td><td>a2</td>
After classification (if required), the hardware processor 104 then generates a dynamic correlation, as shown in Table 3 below:
<td>Letter set (input)</td><td>Dynamic correlation output</td>
<td>to</td><td>and</td>
<td>b</td><td>d</td>
<td>c</td><td>to</td>
<td>d</td><td>c</td>
<td>and</td><td>b</td>
<td>Ta</td><td>blah 3</td>
When the format preservation-based masking system 100 outputs the classified list of ciphertets, the dynamic correlation generated using the classified list of cipher letters comprises a set of keys and values. Each value comprises one or more letters rearranged to be masked from the set of letters. The generated dynamic map will differ when there is a change in the private key. The hardware processor 104 is further configured to compute a position of each of the maskable letters in the input set of letters (eg, the second set of letters, such as, but not limited to, Name, Salary, Address, etc.), using dynamic correlation, and to perform masking of the masked letters based on the position of each of the masked letters, to obtain masked data, using dynamic correlation. For example, the private key = "My key" and the masked data are as shown in the following table 4:
<td>Letter Set (Original Character)</td><td>Masked character</td>
<td>to</td><td>c</td>
<td>b</td><td>d</td>
<td>c</td><td>and</td>
<td>d</td><td>b</td>
<td>and</td><td>to</td>
Table 4
Also, as described above, the generated dynamic map differs when there is a change in the private key. For example, the private key = "New Key" and the masked data are as shown in the following table 5:
<td>Letter Set (Original Character)</td><td>Masked character</td>
<td>to</td><td>d</td>
<td>b</td><td>c</td>
<td>c</td><td>to</td>
<td>d</td><td>and</td>
<td>and</td><td>b</td>
Table 5
As can be seen from Tables 4 and 5 above, the format, or the original letters (or characters) are preserved when the data is masked. The dynamic map comprises an index that is indicative of a masked replacement letter for each letter in the letter set, as can be seen from the tables above. The challenge remains when the input also includes numbers (either just numbers, or a combination of characters and symbols).
The embodiments of the present disclosure also solve one of the major challenges in the above approach, while generating unique numerical masked values. Consider the set of letters that comprise one or more numbers; the hardware processor 104 generates a map of Not Most Significant Bits (MSB) for said one or more numbers, calculates a position of each of the maskable letters (or numbers in this case) in the list of encrypted letters, using the correlation of No MSB (and the dynamic map already generated in the case where the input includes both characters and numbers). Encrypted letters comprise the set of letters and one or more encrypted numbers. The hardware processor 104 then performs masking of the masked letters (or numbers) based on the position of each of the masked letters, to obtain masked data. Considering the private key = "Key", an illustrated example of masked data for one or more numbers (obtained as input) is as shown in the following table 6 (Table 6 of No MSB correlation):
<td>Original number</td><td>Masked number</td>
<td> 1</td><td> 0</td>
<td> 2</td><td> 4</td>
<td> 3</td><td> 1</td>
<td> 4</td><td> 3</td>
<td> 0</td><td> 2</td>
Table 6
Based on this No MSB correlation, the masked value will be as shown in the following table 7:
<td>Original data</td><td>Masked data (when the data type is numeric)</td>
<td> 13</td><td> 01</td>
<td> 113</td><td> 001</td>
<td> 1113</td><td> 001</td>
<td> 11113</td><td> 0001</td>
Table 7
Hardware processor 104 (or format preservation based masking system 100) generates a Most Significant Bit (MSB) mapping for numeric data. This MSB map is created for non-null numbers only. This will obtain and ensure consistent data without compromising its uniqueness. For example, consider the private key = "Key"; The MSB correlation is illustrated in the following Table 8 (MSB Correlation Table 8):
<td>Original number</td><td>Masked number</td>
<td> 1</td><td> 4</td>
<td> 2</td><td> 3</td>
<td> 3</td><td> 2</td>
<td> 4</td><td> 1</td>
Table 8
Based on Table 6 and Table 8, the masked value of the correlation will be as shown in the following Table 9:
<td>Original data</td><td>Masked data (if the data type is numeric)</td>
<td> 13</td><td> 4</td>
<td> 113</td><td> 41</td>
<td> 1113</td><td> 441</td>
<td> 11113</td><td> 4441</td>
Table 9
From table 4, it can be seen that, even making use of dynamic correlation, the generation of masked values is safe. But, when a user understands the formation of the correlation for a specific value of the key, then it is still possible to find out the original data from the masked data. Therefore, to make data masking more secure and consistent across data, the final masked output for any data depends on the position of individual letters (characters, numeric values, or symbols) in the data.
For a better understanding of the embodiments of the present disclosure, described herein, an example for the dynamic generation of correlations is set forth. Form a dynamic correlation (AZ, az, 0-9, numbers and alphabets entered by the user). Here, the key is the original character, while the value will contain: list index of the masked character in the classified masked formation and the classified masked deformation pointer. In parallel, form a map where the key is the classified masked formation pointer and the value is the classified masked formation. Multi-language character masking is accomplished by giving the user an option to import non-English characters and numbers other than [0-9]. These characters, after being imported, undergo the same dynamic mapping procedure and the masked value for the input data will depend on this map and the position of the individual characters in the map.
Alternatively, the format preservation-based masking system 100 can execute the modules that comprise an input processing module that, when executed by the hardware processor 104, obtains a set of letters and a private key (from a user by inputting letters from one or more input devices, for example a keyboard) and processing to encrypt. The format preservation-based masking system 100 can execute the modules, which comprise an encryption module that, when executed by the hardware processor 104, encrypts letters to obtain a list of encrypted letters, using the letters and the key. private. The format preservation-based masking system 100 can execute the modules, which comprise a correlation generation module which, when executed by the hardware processor 104, generates a dynamic correlation based on the set of encrypted letters. The format preservation-based masking system 100 can execute the modules, which comprise a position calculation module that, when executed by the hardware processor 104, calculates a position of each of the maskable letters in the set of letter input, using dynamic correlation.
The format preservation-based masking system 100 can execute the modules, which comprise a masking module that, when executed by the hardware processor 104, performs masking of the maskable letters, based on the position of each one. of the masked letters, to obtain masked data, using dynamic correlation. The format preservation-based masking system 100 can execute the modules, which comprise a sort module which, when executed by the hardware processor 104, determines an order of the letters in the cipher letter list, sorts the list of encrypted letters from the order of the letters, to obtain a ranked list of encrypted letters, thereby allowing the correlation generation module to generate a dynamic correlation based on the classified list of encrypted letters. The dynamic map generated using the sorted list of cipher letters comprises a set of keys and values. Each value comprises one or more letters rearranged to be masked from the set of letters.
The position calculation module then calculates a position of each of the masked letters in the letter input set, using dynamic correlation, and the masking module performs masking of the masked letters, based on the position of each one of the masked letters, to get masked data. When the letters comprise numbers, the correlation generation module generates a Most Significant Bit (MSB) correlation for said one or more numbers, thereby allowing the position calculation module to calculate a position of each of the masked letters in the input set of letters, using dynamic mapping and MSB mapping. The masking module then performs masking of the masked letters, based on the position of each of the masked letters, to obtain masked data, using dynamic correlation and MSB correlation.
The modules, for example, the input processing module, the encryption module, the correlation generation module, the position calculation module, the masking module and the classification module are implemented as at least one of a part. logically self-contained from a software program, a self-contained hardware component and / or a self-contained hardware component with a logically self-contained part of a software program embedded in each hardware component that, when executed, performs the above procedure described herein , in one embodiment.
FIG. 2, with reference to FIG. 1 is a flow chart illustrating a computer implemented format preservation based masking procedure using the format preservation based masking system 100 of FIG. 1, according to one embodiment of the present disclosure. In step 202, a set of letters and a private key are obtained (eg, from a user). An input set of letters (p. eg, name, address, country name, etc.) is additionally received, different from the set of letters (eg, a, b, c, d, e ..., x, y, z). The letter set may be optional, in the case where the format preservation-based masking system 100 uses an English character keyboard (eg, in the case of a client system using an English keyboard). The set of letters are essentially received as input in the case of non-English characters, where non-English characters are not stored in memory 102. However, the set of letters (of one or more languages) can be stored in the memory 102 or obtained from one or more sources (eg, the cloud, remote servers, and / or third party sources), in real time or near real time. In step 204, the set of letters are encrypted, to obtain a list of encrypted letters, using the set of letters and the private key. The cipher letter list comprises a set of cipher letters.
In step 206, a dynamic map is generated based on (or using) the set of encrypted letters in the list of encrypted letters. Dynamic mapping comprises a set of keys, where each key is specific to one letter (eg, a character) in the set of letters. In step 208, a position of each of the masked letters in the input set of letters is calculated using dynamic correlation.
In step 210, masking of the masked letters is performed based on (or using) the position of each of the masked letters and dynamic correlation, to obtain masked data. As described above, when the letters comprise numbers, the format preservation based masking system 102 generates an MSB map. In other words, the procedure includes generating a Most Significant Bit (MSB) mapping for the numbers; calculating a position of each of the maskable letters in the input set of letters, using dynamic correlation and MSB correlation; and performing masking of the masked letters based on the position of each of the masked letters, to obtain masked data, using dynamic correlation and MSB correlation.
The method further includes determining an order of the letters in the list of encrypted letters; sort the list of encrypted letters from the order of the letters, to obtain a ranked list of encrypted letters; generate a dynamic map based on the ranked list of cipher letters, where the dynamic map comprises a set of keys and values, each key is specific to at least one letter in the letter set, and each value comprises one or more rearranged letters to be masked from the set of letters, using dynamic correlation; and performing masking of the masked letters based on the position of each of the masked letters, to obtain masked data, using dynamic correlation. When said one or more numbers are indicative of a specified range, the maskable letters, comprising said one or more numbers, are masked within the specified range.
For a better understanding of the embodiments, the present disclosure describes the proposed methodology, by way of example, as follows:
Form a dynamic correlation for the set of letters. Consider the letters AZ, az, 0-9, numbers and alphabets entered by the user, which are the original input data. As described above, the key here is the original character, while the value will contain the following: the list index of the masked character in the classified masked formation, and the pointer of the classified masked formation. In parallel, form a map where the key is the classified masked formation pointer and the value is the classified masked formation. Form the MSB correlation for the numbers (Non-zero numbers) in the same way as was generated for the dynamic correlation. Calculate the number of maskable characters (characters present in dynamic mapping) and the index of the first maskable character in the original input data. These values will be required in order to preserve the format of the original data. If the first maskable character is a number, then mask. If this character is zero, then it is not masked, that is, keep all leading zeros as zeros, until a non-null character is reached (or identified). For example, 1234567890 is masked as 2143658709, as described. 123-456-7890 will also be masked as 214365-8709, since the special character is not present. In dynamic correlation, it will be omitted when masking.
Finding the final masked value, for any given character, is set out below with an example.
Example: 123-ABC-pqr
<td>Character</td><td> 1</td><td> 2</td><td> 3</td><td> -</td><td>TO</td><td>B</td><td>C</td><td> -</td><td>P</td><td>what</td><td>r</td>
<td>Index Value</td><td> 9</td><td> 10</td><td> 11</td><td></td><td> 12</td><td> 13</td><td> 14</td><td></td><td> 15</td><td> 16</td><td> 17</td>
The first maskable character is assigned the index value as the total number of maskable characters and, for the next character afterwards, the index value will be incremented by 1. As mentioned above, this index value will be required as one of the parameters to get the final masked character for the original character. The input data is iterated character by character. Since the first character is a number, the MSB Map will be generated. For the key Ί ', the value of the MSB Map will be:
to. masked character ^
b. list index: 1
c. ranked masked formation pointer (pointing to a formation (5,4,3,2,7,1,8,6,9)) result index = (index value + list index)% (masked formation size ranked) = (9 + 1)% 9 = 10% 9 = 1
You get the character at index value 1, which in this case is 5. Similarly, the masked characters are found for the remaining characters, using dynamic mapping, and attached to the masked string. Therefore, the masked output will be 501-GIS-ksj. The format preservation based masking system 100 allows masking of data, in particular, in the case where the input comprises one or more numbers, with or without specified ranges.
Figures FIG. 3A to 3E, referring to FIG. 1-2, illustrate exemplary views of the original data and the masked data, according to one or more embodiments of the present disclosure. In particular, FIG. 3A illustrates comparative exemplary views of the original data and the masked data for a set of letters comprising characters (eg, address), in accordance with one or more embodiments of the present disclosure. FIG. 3B illustrates an exemplary view of the original data and the masked data for the minimum wage (e.g., the numbers (wage) received as input to mask data with a specified range as: Minimum: 1,000 and Maximum: 25,000) , according to one or more embodiments of the present disclosure. Since the range is specified, the masked output data must also fall within this range, and then the user is willing to enter the range. When said one or more numbers are indicative of a specified range, the maskable letters, comprising said one or more numbers, are masked within the specified range. In other words, the interval is provided by the user at the time of supplying letters in the case of numerical values. The 100 format preservation based masking system masks numbers within the specified range.
FIG. 3C illustrates an exemplary view of the original data and the data masked for the minimum wage (eg, numbers received as input to mask data, without being the specified range), according to one or more embodiments of the present disclosure . When the range is not specified, there might be values outside the range of input values. For example, the minimum wage 15000 is masked as the minimum wage 69628.
FIG. 3D illustrates an exemplary view of the original data and the data masked for non-English characters, according to one or more embodiments of the present disclosure. In particular, FIG. 3D illustrates an exemplary view of the original data and the data masked for Chinese characters. FIG. 3E illustrates an exemplary view of the original data and the masked data for rare scenarios where the user has specified that certain values should be masked by predefined values. The format preservation-based masking system 100 is set up such that Australia must be masked with the UK, and Italy must be masked with Singapore. Therefore, whenever these two values appear, they will be masked by their respective predefined values, and will not undergo character replacement masking.
The written description describes the subject matter herein to enable any person skilled in the art to make and use the embodiments. The scope of embodiments of the subject matter is defined by the claims and may include other modifications that occur to those skilled in the art. Such other modifications are intended to be within the scope of the claims if they have similar elements that do not differ from the literal language of the claims, or if they include equivalent elements with negligible differences from the literal language of the claims.
The embodiments of this disclosure implement a format preservation-based masking system and procedure, which maintains consistency of data at an enterprise level and preserves the format of input data, ensuring that the masked data is not decipherable, leading to data security. The format preservation based masking system 100 further supports non-English characters and numbers. Unlike conventional systems and procedures, which generate a static look-up table, which consume more disk space and more time in terms of creating, updating and processing the data in a presentation table that is less secure, the format preservation-based masking 100 dynamically generates correlations (p. For example, dynamic correlation and No MSB and MSB correlations, which act as a dynamic query table at run time, which are used as a reference to perform masking of data results, with less disk space consumption (or consuming a reduced memory space), and less time for processing and updating the data. Unlike conventional masking tools, the format preservation-based masking system 100 calculates the position of letters in the input data, which plays a vital role in determining the final replacement (or masking) for the respective letters.
However, it is to be understood that the scope of protection is extended to such a program and, furthermore, to a computer-readable medium that has a message on it; such computer-readable storage media contain program code means for the implementation of one or more steps of the procedure, when the program is run on a server or mobile device, or any suitable programmable device. The hardware device can be any kind of device that can be programmed, including, e.g. eg, any kind of computer, such as a server or personal computer, or the like, or any combination thereof. The device can also include means that could be, e.g. eg, hardware media such as eg. eg an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), or a combination of hardware and software means, e.g. eg an ASIO and an FPGA, or at least one microprocessor and at least one memory with software modules located in it. Thus, the media can include both hardware media and software media. The embodiments of procedures described herein could be implemented in hardware and software. The device may also include software media. Alternatively, the embodiments can be implemented in different hardware devices, e.g. eg, using a plurality of CPUs.
The embodiments herein may comprise hardware and software elements. The realizations that are implemented in software include, but are not limited to: firmware, resident software, micro-code, etc. The functions performed by various modules described herein can be implemented in other modules or combinations of other modules. For the purposes of this description, a usable or computer-readable medium can be any device that can understand, store, communicate, propagate or transport the program for use by, or in connection with, the system, apparatus or device of instruction execution.
The medium may be an electronic, magnetic, optical, electromagnetic, infrared or semiconductor system (or apparatus or device), or a propagation medium. Examples of a computer-readable medium include a semiconductor or solid state memory, a magnetic tape, a removable computer floppy disk, a random access memory (RAM), a read-only memory (ROM), a hard magnetic disk. and an optic disc. Current examples of optical discs include compact disc read-only memory (CD-ROM), compact disc read / write (CD-R / W), and DVD.
A data processing system suitable for storing and / or executing program code will include at least one processor coupled, directly or indirectly, with memory elements via a system bus. Memory elements can include local memory used during the actual execution of the program code, bulk storage, and caches that provide temporary storage of at least some program code, in order to reduce the number of times the code must be extracted. of bulk storage during execution.
Input / output (I / O) devices (including, but not limited to, keyboards, displays, pointing devices, etc.) can be coupled to the system, either directly or via intervening I / O drivers. Network adapters can also be coupled to the system to allow the data processing system to couple with other data processing systems, or remote printers, or storage devices, over intervening private or public networks. Modems, cable modem, and Ethernet cards are only a few of the currently available types of network adapters.
A representative hardware environment for implementing the embodiments may include a hardware configuration of an information management system, or computer, in accordance with the embodiments herein. The system herein comprises at least one processor or central processing unit (CPU). CPUs are interconnected, via the system bus, with various devices, such as random access memory (RAM), read-only memory (ROM), and an input / output (I / O) adapter. The I / O adapter can connect to peripheral devices, such as disk drives and tape controllers, or other program storage devices that are readable by the system. The system may read the instructions on the program storage devices and follow these instructions to execute the methodology of the embodiments herein.
The system further includes a user interface adapter that connects a keyboard, mouse, speaker, microphone, and / or other user interface devices, such as a touch screen device (not shown), to the bus to collect user input. Additionally, a communication adapter connects the bus with a data processing network, and a display adapter connects the bus with a display device that can be realized as an output device such as a monitor, a printer or a transmitter, for example.
The preceding description has been presented with reference to various embodiments. Persons skilled in the art and technology to which this application pertains will appreciate that alterations and changes in the structures and operating procedures described can be practiced without significantly departing from principle, spirit and scope.
Contents6
5 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5
14 members in 6 offices
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 4244MUM2015 | India | – | |
| 4244MU2015 | India | A |
Members14
| Document | Office | Kind | |
|---|---|---|---|
| EP3166041A1 | European Patent Office (EPO) | A1 | |
| US2017132420A1 | United States of America | A1 | |
| AU2016201060A1 | Australia | A1 | |
| JP2017092929A | Japan | A | |
| MX2016002467AThis record | Mexico | A | |
| MX2016002467AThis record | Mexico | A | |
| JP6239661B2 | Japan | B2 | |
| AU2017268583A1 | Australia | A1 | |
| US10242203B2 | United States of America | B2 | |
| MX364426B | Mexico | B | |
| AU2017268583B2 | Australia | B2 | |
| MY181115A | Malaysia | A | |
| MY181115A | Malaysia | A | |
| EP3166041B1 | European Patent Office (EPO) | B1 |
1 legal event, as the office reported them to INPADOC
Events
| Event | Code | |
|---|---|---|
| Grant or registrationFG | FG |
Numbers
- Publication
- 2016002467
- Application
- 2467
Titles2
- Spanish
- SISTEMA Y PROCEDIMIENTO DE ENMASCARAMIENTO BASADO EN PRESERVACION DE FORMATOS.
- English
- SYSTEM AND PROCEDURE FOR MASKING BASED ON PRESERVATION OF FORMATS.
Classification
- CPC, 8
- G06F21/6254
- G06F21/602
- G06F2221/2125
- G09C1/04
- H04L9/0618
- H04L2209/04
- H04L2209/42
- H04L9/00
- IPC, 1
- G06F21 60