ECElGamalEncryptor (Bouncy Castle Library 1.85 API Specification)
Date: 2026-07-12

org.bouncycastle.crypto.ec

## Class ECElGamalEncryptor

- java.lang.Object
- - org.bouncycastle.crypto.ec.ECElGamalEncryptor

- All Implemented Interfaces:
    ECEncryptor

      public class ECElGamalEncryptor
      extends java.lang.Object
      implements ECEncryptor

  this does your basic ElGamal encryption algorithm using EC

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ECElGamalEncryptor()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected ECMultiplier` | `createBasePointMultiplier()`
    `ECPair` | `encrypt(ECPoint point)` Process a single EC point using the basic ElGamal algorithm.
    `void` | `init(CipherParameters param)` initialise the encryptor.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ECElGamalEncryptor

          public ECElGamalEncryptor()

  - ### Method Detail

    - #### init

          public void init(CipherParameters param)

      initialise the encryptor.
      Specified by:
        `init` in interface `ECEncryptor`
      Parameters:
        `param` - the necessary EC key parameters.

    - #### encrypt

          public ECPair encrypt(ECPoint point)

      Process a single EC point using the basic ElGamal algorithm.
      Specified by:
        `encrypt` in interface `ECEncryptor`
      Parameters:
        `point` - the EC point to process.
      Returns:
        the result of the Elgamal process.

    - #### createBasePointMultiplier

          protected ECMultiplier createBasePointMultiplier()