впервые в жизни я застрял с проблемой, которую не могу решить.Я потратил один день, чтобы попытаться понять, что не так: на сервере у меня установлена система аутентификации X-WSSE:
Я прочитал много данных об этой системе, но все еще не могу завершить эту ситуацию.Для строки, которую мы вставляем в заголовок, нам нужно 3 элемента: -nonce -createdAt -digestPassword
Хорошо, чтобы сгенерировать nonce, я использовал System.currentTime ();с некоторыми изменениями.В любом случае это просто уникальный длинный идентификатор.
Какие правильные шаги для генерации других полей (nonce / creationAt, digestPassword)?
Для nonce я пробовал эти шаги:
nonce = base64.encodeToString(System.currentTime())
nonce = base64.encodeToString(md5(System.currentTime())
nonce = base64.encodeToString(md5(System.currentTime()).substring(0,16) (somewhere i found that nonce should be first 16 letters)
also nonce = base64.encodeToString(System.currentTime()).substring(0,16)
для дайджеста (digestPassword) я нашел этот алгоритм
digest = nonce + createdAt + password
md = MessageDigest.getInstance("SHA1")
digest = Base64.encodeToString(md(digest.getBytes("UTF-8))
Я пробовал много шагов для переключения переменных.Но не повезло.Может, кто-нибудь подскажет, как исправить сборку UsermodelToken для системы аутентификации X-WSSE?Каждый раз, когда я получал ошибку 403 от сервера - пользователь не авторизован
основной пост, где я нашел некоторую информацию: здесь