1 line
25 KiB
Plaintext
1 line
25 KiB
Plaintext
<mxfile host="app.diagrams.net" type="device"><diagram id="signed-its" name="Signed ITS architecture"><mxGraphModel dx="1600" dy="900" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="2150" pageHeight="850" math="0" shadow="0"><root><mxCell id="0"/><mxCell id="1" parent="0"/><mxCell id="title" value="<b>MicrOBU: signed ITS-G5 (CAM / VAM) with the ESP32-C5 station</b><br><font style="font-size:10px">Signing happens on the ESP32-C5. The phone builds the messages and sends time, position and data over USB-C or BLE.</font>" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=16;" vertex="1" parent="1"><mxGeometry x="330" y="0" width="1180" height="50" as="geometry"/></mxCell><mxCell id="k_demo" value="<b>Today: demo PKI (throwaway)</b><br><font style="font-size:10px">Demo Root 6E7D0374FB021901<br>→ Demo AA B3312F29844299E0<br>→ AT B80B49387A4C12EB<br>psid 36 (CAM, SSP 010000) + 638 (VAM, SSP 01)<br>Not EU-registered: EU verifiers drop it</font>" style="rounded=1;whiteSpace=wrap;html=1;fontSize=11;arcSize=8;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="1"><mxGeometry x="20" y="60" width="280" height="140" as="geometry"/></mxCell><mxCell id="k_real" value="<b>Future: real PKI (EU C-ITS CCMS)</b><br><font style="font-size:10px">ECTL / trust list<br>→ UML L0 Root CA (registered 2026-09-11,<br> colleague repo: pki/uml-l0-rca)<br>→ Enrolment Authority (EA)<br>→ Authorization Authority (AA)<br>→ pool of ATs (pseudonyms, short validity,<br> region + permissions)</font>" style="rounded=1;whiteSpace=wrap;html=1;fontSize=11;arcSize=8;fillColor=#ffe6cc;strokeColor=#d79b00;dashed=1;" vertex="1" parent="1"><mxGeometry x="20" y="240" width="280" height="170" as="geometry"/></mxCell><mxCell id="k_paths" value="<b>How real credentials reach the board</b><br><font style="font-size:10px">(a) Offline: bundle file (VCR1) issued by the<br> key holder → copied to the phone<br>(b) Online: TS 102 941 enrolment + authorization<br> from the phone (ECIES, HTTP to EA/AA),<br> renewing tickets before they expire<br>Both end in CREDENTIALS_PROVISION → NVS</font>" style="rounded=1;whiteSpace=wrap;html=1;fontSize=11;arcSize=8;fillColor=#f5f5f5;strokeColor=#666666;fontColor=#333333;dashed=1;" vertex="1" parent="1"><mxGeometry x="20" y="450" width="280" height="150" as="geometry"/></mxCell><mxCell id="phone" value="<b>Phone app (Android, MicrOBU)</b>" style="rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;align=left;spacingLeft=10;spacingTop=4;fontSize=14;arcSize=3;container=1;collapsible=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1"><mxGeometry x="330" y="60" width="470" height="640" as="geometry"/></mxCell><mxCell id="p_sens" value="<b>Sensors</b><br><font style="font-size:10px">GNSS (fused location) + IMU</font>" style="rounded=1;whiteSpace=wrap;html=1;fontSize=11;arcSize=8;fillColor=#ffffff;strokeColor=#6c8ebf;" vertex="1" parent="phone"><mxGeometry x="15" y="40" width="210" height="50" as="geometry"/></mxCell><mxCell id="p_time" value="<b>GnssTimeSource</b><br><font style="font-size:10px">phone clock → GNSS time<br>keeps last error indoors</font>" style="rounded=1;whiteSpace=wrap;html=1;fontSize=11;arcSize=8;fillColor=#ffffff;strokeColor=#6c8ebf;" vertex="1" parent="phone"><mxGeometry x="245" y="40" width="210" height="50" as="geometry"/></mxCell><mxCell id="p_pseu" value="<b>PseudonymManager</b><br><font style="font-size:10px">station ID + MAC, rotated together</font>" style="rounded=1;whiteSpace=wrap;html=1;fontSize=11;arcSize=8;fillColor=#ffffff;strokeColor=#6c8ebf;" vertex="1" parent="phone"><mxGeometry x="245" y="105"
|