ECDKG : A Distributed Key Generation Protocol Based on Elliptic Curve Discrete Logarithm