You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: SECURITY.md
+14Lines changed: 14 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,6 +21,20 @@ SmartEVSE is an internet-connected device that controls mains electricity. Secur
21
21
- Denial of service that could leave contactors in an unsafe state
22
22
- Information disclosure of WiFi credentials or RFID card data
23
23
24
+
## Security Design Choices
25
+
26
+
### Shared Default TLS Certificate
27
+
28
+
The repository includes a self-signed EC private key (`SmartEVSE-3/data/key.pem`) and certificate (`SmartEVSE-3/data/cert.pem`) used for the device's built-in HTTPS web server. This is an intentional design choice: every SmartEVSE ships with the same default keypair so that HTTPS works out of the box without requiring a per-device provisioning step.
29
+
30
+
**Implications:**
31
+
32
+
- The private key is public knowledge. HTTPS provides encryption in transit but does not authenticate the device — an attacker on the local network could impersonate a SmartEVSE endpoint.
33
+
- All devices share the same certificate, so compromising one does not increase risk to others (there is no unique secret to protect).
34
+
- This is a common tradeoff in embedded devices where there is no certificate authority infrastructure or user-facing provisioning flow.
35
+
36
+
Users who require stronger TLS authentication should replace the default keypair with a device-specific certificate.
0 commit comments