GordianCipherMode.java

/*
 * GordianKnot: Security Suite
 * Copyright 2026. Tony Washer
 *
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License.  You may obtain a copy
 * of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
 * License for the specific language governing permissions and limitations under
 * the License.
 */

package io.github.tonywasher.joceanus.gordianknot.api.cipher.spec;

/**
 * Cipher Modes. Available algorithms.
 */
public enum GordianCipherMode {
    /**
     * ECB Mode.
     */
    ECB,

    /**
     * CBC Mode.
     */
    CBC,

    /**
     * SIC(CTR) Mode.
     */
    SIC,

    /**
     * CFB Mode.
     */
    CFB,

    /**
     * CFB8 Mode.
     */
    CFB8,

    /**
     * OFB Mode.
     */
    OFB,

    /**
     * OFB8 Mode.
     */
    OFB8,

    /**
     * EAX Mode.
     */
    EAX,

    /**
     * CCM Mode.
     */
    CCM,

    /**
     * GCM Mode.
     */
    GCM,

    /**
     * OCB Mode.
     */
    OCB,

    /**
     * GCFB Mode.
     */
    GCFB,

    /**
     * GOFB Mode.
     */
    GOFB,

    /**
     * KCTR Mode.
     */
    KCTR,

    /**
     * KCCM Mode.
     */
    KCCM,

    /**
     * KGCM Mode.
     */
    KGCM,

    /**
     * G3413CBC Mode.
     */
    G3413CBC,

    /**
     * G3413CFB Mode.
     */
    G3413CFB,

    /**
     * G3413OFB Mode.
     */
    G3413OFB,

    /**
     * G3413CTR Mode.
     */
    G3413CTR,

    /**
     * GCMSIV Mode.
     */
    GCMSIV;
}