Wireless Sensor Network (WSN) contains a lot of sensors called nodes or motes. These sensors sense the environmental data, according to the application, and then communicate with each other, and finally send these data or readings back to the base station. WSN security is an important issue, since motes are usually left to operate unattended in the environment where they were deployed. Intruder may inject false data into the network, thus strong security mechanisms are needed to be implemented in order to protect the network against malicious intruder or attacks. This paper proposed a key distribution and authentication protocol designed to achieve some security requirements of WSNs. The paper introduces a simple protocol for shared key discovery and authentication of massage and entity. The work assumes mobile nodes and proposed a re-authentication protocol for nodes to re-authenticate themselves in the new location. The efficiency of the proposed protocol has been ensured in terms of energy consumption, packet size and the security requirements achieved.