Рейтинг:1

AWS IoT — Уникальные ключи для каждого устройства — Шифрование данных

флаг rs

(Возможно, не тот совет, чтобы спросить. Но вот)

Я разрабатываю решение IoT с RPi в качестве клиента и AWS в качестве сервера. На клиентском оборудовании у меня есть Чип безопасности который может безопасно генерировать и хранить ключи/пары ECC, RSA, AES и может выполнять различные криптографические операции, включая ECDH, ECDSA, KeyGen и т. д.,

Мои более широкие цели на стороне облака заключаются в следующем:

  1. На стороне сервера AWS я хочу создать уникальные ключи ECC для каждого устройства, сохранить их в HSM, выполнить ECDH для создания симметричных ключей для шифрования. Я не хочу, чтобы кто-либо (включая меня) имел доступ к закрытым ключам, сгенерированным KMS (или любой другой службой AWS — зашифрованной или иной).
  2. Я хотел бы, чтобы операции шифрования и дешифрования выполнялись службами AWS (желательно на специальном оборудовании, предназначенном для этой работы). Это сделано для того, чтобы избежать злоупотребления ошибками реализации в моем коде.
  • Хотя я могу генерировать ключи шифрования данных с помощью KMS, я считаю, что мне нужно расшифровать закрытый ключ в коде, чтобы использовать его. Это означает, что у меня есть доступ к закрытому ключу.
  • Я еще не нашел способ сделать ECDH, а затем надежно хранить ключи, сгенерированные в этом процессе.

Не могли бы вы помочь мне в следующем:

  1. Как безопасно генерировать и хранить ключи ECC для ECDH и ECDSA?
  2. Есть ли какой-либо сервис, который может помочь мне выполнять криптографические операции (шифрование, дешифрование, ECDH, ECDSA и т. д.) без написания кода для них?
Спасибо!
тС
fgrieu avatar
флаг ng
Поскольку вы упомянули HSM на стороне AWS, лучше всего генерировать, хранить и использовать ключи в HSM, не оставляя вам возможности каким-либо образом манипулировать ключами (хорошая новость заключается в том, что вам не нужны/имеются соответствующие усилие/знание/риск). Наличие всей криптографии в HSM — определяющий выбор дизайна, который имеет как ограничения, так и преимущества. HSM будет выполнять криптографию. Вы хотите прочитать [документацию поставщика] (https://aws.amazon.com/cloudhsm/), и я боюсь, что практические и ИТ-аспекты вопроса могут уйти от темы.
Рейтинг:1
флаг vu

Как безопасно генерировать и хранить ключи ECC для ECDH и ECDSA?

Содержимое пар ключей для ECDH и ECDSA идентично. Их можно использовать в обоих алгоритмах, но стандартной практикой является создание отдельного ключа для разных целей.

Что касается хранения, вы должны обратиться к руководству для вашего HSM.

  • Если ваш HSM может хранить их напрямую, сохраняйте их напрямую;

  • Если ваш HSM может хранить только ключ шифрования, зашифруйте ключи ECC с помощью этого ключа шифрования и сохраните его в какой-либо NVRAM, а затем сохраните ключ шифрования в HSM.

Если вам нужны стандартные документы: вот соединять.

Есть ли какой-либо сервис, который может помочь мне выполнять криптографические операции (шифрование, дешифрование, ECDH, ECDSA и т. д.) без написания кода для них?

Вы можете использовать библиотеку. Существует множество библиотек, некоторые из них включают в себя:

  • OpenSSL — самый известный, но в 2014 году была обнаружена серьезная уязвимость HeartBleed.

  • LibreSSL — ответвление OpenSSL, поддерживаемое разработчиками OpenBSD.

  • NSS — (Службы сетевой безопасности) от Mozilla.

Teja avatar
флаг rs
Спасибо за ваш ответ. Мой вопрос больше о том, как это сделать в AWS. [AWS KMS](https://aws.amazon.com/kms/) дает мне возможность генерировать ключи. Однако я могу получить доступ к закрытым ключам, чего я не хочу (в случае любого юридического запроса я могу передать только зашифрованные данные. Без доступа к ключам я не смог бы их доставить). к любому)

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.