Aide En Informatique
Latest Posts:

QuizCodeur Des pistes pour les fonctionalités à implementer
QuizCodeur Des pistes pour les fonctionalités à implementer

Hier j'ai publié sur ma page facebook ici dans un post , comment on discute et travaille sur un projet ensemble sur github et pour cela j'ai ouverts des topic de discussion dans des propositions d'ajout de fonctionnalités dans la partie backend qui est décrit dans mon post facebook, je voudrais dans ce document apporté des pistes pour sa resolution et je fais un article publique dans l'optique de faire voir aux autres codeurs qui ne font pas partire du projet et qui n'ont donc pas accès sur le contenu github de la discussion de comprendre comment on travaille en equipe dans un groupe de dev, comment le travail est organisé et comment on cherche des solutions à la resolution des problemes posés.

pour la première fonctionalité sur la cryptographie des reponses, j'ai ecrit ceci dans le topic de discussion

 

Cette discussion est utilisée pour parler de l'integration de la cryptographie dans les reponses aux questions des quiz.
ceci fait suite à ce que j'ai publié sur ma page facebook
Pourquoi crypté les reponses? est ce que le site n'est pas securisé par HTTPS?
le site est securisé et hyper protégé mais nous avons une application Fontend/Backend à travers les API REST et il s'agit ici d'une plateforme ou les données bien que cryptées par HTTPS, traverse le backend au frontend à travers les API REST du coup, un utilisateur futté et experimenté qui veut avoir gratuitement les COIN/POINTS pour debloquer les fonctionalités de la app et meme se faire payer dans le cas ou la plateforme decide d'acheter les POINTS comme j'ai manssioné dans les fonctionalités et la documentation du projet car il faut engager les utilisateurs (user engagement), l'utilisateur futté peut utiliser POSTMAN ou autre tool d'interrogation des API REST pour se connecter au backend et lire les reponses aux questions, pour connaitre les endpoint c'est un jeu simple, il decompacte la app et il peut savoir le endpoint, comment l'interroger et du coup par POSTMAN il peut obtenir toutes les reponses aux questions et puis aller jouer dans la app pour avoir des COINS et debloquer ou s efaire payer pour une chose qu'il n'aurait pas du faire... l'homme prudent voyant de loin, il faut donc crypter les reponses.
Actuellement quand le frontend Flutter ou reactjs interroge le backend pour recuperer les questions, chaque question est fait comme dans cette immage
crypt1
la reponse associée à la question est en texte claire, je voudrais qu'on le crypte et que le noeud/element de answer soit en fait fait ainsi je voudrais que cette structure s etransforme en ceci
crypt2
ou du coté API REST quand on passe la structure de la reponse aux FRONTEND, on crypte avec PHP OPENSSL avec l'algorythme AES et en utilisant un IV (Initialisation vecteur) et on passe non seulement le texte crypté au frontend mais aussi l'IV et seul le frontend et le backend connaissent le IV et la clé secret de cryptographie, cette clée peut etre meme dynamique et doit etre su seulement par le frontend et le backend du coup par postman impossible de connaitre la reponse.
Voici des pistes:
pistes 1
piste 2
piste 3
piste 4

il faudra parcourir tous les endpoints qui retourne des reponses aux questions dans application/Controller/Api.php pour faire cette modification et verifier effectivement que par postman on reçoit les reponses sur le modele que je viens de decrire, faite des textes en utilisant par exemple l'endpoint get_questions_for_self_challenge_post()
ceci est destiné à @Claudye

pour la deuxième fonctionalité sur le payement par mobile money, j'ai ecrit ceci dans le topic de discussion

 

Cette discussion c'est pour debattre des fonctionalités de l'ajout option de payement par Mobile Money, il s'agit en fait du point 2 dans mon post facebook ici
cela s'adresse à @fotso22 , l'image1 en pièce jointe decrit ce qu'on veut ajouter, l'option In App purchase il ya dejà et ce serait emem mieux d'installer la app dans ton telephone pour avoir les idées claires bien que tu travailles du coté du backend
image1
toute autre personne qui veut developper des sous fonctionalités sur cette fonctionalité est la bienvenue et peut participer aux discussions. il faut:
==> Creer une table dans mysql/phpmyadmin qui va contenir les produits à vendre par mobile money c'est à dire les pack de coin à vendre, la table pourra s'appeller "tbl_products" et doit contenir les champs suivant :

  1. Id (clé primaire de type int autoincrement)
  2. ProductName (Varchar(50))
  3. ProductDescription(Varchar(300))
  4. Price (decimal)
  5. Money(Varchar(50))
  6. CreatAt(DateTime)
    Ainsi on pourra par exemple avoir une entrée (ProductName:"Pack_5_Coin", ProductDescription:"Pack de 5 coins en CFA", Price:100, Money:"CFA", CreatAt:"2022-09-09")
    ==> construire une page ou on peut faire du CRUD sur cette table dans la partie admin/backoffice, donc en parole simple ou on peut inserrez/ajouter, eliminer, rechercher, mettre à jour les données dans cette table, inspire toi de la fonctionalité "Creation des Questions " qui existe dejà dans la app, car cette page fait du CRUD dans la table des questions comme en image
    image2

=> exposer un API REST JSON pour les frontend (Flutter et Reactjs) qui va retourner tous les produits qui existent dans cette base table, inspire toi par exemple de "get_categories_post" dans "ApplicationControllerAPI.php" qui justement retourne toutes les categories de la table category du projet comme en image:
image3
Tu pourras d'abord le tester par Postman comme dans l'image suivante :
image4
une fois que tu as confirmé que Postman te retourne les donnée en json exactement comme le json suivant
image5
Discutons en pour toutes les doutes
Happy coding


Author: admin
11.09.2022, 14:42
Category: Other
Comments: 0
Views: 469
-

Share

Comments (0)
There are no comments yet.

Leave A Comment
processing...