Fine-grained meter readings enable applications in an advanced metering infrastructure. However, those meter readings threaten personal privacy by implying a sketch of daily activities of households. The privacy issue has been addressed in smart metering systems by either a trusted third party assumption or cryptographic primitives. We address the privacy issue by using a trusted platform module and lightweight cryptographic primitives. Our smart metering system simultaneously supports the billing and load monitoring applications in a privacy preserving manner. It allows an electricity service provider obtain sums of meter readings over a time period and a monitoring center obtain sums of meter readings from meters in an area at some recent time unit while keeping individual meter reading private. Moreover, we formally prove that our system is privacy preserving. Our system provides a simple yet very practical solution to a privacy preserving smart metering system.