IP Library Granted Patent US 12,513,002
Granted Patent B2
US 12,513,002 · App. 18/190,371 · Granted Dec 30, 2025

Hashing techniques for verifying correctness of associations between assets related to events and addressable computer network assets

Inventors: Stuart Millar (Bangor, GB); Ralph McTeggart (Belfast, GB)
Assignee: Rapid7, Inc.
H04L9/3247G06N3/0455G06N3/08H04L9/3236H04L41/06H04L41/12H04L41/16H04L63/0876H04L63/10H04L63/20
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,513,002
App. No.
18/190,371
Granted
Dec 30, 2025
Kind
B2
Abstract

Techniques for verifying correctness of associations between assets related to events detected in at least one computer network and assets in an asset catalog for the at least one computer network. The techniques include obtaining information specifying a first asset and a first set of assets with which the first asset was previously associated; generating a signature of the first asset from the computer network addressing information for the first asset; generating a hashed signature by applying a locality sensitive hashing (LSH) technique to the signature; associating the first asset with a second set of assets in the asset catalog using the hashed signature and at least one hashed signature of the at least one asset in the asset catalog; and when it is determined that the second set of includes the first set, outputting an indication that the first asset was correctly associated with the first set of assets.

Claims (68)

1 . A method for verifying correctness of associations between assets related to events detected in at least one computer network and assets in an asset catalog for the at least one computer network, the asset catalog assets being addressable devices on the at least one computer network, the method comprising:

using at least one computer hardware processor to perform:

obtaining information specifying a first asset and a first set of one or more assets, in the asset catalog, with which the first asset was previously associated;

obtaining information about an event related to the first asset, the information specifying computer network addressing information for the first asset;

generating a signature of the first asset from the computer network addressing information;

generating, using the signature of the first asset, a hashed signature of the first asset by applying a locality sensitive hashing (LSH) technique to the signature of the first asset;

associating the first asset with a second set of one or more assets in the asset catalog using the hashed signature of the first asset and at least one hashed signature of the one or more assets of the second set in the asset catalog;

determining whether the second set of assets includes the first set of assets; and

when it is determined that the second set of assets includes the first set of assets, outputting an indication that the first asset was correctly associated with the first set of assets.

2 . The method of claim 1 , further comprising:

when it is determined that at least one asset in the first set of assets is not part of the second set of assets, outputting an indication that the first asset was not correctly associated with the first set of assets.

3 . The method of claim 1 , wherein the computer network addressing information indicates at least one value for at least one network parameter, the at least one network parameter selected from the group consisting of: a hostname for the first asset on the at least one computer network, an IP address for the first asset on the at least one computer network, and/or a MAC address for the first asset.

4 . The method of claim 1 , wherein generating the signature of the first asset comprises generating a string representation of at least some of the computer network addressing information.

5 . The method of claim 1 , wherein generating the signature of the first asset comprises generating a numeric representation of at least some of the computer network addressing information using a character embedding technique.

6 . The method of claim 5 , wherein generating the numeric representation of the at least some of the computer network addressing information comprises:

generating an initial numeric representation by applying the character embedding technique to the at least some of the computer network addressing information; and

providing the initial numeric representation as input to at least one trained machine learning model to obtain the numeric representation,

wherein the numeric representation is a lower-dimensional representation than the initial numeric representation.

7 . The method of claim 1 , wherein applying the LSH technique to the signature of the first asset comprises applying a min-hash technique to the signature of the first asset.

8 . The method of claim 7 , wherein applying the min-hash technique to the signature of the first asset comprises:

generating a plurality of shingles from the signature of the first asset;

obtaining a plurality of hashes by hashing the plurality of shingles using one or more hashing functions;

permuting the plurality of hashes to obtain a permuted plurality of hashes;

selecting a first threshold number of hashes in the permuted plurality of hashes;

generating the hashed signature of the first asset using the selected hashes.

9 . The method of claim 8 , wherein the permuting comprises permuting the plurality hashing randomly.

10 . The method of claim 5 , wherein applying the LSH technique to the signature of the first asset comprises encoding the numeric representation using a plurality of randomized hyperplanes.

11 . The method of claim 10 , wherein encoding the numeric representation using the plurality of randomized hyperplanes, comprises:

generating the hashed signature of the first asset as a binary encoding of the numeric representation, the binary encoding specifying, for each particular hyperplane of the plurality of randomized hyperplanes, a side of the particular hyperplane on which the numeric representation falls.

