SMCP: a Secure Mobile Crowdsensing Protocol for fog-based applications