Spec-Zone.ru › AWS CLI v2

[ aws . payment-cryptography-data ]

decrypt-data

Описание

Расшифровывает данные шифрованного текста в открытый текст с использованием симметричного (TDES, AES), асимметричного (RSA) или производного (DUKPT или EMV) ключа шифрования. Дополнительную информацию см. в разделе Расшифровка данных в руководстве пользователя Amazon Web Services Payment Cryptography.

Можно использовать ключ расшифровки, сгенерированный в Amazon Web Services Payment Cryptography, или импортировать собственный ключ расшифровки, вызвав ImportKey. Для этой операции ключ должен иметь KeyModesOfUse, установленное на значение Decrypt. При асимметричной расшифровке Amazon Web Services Payment Cryptography расшифровывает шифрованный текст, используя приватную часть пары асимметричных ключей. Для шифрования данных за пределами Amazon Web Services Payment Cryptography можно экспортировать общедоступную часть пары асимметричных ключей, вызвав GetPublicCertificate.

Данная операция также поддерживает динамические ключи, позволяя передавать динамический ключ расшифровки в виде 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. Для EMV-расшифровки Amazon Web Services Payment Cryptography поддерживает алгоритмы TDES. Для асимметричной расшифровки Amazon Web Services Payment Cryptography поддерживает RSA.

При использовании TDES или TDES DUKPT длина данных шифрованного текста должна быть кратна 8 байтам. При использовании AES или AES DUKPT длина данных шифрованного текста должна быть кратна 16 байтам. Для RSA длина должна быть равна размеру ключа, если не включена функция дополнения.

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

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

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

  • EncryptData
  • GetPublicCertificate
  • ImportKey

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

Синтаксис

  decrypt-data
--key-identifier <value>
--cipher-text <value>
--decryption-attributes <value>
[--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]

Параметры

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

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

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

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

Шифрованный текст для расшифровки.

--decryption-attributes (структура тегированного объединения)

Тип и атрибуты ключа шифрования для расшифровки шифрованного текста.

Примечание

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

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

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

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

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

InitializationVector -> (строка)

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

PaddingType -> (строка)

Дополнения, включаемые в данные.

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

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

PaddingType -> (строка)

Дополнения, включаемые в данные.

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

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

KeySerialNumber -> (строка)

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

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

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

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

DukptKeyDerivationType -> (строка)

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

DukptKeyVariant -> (строка)

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

InitializationVector -> (строка)

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

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

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

MajorKeyDerivationMode -> (строка)

Режим вывода основного ключа EMV для вывода главного ключа ICC в соответствии с книгой 2 версии EMV 4.3.

PrimaryAccountNumber -> (строка)

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

PanSequenceNumber -> (строка)

Число, идентифицирующее и различающее платежные карты с одинаковым основным номером счета (PAN). Обычно используется 00, если терминал не предоставляет значение.

SessionDerivationData -> (строка)

Значение вывода, используемое для вывода сеансового ключа ICC. Обычно это значение счетчика транзакций приложения, дополненное нулями, или предыдущее значение ARQC, дополненное нулями в соответствии с книгой 2 версии EMV 4.3.

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

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

InitializationVector -> (строка)

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

Сокращенный синтаксис:

Symmetric={Mode=string,InitializationVector=string,PaddingType=string},Asymmetric={PaddingType=string},Dukpt={KeySerialNumber=string,Mode=string,DukptKeyDerivationType=string,DukptKeyVariant=string,InitializationVector=string},Emv={MajorKeyDerivationMode=string,PrimaryAccountNumber=string,PanSequenceNumber=string,SessionDerivationData=string,Mode=string,InitializationVector=string}

Синтаксис JSON:

{
  "Symmetric": {
    "Mode": "ECB"|"CBC"|"CFB"|"CFB1"|"CFB8"|"CFB64"|"CFB128"|"OFB",
    "InitializationVector": "string",
    "PaddingType": "PKCS1"|"OAEP_SHA1"|"OAEP_SHA256"|"OAEP_SHA512"
  },
  "Asymmetric": {
    "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"
  },
  "Emv": {
    "MajorKeyDerivationMode": "EMV_OPTION_A"|"EMV_OPTION_B",
    "PrimaryAccountNumber": "string",
    "PanSequenceNumber": "string",
    "SessionDerivationData": "string",
    "Mode": "ECB"|"CBC",
    "InitializationVector": "string"
  }
}

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

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

WrappedKeyMaterial -> (структура тегированного объединения)

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

Примечание

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

Tr31KeyBlock -> (строка)

TR-31 упакованный блок ключа.

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

Сведения о параметрах для вывода общего ключа ECDH.

CertificateAuthorityPublicKeyIdentifier -> (строка)

Идентификатор открытого ключа центра сертификации, который подписал открытый ключ клиента.

PublicKeyCertificate -> (строка)

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

KeyAlgorithm -> (строка)

Алгоритм ключа выведенного ключа ECDH.

KeyDerivationFunction -> (строка)

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

KeyDerivationHashAlgorithm -> (строка)

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

SharedInformation -> (строка)

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

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

KeyCheckValueAlgorithm -> (строка)

Алгоритм, используемый 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 версии 1, и двоичные значения должны передаваться буквально. При предоставлении содержимого из файла, отображающегося как двоичный блок fileb:// всегда будет обрабатываться как двоичный и будет использовать содержимое файла напрямую независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для настроенного cli-binary-format.

  • base64
  • raw-in-base64-out

--no-cli-pager (boolean)

Отключить страницу для вывода.

--cli-auto-prompt (boolean)

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

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

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

Примеры

Примечание

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

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

Для дешифрования зашифрованного текста

Следующий decrypt-data пример дешифрует данные зашифрованного текста с использованием симметрического ключа. Для этой операции ключ должен иметь KeyModesOfUse, установленное на Decrypt, и KeyUsage, установленное на TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY.

aws payment-cryptography-data decrypt-data \
    --key-identifier arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h \
    --cipher-text 33612AB9D6929C3A828EB6030082B2BD \
    --decryption-attributes 'Symmetric={Mode=CBC}'

Вывод:

{
    "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h",
    "KeyCheckValue": "71D7AE",
    "PlainText": "31323334313233343132333431323334"
}

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

Вывод

KeyArn -> (строка)

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

KeyCheckValue -> (строка)

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

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

PlainText -> (строка)

Дешифрованные данные открытого текста в формате hexBinary.

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

Spec-Zone.ru

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