Skip to content

aman090304/Encryption-Identification-and-Recommendation-using-AI-ML

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cryptographic-Algorithm-Classifier

AI/ML based program to identify various cryptographic algoritms like SHA256, MD5, DSA

1. Project Planning and Requirement Analysis (Sprint 0)

Objective:

Define the project's scope, objectives, and requirements.

Activities:

Define Project Goals: The goal is to build an AI/ML system to identify cryptographic algorithms.

Requirement Gathering:Identify data sources (datasets for cryptographic algorithms).

Determine AI/ML techniques (e.g., XGBoost, SVM).

Define performance metrics (accuracy, F1-score).

Create a Product Backlog: List all features, user stories, and tasks.

Examples of user stories:"As a user, I want to upload encrypted data for analysis."

"As a developer, I want to train an ML model to classify encryption methods."

Initial Setup: Set up project repositories (GitHub). Define .gitignore (ignore unnecessary files like logs, datasets).

2. Sprint Planning (Sprint 1)

Objective: Plan the first sprint by selecting high-priority items from the product backlog. Activities: Setting up the development environment and gathering initial data Break down tasks for the sprint (e.g., data collection, preprocessing). Assigning tasks to team members. Sprint Duration: 3 weeks.

3. Sprint Execution

Phases:

  1. Sprint 1: Data Collection and Preprocessing Objective: Gather and preprocess data for training ML models. Activities: Collect datasets (e.g., encrypted samples using different algorithms). Preprocess data (e.g., data cleaning, feature extraction). Perform exploratory data analysis (EDA) to understand data patterns. Daily Standups: Short meetings to discuss progress and blockers. Deliverables: Cleaned and preprocessed datasets ready for training.
  2. Sprint 2: Model Development Objective: Develop an AI/ML model for cryptographic algorithm identification. Activities: Select appropriate ML models (e.g., XGBoost, SVM). Implement and train models using preprocessed data. Tune hyperparameters to improve model accuracy. Deliverables: A trained model that can classify cryptographic algorithms.
  3. Sprint 3: Model Evaluation and Testing Objective: Evaluate the model's performance and refine it. Activities: Split data into training and test sets (e.g., 80-20 split). Evaluate model performance using metrics (accuracy, precision, recall, F1-score). Perform cross-validation to ensure model robustness. Deliverables: A tested and validated AI/ML model.
  4. Sprint 4: Model Integration and Deployment Objective: Deploy the model for real-world usage. Activities: Integrate the model into a web interface (e.g., using Flask or Django). Create an API for model predictions. Set up cloud deployment (e.g., AWS, Azure) for scalability. Deliverables: A fully integrated and deployed solution for cryptographic algorithm identification.

4. Review and Retrospective

At the end of each sprint:

Sprint Review: Demonstrate the features developed in the sprint to stakeholders. Collect feedback for improvements. Sprint Retrospective: Discussed what went well, what didn't, and areas for improvement. Adjusted the workflow for the next sprint based on the feedback.

REMAINING SPRINTS:

5. Continuous Integration and Testing

Objective: Ensure code quality and reliability. Activities: Implement unit tests for individual components. Use Continuous Integration (CI) tools (e.g., GitHub Actions) for automated testing. Conduct integration testing to verify the complete system.

6. Project Release (Final Sprint)

Objective: Prepare for the final release. Activities: Perform final testing (user acceptance testing). Optimize model performance for deployment. Prepare documentation (user manual, technical documentation). Deliverables: A fully functional cryptographic algorithm identification system using AI/ML.

7. Maintenance and Support

After deployment, continue monitoring the system for performance and accuracy. Gather user feedback for future improvements. Plan additional sprints for feature enhancements if needed. Agile Artifacts: Product Backlog: List of all features, user stories, and tasks. Sprint Backlog: Tasks selected for each sprint. Burndown Chart: Visual representation of work remaining versus time. Agile Meetings: Daily Standups: Quick updates on progress and blockers. Sprint Review: Demonstrate completed features to stakeholders. Sprint Retrospective: Reflect on the sprint to identify improvements. Tools to Use: Version Control: Git and GitHub Project Management: Jira, Trello, or Asana Data Analysis & Model Development: Python, Jupyter Notebooks Model Deployment: Flask, Django, or cloud services like AWS and Azure Continuous Integration: GitHub Actions, Jenkins

// Semi execution -2 ML Models // XGB , __ // Github repo

// Presentation - format // Research papers

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published