Although cryptographic software implementation is often
performed by expert programmers, the range of performance and secu-
rity driven options, as well as more mundane software engineering issues,
still make it a challenge. The use of domain specific language and com-
piler techniques to assist in description and optimisation of cryptographic
software is an interesting research challenge. Our results, which focus on
Elliptic Curve Cryptography (ECC), show that a suitable language allows
description of ECC based software in a manner close to the original mathe-
matics; the corresponding compiler allows automatic production of an ex-
ecutable whose performance is competitive with that of a hand-optimised
implementation. Our work are set within the context of CACE, an ongo-
ing EU funded pro ject on this general topic