deriveServerSecretsAsync static method
Future<ScramServerSecrets>
deriveServerSecretsAsync({
- required String secret,
- required String salt,
- String kdf = kdfPbkdf2,
- int iterations = CraAuthentication.defaultIterations,
- int? memory,
- Duration timeout = const Duration(seconds: 30),
- ScramKeyDeriver? keyDeriver,
- AuthenticationStringEncoding stringEncoding = AuthenticationStringEncoding.utf8,
Implementation
static Future<ScramServerSecrets> deriveServerSecretsAsync({
required String secret,
required String salt,
String kdf = kdfPbkdf2,
int iterations = CraAuthentication.defaultIterations,
int? memory,
Duration timeout = const Duration(seconds: 30),
ScramKeyDeriver? keyDeriver,
AuthenticationStringEncoding stringEncoding =
AuthenticationStringEncoding.utf8,
}) async {
final saltedPassword = await deriveSaltedPasswordAsync(
secret: secret,
salt: salt,
kdf: kdf,
iterations: iterations,
memory: memory,
timeout: timeout,
keyDeriver: keyDeriver,
stringEncoding: stringEncoding,
);
try {
return _serverSecretsFromSaltedPassword(saltedPassword);
} finally {
_clear(saltedPassword);
}
}