class EllipticalCurveEncryptor implements Encryptor {

    @Override
    public Nonce randomNonce() {
        final byte[] nonceBytes = new byte[nonceLength];

        this.secureRandom.nextBytes(nonceBytes);

        final Nonce nonce = new Nonce(nonceBytes);

        LOGGER.debug("Generated random nonce {}", nonce);

        return nonce;
    }

    public  EllipticalCurveEncryptor(final String symmetricCipher, final String ellipticCurve);
    public  EllipticalCurveEncryptor(final String symmetricCipher, final String ellipticCurve, int nonceLength, int sharedKeyLength);

}