Spec-Zone.ru › AWS CLI v2

[ aws . payment-cryptography-data ]

re-encrypt-data

Описание

Перешифровка зашифрованного текста с использованием DUKPT или симметричных ключей шифрования данных.

Вы можете сгенерировать ключ шифрования в Amazon Web Services Payment Cryptography, вызвав CreateKey, или импортировать свой собственный ключ шифрования, вызвав ImportKey. Ключ для использования с этой операцией должен находиться в совместимом состоянии с KeyModesOfUse, установленным на Encrypt.

Данная операция также поддерживает динамические ключи, позволяя передавать динамический ключ шифрования в качестве TR-31 WrappedKeyBlock. Это может быть полезно при частом обновлении ключей, например, во время каждой транзакции с картой, и нет необходимости импортировать кратковременные ключи в Amazon Web Services Payment Cryptography. Для перешифрования с использованием динамических ключей keyARN является ключом шифрования ключа (KEK) TR-31 обернутого материала ключа шифрования. Входящий обернутый ключ должен иметь назначение ключа D0 и режим использования B или D. Более подробную информацию см. в разделе «Использование динамических ключей» в руководстве пользователя Amazon Web Services Payment Cryptography.

Для симметричного и DUKPT шифрования Amazon Web Services Payment Cryptography поддерживает алгоритмы TDES и AES. Для шифрования с использованием DUKPT, ключ DUKPT должен уже существовать в вашем аккаунте с KeyModesOfUse, установленным на DeriveKey, или новый ключ DUKPT может быть сгенерирован путем вызова CreateKey.

Дополнительную информацию о допустимых ключах для этой операции см. в разделе «Понимание атрибутов ключей и типов ключей для определённых операций с данными» в руководстве пользователя Amazon Web Services Payment Cryptography.

Использование в разных аккаунтах : Эта операция не может использоваться в разных аккаунтах Amazon Web Services.

Связанные операции:

  • DecryptData
  • EncryptData
  • GetPublicCertificate
  • ImportKey

См. также: AWS API Документация

Синтаксис

  re-encrypt-data
--incoming-key-identifier <value>
--outgoing-key-identifier <value>
--cipher-text <value>
--incoming-encryption-attributes <value>
--outgoing-encryption-attributes <value>
[--incoming-wrapped-key <value>]
[--outgoing-wrapped-key <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]

Параметры

--incoming-key-identifier (строка)

Идентификатор ключа шифрования входных данных шифрованного текста.

Если предоставлен WrappedKeyBlock, это значение будет идентификатором ключа шифрования. В противном случае это идентификатор ключа, используемый для выполнения операции.

--outgoing-key-identifier (строка)

Идентификатор ключа шифрования выходных данных шифрованного текста после шифрования Amazon Web Services Payment Cryptography.

--cipher-text (строка)

Шифрованный текст для шифрования. Минимальная длина — 16 байт, максимальная — 4096 байт.

--incoming-encryption-attributes (структура помеченного объединения)

Атрибуты и значения для входных данных шифрованного текста.

Примечание

Это структура помеченного объединения. Может быть установлено только одно из следующих ключей верхнего уровня: Symmetric, Dukpt.

Симметричный -> (структура)

Параметры, необходимые для шифрования данных с использованием симметричных ключей.

Режим -> (строка)

Метод блочного шифра для использования при шифровании.

Начальный вектор -> (строка)

Входное значение для задания начального состояния. Если значение не указано, Amazon Web Services Payment Cryptography устанавливает его по умолчанию в ноль.

Тип заполнения -> (строка)

Тип заполнения, который нужно включить в данные.

Dukpt -> (структура)

Параметры, необходимые для шифрования данных в открытом тексте с использованием DUKPT.

Серийный номер ключа -> (строка)

Уникальный идентификатор, известный как серийный номер ключа (KSN), полученный от устройства шифрования, использующего метод шифрования DUKPT. KSN выводится из уникального идентификатора устройства шифрования и внутреннего счётчика транзакций.

Режим -> (строка)

Метод блочного шифра для использования при шифровании.

По умолчанию используется CBC.

Тип получения ключа Dukpt -> (строка)

