Шифрование данных
В API используется шифрование для защиты передаваемых данных. Основной алгоритм шифрования — RSA. Для успешной интеграции необходимо получить открытый ключ шифрования от поставщика API.
Описание алгоритма шифрования
- Алгоритм: RSA
- Используемый ключ: Открытый ключ, предоставляемый при заключении договора.
- Формат данных: Шифруются только те параметры, которые указаны в описании методов.
- Формат передачи данных:
- Зашифрованные данные помещаются в тело запроса или передаются в формате Query Parameters.
- Нешифрованные данные передаются в формате JSON.
Процесс шифрования
- Параметры, подлежащие шифрованию, преобразуются в строку.
- Строка шифруется с использованием предоставленного открытого ключа RSA.
- Результат шифрования отправляется в запросе.
Пример реализации шифрования на PHP
<?php
function encryptData($data) {
// Путь к открытому ключу
$path_to_cert = 'cert.pem';
$publicCert = file_get_contents($path_to_cert);
// Шифрование данных
openssl_public_encrypt($data, $encryptedData, $publicCert);
return $encryptedData;
}
// Пример использования
$data = "some_unique_password";
$encryptedPassword = encryptData($data);
echo $encryptedPassword;
?>
Пример запроса с использованием шифрования
POST https://api.prostodar.ru/partner/get_balance/ Тело запроса
{
"partnerName": "mts",
"partnerPassword": "encrypted_password",
"useAuthByCert": "Y"
}
Дополнительные пояснения
partnerPassword
: Данный параметр должен быть зашифрован перед отправкой запроса. Используйте предоставленный открытый ключ для шифрования.useAuthByCert
: Параметр, который указывает на использование шифрования.- Значение
"Y"
означает, что шифрование включено. - Значение
"N"
указывает на отсутствие шифрования.
Примечания
- Проверка IP-адреса:
Перед началом работы убедитесь, что ваш IP-адрес добавлен в список доверенных у поставщика API. Это обязательное условие для успешной интеграции.