A user authentication scheme for shared data based on a trap-door one-way function