Тип ключа, зашифрованного с помощью DUKPT из базового ключа вывода (BDK) и серийного номера ключа (KSN). Он должен быть меньше или равен силе BDK. Например, вы не можете использовать AES_128 в качестве типа вывода для BDK AES_128 или TDES_2KEY.

Вариант ключа Dukpt -> (строка)

Тип использования DUKPT, который может быть дешифрованием входных данных, шифрованием выходных данных или тем и другим.

Начальный вектор -> (строка)

Входное значение для задания начального состояния. Если значение не указано, Amazon Web Services Payment Cryptography устанавливает его по умолчанию в ноль.

Краткая запись синтаксиса:

Symmetric={Mode=string,InitializationVector=string,PaddingType=string},Dukpt={KeySerialNumber=string,Mode=string,DukptKeyDerivationType=string,DukptKeyVariant=string,InitializationVector=string}

Синтаксис JSON:

{
  "Symmetric": {
    "Mode": "ECB"|"CBC"|"CFB"|"CFB1"|"CFB8"|"CFB64"|"CFB128"|"OFB",
    "InitializationVector": "string",
    "PaddingType": "PKCS1"|"OAEP_SHA1"|"OAEP_SHA256"|"OAEP_SHA512"
  },
  "Dukpt": {
    "KeySerialNumber": "string",
    "Mode": "ECB"|"CBC",
    "DukptKeyDerivationType": "TDES_2KEY"|"TDES_3KEY"|"AES_128"|"AES_192"|"AES_256",
    "DukptKeyVariant": "BIDIRECTIONAL"|"REQUEST"|"RESPONSE",
    "InitializationVector": "string"
  }
}

--outgoing-encryption-attributes (структура помеченного объединения)

Атрибуты и значения выходных данных шифрованного текста после шифрования Amazon Web Services Payment Cryptography.

Примечание

Это структура помеченного объединения. Может быть установлено только одно из следующих ключей верхнего уровня: Symmetric, Dukpt.

Симметричный -> (структура)

Параметры, необходимые для шифрования данных с использованием симметричных ключей.

Режим -> (строка)

Метод блочного шифра для использования при шифровании.

Начальный вектор -> (строка)

Входное значение для задания начального состояния. Если значение не указано, Amazon Web Services Payment Cryptography устанавливает его по умолчанию в ноль.

Тип заполнения -> (строка)

Тип заполнения, который нужно включить в данные.

Dukpt -> (структура)

Параметры, необходимые для шифрования данных в открытом тексте с использованием DUKPT.

Серийный номер ключа -> (строка)

Уникальный идентификатор, известный как серийный номер ключа (KSN), полученный от устройства шифрования, использующего метод шифрования DUKPT. KSN выводится из уникального идентификатора устройства шифрования и внутреннего счётчика транзакций.

Режим -> (строка)

Метод блочного шифра для использования при шифровании.

По умолчанию используется CBC.

Тип получения ключа Dukpt -> (строка)

Тип ключа, зашифрованного с помощью DUKPT из базового ключа вывода (BDK) и серийного номера ключа (KSN). Он должен быть меньше или равен силе BDK. Например, вы не можете использовать AES_128 в качестве типа вывода для BDK AES_128 или TDES_2KEY.

Вариант ключа Dukpt -> (строка)

Тип использования DUKPT, который может быть дешифрованием входных данных, шифрованием выходных данных или тем и другим.

Начальный вектор -> (строка)

Входное значение для задания начального состояния. Если значение не указано, Amazon Web Services Payment Cryptography устанавливает его по умолчанию в ноль.

Краткая запись синтаксиса:

Symmetric={Mode=string,InitializationVector=string,PaddingType=string},Dukpt={KeySerialNumber=string,Mode=string,DukptKeyDerivationType=string,DukptKeyVariant=string,InitializationVector=string}

Синтаксис JSON:

{
  "Symmetric": {
    "Mode": "ECB"|"CBC"|"CFB"|"CFB1"|"CFB8"|"CFB64"|"CFB128"|"OFB",
    "InitializationVector": "string",
    "PaddingType": "PKCS1"|"OAEP_SHA1"|"OAEP_SHA256"|"OAEP_SHA512"
  },
  "Dukpt": {
    "KeySerialNumber": "string",
    "Mode": "ECB"|"CBC",
    "DukptKeyDerivationType": "TDES_2KEY"|"TDES_3KEY"|"AES_128"|"AES_192"|"AES_256",
    "DukptKeyVariant": "BIDIRECTIONAL"|"REQUEST"|"RESPONSE",
    "InitializationVector": "string"
  }
}

