{"id":29022923,"url":"https://github.com/naveen-526/federated-learning-based-ids","last_synced_at":"2025-07-09T16:13:10.332Z","repository":{"id":299999493,"uuid":"1004817972","full_name":"Naveen-526/Federated-Learning-based-IDS","owner":"Naveen-526","description":"This repository features a federated learning system designed for intrusion detection in IoT networks, ensuring data privacy while maintaining high accuracy. The project utilizes the Flower framework and includes essential components like data processing, server-client architecture, and SSL certificates for secure communication. 🐙🌐","archived":false,"fork":false,"pushed_at":"2025-07-03T16:45:56.000Z","size":20,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-03T17:44:24.696Z","etag":null,"topics":["blockchain","client-server","data-processing","deep-learning","edge-computing","edge-device","federated-learning","flower-framework","ids","iot","iot-device","machine-learning","membership","privacy-preserving","privacy-preserving-machine-learning","sensors","ssl-certificate","tensorflow"],"latest_commit_sha":null,"homepage":null,"language":"Jupyter Notebook","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Naveen-526.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null}},"created_at":"2025-06-19T08:20:45.000Z","updated_at":"2025-07-03T16:45:59.000Z","dependencies_parsed_at":"2025-07-03T17:31:48.950Z","dependency_job_id":"56d4e8ed-f2b5-477d-bf30-0c4115ea93e8","html_url":"https://github.com/Naveen-526/Federated-Learning-based-IDS","commit_stats":null,"previous_names":["naveen-526/federated-learning-based-ids"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/Naveen-526/Federated-Learning-based-IDS","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Naveen-526%2FFederated-Learning-based-IDS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Naveen-526%2FFederated-Learning-based-IDS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Naveen-526%2FFederated-Learning-based-IDS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Naveen-526%2FFederated-Learning-based-IDS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Naveen-526","download_url":"https://codeload.github.com/Naveen-526/Federated-Learning-based-IDS/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Naveen-526%2FFederated-Learning-based-IDS/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264492785,"owners_count":23617051,"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":["blockchain","client-server","data-processing","deep-learning","edge-computing","edge-device","federated-learning","flower-framework","ids","iot","iot-device","machine-learning","membership","privacy-preserving","privacy-preserving-machine-learning","sensors","ssl-certificate","tensorflow"],"created_at":"2025-06-26T03:04:16.733Z","updated_at":"2025-07-09T16:13:10.249Z","avatar_url":"https://github.com/Naveen-526.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Federated Learning-based Intrusion Detection System (FL-IDS) 🚀\n\n![GitHub Repo Stars](https://img.shields.io/github/stars/Naveen-526/Federated-Learning-based-IDS?style=social)\n![GitHub Release](https://img.shields.io/github/release/Naveen-526/Federated-Learning-based-IDS.svg)\n![License](https://img.shields.io/badge/license-MIT-blue.svg)\n\nWelcome to the **Federated Learning-based Intrusion Detection System (FL-IDS)** repository! This project focuses on enhancing the security of edge IoT networks through decentralized anomaly detection and privacy-preserving intelligence sharing. \n\nYou can find the latest releases of this project [here](https://github.com/Naveen-526/Federated-Learning-based-IDS/releases). Please download and execute the necessary files to get started.\n\n## Table of Contents\n\n- [Introduction](#introduction)\n- [Features](#features)\n- [Technologies Used](#technologies-used)\n- [Installation](#installation)\n- [Usage](#usage)\n- [Contributing](#contributing)\n- [License](#license)\n- [Contact](#contact)\n\n## Introduction\n\nAs IoT devices proliferate, the need for robust security measures becomes critical. Traditional intrusion detection systems (IDS) often struggle to scale and adapt to the dynamic nature of edge networks. FL-IDS addresses these challenges by leveraging federated learning, allowing devices to learn from local data without sharing sensitive information.\n\n## Features\n\n- **Decentralized Learning**: Each device learns from its own data, reducing the risk of data breaches.\n- **Anomaly Detection**: The system can identify unusual patterns in network traffic, alerting administrators to potential threats.\n- **Privacy-Preserving**: Sensitive data remains on the device, ensuring user privacy.\n- **Scalable Architecture**: Easily integrates with various edge devices and IoT networks.\n- **Real-Time Monitoring**: Continuous analysis of network traffic for immediate threat detection.\n\n## Technologies Used\n\nThis project employs a variety of technologies to ensure efficiency and security:\n\n- **Client-Server Architecture**: Facilitates communication between edge devices and the central server.\n- **Data Processing**: Utilizes advanced algorithms for analyzing network traffic.\n- **Federated Learning**: Implements federated learning principles to enhance model training.\n- **Flower Framework**: A robust framework for federated learning.\n- **LeNet-5**: A convolutional neural network model used for anomaly detection.\n- **IoT Device Integration**: Supports various sensors and IoT devices.\n- **SSL Certificates**: Ensures secure communication between devices.\n- **TensorFlow**: A powerful library for building and training machine learning models.\n\n## Installation\n\nTo set up the FL-IDS on your local machine, follow these steps:\n\n1. **Clone the Repository**:\n   ```bash\n   git clone https://github.com/Naveen-526/Federated-Learning-based-IDS.git\n   cd Federated-Learning-based-IDS\n   ```\n\n2. **Install Dependencies**:\n   Ensure you have Python 3.x installed. Then, install the required packages:\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n3. **Set Up SSL Certificates**:\n   For secure communication, generate SSL certificates. Follow the instructions in the `docs/SSL_Setup.md` file.\n\n4. **Run the Application**:\n   Start the server and client applications:\n   ```bash\n   python server.py\n   python client.py\n   ```\n\n5. **Access the Dashboard**:\n   Open your web browser and navigate to `http://localhost:5000` to view the monitoring dashboard.\n\n## Usage\n\nAfter setting up the FL-IDS, you can use it to monitor your IoT network. Here’s how:\n\n1. **Configure Devices**: Ensure all IoT devices are configured to communicate with the server.\n2. **Monitor Traffic**: The dashboard will display real-time network traffic and alerts for any detected anomalies.\n3. **Review Logs**: Access logs to analyze past incidents and improve security measures.\n\n## Contributing\n\nWe welcome contributions to improve the FL-IDS project. To contribute:\n\n1. Fork the repository.\n2. Create a new branch for your feature or bug fix.\n3. Commit your changes.\n4. Push your branch and create a pull request.\n\nPlease ensure your code adheres to the project's coding standards and includes appropriate tests.\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.\n\n## Contact\n\nFor any inquiries or support, please contact:\n\n- **Naveen**: [naveen@example.com](mailto:naveen@example.com)\n\nFeel free to reach out if you have questions or need assistance with the FL-IDS.\n\n---\n\nFor the latest updates and releases, visit the [Releases section](https://github.com/Naveen-526/Federated-Learning-based-IDS/releases). Download and execute the necessary files to enhance your IoT security with FL-IDS.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnaveen-526%2Ffederated-learning-based-ids","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnaveen-526%2Ffederated-learning-based-ids","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnaveen-526%2Ffederated-learning-based-ids/lists"}