Trust-but-Verify: Guaranteeing the Integrity of User-generated Content in Online Applications