Software Implementations And Applications Of Elliptic Curve Cryptography