#blockchain #hsm
#блокчейн #hsm
Вопрос:
Я изучаю устройства HSM, чтобы проверить их применимость с помощью блокчейн-платформ. Я не нашел хорошего ресурса, в котором рассказывалось бы, как конечный пользователь, который не владеет HSM, но его ключи хранятся на нем, используя мобильное приложение, может аутентифицироваться в HSM, чтобы получить подпись от своего закрытого ключа.
Возможными решениями могут быть PIN-код / пароль. Но я чувствую, что это все равно будет небезопасно. Хотя HSM выдает только подписи, любой, кто получает доступ к PIN-коду / паролю пользователя, сможет получить подпись.
Я хотел бы знать, какие методы аутентификации в настоящее время используются для доступа к HSM и какие методы можно использовать в приведенном выше сценарии.
Еще одна вещь, о которой я задавался вопросом: как мобильное устройство может взаимодействовать с HSM? Поддерживает ли HSM HTTPS для взаимодействия с мобильным устройством?
Гипотетические ответы тоже хороши 🙂
Ответ №1:
Поставщики HSM предоставляют различные инструменты для входа в систему. В случае Gemalto (теперь thales) HSM у вас есть java api: JCProv, с помощью которого вы можете войти в hsm. Используя такие API, вы можете войти в токен (hsm), создав сеанс и войдя в систему с номером слота и паролем.
Комментарии:
1. Ах, но эти методы входа вы используете для организации, владеющей правом HSM? Я хотел знать, как конечный пользователь, который не владеет HSM, но его ключи хранятся в HSM, может аутентифицироваться, чтобы получить подпись от своего закрытого ключа. (Отредактировал вопрос для большей ясности)
2. да, эти методы предназначены для этих собственных HSM. Я полагал, что у вас есть один. Чтобы лучше понять вас, ваши ключи хранятся в hsm, так как вы получаете к ним доступ в настоящее время? или как вы узнаете, что ваши ключи хранятся в hsm ?. обычно объекты хранятся в hsm на разделах / слотах, которые защищены паролем. вы не можете попросить hsm выполнить какую-либо операцию без входа в систему через api, указав номер слота и пароль.
3. Я объясню с помощью сценария: организация предоставляет конечным пользователям определенную услугу, которая требует, чтобы у пользователя была пара ключей. Организация владеет HSM, который используется для генерации и хранения ключей конечных пользователей. Ключи хранятся не на устройстве пользователя, а на HSM организации. Теперь всякий раз, когда пользователь хочет воспользоваться услугой, предоставляемой организацией, он должен предоставить подпись. Он может получить подпись только от HSM, аутентифицируясь сам. Как этого можно достичь?
4. Я полагаю, что пара ключей генерируется для вас в HSM во время процесса регистрации для служб организаций. Если это так, вам может быть возвращено что-то в конце процесса регистрации, что может быть использовано для аутентификации и получения необходимой информации для предоставления услуг?