Why do we need acid when making acetone peroxide?
The role of the acid in this reaction (really a polymerization) is two-fold.  First, it protonates the acetone carbonyl oxygen making the acetone carbonyl carbon more electrophilic.  This speeds up the rate of attack by the nucleophilic hydrogen peroxide (or other hydroperoxides formed later in the reaction) on this carbon.  Second, the acid also protonates hydroxyl groups in intermediates formed later in the reaction.  This makes them better leaving groups and allows nucleophiles like hydrogen peroxide or other hydroperoxides formed in the reaction to displace them.

The acid is a catalyst, the more acid the faster the reaction, but the reaction will proceed, albeit more slowly, without the acid.  Any proton acid can be used, but as expected, the stronger the acid, the faster the reaction.

Here are links to two articles on the subject (reference 1, reference 2) along with a diagram of the proposed reaction mechanism.