Authentication is an important issue in vehicular ad hoc network. However, existing studies have not addressed some issues like efficiency and anonymity. In this paper, we propose an anonymous and lightweight authentication based on smart card (ASC) protocol to address this issue. To accomplish this goal, ASC employs low-cost cryptographic operations to authenticate the legitimacy of users (vehicles) and validation of data messages. Compared to existing methods, our protocol can reduce more than 50% of the cost in terms of communication and computational cost. A login identity, which is changed dynamically, is proposed to prevent an attacker from linking a target vehicle with the specific identity. Thus, our protocol can be anonymous. In addition, ASC provides a method for password change, which does not rely on the trusted authority. Thus, it can resist offline password guessing attack. Finally, a formal security model is designed to prove that our protocol is secure under the assumption of the computational Diffie–Hellman problem. The simulations further illustrate that the proposed ASC has superior performance in terms of communication/computational cost, packet loss ratio, latency, etc.