Adds more authentication and verification, but currently broken