Отличная альтернатива для hash_hmac - PullRequest
0 голосов
/ 26 августа 2018

Есть ли в Groovy альтернативные методы для генерации ключевого хеш-значения с использованием метода HMAC?Пример этого метода php, как показано ниже:

hash_hmac( "sha256", "the data", "secret key" );

1 Ответ

0 голосов
/ 04 апреля 2019

Работает этот отличный код, создает хеш HMAC SHA256 из строки:

import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;
import java.security.InvalidKeyException;

def hmac_sha256(String secretKey, String data) {
try {
    Mac mac = Mac.getInstance("HmacSHA256")
    SecretKeySpec secretKeySpec = new SecretKeySpec(secretKey.getBytes(), "HmacSHA256")
    mac.init(secretKeySpec)
    return mac.doFinal(data.getBytes())
   } catch (InvalidKeyException e) {
    throw new RuntimeException("Invalid key exception while converting to HMac SHA256")
  }


def x = hmac_sha256("secret", "my-data").encodeBase64().toString();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...