12 . The method of claim 1 , wherein the at least one asset comprises multiple assets in the asset catalog, and wherein the associating comprises:

comparing the signature of the first asset with signatures of each of the multiple assets in the asset catalog; and

associating the first asset with a particular one of the multiple assets based on results of the comparing.

13 . A system for verifying correctness of associations between assets related to events detected in at least one computer network and assets in an asset catalog for the at least one computer network, the asset catalog assets being addressable devices on the at least one computer network, the system comprising:

at least one computer hardware processor; and

at least one non-transitory computer-readable storage medium storing processor executable instructions that, when executed by the at least one computer hardware processor, cause the at least one computer hardware processor to perform a method comprising:

obtaining information specifying a first asset and a first set of one or more assets, in the asset catalog, with which the first asset was previously associated;

obtaining information about an event related to the first asset, the information specifying computer network addressing information for the first asset;

generating a signature of the first asset from the computer network addressing information;

generating, using the signature of the first asset, a hashed signature of the first asset by applying a locality sensitive hashing (LSH) technique to the signature of the first asset;

associating the first asset with a second set of one or more assets in the asset catalog using the hashed signature of the first asset and at least one hashed signature of the at one or more assets of the second set in the asset catalog;

determining whether the second set of assets includes the first set of assets; and

when it is determined that the second set of assets includes the first set of assets, outputting an indication that the first asset was correctly associated with the first set of assets.

14 . The system of claim 13 , wherein the method further comprises:

when it is determined that at least one asset in the first set of assets is not part of the second set of assets, outputting an indication that the first asset was not correctly associated with the first set of assets.

15 . The system of claim 13 , wherein applying the LSH technique to the signature of the first asset comprises applying a min-hash technique to the signature of the first asset.

16 . The system of claim 15 , wherein applying the min-hash technique to the signature of the first asset comprises:

generating a plurality of shingles from the signature of the first asset;

obtaining a plurality of hashes by hashing the plurality of shingles using one or more hashing functions;

permuting the plurality of hashes to obtain a permuted plurality of hashes;

selecting a first threshold number of hashes in the permuted plurality of hashes;

generating the hashed signature of the first asset using the selected hashes.

17 . At least one non-transitory computer-readable storage medium storing processor executable instructions that, when executed by at least one computer hardware processor, cause the at least one computer hardware processor to perform a method comprising:

obtaining information specifying a first asset and a first set of one or more assets, in an asset catalog, with which the first asset was previously associated, the first asset and the assets of the asset catalog being addressable devices on at least one computer network;

obtaining information about an event related to the first asset, the information specifying computer network addressing information for the first asset;

generating a signature of the first asset from the computer network addressing information;

generating, using the signature of the first asset, a hashed signature of the first asset by applying a locality sensitive hashing (LSH) technique to the signature of the first asset;

associating the first asset with a second set of one or more assets in the asset catalog using the hashed signature of the first asset and at least one hashed signature of the one or more assets of the second set in the asset catalog;

determining whether the second set of assets includes the first set of assets; and

when it is determined that the second set of assets includes the first set of assets, outputting an indication that the first asset was correctly associated with the first set of assets.

18 . The at least one non-transitory computer-readable storage medium of claim 17 , wherein the method further comprises:

when it is determined that at least one asset in the first set of assets is not part of the second set of assets, outputting an indication that the first asset was not correctly associated with the first set of assets.

19 . The at least one non-transitory computer-readable storage medium of claim 17 , wherein applying the LSH technique to the signature of the first asset comprises applying a min-hash technique to the signature of the first asset.

20 . The at least one non-transitory computer-readable storage medium of claim 19 , wherein applying the min-hash technique to the signature of the first asset comprises:

generating a plurality of shingles from the signature of the first asset;

obtaining a plurality of hashes by hashing the plurality of shingles using one or more hashing functions;

permuting the plurality of hashes to obtain a permuted plurality of hashes;

selecting a first threshold number of hashes in the permuted plurality of hashes;

generating the hashed signature of the first asset using the selected hashes.

