You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
After working out some proof of concept code to try out https://github.com/mit-plv/fiat-crypto for elliptic curve stuff, it turns out to be fairly straightforward to build and include native variants of the algorithms being provided in the Java API through some fairly minimal JNI boilerplate. Since every crypto algorithm tends to have a reference C implementation, most of the symmetric algorithms can be easily imported that way rather than having to be ported again (the Java implementations are ported from C in the first place).
While the plain reference implementations are likely similar in performance to the Java ones, there are several assembly optimizations available for these algorithms and can be included for supported platforms (mostly for x86-64, though some may have additional platforms optimized).
The text was updated successfully, but these errors were encountered:
After working out some proof of concept code to try out https://github.com/mit-plv/fiat-crypto for elliptic curve stuff, it turns out to be fairly straightforward to build and include native variants of the algorithms being provided in the Java API through some fairly minimal JNI boilerplate. Since every crypto algorithm tends to have a reference C implementation, most of the symmetric algorithms can be easily imported that way rather than having to be ported again (the Java implementations are ported from C in the first place).
While the plain reference implementations are likely similar in performance to the Java ones, there are several assembly optimizations available for these algorithms and can be included for supported platforms (mostly for x86-64, though some may have additional platforms optimized).
The text was updated successfully, but these errors were encountered: