Preheat the oven to 350°F. Grease and flour a large sheet pan (approximately 18x13 inches).
In a large mixing bowl, combine the flour, sugar, baking soda, salt, and cocoa powder.
In a saucepan over medium heat, melt the butter and water together, bringing it to a boil. Remove from heat and pour the hot mixture into the dry ingredients. Stir until well combined.
Add the eggs, buttermilk, and vanilla extract to the mixture. Mix until smooth and fully incorporated.
Pour the batter into the prepared sheet pan and spread it evenly. Bake for 20-25 minutes, or until a toothpick inserted in the center comes out clean.
While the cake is baking, prepare the frosting. In a saucepan, melt the butter and milk over medium heat. Once melted, remove from heat and whisk in the peanut butter, powdered sugar, and vanilla extract until smooth.
Once the cake is done baking, remove it from the oven and let it cool for about 10 minutes. Pour the frosting over the warm cake, spreading it evenly. If desired, sprinkle chopped peanuts on top.
Allow the cake to cool completely before slicing into squares.