1. A method for conducting a transaction, the method comprising: receiving a first verification value and a portion of a first dynamic data element at a server, wherein the first verification value is calculated based in part on the first dynamic data element, and the portion of the first dynamic data element is received by the server, wherein the first dynamic data element is a counter value; determining a plurality of candidate dynamic data elements using the portion of the first dynamic data element using a processor in the server; calculating a plurality of candidate verification values using the plurality of candidate dynamic data elements using the processor in the server; determining if the first verification value matches any of the plurality of candidate verification values using the processor in the server, wherein the transaction is thereafter authenticated if the first verification value matches any of the plurality of candidate verification values and wherein the first dynamic data element comprises data that can change over time; wherein the first verification value is generated using at least one static data element, and wherein the transaction is a payment transaction; wherein the static data element includes at least two of an expiration date, a phone number, a card number, a service code, and an account number; wherein determining a plurality of candidate dynamic data elements using the portion of the first dynamic data element comprises calculating a plurality of potential dynamic data elements that occur in a sequence with the first dynamic data element based on a dynamic data element algorithm; and wherein each of the plurality of candidate verification values is unique to a corresponding candidate dynamic data element.