Assignments (3)
SECURITY INTEREST Recorded Jun 26, 2025
From: RAPID7, INC.; RAPID7 LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 071743/0537 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2024
From: MILLAR, STUART; MCTEGGART, RALPH
To: RAPID7 INTERNATIONAL LIMITED
Reel/Frame 068387/0140 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2024
From: RAPID7 INTERNATIONAL LIMITED
To: RAPID7, INC.
Reel/Frame 068387/0236 →
Continuity (2)
Provisional Application 63392816 · Jul 27, 2022
Related Publication 20240039911A1 · Feb 1, 2024
References Cited (47)
US 7808897B1 · Mehta et al. · 2010 [cited by applicant]
US 9386037B1 · Hunt et al. · 2016 [cited by applicant]
US 10142306B1 · Shemesh et al. · 2018 [cited by applicant]
US 10848514B2 · Christian · 2020 [cited by applicant]
US 11290343B1 · Isoda · 2022 [cited by applicant]
US 12003362B2 · Millar et al. · 2024 [cited by applicant]
US 12143505B2 · Millar et al. · 2024 [cited by applicant]
US 20060195208A1 · Sammer et al. · 2006 [cited by applicant]
US 20070030824A1 · Ribaudo et al. · 2007 [cited by applicant]
US 20080104276A1 · Lahoti · 2008 [cited by examiner]
US 20100198967A1 · Takahashi · 2010 [cited by applicant]
US 20120159584A1 · Pizot et al. · 2012 [cited by applicant]
US 20130014261A1 · Milliken et al. · 2013 [cited by applicant]
US 20140164825A1 · Grcanac et al. · 2014 [cited by applicant]
US 20140195532A1 · Dheap et al. · 2014 [cited by applicant]
US 20180089471A1 · Chiarella et al. · 2018 [cited by applicant]
US 20180248903A1 · Villella et al. · 2018 [cited by applicant]
US 20190043054A1 · Crank et al. · 2019 [cited by applicant]
US 20190268309A1 · Govindarajan et al. · 2019 [cited by applicant]
US 20200162247A1 · Nix · 2020 [cited by applicant]
US 20200272428A1 · Katakam et al. · 2020 [cited by applicant]
US 20200285770A1 · Brannon et al. · 2020 [cited by applicant]
US 20200364369A1 · Brannon et al. · 2020 [cited by applicant]
US 20210049525A1 · Unger et al. · 2021 [cited by applicant]
US 20210173952A1 · Raphael · 2021 [cited by examiner]
US 20210203673A1 · dos Santos et al. · 2021 [cited by applicant]
US 20210294713A1 · Hicks et al. · 2021 [cited by applicant]
US 20210351937A1 · Thacker · 2021 [cited by examiner]
US 20220086088A1 · Tobiyama et al. · 2022 [cited by applicant]
US 20220141276A1 · Sun et al. · 2022 [cited by applicant]
US 20220327007A1 · Adogla et al. · 2022 [cited by applicant]
US 20220351066A1 · Bikumala et al. · 2022 [cited by applicant]
US 20220376924A1 · Tang et al. · 2022 [cited by applicant]
US 20220417286A1 · Moon · 2022 [cited by applicant]
US 20230071264A1 · Hakala et al. · 2023 [cited by applicant]
US 20230412602A1 · Gyarmathy et al. · 2023 [cited by applicant]
US 20240039730A1 · Millar et al. · 2024 [cited by applicant]
US 20240039733A1 · Millar et al. · 2024 [cited by applicant]
US 20240039779A1 · Millar et al. · 2024 [cited by applicant]
US 20240112161A1 · Rand · 2024 [cited by examiner]
US 20240297795A1 · Millar et al. · 2024 [cited by applicant]
Bojanowski et al., Enriching Word Vectors with Subword Information. arXiv preprint arXiv:1607.04606. Jun. 19, 2017. 12 pages. [cited by applicant]
Joulin et al., Bag of Tricks for Efficient Text Classification. Proceedings of the 15th Conference of the European Chapter of the Association for Computational Linguistics: vol. 2, Short Papers. Apr. 2017;427-31. [cited by applicant]
Joulin et al., Fasttext. zip: Compressing text classification models. arXiv preprint arXiv:1612.03651. Dec. 12, 2016. 13 pages. [cited by applicant]
Mikolov et al., Distributed representations of words and phrases and their compositionality. arXiv 2013. arXiv preprint arXiv:1310.4546. Oct. 16, 2013. 9 pages. [cited by applicant]
Mikolov et al., Efficient estimation of word representations in vector space. arXiv preprint arXiv:1301.3781. Sep. 7, 2013. 12 pages. [cited by applicant]
Pennington et al., Glove: Global vectors for word representation. Proceedings of the 2014 conference on empirical methods in natural language processing (EMNLP) Oct. 2014; 1532-43. [cited by applicant]