Smart grids allow automated meter readings and facilitate two-way communications between the smart meters and utility control centers. As the smart grid becomes more intelligent, it becomes increasingly vulnerable to cyber-attacks. Smart grid security mainly focuses on mutual authentication and key management techniques. An impeding factor in grid security is the memory and processing constraints of the smart meters. The aim of this paper is to propose a lightweight mutual authentication protocol between a residential smart meter and a gateway. The authentication protocol provides source authentication, data integrity, message confidentiality, and non-repudiation. The security analysis renders this protocol robust against several attacks. Its performance analysis provides meticulous results as to how the proposed protocol is efficient in terms of computation overhead, average delay and buffer occupancy at the gateway.