So as i understand it (though im not sure if its the same w/ bulletproofs so please correct me if im wrong), a commitment is generated like this;
commitment = (blinding_secret . G) + (value . H)
where G and H are both different generators on the same curve. But why is it necessary to have the second generator, H, instead of just using G twice?