Estoy tratando de codificar en C en OS X (El Capitan) y necesito usar OpenSSL. El sistema operativo viene con la versión 0.9.8zh 14 Jan 2016
.
Utilicé homebrew para actualizar e instalar openssl (obtuve la versión 1.0.2h) pero soy incapaz de enlazarlo correctamente para utilizarlo. Esto es lo que se hizo:
brew update
brew install openssl
brew link --force openssl
que me dio error diciendo
Warning: Refusing to link: openssl
.
Las referencias de mi camino /usr/local/bin
como el primero.
Ejecuta este comando: ln -s /usr/local/Cellar/openssl/1.0.2j/include/openssl /usr/local/include/openssl
(encontré esta solución aquí: Openssl con El Capitán entre otros lugares)
No obtuve ninguna salida de error, así que asumí que esto funcionaba. Pero
which openssl
me da esta salida: /usr/local/bin/openssl
openssl version
me da esta salida: OpenSSL 0.9.8zh 14 Jan 2016
Todo lo que estoy tratando de hacer es ejecutar algunos comandos de la CLI / escribir algo de código C editado en plano vi
compilado con gcc
. Estoy incluyendo openssl en los archivos de cabecera utilizando
#include <openssl/sha.h>
#include <openssl/ripemd.h>
Además, el comando que estoy ejecutando en el CLI que me llevó a este camino fue este (si eso ayuda):
openssl dgst -sha256 -sign ec-priv.pem ex-message.txt >ex-signature.der.
Me da un error:
EVP_SignFinal:wrong public key type.
Buscando en Google entendí que es por culpa de una versión antigua de OpenSSL que tengo que actualizar.
¿Alguna idea sobre cómo proceder en este caso?