eu-digital-green-certificates / dgca-wallet-app-android

Repository for the dgca wallet app for android.
Apache License 2.0
58 stars 18 forks source link

Wallet-app uses ECB encryption scheme. #197

Open Hendrik-Schmidt-Schierhorn-TSI opened 2 years ago

Hendrik-Schmidt-Schierhorn-TSI commented 2 years ago

Description

The wallet-app encrypts internal data, the qr code and tan using the keystore. The chosen encryption scheme in class SecurityKeyWrapper and DefaultKeyStoreCryptor is ECB. ECB produces identical encrypted data and is thus not recommended for multi block data. There is also no documentation of the security model this security features is modeled for so its not possible to say if the feature is now faulty. While potentially not a meaningful issues for the presented data its not best practices and might be an issues later if template extend the use case.

Possible Fix

Use a more secure encryption scheme in the wallet app.

Impact

Wallet-app data storage encryption scheme slightly leaks protected data.