{"id":15047717,"url":"https://github.com/subugt/authproject-public","last_synced_at":"2025-04-10T01:06:47.266Z","repository":{"id":246337410,"uuid":"820786310","full_name":"subugt/AuthProject-PUBLIC","owner":"subugt","description":"Powerful auth project made with tears...","archived":false,"fork":false,"pushed_at":"2024-07-23T10:26:50.000Z","size":63,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-10T01:06:39.852Z","etag":null,"topics":["auth","authentication","authentication-backend","authentication-middleware","cpp","cpp20","crypter","ddos","enet","keyauth","keyauth-api","keyauth-imgui","keyauth-loader","loader","openssl-client-server","server","server-side","subugt"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/subugt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2024-06-27T07:15:09.000Z","updated_at":"2025-03-22T17:28:35.000Z","dependencies_parsed_at":"2024-06-27T08:45:21.837Z","dependency_job_id":"9f83e319-38e2-466c-8266-49a8b6a8d58e","html_url":"https://github.com/subugt/AuthProject-PUBLIC","commit_stats":null,"previous_names":["subugt/authproject-public"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subugt%2FAuthProject-PUBLIC","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subugt%2FAuthProject-PUBLIC/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subugt%2FAuthProject-PUBLIC/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subugt%2FAuthProject-PUBLIC/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/subugt","download_url":"https://codeload.github.com/subugt/AuthProject-PUBLIC/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248137887,"owners_count":21053775,"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":["auth","authentication","authentication-backend","authentication-middleware","cpp","cpp20","crypter","ddos","enet","keyauth","keyauth-api","keyauth-imgui","keyauth-loader","loader","openssl-client-server","server","server-side","subugt"],"created_at":"2024-09-24T21:03:26.963Z","updated_at":"2025-04-10T01:06:47.245Z","avatar_url":"https://github.com/subugt.png","language":"C++","readme":"```markdown\n# AuthProject-PUBLIC\n\nA high-performance server application with integrated DDoS protection, encryption, and user management. This project uses ENet for networking, OpenSSL for encryption, and nlohmann/json for JSON parsing.\n\n## Features\n\n- **DDoS Protection:** Protects the server from DDoS attacks by limiting request rates and packet sizes.\n- **Encryption:** Secures communication using AES-256 encryption.\n- **User Management:** Manages user data, including adding, removing, banning, and searching for users.\n\n## Prerequisites\n\n- **CMake**: Ensure you have CMake installed. You can download it from [here](https://cmake.org/download/).\n- **vcpkg**: This project uses vcpkg for dependency management. Install it by following these steps:\n\n  ```sh\n  git clone https://github.com/microsoft/vcpkg.git\n  cd vcpkg\n  ./bootstrap-vcpkg.sh\n  ```\n\n## Getting Started\n\n### Dependency Installation\n\nUse `vcpkg` to install the necessary libraries:\n\n```sh\n[ LINUX ] \n./vcpkg install enet\n./vcpkg install openssl\n./vcpkg install nlohmann-json\n[ WINDOWS ]\nvcpkg install enet\nvcpkg install openssl\nvcpkg install nlohmann-json\n```\n\n### Building the Project\n\n1. **Clone the repository**:\n\n   ```sh\n   git clone https://github.com/subugt/AuthProject-PUBLIC.git\n   cd AuthProject-PUBLIC\n   ```\n\n2. **Create a `build` directory and navigate into it**:\n\n   ```sh\n   mkdir build\n   cd build\n   ```\n\n3. **Configure the project using CMake**:\n\n   ```sh\n   cmake .. -DCMAKE_TOOLCHAIN_FILE=$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake\n   ```\n\n   \u003e Ensure that the `VCPKG_ROOT` environment variable is set to your vcpkg installation path.\n\n4. **Build the project**:\n\n   ```sh\n   cmake --build .\n   ```\n\n### Running the Server\n\nAfter building, you can run the server executable located in the `build` directory:\n\n\n```sh\n[LINUX]\n./MyServer\n[WINDOWS]\ncmd MyServer.exe\n```\n\n-----\n\n## Code Overview\n\n### DDoS Protection\n\nThe `DDoSProtection` class monitors and controls the rate of requests and packet sizes to prevent DDoS attacks. It registers requests from IP addresses and blocks those that exceed a specified rate or packet size.\n\n### Encryption\n\nThe `Encryption` class provides methods for encrypting and decrypting messages using AES-256.\n\n### User Management\n\nThe `UserManager` class handles operations related to user management, including adding, removing, banning, and searching for users. It also manages maintenance modes and request blocking.\n\n## Contributing\n\nContributions are welcome! Please open an issue or submit a pull request for any improvements or bug fixes.\n\n## License\n\nThis project is licensed under the MIT License. See the [https://github.com/subugt/AuthProject-PUBLIC/blob/master/LICENSE.txt](LICENSE) file for details.\n\n## Acknowledgments\n\n- [ENet](https://github.com/lsalzman/enet)\n- [OpenSSL](https://github.com/openssl/openssl)\n- [nlohmann/json](https://github.com/nlohmann/json)\n\n# TO DO LIST\n- [x] Create Users\n- [x] Ban Users\n- [x] Search users by username\n- [x] Extend version etc.\n- [x] Full Ddos protection (limits - low level)\n- [x] Build Files ( i will generate visual studio and cmake, gcc for easy build on every os  \n- [x] Forward INVALID REQUESTS TO GOOGLE \n- [x] ENCRYPTION AND SAVE WITH JSON\n- [x] EXTRA SECURITY ( WEB TOKENS )\n- [x] MACOS, LINUX Support ( not tested but it should support at all we are not sure so unchecked )\n- [ ] to cease updating the project indefinitely.\n\n---\nLEAVE A STAR FOR SUPPORTING ME 😂\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubugt%2Fauthproject-public","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsubugt%2Fauthproject-public","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubugt%2Fauthproject-public/lists"}