System, method and computer program product for guaranteeing electronic transactions
First Claim
1. A method, comprising:
- detecting on a network an initiation of a data transaction between at least a server and a client, the data transaction comprising a plurality of data packets transmitted between the server and the client;
capturing a copy of the data transaction by copying the data packets as the data packets are transmitted through the network between the server and the client;
associating at least one identifier with the data transaction;
generating timestamps for the copied data packets, wherein each timestamp includes information therein identifying at least a portion of the at least one identifiers;
storing the captured copy of the data transaction, the at least one identifier and the timestamps in one or more data stores;
mapping the at least one identifier associated with the stored captured copy of the data transaction to an entry in an index to permit retrieval of the stored copy of the data transaction and the timestamps from the data store via the index;
wherein the data transaction is encrypted by utilizing a session secret negotiated between the server and the client; and
retrieving the captured copy of the data transaction from the data store utilizing the entry in the index;
submitting a portion of the captured copy of the data transaction to the server or client to obtain at least the session secret from the server or client; and
decrypting the captured copy of the data transaction utilizing the obtained session secret.
4 Assignments
0 Petitions
Accused Products
Abstract
A system, method and computer program product for guaranteeing a data transaction over a network are disclosed. When a data transaction between at least a server and a client is detected on a network, data transmitted via the network between the server and client during the data transaction is captured. At least one identifier is associated with the captured data. A timestamp is also generated for the captured data. The timestamp includes information therein identifying at least a portion of the identifier(s). The captured data, the identifier(s) and the timestamp are stored in one or more data stores. The identifier(s) associated with the stored captured data is also mapped to an entry in an index to permit retrieval of the stored data from the data store via the index.
-
Citations
30 Claims
-
1. A method, comprising:
-
detecting on a network an initiation of a data transaction between at least a server and a client, the data transaction comprising a plurality of data packets transmitted between the server and the client;
capturing a copy of the data transaction by copying the data packets as the data packets are transmitted through the network between the server and the client;
associating at least one identifier with the data transaction;
generating timestamps for the copied data packets, wherein each timestamp includes information therein identifying at least a portion of the at least one identifiers;
storing the captured copy of the data transaction, the at least one identifier and the timestamps in one or more data stores;
mapping the at least one identifier associated with the stored captured copy of the data transaction to an entry in an index to permit retrieval of the stored copy of the data transaction and the timestamps from the data store via the index;
wherein the data transaction is encrypted by utilizing a session secret negotiated between the server and the client; and
retrieving the captured copy of the data transaction from the data store utilizing the entry in the index;
submitting a portion of the captured copy of the data transaction to the server or client to obtain at least the session secret from the server or client; and
decrypting the captured copy of the data transaction utilizing the obtained session secret. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A system, comprising:
-
logic for detecting on a network an initiation of a data transaction between at least a server and a client, the data transaction comprising a plurality of data packets transmitted between the server and the client;
logic for capturing a copy of the data transaction by copying the data packets as the data packets are transmitted through the network between the server and the client;
logic for associating at least one identifier with the data transaction;
logic for generating timestamps for the copied data packets, wherein each timestamp includes information therein identifying at least a portion of the at least one identifiers;
logic for storing the captured copy of the data transaction, the at least one identifier and the timestamps in one or more data stores;
logic for mapping the at least one identifier associated with the stored captured copy of the data transaction to an entry in an index to permit retrieval of the stored copy of the data transaction and the timestamps from the data store via the index;
wherein the data transaction is encrypted utilizing a session secret negotiated between the server and the client; and
logic for retrieving the captured copy of the data transaction from the data store utilizing the entry in the index;
logic for submitting a portion of the captured copy of the data transaction to the server or the client to obtain at least the session secret from the server or the client; and
logic for decrypting the captured copy of the data transaction utilizing the obtained session secret. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A computer program product, comprising:
-
computer code for detecting on a network an initiation of a data transaction between at least a server and a client, the data transaction comprising a plurality of data packets transmitted between the server and the client;
computer code for capturing a copy of the data transaction by copying the data packets as the data packets are transmitted through the network between the server and client;
computer code for associating at least one identifier with the data transaction;
computer code for generating timestamps for the copied data packets, wherein each timestamp includes information therein identifying at least a portion of the at least one identifiers;
computer code for storing the captured copy of the data transaction, the at least one identifier and the timestamps in one or more data store;
computer code for mapping the at least one identifier associated with the stored captured copy of the data transaction to an entry in an index to permit retrieval of the stored copy of the data transaction and the timestamps from the data store via the index; and
wherein the data transaction is encrypted by utilizing a session secret negotiated between the server and client;
wherein the captured copy of the data transaction is retrieved from the data store utilizing the entry in the index;
wherein a portion of the captured copy of the data transaction is submitted to the server or client to obtain at least the session secret from the server or client;
wherein the captured copy of the data transaction is decrypted utilizing the obtained session secret; and
wherein the data received by the server or client during the data transaction is compared with the decrypted captured copy of the data transaction to determine if data received by the server or client matches the decrypted captured copy of the data transaction.
-
-
30. A method, comprising:
-
a) detecting on a network an initiation of a data transaction between at least a server and a client, the data transaction comprising a plurality of data packets transmitted between the server and the client, wherein the data transaction is encrypted by utilizing a session secret negotiated between the server and the client, wherein the data transmitted during the data transaction is encrypted by the server and client utilizing at least one of a secure sockets layer protocol and a transport layer security protocol;
b) capturing a copy of the data transaction by copying the data packets as the data packets are transmitted through the network between the server and the client;
c) associating at least one identifier with the data transaction;
d) generating timestamps for the copied data packets, wherein each timestamp includes information therein identifying at least a portion of the at least one identifiers, wherein the timestamps are generated utilizing a remote time source coupled to the network, wherein the timestamp includes a digital signature;
e) storing the captured copy of the data transaction, the at least one identifier and the timestamps in one or more data stores;
f) mapping the at least one identifier associated with the stored captured copy of the data transaction to an entry in an index to permit retrieval of the stored copy of the data transaction and the timestamps from the data store via the index;
g) retrieving the captured copy of the data transaction from the data store utilizing the entry in the index;
submitting a portion of the captured copy of the data transaction to the server or client to obtain at least the session secret from the server or client; and
decrypting the captured copy of the data transaction utilizing the obtained session secret, wherein the portion of the transaction containing at least the negotiation of the session secret is presented for revelation to at least one of the server and the client, wherein the revelation of the session secret is added to a secure audit trail before revelation, wherein the session secret is re-encrypted for a trusted mediator which securely logs revelation before revealing the session secret to a replaying entity, wherein the trusted mediator authenticates a challenge provided by the server or the client and in which this server or the client verifies that authenticator before revealing the session secret, wherein the trusted mediator reduces the session secret into traffic keys before revealing these traffic keys to the replaying entity; and
h) comparing the data received by the server or the client during the data transaction with data contained in the decrypted captured copy of the data transaction to determine if data received by the server or the client matches the data contained in the decrypted captured copy of the data transaction.
-
Specification