ZIm/crates/collab/src
Marshall Bowers c84da37030
rpc: Add support for OAEP-based encryption format (#15058)
This PR adds support for a new encryption format for exchanging access
tokens during the authentication flow.

The new format uses Optimal Asymmetric Encryption Padding (OAEP) instead
of PKCS#1 v1.5, which is known to be vulnerable to side-channel attacks.

**Note: We are not yet encrypting access tokens using the new format, as
this is a breaking change between the client and the server. This PR
only adds support for it, and makes it so the client and server can
decrypt either format moving forward.**

This required bumping the RSA key size from 1024 bits to 2048 bits. This
is necessary to be able to encode the access token into the ciphertext
when using OAEP.

This also follows OWASP recommendations:

> If ECC is not available and RSA must be used, then ensure that the key
is at least 2048 bits.
>
> —
[source](https://cheatsheetseries.owasp.org/cheatsheets/Cryptographic_Storage_Cheat_Sheet.html#algorithms)

Release Notes:

- N/A
2024-07-23 21:25:25 -04:00
..
api collab: Fix exact extension filtering (#14591) 2024-07-16 15:18:48 -04:00
bin Make it (a tiny bit) easier to run your own collab (#9557) 2024-03-20 21:00:02 -06:00
db Delete obsolete and unused remote_projects.rs (#14811) 2024-07-19 08:50:49 -06:00
rpc remoting: Allow Add/Remove remote folder (#14532) 2024-07-16 12:01:59 -06:00
tests Update http crate name (#15041) 2024-07-23 15:01:05 -07:00
ai.rs New revision of the Assistant Panel (#10870) 2024-04-23 16:23:26 -07:00
api.rs Rust 1.78 (#11314) 2024-05-05 15:02:50 +02:00
auth.rs rpc: Add support for OAEP-based encryption format (#15058) 2024-07-23 21:25:25 -04:00
completion.rs Supermaven (#10788) 2024-05-03 12:50:42 -07:00
db.rs Reduce DB load upon initial connection due to channel loading (#12500) 2024-05-30 13:02:55 -07:00
env.rs Add an extensions API to the collaboration server (#7807) 2024-02-15 12:53:57 -08:00
errors.rs Remove more unused code related to GitHub auth and errors 2022-04-21 08:57:49 -06:00
executor.rs Remove 2 suffix for collab, rope, settings, menu 2024-01-03 12:29:16 -08:00
lib.rs Supermaven (#10788) 2024-05-03 12:50:42 -07:00
main.rs Semantic Index (#10329) 2024-04-12 11:40:59 -06:00
rate_limiter.rs Fix logic errors in RateLimiter (#12421) 2024-05-29 12:05:40 +02:00
rpc.rs Revert "chore: Bump async-tungstenite to 0.23 (and tungstenite to 0.20.1) (#15039)" (#15048) 2024-07-23 18:22:37 -04:00
seed.rs Make it (a tiny bit) easier to run your own collab (#9557) 2024-03-20 21:00:02 -06:00
tests.rs Add the ability to edit remote directories over SSH (#14530) 2024-07-19 10:27:26 -07:00