|
9 | 9 | - [Pinning subdomains](#pinning-subdomains) |
10 | 10 | - [Generating the public key hashes](#generating-the-public-key-hashes) |
11 | 11 | - [Testing](#testing) |
12 | | - - [Certificate transparency](#certificate-transparency) |
13 | | - - [Configuration](#configuration-1) |
14 | 12 | - [Prevent "recent screenshots"](#prevent-recent-screenshots) |
15 | | - - [Configuration](#configuration-2) |
| 13 | + - [Configuration](#configuration-1) |
16 | 14 | - [Safe Keyboard Detector](#safe-keyboard-detector) |
17 | 15 | - [[EXPERIMENTAL - iOS only] Disable Default Caching in `Cache.db`](#experimental---ios-only-disable-default-caching-in-cachedb) |
18 | 16 | - [Contributing](#contributing) |
@@ -127,21 +125,6 @@ To test that SSL pinning is working as expected, you can: |
127 | 125 | - break (change) a certificate and check that the connection fails _(don't forget to `yarn expo prebuild` then `yarn ios` or `yarn android` to rebuild the app)_ |
128 | 126 | - set up a proxy (we love [Proxyman](https://proxyman.io)) and check that the connection fails |
129 | 127 |
|
130 | | -## Certificate transparency |
131 | | - |
132 | | -> **🥷 What's the threat?** Compromised certificate authorities. [More details](https://certificate.transparency.dev) |
133 | | -
|
134 | | - |
135 | | -Certificate Transparency (CT) is a mechanism that ensures that certificates are publicly logged in auditable, append-only logs. Rather than directly verifying log inclusion, CT relies on Signed Certificate Timestamps (SCTs), which provide a cryptographic proof that a certificate has been submitted to a trusted log. |
136 | | - |
137 | | -- On iOS, [Certificate Transparency is enforced by default](https://developer.apple.com/documentation/ios-ipados-release-notes/ios-12_1_1-release-notes) since _iOS 12.1.1_. The system validates that certificates comply with CT requirements, including the presence of valid Signed Certificate Timestamps (SCTs) issued by trusted logs. |
138 | | - |
139 | | -- On Android, this package enables Certificate Transparency for _Android >= 8.0_ using [appmattus/certificatetransparency](https://github.com/appmattus/certificatetransparency). It installs a network interceptor that validates, for each request, that the server certificate contains valid SCTs issued by trusted CT logs. This verification relies on a static list of trusted logs (`log_list.json`) bundled at build time, with no dynamic updates at runtime. |
140 | | - |
141 | | -### Configuration |
142 | | - |
143 | | -None, enabled by default. |
144 | | - |
145 | 128 | ## Prevent "recent screenshots" |
146 | 129 |
|
147 | 130 | > **🥷 What's the threat?** When the OS terminates the app, it may take a screenshot and store it on the device to display in the app switcher. This screenshot could leak sensitive data |
|
0 commit comments