Как создать подпись OAuth HMAC-SHA1 на GAE / J?

РЕДАКТИРОВАТЬ: Java-эквивалент php hmac-SHA1
(надеюсь, попытаться atm)

Я понимаю, что для создания подписи мне нужно «базовая строка» и «ключ». Я предполагаю, что знаю, как создать базовую строку, и я предполагаю, что должен использовать «OAuth Consumer Secret», который Google назначил моему приложению в качестве ключа. 12192 Но что мне делать с этими двумя, чтобы получить подпись? Есть ли какой-нибудь HMAC-класс на GAE / Java?

Будет ли он воспроизводиться, если я просто где-то сохраню то, что OAuth Playground сгенерирует для меня? Это как ты это делаешь? Или у подписи OAuth есть дата истечения срока действия?

(я пробовал AuthSub раньше, но тоже не удался , хотя это выглядит довольно просто. Также OAuth мне кажется более «стандартным», поэтому я бы хотел придерживаться OAuth.)

1
задан Community 23 May 2017 в 11:48
поделиться

1 ответ

public String computeHmac(String baseString, String key)
    throws NoSuchAlgorithmException, InvalidKeyException, IllegalStateException, UnsupportedEncodingException
{
    Mac mac = Mac.getInstance("HmacSHA1");
    SecretKeySpec secret = new SecretKeySpec(key.getBytes(), mac.getAlgorithm());
    mac.init(secret);
    byte[] digest = mac.doFinal(baseString.getBytes());
    return Base64.encode(digest);
}
2
ответ дан 2 September 2019 в 22:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: