Tengo una pequeña cadena de algunos datos (menos de 1kb) que me gustaría que los agentes de usuario pasen a otros sitios cuando se envían desde mi sitio. Para que los otros sitios verifiquen que yo fui el que creó la cadena, pensé en dos opciones.Cómo cifrar datos en php usando claves públicas/privadas?
- Los pings de servidor que vuelva a confirmar (como PayPal, openid, etc ..)
- utilizo claves públicas/privadas para probar que envió el mensaje (como PGP, DKIM, etc ..)
No quiero configurar HMAC porque eso significaría que tengo que usar claves personalizadas para cada sitio que sería un problema.
De esas dos opciones, parece que # 2 ahorraría en ancho de banda, lo que lo hace parecer una mejor opción.
Entonces, ¿cómo puede configurar pública que/privada criptografía de clave usando PHP y hay alguna desventajas?
¿Por qué PHP [OpenSSL extensión] (http://us2.php.net/manual/en/book.openssl.php) ser más lento que llamar a OpenSSL sí mismo? El mismo código se ejecuta de cualquier manera. Dicho esto, hay otra razón para no hacerlo PHP-native: la extensión OpenSSL no puede hacer todo lo que se gasta en el binario de openssl cuando se trabaja con formatos de clave exóticos. – Charles
I segundo el comentario de Charles. Es probable que la extensión PHP OpenSSL sea * más rápida *, no más lenta, porque usa las mismas API que las aplicaciones de línea de comando de openssl, pero sin la sobrecarga de creación de procesos. – Artefacto
Oh, no sabía que PHP tenía extensiones OpenSSL. Deberías usarlos, entonces. Tengo código C++ que hace esto; ¿Debería publicarlo? – vy32