Aceleração de criptografia Beaglebone Black OpenSSl

5

Estou rodando o Debian Wheezy no meu Beaglebone Black. O OpenSSL está usando o acelerador de criptografia de hardware por padrão? Se não, como posso ativá-lo?

    
por ftes 23.02.2015 / 14:14

2 respostas

4

Provavelmente não, não. Você pode verificar com o seguinte:

openssl speed -evp aes-128-cbc

Se cada linha aparecer por volta de 3 segundos, ela não será acelerada. Você precisará atualizar seu kernel, compilar cryptodev e inserir o módulo, depois compilar o OpenSSL usando cryptodev. Pronto? Vamos!

Primeiro, atualize seu kernel e instale os cabeçalhos (verifique a versão atual primeiro!)

sudo aptitude install linux-image-3.18.5-bone1 
sudo aptitude install linux-headers-3.18.5-bone1

Agora faça o download e compile o cryptodev (da mesma forma, o 1.7 pode não estar atualizado quando você está lendo isso)

wget http://download.gna.org/cryptodev-linux/cryptodev-linux-1.7.tar.gz
tar zxf cryptodev-linux-1.7.tar.gz 
cd cryptodev-linux-1.7/
make
sudo make install

Agora você precisa registrar e inserir o módulo cryptodev

sudo depmod -a
sudo modprobe cryptodev

Agora verifique se ele está carregado - isso deve mostrar uma lista que inclui cryptodev!

lsmod

Para tornar o cryptodev carregado permanentemente, edite / etc / modules e adicione uma linha contendo apenas cryptodev no final

sudo sh -c 'echo cryptodev>>/etc/modules'

Agora é hora de baixar e compilar o OpenSSL (confira suas versões)!

cd ~
wget https://www.openssl.org/source/openssl-1.0.2.tar.gz
tar zxf openssl-1.0.2.tar.gz
cd openssl-1.0.2/
ls
./config -DHAVE_CRYPTODEV -DUSE_CRYPTDEV_DIGESTS
make
sudo make install

Verifique sua versão e velocidade - você deve ver 0,10 a 0,15 segundo vez

/usr/local/ssl/bin/openssl version
/usr/local/ssl/bin/openssl speed -evp aes-128-cbc

Agora, o que você provavelmente quer é o OpenVPN, mas um OpenVPN pré-empacotado não estará usando este OpenSSL recém-compilado, então é hora de compilá-lo novamente. .

cd ~
wget http://swupdate.openvpn.org/community/releases/openvpn-2.3.6.tar.xz
tar xvf openvpn-2.3.6.tar.xz 
cd openvpn-2.3.6/
./configure --prefix=/opt/openvpn OPENSSL_SSL_LIBS="-L/usr/local/ssl/lib/ -lssl" OPENSSL_SSL_CFLAGS="-I/usr/local/ssl/include/" OPENSSL_CRYPTO_LIBS="-L/usr/local/ssl/lib/ -lcrypto" OPENSSL_CRYPTO_CFLAGS="-I/usr/local/ssl/include/"
make
sudo make install

Você agora tem uma nova instalação brilhante do OpenVPN usando o OpenSSL acelerado de hw!

/opt/openvpn/sbin/openvpn --version
    
por 04.03.2015 / 18:07
2

Faça o download e crie cryptodev .

Faça o download do pacote debian openssl source:

apt-get source openssl

Аdd constrói opções -DHAVE_CRYPTODEV -DUSE_CRYPTDEV_DIGESTS editando CONFARGS no arquivo debian / rules .

CONFARGS  = -DHAVE_CRYPTODEV -DUSE_CRYPTDEV_DIGESTS --prefix=/usr --openssldir=/usr/lib/ssl --libdir=lib/$(DEB_HOST_MULTIARCH) no-idea no-mdc2 no-rc5 zlib  enable-tlsext no-ssl2

Compile o pacote debian

dpkg-buildpackage -us -uc

Agora você tem seu próprio pacote openssl deb com aceleração de hardware. Basta instalar e testar.

openssl speed -evp aes-128-cbc

Você não precisa compilar o openvpn.

    
por 30.10.2015 / 14:35