Перейти к содержимому

Операции симметричного шифрования

Для зашифрования по умолчанию используется основная версия ключа. Чтобы использовать неосновную версию, укажите ее в запросе.

  • MWS CLI
  • API
  1. Если у вас нет утилиты MWS CLI:

  2. Узнайте идентификатор ключа из списка:

    bash
    mws kms crypto-key list
  3. Если для зашифрования данных необходимо использовать неосновную версию ключа, узнайте ее идентификатор из списка версий:

    bash
    mws kms crypto-key-version list --key <идентификатор ключа>
  4. Выполните запрос:

    bash
    mws kms crypto-key encrypt <идентификатор ключа> \
    --plaintext "$(echo -n '<открытый текст, который нужно зашифровать>' | base64 -w 0)"

    Вывод команды будет содержать шифртекст.

  • MWS CLI
  • API
  1. Если у вас нет утилиты MWS CLI:

  2. Узнайте идентификатор ключа из списка:

    bash
    mws kms crypto-key list
  3. Выполните запрос:

    bash
    mws kms crypto-key decrypt <идентификатор ключа> \
    --ciphertext "<шифртекст, который был зашифрован этим ключом>" \
    | grep 'plaintext:' \
    | awk '{print $2}' \
    | base64 --decode

    Вывод команды будет содержать открытый текст.

  • MWS CLI
  • API
  1. Если у вас нет утилиты MWS CLI:

  2. Узнайте идентификаторы исходного и нового ключа, которым будет перешифрован текст:

    bash
    mws kms crypto-key list
  3. Если для перешифрования данных необходимо использовать неосновную версию нового ключа, узнайте ее идентификатор из списка версий:

    bash
    mws kms crypto-key-version list --key <идентификатор ключа>
  4. Выполните запрос:

    bash
    mws kms crypto-key re-encrypt <идентификатор нового ключа> \
    --ciphertext <шифртекст, зашифрованный исходным ключом> \
    --source-key-ref <идентификатор исходного ключа> \
    --destination-version <версия нового ключа>

    Вывод команды будет содержать шифртекст и версию ключа, которой текст был перешифрован, например:

    bash
    ciphertext: AQAAAAFiVwoNVgtuS8O+PYJmWzHwUpDFopRejXubhM8AqPsY1NOSnUXqIxhxAEGwW0H7UCss1rp1HwTNYlAQA=
    version: 1