In a mixing bowl, beat the cream cheese until smooth.
Gradually add powdered sugar and mix until well combined.
In another bowl, whisk together the chocolate pudding mix and milk for 2 minutes.
In a 9x13 inch dish, layer graham crackers on the bottom.
Spread half of the cream cheese mixture over the graham crackers.
Pour half of the chocolate pudding over the cream cheese layer.
Repeat the layers: graham crackers, cream cheese, and chocolate pudding.
Top with whipped topping and chocolate shavings.
Refrigerate for at least 4 hours before serving.