mirror of
https://github.com/processone/ejabberd.git
synced 2024-11-10 15:47:30 +01:00
Merge branch '2.1.x' of git+ssh://gitorious.process-one.net/ejabberd/mainline into 2.1.x
This commit is contained in:
commit
ab2a298ebf
@ -53,29 +53,29 @@ client_signature(StoredKey, AuthMessage) ->
|
||||
crypto:sha_mac(StoredKey, AuthMessage).
|
||||
|
||||
client_key(ClientProof, ClientSignature) ->
|
||||
binary:list_to_bin(lists:zipwith(fun(X, Y) ->
|
||||
list_to_binary(lists:zipwith(fun(X, Y) ->
|
||||
X bxor Y
|
||||
end,
|
||||
binary:bin_to_list(ClientProof),
|
||||
binary:bin_to_list(ClientSignature))).
|
||||
binary_to_list(ClientProof),
|
||||
binary_to_list(ClientSignature))).
|
||||
|
||||
server_signature(ServerKey, AuthMessage) ->
|
||||
crypto:sha_mac(ServerKey, AuthMessage).
|
||||
|
||||
hi(Password, Salt, IterationCount) ->
|
||||
U1 = crypto:sha_mac(Password, string:concat(binary:bin_to_list(Salt), [0,0,0,1])),
|
||||
binary:list_to_bin(lists:zipwith(fun(X, Y) ->
|
||||
U1 = crypto:sha_mac(Password, string:concat(binary_to_list(Salt), [0,0,0,1])),
|
||||
list_to_binary(lists:zipwith(fun(X, Y) ->
|
||||
X bxor Y
|
||||
end,
|
||||
binary:bin_to_list(U1),
|
||||
binary:bin_to_list(hi_round(Password, U1, IterationCount-1)))).
|
||||
binary_to_list(U1),
|
||||
binary_to_list(hi_round(Password, U1, IterationCount-1)))).
|
||||
|
||||
hi_round(Password, UPrev, 1) ->
|
||||
crypto:sha_mac(Password, UPrev);
|
||||
hi_round(Password, UPrev, IterationCount) ->
|
||||
U = crypto:sha_mac(Password, UPrev),
|
||||
binary:list_to_bin(lists:zipwith(fun(X, Y) ->
|
||||
list_to_binary(lists:zipwith(fun(X, Y) ->
|
||||
X bxor Y
|
||||
end,
|
||||
binary:bin_to_list(U),
|
||||
binary:bin_to_list(hi_round(Password, U, IterationCount-1)))).
|
||||
binary_to_list(U),
|
||||
binary_to_list(hi_round(Password, U, IterationCount-1)))).
|
||||
|
Loading…
Reference in New Issue
Block a user