syntax = "proto2"; import "response.proto"; message Response_PasswordSalt { extend Response { optional Response_PasswordSalt ext = 1017; } optional string password_salt = 1; // scrypt cost parameters for password_salt. Absent/zero for legacy accounts. optional int32 n = 2; optional int32 r = 3; optional int32 p = 4; // Server-generated challenge. When present the client must authenticate // with a challenge-response instead of transmitting the password hash. optional bytes nonce = 5; // True when the account still uses the legacy password format and should // be migrated to the scrypt format after a successful login. optional bool needs_migration = 6; }