# US 12,111,953 B2 · Sensitive data detection and replacement

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,111,953 B2
- Document ID: US12111953B2
- Status: Granted
- Kind: B2
- Application number: 17/287,640
- Filed: 2019-10-25
- Published: 2021-11-18
- Granted: 2024-10-08
- Earliest claimed: 2018-10-26
- Assignees: ServiceNow Canada Inc.
- Applicants: Servicenow Canada Inc.
- Inventors: Elena Busila; Jerome Pasquero; Patrick Lazarus
- Web page: https://patentgrep.com/patent/US12111953B2

## CPC

- G06F 21/6254: {by anonymising data, e.g. decorrelating personal data from the owner's identification}
- G06F 21/60: Protecting data
- G06F 40/166: Editing, e.g. inserting or deleting
- G06V 30/414: Extracting the geometrical structure, e.g. layout tree; Block segmentation, e.g. bounding boxes for graphics or text
- G06V 30/416: Extracting the logical structure, e.g. chapters, sections or page numbers; Identifying elements of the document, e.g. authors
- G06V 10/20: Image preprocessing
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING

## Abstract

Systems and methods for privacy and sensitive data protection. An image of a document is received at a pre-processing stage and image pre-processing is applied to the image to ensure that the resulting image is sufficient for further processing. Pre-processing may involve processing relating to image quality and image orientation. The image is then passed to an initial processing stage. At the initial processing stage, the relevant data in the document are located and bounding boxes are placed around the data. The resulting image is then passed to a processing stage. At this stage, the type of data within the bounding boxes is determined and suitable replacement data is generated. The replacement data is then inserted into the image to thereby remove and replace the sensitive data in the image.

## Claims

### Claim 1

A system for replacing sensitive data in documents, the system comprising:
a non-transitory storage medium storing instructions thereon; and
at least one processor operatively connected to the non-transitory storage medium, the at least one processor, upon executing the instructions, being configured for:
receiving an image of at least one document;
clustering said image of each of said at least one document into different cluster fields, each cluster field containing respective cluster data content and having a respective cluster position;
recognizing specific types of data in said different cluster fields to thereby determine if said data in said different cluster fields comprises sensitive data based on cluster data content and the cluster position to assign a respective sensitivity to said data, said sensitivity being indicative of a sensitivity level of said data; and
replacing sensitive data of at least one specific type of data in said different fields with replacement data based on the respective sensitivity being above a threshold.

### Claim 2 (depends on 1)

The system according to claim 1, wherein said sensitive data of at least one specific type of data comprises at least one of:
names of persons;
addresses of persons
telephone numbers of persons;
gender;
confidential information;
physical characteristics;
financial information;
health related information;
business related information;
names of corporate entities;
addresses of corporate entities;
dates;
credit card numbers;
bank account data;
social security/social insurance numbers;
personal identification data; and
blood types.

### Claim 3 (depends on 1)

The system according to claim 1, wherein said clustering comprises placing bounding boxes around each of said different cluster fields.

### Claim 4 (depends on 1)

The system according to claim 1, wherein elements of said replacement data are randomly selected from a database.

### Claim 5 (depends on 1)

The system according to claim 1, wherein said replacement data is created by concatenating data elements selected from a database.

### Claim 6 (depends on 1)

The system according to claim 1, wherein a portion of said replacement data is randomly generated.

### Claim 7 (depends on 1)

The system according to claim 1, wherein at least a portion of said replacement data is created by concatenating data elements selected from a database.

### Claim 8 (depends on 1)

The system according to claim 1, wherein each instance of said sensitive data of the at least one specific type is replaced by a specific piece of replacement data.

### Claim 9 (depends on 1)

The system according to claim 1, wherein said recognizing specific types of data in said different cluster fields to thereby determine if said data in said different cluster fields comprises the sensitive data is further based on one of: a presence or an absence of specific words in said data.

### Claim 10 (depends on 1)

The system according to claim 1, wherein said sensitive data and said replacement data replacing said sensitive data are of a same type of data.

### Claim 11 (depends on 1)

The system according to claim 1, wherein said replacement data is a block that effectively removes said sensitive data from said image.

### Claim 12 (depends on 1)

The system according to claim 1, wherein said replacement data is generated by a portion of said system.

### Claim 13 (depends on 1)

The system according to claim 1, wherein said system recognizes a visual appearance of said sensitive data.

### Claim 14 (depends on 13)

The system according to claim 13, wherein said visual appearance includes at least one of: font, size, style, and spacing of said sensitive data.

### Claim 15 (depends on 13)

The system according to claim 13, wherein replacement data matches said visual appearance of sensitive data to be replaced.

### Claim 16 (depends on 15)

The system according to claim 15, wherein said replacement data seamlessly blends into said documents.

### Claim 17

A method for replacing sensitive data in documents, the method being executed by at least one processor, the method comprising:
receiving an image of at least one document;
clustering said image of each of said at least one document into different cluster fields, each cluster field containing respective cluster data content and having a respective cluster position;
recognizing specific types of data in said different cluster fields to thereby determine if said data in said different cluster fields comprises sensitive data based on cluster data content and the cluster position to assign a respective sensitivity to said data, said sensitivity being indicative of a sensitivity level of said data; and
replacing sensitive data of at least one specific type of data in said different fields with replacement data based on the respective sensitivity being above a threshold.

### Claim 18 (depends on 17)

The method according to claim 17, wherein said document is a business document.

### Claim 19 (depends on 18)

The method according to claim 18, wherein said sensitive data is at least one of:
names of persons;
addresses of persons
telephone numbers of persons;
gender;
confidential information;
physical characteristics;
financial information;
health related information;
business related information;
names of corporate entities;
addresses of corporate entities;
dates;
credit card numbers;
bank account data;
social security/social insurance numbers;
personal identification data; and
blood types.

### Claim 20 (depends on 17)

The method according to claim 17, wherein said replacement data is a block that effectively removes said sensitive data from said image.
