Skip to content

Commit 3387ee4

Browse files
feat: Add example configuration file
This commit adds config/config.example.yaml with comprehensive configuration options for: - Application settings and logging - Protocol parameters (crypto, PUF, chaotic maps) - AI/ML configuration - Network and communication settings - Entity-specific defaults - Future features (GUI, database, API) - Security and monitoring options This provides a template for configuration management as outlined in CLAUDE.md.
1 parent 2f5c7a3 commit 3387ee4

File tree

1 file changed

+174
-0
lines changed

1 file changed

+174
-0
lines changed

config/config.example.yaml

Lines changed: 174 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,174 @@
1+
# AIDAS Configuration File Example
2+
# Copy this file to config.yaml and adjust the values as needed
3+
4+
# Application Settings
5+
app:
6+
name: "AIDAS Protocol Implementation"
7+
version: "1.0.0"
8+
debug: false
9+
log_level: "INFO" # DEBUG, INFO, WARNING, ERROR, CRITICAL
10+
11+
# Protocol Configuration
12+
protocol:
13+
# Authentication settings
14+
authentication:
15+
timeout_seconds: 30
16+
max_attempts: 3
17+
session_duration_hours: 24
18+
19+
# Cryptographic parameters
20+
crypto:
21+
key_length: 32 # bytes
22+
aes_mode: "CBC"
23+
hash_algorithm: "SHA256"
24+
25+
# PUF settings
26+
puf:
27+
noise_level: 0.03
28+
verification_threshold: 0.9
29+
challenge_length: 16 # bytes
30+
31+
# Chaotic map parameters
32+
chaotic_map:
33+
r_parameter: 3.99
34+
initial_condition: null # null for random
35+
36+
# AI/ML Configuration
37+
ai:
38+
# DQN settings
39+
dqn:
40+
learning_rate: 0.001
41+
gamma: 0.97
42+
epsilon_start: 1.0
43+
epsilon_min: 0.01
44+
epsilon_decay: 0.995
45+
memory_size: 10000
46+
batch_size: 32
47+
48+
# Detection thresholds
49+
detection:
50+
accuracy_target: 0.978
51+
false_positive_rate_max: 0.012
52+
update_frequency_ms: 250
53+
54+
# Network Configuration
55+
network:
56+
# Communication settings
57+
communication:
58+
default_port: 8443
59+
use_tls: true
60+
certificate_path: null
61+
key_path: null
62+
63+
# Performance limits
64+
limits:
65+
max_connections: 1000
66+
connection_timeout_ms: 5000
67+
request_timeout_ms: 30000
68+
69+
# Entity Defaults
70+
entities:
71+
# Operator settings
72+
operator:
73+
biometric_data_length: 32
74+
smart_card_validity_days: 365
75+
76+
# Vehicle settings
77+
vehicle:
78+
registration_token_length: 32
79+
puf_challenge_rotation_hours: 1
80+
81+
# Charging station settings
82+
charging_station:
83+
max_concurrent_sessions: 10
84+
session_timeout_minutes: 60
85+
86+
# GUI Configuration (for future implementation)
87+
gui:
88+
theme: "dark" # dark, light, auto
89+
window_size:
90+
width: 1200
91+
height: 800
92+
refresh_rate_ms: 1000
93+
94+
# Database Configuration (for future implementation)
95+
database:
96+
type: "sqlite" # sqlite, postgresql, mysql
97+
connection:
98+
host: "localhost"
99+
port: 5432
100+
name: "aidas_db"
101+
user: "aidas_user"
102+
password: "" # Use environment variable AIDAS_DB_PASSWORD
103+
104+
# Connection pool
105+
pool:
106+
size: 10
107+
max_overflow: 20
108+
timeout: 30
109+
110+
# Monitoring and Metrics
111+
monitoring:
112+
# Performance tracking
113+
metrics:
114+
enabled: true
115+
export_interval_seconds: 60
116+
export_format: "json" # json, csv, prometheus
117+
118+
# Visualization
119+
visualization:
120+
plot_history_points: 100
121+
update_interval_ms: 500
122+
show_real_time: true
123+
124+
# Security Settings
125+
security:
126+
# Attack detection
127+
intrusion_detection:
128+
enabled: true
129+
alert_threshold: "high" # low, medium, high, critical
130+
auto_block: true
131+
block_duration_minutes: 30
132+
133+
# Audit logging
134+
audit:
135+
enabled: true
136+
log_file: "logs/audit.log"
137+
rotation: "daily" # daily, weekly, size
138+
retention_days: 90
139+
140+
# Development Settings
141+
development:
142+
# Testing
143+
testing:
144+
use_mock_data: false
145+
deterministic_random: false
146+
seed: 42
147+
148+
# Debugging
149+
debug:
150+
verbose_logging: false
151+
save_intermediate_states: false
152+
profiling_enabled: false
153+
154+
# API Configuration (for future implementation)
155+
api:
156+
enabled: false
157+
base_path: "/api/v1"
158+
cors_enabled: true
159+
allowed_origins:
160+
- "http://localhost:3000"
161+
- "https://aidas.example.com"
162+
rate_limiting:
163+
enabled: true
164+
requests_per_minute: 60
165+
166+
# Environment-specific overrides
167+
# These can be set via environment variables with prefix AIDAS_
168+
# Example: AIDAS_APP_DEBUG=true
169+
environment_overrides:
170+
- APP_DEBUG
171+
- DATABASE_PASSWORD
172+
- API_SECRET_KEY
173+
- NETWORK_CERTIFICATE_PATH
174+
- NETWORK_KEY_PATH

0 commit comments

Comments
 (0)