Cryptografie
Mijn Betaaloverzicht maakt gebruik van cryptografie om de communicatie tussen burgers en overheidsorganisaties te beveiligen.
Cryptografische functies
De gebruikte encryptiefunctionaliteit is onder te verdelen in
- Digitale handtekeningen - Hiervoor wordt ECDSA P-256 gebruikt (ook bekend als
secp256r1enprime256v1) - RFC3560. Merk op dat de Secure Enclave (SE) van iPhones en de Trusted Execution Environment (TEE) van Android telefoons uitsluitend ECDSA op P-256 ondersteunen. Wanneer een private key in een SE/TEE beveiligd dient te worden is dit dan dus de enige optie. - Asymmetrische encryptie - Hiervoor wordt ECIES gebruikt (dit heet
ECDH-ESin JWEs (RFC 7518)) - Symmetrische encryptie - Hiervoor wordt AES-GCM (
A128GCM,A192GCMofA256GCMin JWEs) gebruikt. - Transport - Alle verkeer MOET gebruik maken van minstens TLS 1.3.
Voor meer details zie Cryptografie FSC voor Burgers
Sleutelmateriaal
Actoren maken hun eigen sleutelmateriaal (public/private keypairs) aan.
| Actor | Sleutelmateriaal | Wordt aangemaakt... |
|---|---|---|
| Burger | app-private-key | ...door de app bij opstarten |
| Bronorganisatie | source-org-private-key | ...door de bronorganisatie via beheeromgeving |
| Activatiedienst (App Manager) | app-manager-private-key | ...handmatig door de Activatiedienst |
| Stelselbeheerder | scheme-manager-private-key | ...door de Stelselbeheerder via de beheeromgeving |
Overige cryptografie
Op sommige lagere niveaus van het systeem wordt ook cryptografie toegepast, maar deze wordt hier op dit moment niet expliciet behandeld omdat het gebruik van deze cryptografie wijdverspreid is en niet specifiek is voor Mijn Betaaloverzicht. Het gaat dan om cryptografie die wordt toegepast in onder meer:
- Het opzetten van HTTPS-verbindingen met organisaties
- Toegangsbeheer tot het apparaat van de gebruiker (burger)
- Het versleuteld opslaan van gegevens op het apparaat van de gebruiker (burger)