How does OpenSSL work on ARM?
Do any arms have hardware crypto?
thanks
-------- Forwarded Message --------
Subject: Re: [openssl-users] Does openssl pick low level interface or
high level interface to do encrypt?
Date: Thu, 10 Aug 2017 15:16:09 +0000
From: Salz, Rich via openssl-users <openssl-users(a)openssl.org>
Reply-To: Salz, Rich <rsalz(a)akamai.com>, openssl-users(a)openssl.org
To: openssl-users(a)openssl.org <openssl-users(a)openssl.org>
What OpenSSL does is not necessarily obvious. The INSTALL document
talks about the no-asm configuration option. Details about what the
assembler code does in terms of optimization are only available by
reading the source code comments in the various Perl files that generate
the assembler, mostly.
On x86, the assembly code uses the CPUID instruction (see the
OPENSSL_ia32cap.pod manpage) to determine if various instructions (AES,
SSE, MMX, etc) are available and will use them if so. For other
processors, similar tests are performed if at all possible.
I have added this to the FAQ
--
Senior Architect, Akamai Technologies
Member, OpenSSL Dev Team
IM: richsalz(a)jabber.at Twitter: RichSalz
*From:*- JinsongJi [mailto:jjsbear@hotmail.com]
*Sent:* Wednesday, August 09, 2017 9:09 AM
*To:* openssl-users(a)openssl.org
*Subject:* [openssl-users] Does openssl pick low level interface or high
level interface to do encrypt?
Hi,
For one simple operation: openssl enc -aes-256-cbc -salt -in foo.txt
-out foo.enc
Does openssl pick classic implementation or AES-NI implementation to do
this encrypt?
Does any user/application always pick classic implementation for AES
operation regardless of AES-NI improves speed much?
Is there any document about this interface selection?
Thanks,
Jinsong