--incoming-wrapped-key (структура)

WrappedKeyBlock, содержащий ключ шифрования входных данных шифрованного текста.

Материал WrappedKey -> (структура помеченного объединения)

Информация о параметрах WrappedKeyBlock для обмена ключами шифрования.

Примечание

Это структура помеченного объединения. Может быть установлено только одно из следующих ключей верхнего уровня: Tr31KeyBlock, DiffieHellmanSymmetricKey.

Tr31KeyBlock -> (строка)

Блок обернутого ключа TR-31.

Симметричный ключ Диффи-Хеллмана -> (структура)

Информация о параметрах для получения общего ключа ECDH.

Идентификатор открытого ключа центра сертификации -> (строка)

Идентификатор сертификата, подписавшего клиентский PublicKeyCertificate.

Сертификат открытого ключа -> (строка)

Клиентский сертификат открытого ключа в формате PEM (кодировка base64) для вывода ключа ECDH.

Алгоритм ключа -> (строка)

Алгоритм ключа полученного ключа ECDH.

Функция вывода ключа -> (строка)

Функция вывода ключа для вывода ключа с помощью ECDH.

Алгоритм хеширования вывода ключа -> (строка)

Тип хеширования для вывода ключа с помощью ECDH.

Общая информация -> (строка)

Строка байтов, содержащая информацию, связывающую выведенный ключ ECDH с двумя участниками или контекстом ключа.

Она может содержать сведения, такие как идентификаторы двух участников, выводящих ключ, контекст операции, идентификаторы сеансов и необязательно nonce. Она не должна содержать нулевые байты, а повторное использование общей информации для нескольких выводов ключей ECDH не рекомендуется.

Алгоритм проверки ключа -> (строка)

Алгоритм, который Amazon Web Services Payment Cryptography использует для вычисления значения проверки ключа (KCV). Он используется для проверки целостности ключа.

Для ключей TDES KCV вычисляется путём шифрования 8 байтов, каждый с значением ноль, с проверяемым ключом, сохраняя 3 старших байта результата шифрования. Для ключей AES KCV вычисляется с использованием алгоритма CMAC, где входные данные — 16 байтов ноль, и сохраняются 3 старших байта результата шифрования.

Краткая запись синтаксиса:

WrappedKeyMaterial={Tr31KeyBlock=string,DiffieHellmanSymmetricKey={CertificateAuthorityPublicKeyIdentifier=string,PublicKeyCertificate=string,KeyAlgorithm=string,KeyDerivationFunction=string,KeyDerivationHashAlgorithm=string,SharedInformation=string}},KeyCheckValueAlgorithm=string

Синтаксис JSON:

{
  "WrappedKeyMaterial": {
    "Tr31KeyBlock": "string",
    "DiffieHellmanSymmetricKey": {
      "CertificateAuthorityPublicKeyIdentifier": "string",
      "PublicKeyCertificate": "string",
      "KeyAlgorithm": "TDES_2KEY"|"TDES_3KEY"|"AES_128"|"AES_192"|"AES_256",
      "KeyDerivationFunction": "NIST_SP800"|"ANSI_X963",
      "KeyDerivationHashAlgorithm": "SHA_256"|"SHA_384"|"SHA_512",
      "SharedInformation": "string"
    }
  },
  "KeyCheckValueAlgorithm": "CMAC"|"ANSI_X9_24"
}

--outgoing-wrapped-key (структура)

WrappedKeyBlock, содержащий ключ шифрования выходных данных шифрованного текста после шифрования Amazon Web Services Payment Cryptography.

Материал WrappedKey -> (структура помеченного объединения)

Информация о параметрах WrappedKeyBlock для обмена ключами шифрования.

Примечание

Это структура помеченного объединения. Может быть установлено только одно из следующих ключей верхнего уровня: Tr31KeyBlock, DiffieHellmanSymmetricKey.

Tr31KeyBlock -> (строка)

Блок обернутого ключа TR-31.

Симметричный ключ Диффи-Хеллмана -> (структура)

Информация о параметрах для получения общего ключа ECDH.

