RooR: AI Behavior Analysis in Post-Quantum Cybersecurity
Overview
RooR is a Python R&D package designed to analyze the behavior of AI models in the context of post-quantum cybersecurity. It provides tools to:
- Simulate post-quantum cryptographic attacks.
- Analyze system logs for anomalies.
- Evaluate the resilience of AI models against emerging threats.
This package is intended for research and development purposes in cybersecurity and AI resilience.
Key Features
- AI Behavioral Analysis: Detect anomalies in logs using advanced machine learning techniques.
- Post-Quantum Attack Simulation: Simulate lattice-based and code-based cryptographic attacks.
- Resilience Evaluation: Assess AI model performance under post-quantum threat scenarios.
- Report Generation: Export results in JSON and CSV formats for easy integration and analysis.
Installation
Install RooR using pip:
# Clone the repository
git clone https://github.com/eurocybersecurite/RooR.git
cd RooR
# Install the package
pip install .
Note: For development purposes, you can also install in editable mode:
pip install -e .
Running Tests
To run the automated tests for this project, activate the virtual environment and use the unittest module:
# Activate the virtual environment
source venv/bin/activate
# Run tests
python3 -m unittest discover tests
Usage Examples
Here’s a quick example demonstrating the main functionalities:
from RooR import behavioral_analysis, attack_simulation, report_generation
import pandas as pd
# --- 1. Simulate a post-quantum attack ---
target_model = "Quantum-Resistant AI Model"
attack_result = attack_simulation.simulate_lattice_based_attack(target_model)
report_generation.generate_json_report(attack_result, "attack_report.json")
# --- 2. Analyze logs for anomalies ---
log_data = {
'timestamp': ['2023-10-27 10:00:00', '2023-10-27 10:05:00', '2023-10-27 10:10:00'],
'event_type': ['login', 'logout', 'login']
}
pd.DataFrame(log_data).to_csv('dummy_logs.csv', index=False)
anomalies = behavioral_analysis.analyze_logs('dummy_logs.csv')
report_generation.generate_csv_report(anomalies, "anomalies_report.csv")
# --- 3. Evaluate model resilience ---
predictions = [1, 0, 1, 1, 0]
ground_truth = [1, 0, 1, 0, 1]
resilience = behavioral_analysis.evaluate_post_quantum_resilience(predictions, ground_truth)
report_generation.generate_json_report(resilience, "resilience_report.json")
Contributing
Contributions are welcome!
- Open an issue to report bugs or request features.
- Submit a pull request for improvements.
Please follow standard Python packaging and testing practices.
License
This project is licensed under the MIT License.
Developer Information
- Name: ABDESSEMED Mohamed
- Email: mohamed.abdessemed@eurocybersecurite.fr
Metadata
Release files for RooR 0.0.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| roor-0.0.4.tar.gz | 4.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| roor-0.0.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 9.5 kB
Release files / roor-0.0.4.tar.gz
| Download URL | roor-0.0.4.tar.gz |
|---|---|
| Size | 4.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6771a782503daa496a7cbaac3a86715fb5a67f572b2e091e3277fc1de0aa3747
|
|
BLAKE2b-256 checksum How to use checksums |
5a924151237be74f0c7a08e3f5b5e940a5781df66cc30c03e863c08a5c9e9883
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.7
|
Release files / roor-0.0.4-py3-none-any.whl
| Download URL | roor-0.0.4-py3-none-any.whl |
|---|---|
| Size | 4.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8718ee96a5aef5207638512e45ef8bbe8166449eff55b4be9ed3cbfa08e15abc
|
|
BLAKE2b-256 checksum How to use checksums |
33b78eaaae218e7735cd9131377e57486a3ef6fc7dd1f3d85d97758108bbb852
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.7
|