DETECTING A CHANGE TO THE CONTENT OF INFORMATION DISPLAYED TO A USER OF A WEBSITE
Methods and systems are provided for detecting a change in web content of a web page. In particular, executable instructions may be inserted into a web page such that a first fingerprint of the web page is created when viewed on a client device. The first fingerprint may then be compared to a previously created fingerprint to determine if the web page has been modified. The fingerprints may be based on one or more elements of the web page.
1 . A method for detecting a change in content of a web page, comprising:
creating a server-side fingerprint based on one or more elements of the web page;
injecting executable instructions into the web page such that upon execution at a client device, the executable instructions create a client-side fingerprint of a web page containing the executable instructions based on the one or more elements;
receiving the client-side fingerprint; and comparing the client-side fingerprint to the server-side fingerprint.
2 . The method of claim 1 , wherein a change in the content of the web page is detected if the server-side fingerprint and the client-side fingerprint do not match.
3 . The method of claim 2 , further comprising:
providing a second web page when the change in web content is detected.
4 . The method of claim 1 , wherein the server-side fingerprint is based on a combination of two or more elements of the web page and the client-side fingerprint is based on the same combination of two or more elements of the web page.
5 . The method of claim 1 , wherein the one or more elements of the web page include at least one of a Document Object Model (DOM) element, an iFrame, a Hyper Text Mark-up Language (HTML) tag, an HTML element, an HTML attribute, and HTML content.
6 . The method of claim 1 , further comprising: receiving an indication of a number of values sent from a client, wherein a change in the content of the web page is detected based on the server-side fingerprint and the client-side fingerprint not matching and the indication of the number of values sent from the client.
7 . The method of claim 1 , wherein creating the server-side fingerprint comprises generating a hash value based on the one or more elements.
8 . The method of claim 1 , wherein the server-side fingerprint comprises generating a hash based on the one or more elements.
9 . A method comprising:
generating a first fingerprint of a web page, wherein the first fingerprint is based on one or more elements of a first instance of the web page;
receiving a second instance of a web page;
injecting executable instructions into the received second instance of the web page such that upon execution at a client device, the executable instructions create a second fingerprint of the web page, wherein the second fingerprint is based on the one or more elements of the web page; and
comparing the first fingerprint to the second fingerprint.
10 . The method of claim 9 , wherein a change in the content of the web page is detected if the server-side fingerprint and the client-side fingerprint do not match.
11 . The method of claim 10 , further comprising: providing a second web page when the change in web content is detected.
12 . The method of claim 9 , wherein the first fingerprint is based on a combination of two or more elements of the web page and the second fingerprint is based on the same combination of two or more elements of the web page.
12 . The method of claim 9 , wherein the one or more elements of the web page include at least one of a Document Object Model (DOM) element, an iFrame, a Hyper Text Mark-up Language (HTML) tag, an HTML element, an HTML attribute, and HTML content.
13 . The method of claim 9 , wherein generating the first fingerprint comprises generating a hash value based on the one or more elements.
14 . The method of claim 9 , wherein the server-side fingerprint comprises generating a hash based on the one or more elements.
15 . A system for detecting a change in web content, the system comprising: a code injection module;
a server device including:
a processor;
a communication interface;
data storage; and
a server application stored on the data storage that is executable by the processor, wherein the server application is operable to create a server-side fingerprint based on one or more elements of a web page and provide the web page, utilizing the communication interface, to a code injection module, wherein the code injection module injects executable instructions into the web page such that upon execution at a client device, the executable instructions create a client-side fingerprint of a web page containing the executable instructions based on the one or more elements, wherein the server application is further operable to receive the client-side fingerprint and compare the client-side fingerprint to the server-side fingerprint.
16 . The system according to claim 15 , wherein a change in content of the web page is detected if the server-side fingerprint and the client-side fingerprint do not match.
17 . The system according to claim 16 , further comprising: providing, by the server application, a second web page when the change in web content is detected.
18 . The system according to claim 15 , wherein the server-side fingerprint is based on a combination of two or more elements of the web page and the client-side fingerprint is based on the same combination of two or more elements of the web page.
19 . The system according to claim 15 , wherein the one or more elements of the web page include at least one of a Document Object Model (DOM) element, an iFrame, a Hyper Text Mark-up Language (HTML) tag, an HTML element, an HTML attribute, and HTML content.
20 . The system according to claim 15 , wherein the server application is further operable to receive an indication of a number of values sent from a client device, wherein a change in content of the web page is detected based on the server-side fingerprint and the client-side fingerprint not matching and the indication of the number of values sent from the client.