Certains d’entre vous auront remarqués que le Padlock n’est pas activé par défaut sous Debian 64 bits, et ce pour deux raisons.
Premièrement les modules ne sont pas chargés automatiquement au démarrage.
Et deuxièmement, OpenSSL ne se sert pas du Padlock en 64 bits.
- Chargement des modules :
Première chose à faire, charges les modules dans le kernel !
pour cela, tapez dans une console :
modprobe padlock-aes modprobe padlock-sha
Pour que ces modules soient chargés dès le démarrage de la machine tapez ceci :
echo padlock-aes >> /etc/modules && echo padlock-sha >> /etc/modules
- Modification d’OpenSSL :
C’est la partie la plus complexe et la plus longue. En effet il va falloir modifier les sources d’OpenSSL et les recompiler pour que OpenSSL utilise le Padlock.
Si vous êtes sous Debian 64, en install de base Dedibox et que vous ne voulez pas tout recompiler, je met à disposition les paquets en bas de la page.
Petite explication :
Le premier Padlock est apparu avec le processeur VIA C7 il y a quelques année. Il n’était que 32 bits. Quand son support a été ajouté à OpenSSL, il ne l’a été quand dans la version 32 bits !
Or le VIA Nano est compatible 64 bits, mais OpenSSL n’a pas encore intégré cette spécificité.
Tout d’abbord, téléchargez ce patch : centaur-openssl-padlock-x86_64.patch
Ce patch provient du Forum Ubuntu (inscription obligatoire pour le télécharger).
On installe les pré-requis :
aptitude install build-essential devscripts fakeroot aptitude build-dep openssl
On télécharge les sources d’OpenSSL :
apt-get source openssl
On entre dans le répertoire :
cd openssl-0.9.8g
(à adapter suivant votre version d’OpenSSL)
On patch une première partie :
wget -q -O – http://launchpadlibrarian.net/13798833/bug119295.patch | patch -p1
En fait, ce n’est pas nécessaire pour les version >= 0.9.8g
On patch une deuxième partie :
wget -q -O - http://www.logix.cz/michal/devel/padlock/contrib/openssl-0.9.8e-engine.diff | patch -p1
Puis on patch la dernière partie :
cat ../centaur-openssl-padlock-x86_64.patch | patch -p1
Un petit debchange : (optionnel)
debchange --nmu
Si nano s’ouvre : ctrl-o puis ctrl-x
Si vi s’ouvre : echap puis :wq
Et là, l’étape la plus longue : la compilation + création du package :
dpkg-buildpackage
Une fois fait (environ 10-15 minutes) on installe les paquets créés (à adapter suivant votre distribution) :
dpkg -i ../openssl_0.9.8g-15+lenny6.1_amd64.deb ../libssl0.9.8_0.9.8g-15+lenny6.1_amd64.deb ../libssl-dev_0.9.8g-15+lenny6.1_amd64.deb
On vérifie qu’il est bien reconnu par OpenSSL :
#openssl engine (padlock) VIA PadLock (no-RNG, ACE) (dynamic) Dynamic engine loading support
Si vous voyez la ligne avec padlock, c’est bon 😉
Et voilà ! Maintenant on peut tester tout ça :
#openssl speed -evp aes-128-ecb [-engine padlock] type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes aes-128-ecb 49787.88k 53811.97k 54739.18k 55077.02k 54949.63k aes-128-ecb 144205.73k 493446.57k 1107523.84k 1591005.98k 1836111.30k
On voit tout de suite la différence !
La première ligne est en mode dynamic (sans le Padlock)
La deuxième est avec le Padlock.
Maintenant, il faut configurer OpenSSL pour utiliser par défaut le padlock : c’est par ici
Une réponse sur « Activer le Padlock du VIA Nano (Dedibox V3) sous Debian 64 bits »
[…] le billet précédent, on as vu comment faire en sorte que OpenSSL puisse utiliser le padlock sous environnement 64 bits. […]