{"id":22829153,"url":"https://github.com/eric-philippe/cryptage","last_synced_at":"2025-03-31T01:20:18.152Z","repository":{"id":163480979,"uuid":"480750095","full_name":"Eric-Philippe/Cryptage","owner":"Eric-Philippe","description":"Système de Cryptage en C","archived":false,"fork":false,"pushed_at":"2022-04-12T09:59:25.000Z","size":6,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-06T06:41:20.822Z","etag":null,"topics":["c","caesar-cipher","vigenere-cipher","work"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Eric-Philippe.png","metadata":{"files":{"readme":"README.MD","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-04-12T09:57:33.000Z","updated_at":"2024-10-19T12:30:30.000Z","dependencies_parsed_at":null,"dependency_job_id":"ce9728a3-2e75-4d08-8c49-d4ceccfb1763","html_url":"https://github.com/Eric-Philippe/Cryptage","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Eric-Philippe%2FCryptage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Eric-Philippe%2FCryptage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Eric-Philippe%2FCryptage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Eric-Philippe%2FCryptage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Eric-Philippe","download_url":"https://codeload.github.com/Eric-Philippe/Cryptage/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246400348,"owners_count":20770995,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","caesar-cipher","vigenere-cipher","work"],"created_at":"2024-12-12T19:13:36.071Z","updated_at":"2025-03-31T01:20:18.115Z","avatar_url":"https://github.com/Eric-Philippe.png","language":"C","readme":"\u003cimg width=\"150\" height=\"95\" align=\"left\" style=\"float: left; margin: 0 10px 0 0;\" alt=\"IUT\" src=\"https://cdn.discordapp.com/attachments/739553949199106158/937150810431823912/logoIUT.jpg\"\u003e\n\n# Chiffrement de messages\n\n---\n\nApplication en C permettant d'encoder et de décoder avec différentes méthodes de cryptage (Cesar, Vigenere) un message entré.\n\n---\n\n## Chapitres\n\n- [Participants](#participants)\n- [Objectifs](#objectifs)\n- [Documentation](#doc)\n\n---\n\n\u003cdiv id='participants'/\u003e\n\n## Participants\n\nL'équipe est composée de Eric PHILIPPE, Brandon SOUBAIGNE, ainsi que d'Alexandre MOURCACOS\nNous sommes trois étudiants en informatique à l'IUT de Toulouse.\n\n---\n\n\u003cdiv id='objectifs' /\u003e\n\n## Objectifs\n\nL'objectif principal de ce système est d'offrir à l'utilisateur une interface de cryptage et de décryptage de messages.\nOn retrouvera alors le cryptage de messages avec des algorithmes de cryptage différents, à savoir le cryptage de César, le cryptage de Vigenere. \nLe tout se veut complètement découpé, afin de pouvoir réutiliser les parties désirés dans d'autres applications.\n\n--- \n\n\u003cdiv id='doc' /\u003e\n\n## Documentation\n\nLa suivante va se décomposer en plusieurs chapitres:\n\n1. [Encodeur César](#encodeur-cesar)\n2. [Encodeur Vigenere](#encodeur-vigenere)\n3. [Affichage](#affichage)\n4. [Utils](#utils)\n\n---\n\n\u003cdiv id='encodeur-cesar' /\u003e\n\n### Encodeur César\n\nLe suivant se décompose en deux fonctions différentes:\n\n```c\nvoid caesar(char *message, int shift);\nvoid caesar_decode(char *message, int shift);\n```\n\nElles ont pour seul but de chiffrer et déchiffrer un message sans aucune vérification en amont. La vérification des différents input se fait plus haut.\nA noter également que la fonction update le paramètre de message pour le rendre plus facile à utiliser.\n\n---\n\n\u003cdiv id='encodeur-vigenere'\u003e\n\n### Encodeur Vigenere\n\nLe suivant se décompose également en deux fonctions différentes:\n\n```c\nvoid vigenere(char *text, char *key, char *out);\nvoid vigenere_decode(char *text, char *key, char *out);\n```\n\nCes deux fonctions se veulent également brute dans leurs traitements, afin de pouvoir réutiliser leur code dans d'autres applications. On notera aussi la présence d'un paramètre d'output, désirant varier les méthodes utilisées pour le chiffrement et déchiffrement.\n\n---\n\n\u003cdiv id='affichage'\u003e\n\n### Affichage\n\nL'affichage est une extension à l'application. Le tout se veut facile à utiliser, et à réutiliser dans d'autres cas. Le système se décompose en un plus petit système d'affichage et de passage des différents menus. Le second, lui gère le lancement de chaque fonction, et amorce les différentes fonctions, avec le traitement des erreurs possibles.\nTous les menus sont contenus dans le dossier \"Menus\", le tout dans des fichiers .txt.\n\n```c\nlauncher.h;\n\nvoid FullTryCeasar();\nvoid encodedToFileCeaser();\nvoid fileToDecodeCeaser();\nvoid decodeCeaser();\nvoid FullTryVigenere();\nvoid encodedToFileVigenere();\nvoid fileToDecodeVigenere();\nvoid decodeVigenere();\n```\n\n```c\nmenus.h;\n\nvoid displayMenu(int page);\nint getCMD(int page);\n\n```\n\nLe premier fichier permet donc de lancer les différentes situations désirées. Le second fichier permet de gérer les différentes pages, et de récupérer les entrées utilisateurs.\n\n---\n\n\u003cdiv id='utils' /\u003e\n\n### Utils\n\nLe fichier utils se veut tout particulièrement être un fichier modulaire et utilisable absolument partout. Ce sont des fonctions basiques d'input et de vérifications d'input permettant le traitement efficace de ces dernières.\n\n```c\nutils.c;\n\nvoid getMessage(char* str);\nvoid getKeyChar(char* str);\nint getKey();\nint isAlphaNum(char* str);\n\n```\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feric-philippe%2Fcryptage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feric-philippe%2Fcryptage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feric-philippe%2Fcryptage/lists"}