fix(dashboard): change hash from sha3_256 to sha256
old version os has no support for it
This commit is contained in:
parent
bab5d2f399
commit
6ca6d60858
|
@ -171,7 +171,7 @@ check(_, undefined) ->
|
|||
check(Username, Password) ->
|
||||
case lookup_user(Username) of
|
||||
[#?ADMIN{pwdhash = <<Salt:4/binary, Hash/binary>>}] ->
|
||||
case Hash =:= sha3_hash(Salt, Password) of
|
||||
case Hash =:= sha256(Salt, Password) of
|
||||
true -> ok;
|
||||
false -> {error, <<"BAD_USERNAME_OR_PASSWORD">>}
|
||||
end;
|
||||
|
@ -206,10 +206,10 @@ destroy_token_by_username(Username, Token) ->
|
|||
|
||||
hash(Password) ->
|
||||
SaltBin = emqx_dashboard_token:salt(),
|
||||
<<SaltBin/binary, (sha3_hash(SaltBin, Password))/binary>>.
|
||||
<<SaltBin/binary, (sha256(SaltBin, Password))/binary>>.
|
||||
|
||||
sha3_hash(SaltBin, Password) ->
|
||||
crypto:hash('sha3_256', <<SaltBin/binary, Password/binary>>).
|
||||
sha256(SaltBin, Password) ->
|
||||
crypto:hash('sha256', <<SaltBin/binary, Password/binary>>).
|
||||
|
||||
add_default_user() ->
|
||||
add_default_user(binenv(default_username), binenv(default_password)).
|
||||
|
|
|
@ -150,11 +150,11 @@ t_cli(_Config) ->
|
|||
emqx_dashboard_cli:admins(["add", "username", "password"]),
|
||||
[#?ADMIN{ username = <<"username">>, pwdhash = <<Salt:4/binary, Hash/binary>>}] =
|
||||
emqx_dashboard_admin:lookup_user(<<"username">>),
|
||||
?assertEqual(Hash, crypto:hash(sha3_256, <<Salt/binary, <<"password">>/binary>>)),
|
||||
?assertEqual(Hash, crypto:hash(sha256, <<Salt/binary, <<"password">>/binary>>)),
|
||||
emqx_dashboard_cli:admins(["passwd", "username", "newpassword"]),
|
||||
[#?ADMIN{username = <<"username">>, pwdhash = <<Salt1:4/binary, Hash1/binary>>}] =
|
||||
emqx_dashboard_admin:lookup_user(<<"username">>),
|
||||
?assertEqual(Hash1, crypto:hash(sha3_256, <<Salt1/binary, <<"newpassword">>/binary>>)),
|
||||
?assertEqual(Hash1, crypto:hash(sha256, <<Salt1/binary, <<"newpassword">>/binary>>)),
|
||||
emqx_dashboard_cli:admins(["del", "username"]),
|
||||
[] = emqx_dashboard_admin:lookup_user(<<"username">>),
|
||||
emqx_dashboard_cli:admins(["add", "admin1", "pass1"]),
|
||||
|
|
Loading…
Reference in New Issue