Bonsoir,
J'ai besoin de vos avis sur une certaine question, je suis en pleine réflexion.
Je voudrais mettre un programme de fidélité en place auprès d'utilisateurs de restaurant.
Pour prouver qu'une personne est bien aller manger auprès de nos partenaires, le plus simple que j'ai trouvé est que l'utilisateur envoi une photo de l'addition juste après son repas.
Malheureusement niveau sécurité j'ai comme l'impression que cela est impossible pour plusieurs raisons dont je réponds plus ou moins du mieux que je peux :
- Comment savoir si un utilisateur à déjà envoyé cette addition ?
--> début simple, on récupère un élément du ticket unique que l'on inscrit dans la base par traitement en amont et vérification
- Comment savoir si un utilisateur ne "photoshop" tout simplement pas ces additions pour changer cet id ?
On rentre dans le plus complexe...
--> Faire en sorte de devoir passer par notre application avec gestion de clé pour être sur que la personne ne passe pas par son ordinateur pour up la photo.
Oui, mais et si la personne photoshop l'image et le met directement sur son portable ?
--> Il faut donc faire en sorte que seul la caméra soit disponible, pour s'assurer qu'il s'agisse bien d'une photo prise dans l'instantané et par un appareil le permettant
Mon champs input devant ressembler à : <input type="file" accept="image/*" capture="camera">
On sait que tout ce qui est côté client est modifiable, rien n'empêche l'utilisateur de connecter son téléphone à son ordinateur pour pouvoir modifier le code source client de l'app en cours (possible ?) et enlever capture="camera", ou bien encore d'utiliser un navigateur qui ne supporte pas cette commande, pour pouvoir upload les photos modifiés.
--> Lire les meta de l'image en PHP pour bien voir que sa date de création est toute récente (de quoi pas laisser le temps à la modification)
Mais là encore les metas d'un JPEG peuvent être modifiés je me trompe ?
Alors voila, je me demandais si vous aviez des idées pour "renforcer" au maximum le système contre la fraude ou au contraire qu'il est plus judicieux de laisser tomber cette manière de faire en prenant en compte le "never trust user"
Merci pour vos retours, bonne soirée à tous !
J'ai besoin de vos avis sur une certaine question, je suis en pleine réflexion.
Je voudrais mettre un programme de fidélité en place auprès d'utilisateurs de restaurant.
Pour prouver qu'une personne est bien aller manger auprès de nos partenaires, le plus simple que j'ai trouvé est que l'utilisateur envoi une photo de l'addition juste après son repas.
Malheureusement niveau sécurité j'ai comme l'impression que cela est impossible pour plusieurs raisons dont je réponds plus ou moins du mieux que je peux :
- Comment savoir si un utilisateur à déjà envoyé cette addition ?
--> début simple, on récupère un élément du ticket unique que l'on inscrit dans la base par traitement en amont et vérification
- Comment savoir si un utilisateur ne "photoshop" tout simplement pas ces additions pour changer cet id ?
On rentre dans le plus complexe...
--> Faire en sorte de devoir passer par notre application avec gestion de clé pour être sur que la personne ne passe pas par son ordinateur pour up la photo.
Oui, mais et si la personne photoshop l'image et le met directement sur son portable ?
--> Il faut donc faire en sorte que seul la caméra soit disponible, pour s'assurer qu'il s'agisse bien d'une photo prise dans l'instantané et par un appareil le permettant
Mon champs input devant ressembler à : <input type="file" accept="image/*" capture="camera">
On sait que tout ce qui est côté client est modifiable, rien n'empêche l'utilisateur de connecter son téléphone à son ordinateur pour pouvoir modifier le code source client de l'app en cours (possible ?) et enlever capture="camera", ou bien encore d'utiliser un navigateur qui ne supporte pas cette commande, pour pouvoir upload les photos modifiés.
--> Lire les meta de l'image en PHP pour bien voir que sa date de création est toute récente (de quoi pas laisser le temps à la modification)
Mais là encore les metas d'un JPEG peuvent être modifiés je me trompe ?
Alors voila, je me demandais si vous aviez des idées pour "renforcer" au maximum le système contre la fraude ou au contraire qu'il est plus judicieux de laisser tomber cette manière de faire en prenant en compte le "never trust user"
Merci pour vos retours, bonne soirée à tous !