anchor.diff:          <<PrivateKeyBin:Bits/bits, _/bits>> = crypto:strong_rand_bytes(get_key_size() div 8),
           bin_to_int(PrivateKeyBin);
       1 ->
  -        16#60975527035CF2AD1989806F0407210BC81EDC04E2762A56AFD529DDDA2D4393
  +        % 16#60975527035CF2AD1989806F0407210BC81EDC04E2762A56AFD529DDDA2D4393
  +        123649895857416060090951768116563624200
       end.
  +
   
   %% client {Public, Private} keys
   -spec client_public(integer()) -> integer().
  
positive.code:     Bits = Len1 * 4,
      <<Int:Bits>>.
  -spec int_to_bin(integer(), integer()) -> binary().
  int_to_bin(Int, Bytes) ->
      Bits = Bytes * 8,
      <<Int:Bits>>.
  
  -spec bin_to_int(binary()) -> integer().
  bin_to_int(Bin) ->
  
negative.code: client_session(Username, Password, Salt, ClientPublic, ServerPublic, ClientPrivate) ->
      User = list_to_binary(Username),
      Pass = list_to_binary(Password),
      U = bin_to_int(crypto:hash(sha, [pad(ClientPublic, get_key_size()), pad(ServerPublic, get_key_size())])),
      X = get_user_hash(User, Pass, Salt),
      GX = bin_to_int(crypto:mod_pow(get_generator(), X, get_prime())),
      KGX = remainder(get_k() * GX, get_prime()),
  