Идентификатор открытого ключа центра сертификации -> (строка)

Идентификатор сертификата, подписавшего клиентский PublicKeyCertificate.

Сертификат открытого ключа -> (строка)

Клиентский сертификат открытого ключа в формате PEM (кодировка base64) для вывода ключа ECDH.

Алгоритм ключа -> (строка)

Алгоритм ключа полученного ключа ECDH.

Функция вывода ключа -> (строка)

Функция вывода ключа для вывода ключа с помощью ECDH.

Алгоритм хеширования вывода ключа -> (строка)

Тип хеширования для вывода ключа с помощью ECDH.

Общая информация -> (строка)

Строка байтов, содержащая информацию, связывающую выведенный ключ ECDH с двумя участниками или контекстом ключа.

Она может содержать сведения, такие как идентификаторы двух участников, выводящих ключ, контекст операции, идентификаторы сеансов и необязательно nonce. Она не должна содержать нулевые байты, а повторное использование общей информации для нескольких выводов ключей ECDH не рекомендуется.

Алгоритм проверки ключа -> (строка)

Алгоритм, который Amazon Web Services Payment Cryptography использует для вычисления значения проверки ключа (KCV). Он используется для проверки целостности ключа.

Для ключей TDES KCV вычисляется путём шифрования 8 байтов, каждый с значением ноль, с проверяемым ключом, сохраняя 3 старших байта результата шифрования. Для ключей AES KCV вычисляется с использованием алгоритма CMAC, где входные данные — 16 байтов ноль, и сохраняются 3 старших байта результата шифрования.

Краткая запись синтаксиса:

WrappedKeyMaterial={Tr31KeyBlock=string,DiffieHellmanSymmetricKey={CertificateAuthorityPublicKeyIdentifier=string,PublicKeyCertificate=string,KeyAlgorithm=string,KeyDerivationFunction=string,KeyDerivationHashAlgorithm=string,SharedInformation=string}},KeyCheckValueAlgorithm=string

Синтаксис JSON:

{
  "WrappedKeyMaterial": {
    "Tr31KeyBlock": "string",
    "DiffieHellmanSymmetricKey": {
      "CertificateAuthorityPublicKeyIdentifier": "string",
      "PublicKeyCertificate": "string",
      "KeyAlgorithm": "TDES_2KEY"|"TDES_3KEY"|"AES_128"|"AES_192"|"AES_256",
      "KeyDerivationFunction": "NIST_SP800"|"ANSI_X963",
      "KeyDerivationHashAlgorithm": "SHA_256"|"SHA_384"|"SHA_512",
      "SharedInformation": "string"
    }
  },
  "KeyCheckValueAlgorithm": "CMAC"|"ANSI_X9_24"
}

--cli-input-json | --cli-input-yaml (строка) Читает аргументы из предоставленной JSON-строки. JSON-строка следует формату, предоставленному --generate-cli-skeleton. Если на командной строке предоставлены другие аргументы, эти значения переопределят значения из JSON. Передача произвольных двоичных значений с помощью значения из JSON невозможна, так как строка будет интерпретирована буквально. Это не может быть указано вместе с --cli-input-yaml.

--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса к API. При отсутствии значения или при значении input выводит пример входного JSON, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, при значении yaml-input он выведет пример входного YAML, который можно использовать с --cli-input-yaml. Если предоставлено значение output, оно проверит входные данные команды и вернёт пример выходного JSON для этой команды. Сгенерированный JSON-скелет нестабилен между версиями AWS CLI и не гарантирует обратной совместимости сгенерированного JSON-скелета.

Общие параметры

--debug (boolean)

Включить отладовую запись в журнал.

--endpoint-url (string)

Переопределить значение по умолчанию URL команды заданным URL.

--no-verify-ssl (boolean)

По умолчанию AWS CLI использует SSL при общении с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет поведение проверки SSL-сертификатов по умолчанию.

--no-paginate (boolean)

Отключить автоматическую постраничность. Если автоматическая постраничность отключена, AWS CLI выполнит только один вызов для первой страницы результатов.

--output (string)

Стиль форматирования вывода команды.

  • json
  • text
  • table
  • yaml
  • yaml-stream

--query (string)

Запрос JMESPath для фильтрации данных ответа.

