Detecting a homoglyph in a string of characters
AssigneeGoogle Inc.
InventorsAaron Michael Brown, Pranoy Kovuri, Liam Charles MacDermed
Life of this patent
Estimating the term…
Abstract
A method for detecting a homoglyph in an input text includes receiving a first string of characters and deobfuscating the first string of characters to generate a second string of characters. When at least one character from the first string of characters has replaced another character in the second string of characters based on the deobfuscating, the method further includes determining a visual similarity value based on the first string of characters and the second string of characters and providing an indication whether a homoglyph is present in the first string of characters, based on the visual similarity value.
Claims20
A computer-implemented method, comprising:
- receiving, by a computing system comprising one or more processors, an electronic communication including a first string of characters;
- deobfuscating the first string of characters to generate a second string of characters;
- when at least one character from the first string of characters has replaced another character in the second string of characters based on the deobfuscating, determining a visual similarity value based on a weighted sum of a first visual similarity value and a second visual similarity value by:
- rendering the first string of characters to obtain a first image,
- rendering the second string of characters to obtain a second image,
- determining a number of pixels which are different between the first image and the second image to obtain the first visual similarity value, and
- measuring a structural similarity between the first image and the second image based on luminance, contrast, and structural characteristics of the first image and the second image, to obtain the second visual similarity value;
- and
- based on the visual similarity value indicating a homoglyph is present in the first string of characters, controlling a computing resource to take remedial action with respect to the electronic communication to improve security associated with the computing system.
A computing system, comprising:
- one or more processors;
- and
- one or more non-transitory computer-readable media that store instructions that, when executed by the one or more processors, cause the computing system to perform operations, the operations comprising:
- receiving an electronic communication including a first string of characters,
- deobfuscating the first string of characters to generate a second string of characters,
- when at least one character from the first string of characters has replaced another character in the second string of characters based on the deobfuscating, determining a visual similarity value based on a weighted sum of a first visual similarity value and a second visual similarity value by:
- rendering the first string of characters to obtain a first image,
- rendering the second string of characters to obtain a second image,
- determining a number of pixels which are different between the first image and the second image to obtain the first visual similarity value, and
- measuring a structural similarity between the first image and the second image based on luminance, contrast, and structural characteristics of the first image and the second image, to obtain the second visual similarity value, and
- based on the visual similarity value indicating a homoglyph is present in the first string of characters, controlling a computing resource to take remedial action with respect to the electronic communication to improve security associated with the computing system.
A computer-implemented method, comprising:
- receiving, by a computing system comprising one or more processors, an electronic communication including a first string of characters;
- deobfuscating the first string of characters to generate a second string of characters;
- determining whether at least one character from the first string of characters has replaced another character in the second string of characters based on the deobfuscating;
- when at least one character from the first string of characters has replaced another character in the second string of characters, rendering the first string of characters to obtain a first image and rendering the second string of characters to obtain a second image;
- determining a visual similarity value between the first image and the second image based on a weighted sum of a first visual similarity value and a second visual similarity value by:
- determining a number of pixels which are different between the first image and the second image to obtain the first visual similarity value, and
- measuring a structural similarity between the first image and the second image based on luminance, contrast, and structural characteristics of the first image and the second image, to obtain the second visual similarity value;
- and
- when a predetermined condition is satisfied based on the visual similarity value to indicate a homoglyph is present in the first string of characters, controlling a computing resource to take remedial action with respect to the electronic communication to improve security associated with the computing system.
Dependencies are inferred from the claim text.