Потому что, если какой-нибудь плохой сотрудник украл его, он мог выдавать себя за других пользователей.
И если он не должен быть жестко запрограммирован, где sholud его поместить?
Я собираюсь реализовать аутентификацию JWT.Должен ли секретный ключ HMAC быть жестко закодированным?
ответ
Секретный ключ HMAC - это простой текст. Как любой секретный/секретный текст, вы должны избегать хранения (hard-code) текста в виде простой/простой строки, потому что его можно обнаружить с помощью дизассемблирования.
Так что да, это хорошая вещь, чтобы каким-то образом запутать секретный ключ, сделав хотя бы простое текстовое преобразование. В общем, вы можете выбрать любую трансформацию.
Одним из подходов является использование кодирования/декодирования для преобразования: ваш секретный ключ хранится в источнике как закодированная строка и декодируется во время выполнения, когда это необходимо. Например, вы можете использовать шифрование XOR, предложенный Google:
static String stringTransform(String s, int i) {
char[] chars = s.toCharArray();
for(int j = 0; j<chars.length; j++)
chars[j] = (char)(chars[j]^i);
return String.valueOf(chars);
}
Эта функция должна использоваться для шифрования и дешифрования, «я» является любое случайное значение.
- 1. Остановить лицензионный ключ, который является жестко закодированным
- 2. Ansible Где должен быть размещен секретный ключ?
- 3. C to Perl Translation HMAC SHA1, данные и секретный ключ
- 4. Silverlight - секретный ключ Hardcoding
- 5. Зацикливание по некоторым жестко закодированным данным
- 6. Можно ли получить секретный ключ?
- 7. Должен ли я хранить секретный ключ api geocode?
- 8. Должен ли я хранить секретный ключ API-браузера браузера Blogger?
- 9. регрессионный тест, связанный с жестко закодированным путем
- 10. Является ли системный «KnownDLLs» список ходоков зависимостей жестко закодированным?
- 11. swift3 - Как защитить секретный ключ
- 12. Каким должен быть ключ?
- 13. Сохраняйте секретный ключ в Python
- 14. Должен ли ключ google goi быть закрытым?
- 15. Должен ли первичный ключ быть постоянным int?
- 16. Хранить секретный ключ для TOTP
- 17. Как я могу жестко закодировать ключ доступа и секретный ключ доступа в моем исходном коде .net?
- 18. Нужно ли шифровать секретный ключ доступа?
- 19. Доступ к жестко закодированным данным в приложении C#
- 20. Закрытый секретный ключ Android
- 21. SQL-подзапрос соответствует жестко закодированным критериям IN, но не подзапрос
- 22. Где я должен поместить секретный ключ в Flask?
- 23. Facebook oAuth нужен секретный ключ?
- 24. Регулярное выражение, которое заменяет группу жестко закодированным текстом
- 25. Предоставляет ли открытый ключ только ссылку на уникальный секретный ключ?
- 26. Получить секретный ключ изнутри приложения
- 27. Полезно ли использовать петлю hmac?
- 28. Как проверить директиву с жестко закодированным звонком AJAX?
- 29. Должен ли я использовать Base64 для переваривания HMAC или просто гексаговый переваривать HMAC?
- 30. Apigee: Установите use.proxy динамически, а не жестко закодированным