Я работаю с API, который возвращает зашифрованные данные карты пользователя с открытым ключом. который я передаю на сервер [RSA 2048]
Чтобы получить и отобразить конфиденциальную информацию на карте, мне нужно создать публичный и закрытый ключ RSA на стороне клиента, который я передам по модулю и экспоненте на сервер
Поставщик зашифрует конфиденциальную информацию с помощью указанной информации открытого ключа, передаваемой на сервер, и вернет строку base64EncryptedString
Ниже приведены параметры, ожидаемые сервером
Тип
Значение
Алгоритм шифрования
RSA
Размер ключа
2048
Ниже приведен пример запроса API
Код: Выделить всё
{
"exponent": "010001"
"identifier": "RSAKeyIdentifier",
"appName": "My APP Name",
"keyId": 0,
"modulus": "d3e7c3608e0083b174ca9ec17d2bf9af873cf98a8272966c7c6fdcbb42d9b58d19c4531bbdd6897f8b96c419fdc33b1f58163a62ca2feaddeb6bef64574ed07c4f236773c99bf9a128a3f38da6109cfc917f93b83d1b2aa5c71b11dbb33e24a42aef7cdff45af9dd08c65913cacdc99942d6eb56b07068d0c8530850be0992b8a109a7504b908931169c183926c5c8864ca6a86549e1cce92f95b7963de1e167bc9f4da15c18d4693c30bed129caeb4bd21d1638f86cbe88004f4f7437a22457add478d056bef256e49071d9406ba0817731c678b904ce9b501f7abb306793f95e75df533004139f5c15e19b350de470422e94557c3aa26c9aac075851a74b6f",
}
Код: Выделить всё
"xDetails": {
"CardNumber": "{base64EncryptedString}",
"ExpiryDate": "{base64EncryptedString}",
"CVV2": "{base64EncryptedString}"
}
Пожалуйста, мне нужен эксперт, чтобы указать мне правильное направление, как сгенерировать пару частного и открытого ключей, модуль в HEX и расшифровать ответ от сервера с помощью закрытого ключа на стороне клиента.
В настоящее время Я пытался сгенерировать пару открытых закрытых ключей через Интернет, но мне не удалось расшифровать ответ от API-сервера.
Я постоянно получаю следующую ошибку
Код: Выделить всё
InvalidCharacterError: String contains an invalid characterПодробнее здесь: https://stackoverflow.com/questions/791 ... ned-by-api
Мобильная версия