--profile (string)

Использовать определенный профиль из файла учетных данных.

--region (string)

Регион для использования. Переопределяет настройки конфигурации/среды.

--version (string)

Отобразить версию этого инструмента.

--color (string)

Включить/отключить вывод цвета.

  • on
  • off
  • auto

--no-sign-request (boolean)

Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент указан.

--ca-bundle (string)

Файл с сертификатами CA для проверки SSL-сертификатов. Переопределяет настройки конфигурации/среды.

--cli-read-timeout (int)

Максимальное время чтения сокета в секундах. Если значение равно 0, чтение сокета будет блокирующим и без таймаута. Значение по умолчанию — 60 секунд.

--cli-connect-timeout (int)

Максимальное время подключения к сокету в секундах. Если значение равно 0, подключение к сокету будет блокирующим и без таймаута. Значение по умолчанию — 60 секунд.

--cli-binary-format (string)

Стиль форматирования, используемый для двоичных блоков. По умолчанию используется формат base64. Формат base64 ожидает, что двоичные блоки будут предоставлены в виде закодированной в base64 строки. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны передаваться буквально. При предоставлении содержимого из файла, отображающего двоичный блок, fileb:// всегда будет обрабатываться как двоичный и использовать содержимое файла напрямую, независимо от cli-binary-format параметра. При использовании file:// содержимое файла должно быть должным образом отформатировано для конфигурированного cli-binary-format.

  • base64
  • raw-in-base64-out

--no-cli-pager (boolean)

Отключить пейджер CLI для вывода.

--cli-auto-prompt (boolean)

Автоматически запрашивать параметры ввода CLI.

--no-cli-auto-prompt (boolean)

Отключить автоматическое запроса параметров ввода CLI.

Примеры

Примечание

Чтобы использовать следующие примеры, необходимо установить и настроить AWS CLI. Дополнительную информацию см. в руководстве «Начало работы» в руководстве пользователя AWS CLI.

Если не указано иное, все примеры используют правила цитирования Unix-подобных систем. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. Дополнительную информацию см. в разделе «Использование кавычек со строками» в руководстве пользователя AWS CLI.

Для повторного шифрования данных с помощью другого ключа

Следующий re-encrypt-data пример дешифрует шифрованный текст, который был зашифрован с помощью симметричного ключа AES, и зашифровывает его заново с помощью ключа Производный уникальный ключ за транзакцию (DUKPT).

aws payment-cryptography-data re-encrypt-data \
    --incoming-key-identifier arn:aws:payment-cryptography:us-west-2:111122223333:key/hyvv7ymboitd4vfy \
    --outgoing-key-identifier arn:aws:payment-cryptography:us-west-2:111122223333:key/jl6ythkcvzesbxen \
    --cipher-text 4D2B0BDBA192D5AEFEAA5B3EC28E4A65383C313FFA25140101560F75FE1B99F27192A90980AB9334 \
    --incoming-encryption-attributes "Dukpt={Mode=ECB,KeySerialNumber=0123456789111111}" \
    --outgoing-encryption-attributes '{"Symmetric": {"Mode": "ECB"}}'

Вывод:

{
    "CipherText": "F94959DA30EEFF0C035483C6067667CF6796E3C1AD28C2B61F9CFEB772A8DD41C0D6822931E0D3B1",
    "KeyArn": "arn:aws:payment-cryptography:us-west-2:111122223333:key/jl6ythkcvzesbxen",
    "KeyCheckValue": "2E8CD9"
}

Дополнительную информацию см. в разделе Шифрование и дешифрование данных в руководстве пользователя AWS Payment Cryptography.

Вывод

KeyArn -> (строка)

KeyARN (имя ресурса Amazon) ключа шифрования, который используется Amazon Web Services Payment Cryptography для шифрования открытого текста.

KeyCheckValue -> (строка)

Значение проверки ключа (KCV) ключа шифрования. KCV используется для проверки того, что все стороны, имеющие данный ключ, имеют одинаковый ключ, или для обнаружения изменения ключа.

Amazon Web Services Payment Cryptography вычисляет KCV в соответствии со спецификацией CMAC.

CipherText -> (строка)

Зашифрованный шифрованный текст.

© Copyright 2025, Amazon Web Services. Created using Sphinx.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API