'Build a key from EC components.
@param x: The affine x component of the public point used for verifying.
@type x: L{int}
@param y: The affine y component of the public point used for verifying.
@type y: L{int}
@param curve: NIST name of elliptic curve.
@type curve: L{bytes}
@param privateValue: The private value.
@type privateValue: L{int}'

@classmethod
def _fromECComponents(cls, x, y, curve, privateValue=None):

    publicNumbers = ec.EllipticCurvePublicNumbers(x=x, y=y, curve=_curveTable[curve])
    if (privateValue is None):
        keyObject = publicNumbers.public_key(default_backend())
    else:
        privateNumbers = ec.EllipticCurvePrivateNumbers(private_value=privateValue, public_numbers=publicNumbers)
        keyObject = privateNumbers.private_key(default_backend())
    return cls(keyObject)
