-
Type: Improvement
-
Resolution: Done
-
Priority: Major - P3
-
None
-
Component/s: None
-
None
-
(copied to CRM)
The shell is going to cache and reuse ClientKey in 3.6. We should do the same in drivers. From SERVER-26952 ticket :
SCRAM, by design, consumes a great deal of CPU resources while performing authentication. This can be a problem while populating connection pools, where many clients are authenticating at once. Fortunately, most of the expensive computations of SCRAM can be reused across multiple authentication requests. RFC5802 makes provisions for this:
Note that a client implementation MAY cache ClientKey&ServerKey (or just SaltedPassword) for later reauthentication to the same service, as it is likely that the server is going to advertise the same salt value upon reauthentication. This might be useful for mobile clients where CPU usage is a concern.
- depends on
-
GODRIVER-46 Cache SCRAM-SHA-1 ClientKey
- Closed
-
JAVA-2510 Cache SCRAM-SHA-1 ClientKey
- Closed
-
RUST-60 Cache SCRAM ClientKey
- Closed
-
CDRIVER-2150 Cache SCRAM-SHA-1 ClientKey
- Closed
-
CSHARP-1977 Cache SCRAM ClientKey
- Closed
-
CXX-1333 Cache SCRAM-SHA-1 ClientKey
- Closed
-
MOTOR-167 Cache SCRAM-SHA-1 ClientKey
- Closed
-
NODE-990 Cache SCRAM-SHA-1 ClientKey
- Closed
-
PHPC-960 Cache SCRAM-SHA-1 ClientKey
- Closed
-
PYTHON-1273 Cache SCRAM ClientKey and ServerKey
- Closed
-
RUBY-1213 Cache SCRAM credentials
- Closed
- is duplicated by
-
DRIVERS-490 Document SCRAM credential caching in the Auth spec
- Closed
- related to
-
CDRIVER-2539 SCRAM secrets should be cached by hashed password, salt, and iterations
- Closed
-
SERVER-26952 Cache SCRAM-SHA-1 ClientKey
- Closed