Recently Alexander Senier announced on comp.lang.ada his library of cryptographic algorithms in SPARK called libsparkcrypto. Based on the project's web page it looks like libsparkcrypto's basic goals overlap considerably with my goals for ACO. Also at the moment libsparkcrypto contains a much richer collection of algorithm implementations than the meager set in ACO and is more polished than ACO. If you have an immediate need for a cryptography library in SPARK, libsparkcrypto is in a better position to meet that need.
Of course who knows what the future will bring. ACO contains a collection of high level object-oriented wrappers intended to abstract out various cryptographic interfaces in a useful way. Those wrappers are not SPARK but for applications that don't need SPARK they might be more convenient than interacting with the low level algorithms directly. Also my long term plans for ACO entail supporting various cryptographic and security services beyond "just" algorithm implementations. On the other hand talk is cheap. It is entirely possible that those plans will never be realized.
In any case it is good to have options. When I started ACO it appeared to me that the other Ada cryptographic libraries I found were either dead projects or did not have the sort of algorithms I needed. It is good for the Ada ecology in general and for SPARK in particular to have two SPARK cryptography libraries being actively developed. Since ACO is primarily a hobby project for me, I don't mind reinventing the wheel as long as I'm having fun doing it!

0 comments:
Post a Comment