org.bouncycastle.crypto.PasswordConverter.java Source code

Java tutorial

Introduction

Here is the source code for org.bouncycastle.crypto.PasswordConverter.java

Source

package org.bouncycastle.crypto;

/**
 * Standard char[] to byte[] converters for password based derivation algorithms.
 */
public final class PasswordConverter {
    /**
     * Do a straight char[] to 8 bit conversion.
     */
    public static final CharToByteConverter ASCII = new CharToByteConverter() {
        public String getType() {
            return "ASCII";
        }

        public byte[] convert(char[] password) {
            return PBEParametersGenerator.PKCS5PasswordToBytes(password);
        }
    };

    /**
     * Do a char[] conversion by producing UTF-8 data.
     */
    public static final CharToByteConverter UTF8 = new CharToByteConverter() {
        public String getType() {
            return "UTF8";
        }

        public byte[] convert(char[] password) {
            return PBEParametersGenerator.PKCS5PasswordToUTF8Bytes(password);
        }
    };

    /**
     * Do char[] to BMP conversion (i.e. 2 bytes per character).
     */
    public static final CharToByteConverter PKCS12 = new CharToByteConverter() {
        public String getType() {
            return "PKCS12";
        }

        public byte[] convert(char[] password) {
            return PBEParametersGenerator.PKCS12PasswordToBytes(password);
        }
    };
}