I'm not a security expert, so please take my explanation with some caution. However, I've done some research on the topic. I'll present the protection of Cryptpad compared to a cloud solution without end-to-end encryption (Nextcloud):
Protection against...
- Mass surveillance?
- Nextcloud: yes
- Cryptpad: yes
- Passive attacks
- Nextcloud: no
- Cryptpad: yes
- Active attacks
- Nextcloud: no
- Cryptpad: no
Active Attack
An active attack could involve someone breaking into your server and modifying the Cryptpad JavaScript code to obtain your private key. While the Cryptpad client is transmitted to your browser as source code (JavaScript), making it theoretically verifiable, practical verification of your client's integrity with each page request is not feasible in Cryptpad. You may not detect an active attack in time if someone compromises your server. Ensuring the integrity of your client ultimately requires trusting another entity. It is safer if the client is not delivered by the server where your data resides. For example, if the client is installed via your laptop's package manager, the attacker would need to breach your laptop or the package manager administrator, which is less likely.
Passive Attack
However, you are protected against a passive attack. If someone merely copies your data from the server, it remains encrypted.
Therefore, Cryptpad has an advantage over Nextcloud in terms of passive attacks. Regarding active attacks, the project is indeed transparent in its repository README.
Terminology clarification (https://en.wikipedia.org/wiki/Cyberattack#Types_of_attack):
- An "active attack" attempts to alter system resources or affect their operation.
- A "passive attack" attempts to learn or make use of information from the system but does not affect system resources (e.g., wiretapping).