Method and system for duplicate check detection
First Claim
Patent Images
1. A computer-implemented method for detecting duplicate checks, the method comprising the steps of:
- receiving check data wherein the check data comprises at least check accounting data associated with one or more checks;
applying, by a computer processor, a function to the check data wherein the function computes a value based on the check data and the value is one of a set of elements;
selecting, by the computer processor, an element from the set where an index of the element corresponds to the computed value and the index is an index to a set of Boolean objects, the steps of applying and selecting further comprising;
creating a hash value from the data using a hash function; and
computing a single bit address in a hash table of the hash value wherein the index comprises an address of a single bit and wherein the table comprises the hash table;
determining that a check is not a duplicate if the element is in an initialized state, the step of determining that the check is not a duplicate further comprising;
reading a state of the addressed single bit from the hash table; and
determining if the state of the single bit read is equal to the initialized state;
determining that the check is a suspected duplicate if the element is in an altered state, andmodifying the element by altering a state of the element, the step of modifying further comprising;
setting the state of the addressed bit in the hash table to the altered state if the address of the single hit is not equal to the altered state.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for detecting duplicate checks during processing. The duplicate detection may be performed by a financial institution, such as a bank. The method may be implemented on a computer based system. The duplicate detection method may be automated. The method may be applied to incoming check files prior to processing of the check data to prevent processing of duplicate checks. The system and method may use a function, such as a hash function, to perform the duplicate detection. Other functions, such as a Bloom filter which may use multiple hash functions, may be used to perform the duplicate detection.
409 Citations
24 Claims
-
1. A computer-implemented method for detecting duplicate checks, the method comprising the steps of:
-
receiving check data wherein the check data comprises at least check accounting data associated with one or more checks; applying, by a computer processor, a function to the check data wherein the function computes a value based on the check data and the value is one of a set of elements; selecting, by the computer processor, an element from the set where an index of the element corresponds to the computed value and the index is an index to a set of Boolean objects, the steps of applying and selecting further comprising; creating a hash value from the data using a hash function; and computing a single bit address in a hash table of the hash value wherein the index comprises an address of a single bit and wherein the table comprises the hash table; determining that a check is not a duplicate if the element is in an initialized state, the step of determining that the check is not a duplicate further comprising; reading a state of the addressed single bit from the hash table; and determining if the state of the single bit read is equal to the initialized state; determining that the check is a suspected duplicate if the element is in an altered state, and modifying the element by altering a state of the element, the step of modifying further comprising; setting the state of the addressed bit in the hash table to the altered state if the address of the single hit is not equal to the altered state. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A system for detecting duplicate checks, comprising:
-
at least one processor; a memory comprising computer-readable instructions which when executed by the processor cause the processor to perform the steps comprising; receiving check data wherein the check data comprises at least check accounting data associated with one or more checks; determining if the check data is unique by applying a function to the check data wherein the function computes a value based on the check data and the value is one of a set of elements, wherein the function selects an element from the set where an index of the element corresponds to the computed value and the index is an index to a set of Boolean objects, wherein the function further comprises; creating a hash value from the data using a hash function; and computing a single bit address in a hash table of the hash value wherein the index comprises an address of a single bit and wherein the table comprises the hash table; determining that a check is not a duplicate if the element is in an initialized state by reading a state of the addressed single bit from the hash table; and determining if the state of the single bit read is equal to the initialized state, and further determining that the check is a suspected duplicate if the element is in an altered state; modifying the element for processing of further checks by altering a state of the element by setting the state of the addressed bit in the hash table to the altered state if the address of the single bit is not equal to the altered state; outputting, based on results from the function module, a listing of suspected duplicate checks; and a storage module connected to the system and configured to store data associated with the system. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A computer-implemented method for detecting duplicate checks, the method comprising the steps of:
-
receiving check data wherein the check data comprises at least check accounting data associated with one or more checks; extracting one or more components from the check accounting data for each individual check; and creating a string of characters based on the one or more extracted components, applying, by a computer processor, a function to the string wherein the function computes a value based on the string and the value is one of a set of elements; selecting, by the computer processor, an element from the set, comprising an array, where an index of the element corresponds to the computed value and the element of the set is a single bit and the index is an index to a set of Boolean objects, the steps of applying and selecting further comprising; creating a hash value from the data using a hash function; and computing a single bit address in a hash table of the hash value wherein the index comprises an address of a single bit and wherein the table comprises the hash table; determining that a check is not a duplicate if the element is in an initialized state, the step of determining that the check is not a duplicate further comprising; reading a state of the addressed single bit from the hash table; and determining if the state of the single bit read is equal to the initialized state; determining that the check is a suspected duplicate if the element is in an altered state wherein the determination of the suspected duplicate is carried out against check data comprising a predetermined time period; modifying the element for processing of further checks by altering a state of the element, the step of modifying further comprising; setting the state of the addressed bit in the hash table to the altered state if the address of the single bit is not equal to the altered state; reviewing the suspected duplicate to determine if it is a true duplicate wherein the step of reviewing is performed by an operator; and queuing the true duplicate for fraud analysis.
-
-
24. A computer-implemented method for detecting duplicate checks, the method comprising the steps of:
-
receiving check data wherein the check data comprises at least check accounting data associated with one or more checks; applying, by a computer processor, a function to the check data wherein the function computes a value based on the check data and the value is one of a set of elements; selecting, by the computer processor, an element from the set where an index of the element corresponds to the computed value and the index is an index to a set of Boolean objects, the steps of applying and selecting further comprising; creating two or more hash values from the data using at least two hash functions; and selecting two or more elements from the set using two or more values as indices; determining that a check is not a duplicate if one or more of the elements are in an initialized state, the step of determining that the check is not a duplicate further comprising; reading the single bit addressed by each hash value from the hash table; and determining if the bit addressed is equal to the initialized state for each of the at least two hash functions; determining that the check is a suspected duplicate if the element is in an altered state, and modifying the element by altering a state of the element, the step of modifying further comprising; setting the single bit addressed of each hash value equal to the altered state if the bit addressed was not equal to the altered state.
-
Specification