try { // Generate a key for the HMAC-MD5 keyed-hashing algorithm KeyGenerator keyGen = KeyGenerator.getInstance("HmacMD5"); SecretKey key = keyGen.generateKey(); // Generate a key for the HMAC-SHA1 keyed-hashing algorithm keyGen = KeyGenerator.getInstance("HmacSHA1"); key = keyGen.generateKey(); } catch (java.security.NoSuchAlgorithmException e) { }
Приведенный выше код даст нам ключи для обработки сообщения с использованием HMAC.Теперь я хотел реализовать логику HMAC в Java, где ключ будет отдан пользователем.Есть идеи?
Создайте KeySpec, используя предоставленный пользовательский ключ (либо SecretKeySpec, если это байтовый массив, либо PBEKeySpec, если это пароль), затем используйте SecretKeyFactory, чтобы превратить его в SecretKey .
KeySpec
SecretKeySpec
PBEKeySpec
SecretKeyFactory
SecretKey