A survey of online social networks: Challenges and opportunities