Поддерживает ли mcrypt асимметричное шифрование?

Я хочу использовать асимметричное шифрование заголовков в запросах RESTful для проверки подлинности системы, отправляющей запрос: т.е. система A шифрует свое имя, отметку времени и имя службы, используя свой открытый ключ в запросе к системе B. Затем система B использует открытый ключ Системы А для расшифровки, подтверждающий подлинность запроса.

1) Поддерживает ли это php-mcrypt?

2) Кто-нибудь проверял этот тип операции?


person Bryan Agee    schedule 15.04.2010    source источник


Ответы (1)


Нет, mcrypt — это просто симметричные блочные шифры.

Однако расширение PHP OpenSSL поддерживает асимметричные операции. Вам нужны следующие: openssl_sign и openssl_verify.

(У вас небольшая проблема с терминологией: в асимметричных системах шифрование выполняется с помощью открытых ключей, а дешифрование — с закрытыми ключами; подписание — с закрытыми. ключи и проверка с открытыми ключами. Не путайте подпись с шифрованием или дешифрованием — хотя базовые операции часто похожи, это не одно и то же, и путаница может привести к небезопасным реализациям).

Конечно, вы можете просто использовать REST через SSL, используя клиентские сертификаты для аутентификации.

person caf    schedule 16.04.2010