/* * Copyright 2018 Scytl Secure Electronic Voting SA * * All rights reserved * * See our extended copyright notice in *file 'Copyright.txt' which is part of this source code package */ /* jshint node:true */ 'use strict'; var ElGamalCryptographyService = require('./service'); var validator = require('./input-validator'); module.exports = { /** * Creates a new ElGamalCryptographyService object, which encapsulates an * ElGamal cryptography service. * * @function newService * @global * @param {Object} * [options] An object containing optional arguments. * @param {SecureRandomService} * [options.secureRandomService=Created internally] The secure * random service to use. * @param {MathematicalService} * [options.mathematicalService=Created internally] The * mathematical service to use. * @returns {ElGamalCryptographyService} The new ElGamalCryptographyService * object. * @throws {Error} * If the input data validation fails. * @example