Jij zit twee levels hoger te testen dan waar die hardware ondersteunde encryption werkt.
Ik probeer het gewoon aan te zetten op het niveau waar het aan kan gaan, om te kijken of dat verschil maakt, of ik probeer het uit te zetten om te kijken of het verschil maakt.
Ik weet bijna zeker dat eCryptFS het al gebruikt.
Maar OpenSSL niet en dat is voor OpenVPN. Daar was ik alleen nog naar aan het kijken.
Ook was ik nog geïnteresseerd in ccrypt en ik weet vrij zeker dat die geen libraries gebruikt omdat ik een keer in een source code heb zitten rondneuzen en die deed de AES calls zelf.
In de instructieset van de cpu's heeft intel een aantal instructies opgenomen die gebruikt kunnen worden door software libraries.
Ja en de Linux kernel doet dat met OCF.
Uiteraard hebben andere cpu fabrikanten die overgenomen.
Ik denk niet dat ARM dat gedaan heeft.
Sommige cpu's realiseren dat gewoon in microcode(dus software in de chip) en andere cpu's hebben er extra hardware voor.
Ik denk niet dat ARM (v5) ia-aes emulatie heeft.
Er is geen enkele manier om te kiezen tussen de een en de ander, want het zit in de cpu ingebakken.
Ja maar je moet het wel eerst nog gebruiken door de software libraries.
Ik ben aan het testen of ze dat doen.
Wat jij aan het testen bent is het effect van verschillende compiler flags die gebruikt kunnen worden als je een cpu hebt die de instructieset niet heeft.
Niet waar.
Het klopt dat ARM die IA-AES set niet heeft en dat OpenSSL dit direct gebruikt; en het is zo dat ARM v7 een eigen set heeft, wat OpenSSL kan gebruiken, maar ARM v 5 heeft beide niet.
ARMv5 heeft wel iets dat ondersteund wordt door de Linux kernel.
Hoe efficiënt het gebruik daarvan is weet ik niet (vanwege die context switches).
Je emuleert daarmee op software niveau wat anders door de cpu gedaan wordt, zonder externe software en de bijbehorende vertragingen.
Da's niet waar. Cryptodev is geen software-emulatie-library. Het is een hardware-acceleratie-toegangs-library.
Die 'libraries' waar je het over hebt zijn wel een laag van indirectie maar het maakt het mogelijk dat slecht ondersteunde CPUs zoals bijvoorbeeld die ARMv5 toch ondersteund kunnen worden door bijv. OpenSSL.
Het is inderdaad zo dat bijv. die Intel CPUs dat dan niet nodig hebben omdat OpenSSL het dan direct doet.
Maar omdat OpenSSL geen ondersteuning heeft voor deze chip direct, maar wel via OCF of cryptodev of whatever het is,
probeer ik te kijken of het aan staat en of ik het uit kan zetten.
Het is vrij duidelijk dat de verschillende versies van OpenSSL en de verschillende flags nu al grote verschillen laten zien.
Dus ik weet niet wat je precies bedoelde met emulatie, maar de software emuleert niet hardware chips. Als de hardware chip er niet is, wordt er niks geëmuleerd. Het wordt gewoon direct in software uitgevoerd. (De berekeningen).