# $Id: Cryptix.properties,v 1.3 2000/10/02 15:07:24 edwin Exp $
#
# Copyright (c) 1997-2000 The Cryptix Foundation Limited. All rights reserved.
#
# Properties file for the Cryptix security provider.
# Important: no secret information should be stored in this file.
#
# It is recommended that instead of modifying Cryptix.properties, you
# create a 'Local.properties' file in the same directory, and modify
# that. Any properties in that file will add to and override the ones
# here.
#
# The advantage of doing this is that you can copy the Local.properties
# file between different Cryptix distributions, without having to merge
# your changes with any changes that we have made between versions.
# On operating systems that support symbolic links, Local.properties
# could be a link to some common location.


# ----------------------------------------------------------------------
# PGP properties
# ----------------------------------------------------------------------
# Specify the directory containing config.txt or pgp.ini below.
# '/' expands to the OS-specific directory separator, and '~' to the
# value of the user.home system property.
PGP.ConfigPath = ~/.pgp/config.txt


# ----------------------------------------------------------------------
# Debugging properties
#
# If the library is compiled with cryptix.util.core.Debug.GLOBAL_DEBUG
# set to false, debugging is always disabled, and these properties are
# ignored. Otherwise, the higher the debugging level, the more
# information is displayed.
#
# To set the default debugging level, use
#   Debug.Level.* = ...
#
# A debugging level of 1 is intended to be "safe" in the sense that it
# will not reveal private information in debugging messages. Higher
# debugging levels **MUST NOT** be used in normal operation.
# ----------------------------------------------------------------------
Debug.Level.Blowfish = 0
Debug.Level.Square = 0
Debug.Level.SAFER = 0
Debug.Level.IDEA = 0
Debug.Level.LOKI91 = 0
Debug.Level.SPEED = 0
Debug.Level.DES = 0
Debug.Level.DES_EDE3 = 0
Debug.Level.DESX = 0
Debug.Level.DES2X = 0

Debug.Level.HAVAL = 0
Debug.Level.RIPEMD128 = 0
Debug.Level.RIPEMD160 = 0
Debug.Level.MD5 = 0
Debug.Level.SHA-0 = 0
Debug.Level.SHA-1 = 0

Debug.Level.* = 1

# See the IJCE.properties file for tracing properties.


# ----------------------------------------------------------------------
# Native linking properties
#
# To set whether native linking is enabled for a particular library
# 'libname', add
#   Native.Enable.libname = true/false
# To set whether libraries are linked by default, add
#   Native.Enable.* = true/false
# To set whether native linking is allowed (this overrides all other
# properties):
#   Native.Allowed = true/false
#
# The default for Native.Allowed is true, and the default for
# Native.Enable.* is false.
# Note that some related algorithms share a single library.
# The algorithms that have false values below do not have any JNI native
# code written for them.
# ----------------------------------------------------------------------
Native.Allowed = true
Native.Enable.* = false

Native.Enable.BigNum = false

Native.Enable.Blowfish = true
Native.Enable.CAST5 = false
Native.Enable.DES = false
Native.Enable.DES_EDE3 = false
Native.Enable.DESX = false
Native.Enable.DES2X = false
Native.Enable.IDEA = true
Native.Enable.LOKI91 = true
Native.Enable.RC2 = false
Native.Enable.RC4 = false
Native.Enable.SAFER = false
Native.Enable.SPEED = false
Native.Enable.Square = true

Native.Enable.HAVAL = true
Native.Enable.MD2 = false
Native.Enable.MD4 = false
Native.Enable.MD5 = false
Native.Enable.SHA0 = false
Native.Enable.SHA1 = false
Native.Enable.RIPEMD = true


# ----------------------------------------------------------------------
# Specific implementation defaults
# ----------------------------------------------------------------------
# default number of rounds for Blowfish:
Alg.rounds.Blowfish = 16
# default number of rounds for SPEED:
Alg.rounds.SPEED = 64
# default size of a block (in bytes) for SPEED:
Alg.blockSize.SPEED = 8
# default number of passes for the HAVAL hash algorithm:
Alg.passes.HAVAL = 3
# default length of output (in bits) for HAVAL:
Alg.bitLength.HAVAL = 256
# default class to use for ElGamal/Diffie-Hellman parameters.
Alg.DefaultParameterSet.ElGamal = cryptix.provider.elgamal.DefaultElGamalParameterSet

# ----------------------------------------------------------------------
# RPK properties
# ----------------------------------------------------------------------
Cipher.RPK.stream.cipher =              cryptix.provider.rpk.StreamCipher
Cipher.RPK.block.cipher =               cryptix.provider.rpk.BlockCipher

KeyGenerator.RPK =                      cryptix.provider.rpk.RPKKeyGenerator
KeyPairGenerator.RPK =                  cryptix.provider.rpk.RPKKeyPairGenerator

Alg.Alias.Signature.MD2/RPK =           MD2/RPK/PKCS#1
Alg.Alias.Signature.MD5/RPK =           MD5/RPK/PKCS#1
Alg.Alias.Signature.SHA-1/RPK =         SHA-1/RPK/PKCS#1
Alg.Alias.Signature.RIPEMD160/RPK =     RIPEMD160/RPK/PKCS#1

Signature.MD2/RPK/PKCS#1 =              cryptix.provider.rpk.MD2_RPK_PKCS1Signature
Signature.MD5/RPK/PKCS#1 =              cryptix.provider.rpk.MD5_RPK_PKCS1Signature
Signature.SHA-1/RPK/PKCS#1 =            cryptix.provider.rpk.SHA1_RPK_PKCS1Signature
Signature.RIPEMD160/RPK/PKCS#1 =        cryptix.provider.rpk.R160_RPK_PKCS1Signature


# ----------------------------------------------------------------------
# Alias entries take the form 'Alg.Alias.<alias-name> = <standard-name>'
# getAlgorithm() returns the standard name, so it is important for
# interoperability to know which one that is.
#
# Aliases for ASN.1 OIDs are defined later.
# ----------------------------------------------------------------------
Alg.Alias.Cipher.AES =                  Rijndael
Alg.Alias.Cipher.3DES =                 DES-EDE3
Alg.Alias.Cipher.DES3 =                 DES-EDE3
Alg.Alias.Cipher.TripleDES =            DES-EDE3
Alg.Alias.Cipher.DEX-X =		DESX
Alg.Alias.Cipher.DES-2X =		DES2X
Alg.Alias.Cipher.CAST =                 CAST5
Alg.Alias.Cipher.CAST-128 =             CAST5
Alg.Alias.Cipher.LOKI =                 LOKI91
Alg.Alias.Cipher.LOKI-91 =              LOKI91
Alg.Alias.Cipher.Loki-91 =              LOKI91

Alg.Alias.KeyGenerator.AES =            Rijndael
Alg.Alias.KeyGenerator.3DES =           DES-EDE3
Alg.Alias.KeyGenerator.DES3 =           DES-EDE3
Alg.Alias.KeyGenerator.TripleDES =      DES-EDE3
Alg.Alias.KeyGenerator.DES-X = 		DESX
Alg.Alias.KeyGenerator.DES-2X =		DES2X
Alg.Alias.KeyGenerator.CAST =           CAST5
Alg.Alias.KeyGenerator.CAST-128 =       CAST5
Alg.Alias.KeyGenerator.LOKI =           LOKI91
Alg.Alias.KeyGenerator.LOKI-91 =        LOKI91
Alg.Alias.KeyGenerator.Loki-91 =        LOKI91

Alg.Alias.PaddingScheme.PKCS5 =         PKCS#5
Alg.Alias.PaddingScheme.PKCS5Padding =  PKCS#5
Alg.Alias.PaddingScheme.PKCS7 =         PKCS#7

Alg.Alias.MessageDigest.SHA =           SHA-1
Alg.Alias.MessageDigest.RIPEMD-128 =    RIPEMD128
Alg.Alias.MessageDigest.RIPEMD-160 =    RIPEMD160

Alg.Alias.MessageDigest.HMAC-SHA =      HMAC-SHA-1
Alg.Alias.MessageDigest.HMAC-RIPEMD-128 = HMAC-RIPEMD128
Alg.Alias.MessageDigest.HMAC-RIPEMD-160 = HMAC-RIPEMD160
Alg.Alias.MessageDigest.HMAC-RIPEMD =   HMAC-RIPEMD160

Alg.Alias.KeyPairGenerator.DH =         ElGamal
Alg.Alias.KeyPairGenerator.DiffieHellman = ElGamal

Alg.Alias.Signature.MD2/RSA =           MD2/RSA/PKCS#1
Alg.Alias.Signature.MD5/RSA =           MD5/RSA/PKCS#1
Alg.Alias.Signature.MD5withRSA =        MD5/RSA/PKCS#1
Alg.Alias.Signature.SHA-1/RSA =         SHA-1/RSA/PKCS#1
Alg.Alias.Signature.RIPEMD160/RSA =     RIPEMD160/RSA/PKCS#1

Alg.Alias.Signature.MD2/ElGamal =       MD2/ElGamal/PKCS#1
Alg.Alias.Signature.MD5/ElGamal =       MD5/ElGamal/PKCS#1
Alg.Alias.Signature.SHA-1/ElGamal =     SHA-1/ElGamal/PKCS#1
Alg.Alias.Signature.RIPEMD160/ElGamal = RIPEMD160/ElGamal/PKCS#1

Alg.Alias.Signature.MD2/RPK =           MD2/RPK/PKCS#1
Alg.Alias.Signature.MD5/RPK =           MD5/RPK/PKCS#1
Alg.Alias.Signature.SHA-1/RPK =         SHA-1/RPK/PKCS#1
Alg.Alias.Signature.RIPEMD160/RPK =     RIPEMD160/RPK/PKCS#1

# ----------------------------------------------------------------------
# Add new algorithm implementations here.
#
# Each entry takes the form
# '<algorithm-type>.<standard-name> = <full-class-name>'
# ----------------------------------------------------------------------
Cipher.Blowfish =                       cryptix.provider.cipher.Blowfish
Cipher.CAST5 =                          cryptix.provider.cipher.CAST5
Cipher.DES =                            cryptix.provider.cipher.DES
Cipher.DES-EDE3 =                       cryptix.provider.cipher.DES_EDE3
Cipher.DESX =				cryptix.provider.cipher.DESX
Cipher.DES2X =				cryptix.provider.cipher.DES2X
Cipher.IDEA =                           cryptix.provider.cipher.IDEA
Cipher.LOKI91 =                         cryptix.provider.cipher.LOKI91
Cipher.RC2 =                            cryptix.provider.cipher.RC2
Cipher.RC4 =                            cryptix.provider.cipher.RC4
Cipher.Rijndael =                       cryptix.provider.cipher.Rijndael
Cipher.SAFER =                          cryptix.provider.cipher.SAFER
Cipher.SPEED =                          cryptix.provider.cipher.SPEED
Cipher.Square =                         cryptix.provider.cipher.Square

Cipher.ElGamal =                        cryptix.provider.elgamal.RawElGamalCipher
Cipher.RSA =                            cryptix.provider.rsa.RawRSACipher
#Cipher.RSA/PKCS#1 =                     cryptix.provider.rsa.RSA_PKCS1Cipher

Mode.CBC =                              cryptix.provider.mode.CBC
# For Triple DES in CBC-EDE3 mode, use "DES-EDE3/CBC"
Mode.CFB =                              cryptix.provider.mode.CFB
Mode.CFB-PGP =                          cryptix.provider.mode.CFB_PGP
Mode.OFB =                              cryptix.provider.mode.OFB
Mode.PCBC =                             cryptix.provider.mode.PCBC

PaddingScheme.PKCS#5 =                  cryptix.provider.padding.PKCS5
PaddingScheme.PKCS#7 =                  cryptix.provider.padding.PKCS7
PaddingScheme.OneAndZeroes =            cryptix.provider.padding.OneAndZeroes

#EncryptionDataFormat.PKCS#1 =           cryptix.provider.format.PKCS1Encryption
#EncryptionDataFormat.OAEP =             cryptix.provider.format.OAEP

MessageDigest.HAVAL =                   cryptix.provider.md.HAVAL
MessageDigest.MD2 =                     cryptix.provider.md.MD2
MessageDigest.MD4 =                     cryptix.provider.md.MD4
MessageDigest.MD5 =                     cryptix.provider.md.MD5
MessageDigest.RIPEMD128 =               cryptix.provider.md.RIPEMD128
MessageDigest.RIPEMD160 =               cryptix.provider.md.RIPEMD160
MessageDigest.SHA-0 =                   cryptix.provider.md.SHA0
MessageDigest.SHA-1 =                   cryptix.provider.md.SHA1

MessageDigest.HMAC-HAVAL =              cryptix.provider.mac.HMAC_HAVAL
MessageDigest.HMAC-MD2 =                cryptix.provider.mac.HMAC_MD2
MessageDigest.HMAC-MD4 =                cryptix.provider.mac.HMAC_MD4
MessageDigest.HMAC-MD5 =                cryptix.provider.mac.HMAC_MD5
MessageDigest.HMAC-RIPEMD128 =          cryptix.provider.mac.HMAC_RIPEMD128
MessageDigest.HMAC-RIPEMD160 =          cryptix.provider.mac.HMAC_RIPEMD160
MessageDigest.HMAC-SHA-0 =              cryptix.provider.mac.HMAC_SHA0
MessageDigest.HMAC-SHA-1 =              cryptix.provider.mac.HMAC_SHA1

KeyGenerator.Blowfish =                 cryptix.provider.key.BlowfishKeyGenerator
KeyGenerator.CAST5 =                    cryptix.provider.key.CAST5KeyGenerator
KeyGenerator.DES =                      cryptix.provider.key.DESKeyGenerator
KeyGenerator.DES-EDE3 =                 cryptix.provider.key.DES_EDE3KeyGenerator
KeyGenerator.DESX =			cryptix.provider.key.DESXKeyGenerator
KeyGenerator.DES2X =			cryptix.provider.key.DES2XKeyGenerator
KeyGenerator.IDEA =                     cryptix.provider.key.IDEAKeyGenerator
KeyGenerator.LOKI91 =                   cryptix.provider.key.LOKI91KeyGenerator
KeyGenerator.RC2 =                      cryptix.provider.key.RC2KeyGenerator
KeyGenerator.RC4 =                      cryptix.provider.key.RC4KeyGenerator
KeyGenerator.Rijndael =                 cryptix.provider.key.RijndaelKeyGenerator
KeyGenerator.SAFER =                    cryptix.provider.key.SAFERKeyGenerator
KeyGenerator.SPEED =                    cryptix.provider.key.SPEEDKeyGenerator
KeyGenerator.Square =                   cryptix.provider.key.SquareKeyGenerator

KeyPairGenerator.ElGamal =              cryptix.provider.elgamal.BaseElGamalKeyPairGenerator
KeyPairGenerator.RSA =                  cryptix.provider.rsa.BaseRSAKeyPairGenerator

Signature.MD2/ElGamal/PKCS#1 =          cryptix.provider.elgamal.MD2_ElGamal_PKCS1Signature
Signature.MD5/ElGamal/PKCS#1 =          cryptix.provider.elgamal.MD5_ElGamal_PKCS1Signature
Signature.RIPEMD160/ElGamal/PKCS#1 =    cryptix.provider.elgamal.RIPEMD160_ElGamal_PKCS1Signature
Signature.SHA-1/ElGamal/PKCS#1 =        cryptix.provider.elgamal.SHA1_ElGamal_PKCS1Signature

Signature.MD2/RSA/PKCS#1 =              cryptix.provider.rsa.MD2_RSA_PKCS1Signature
Signature.MD5/RSA/PKCS#1 =              cryptix.provider.rsa.MD5_RSA_PKCS1Signature
Signature.RIPEMD160/RSA/PKCS#1 =        cryptix.provider.rsa.RIPEMD160_RSA_PKCS1Signature
Signature.SHA-1/RSA/PKCS#1 =            cryptix.provider.rsa.SHA1_RSA_PKCS1Signature

#SignatureDataFormat.PKCS#1 =            cryptix.provider.format.PKCS1Signature

# ----------------------------------------------------------------------
# ASN.1 OIDs
#
# Each OID should be defined both as an alias, and as an algorithm
# property, to allow efficient mapping in both directions.
# ----------------------------------------------------------------------

# iso(1) member-body(2) US(840) rsadsi(113549) digestAlgorithm(2) 2
Alg.Alias.MessageDigest.{1 2 840 113549 2 2} = MD2
Alg.OID.MessageDigest.MD2 = {1 2 840 113549 2 2}

# iso(1) member-body(2) US(840) rsadsi(113549) digestAlgorithm(2) 4
Alg.Alias.MessageDigest.{1 2 840 113549 2 4} = MD4
Alg.OID.MessageDigest.MD4 = {1 2 840 113549 2 4}

# iso(1) member-body(2) US(840) rsadsi(113549) digestAlgorithm(2) 5
Alg.Alias.MessageDigest.{1 2 840 113549 2 5} = MD5
Alg.OID.MessageDigest.MD5 = {1 2 840 113549 2 5}

# iso(1) identified-organization(3) oiw(14) secsig(3) algorithm(2) sha1(26)
Alg.Alias.MessageDigest.{1 3 14 3 2 26} = SHA-1
Alg.OID.MessageDigest.SHA-1 = {1 3 14 3 2 26}

# iso(1) identified-organization(3) ...?
Alg.Alias.MessageDigest.{1 3 36 3 2 1} = RIPEMD160
Alg.OID.MessageDigest.RIPEMD160 = {1 3 36 3 2 1}

# iso(1) member-body(2) US(840) rsadsi(113549) pkcs(1) pkcs-1(1) 1
Alg.Alias.Cipher.{1 2 840 113549 1 1 1} = RSA/PKCS#1
Alg.OID.Cipher.RSA/PKCS#1 = {1 2 840 113549 1 1 1}

# Note: RSA is also defined in X.509 as
#   joint-iso-ccitt(2) ds(5) algorithm(8) encryptionAlgorithm(1) 1
Alg.Alias.Cipher.{2 5 8 1 1} = RSA/PKCS#1

# and in P1363 as
#   ieee-1363 3 3, where ieee-1363 is not yet assigned.

# The following are defined by S/MIME.

# iso(1) member-body(2) US(840) rsadsi(113549) encryptionAlgorithm(3) 2
Alg.Alias.Cipher.{1 2 840 113549 3 2} = RC2/CBC/PKCS#5
Alg.OID.Cipher.RC2/CBC/PKCS#5 = {1 2 840 113549 3 2}

# iso(1) identified-organization(3) oiw(14) secsig(3) algorithm(2) 7
Alg.Alias.Cipher.{1 3 14 3 2 7} = DES/CBC/PKCS#5
Alg.OID.Cipher.DES/CBC/PKCS#5 = {1 3 14 3 2 7}

# iso(1) member-body(2) US(840) rsadsi(113549) encryptionAlgorithm(3) 7}
Alg.Alias.Cipher.{1 2 840 113549 3 7} = DES-EDE3/CBC/PKCS#5
Alg.OID.Cipher.DES-EDE3/CBC/PKCS#5 = {1 2 840 113549 3 7}

# iso(1) member-body(2) US(840) rsadsi(113549) encryptionAlgorithm(3) 9
Alg.Alias.Cipher.{1 2 840 113549 3 9} = RC5/CBC/PKCS#5
Alg.OID.Cipher.RC5/CBC/PKCS#5 = {1 2 840 113549 3 9}

# ----------------------------------------------------------------------
# Strings used for internationalization (perhaps these should be in a
# separate file?)
#
# Languages other than the fallback (International English) can be added
# using properties ending with ".language[_country]" (e.g. ".de" for
# German, ".fr_CA" for Canadian French, etc).
#
# The language codes are defined by ISO-639, and the country codes by
# ISO-3166. See for example
#   http://www.ics.uci.edu/pub/ietf/http/related/iso639.txt
# and
#   http://www.chemie.fu-berlin.de/diverse/doc/ISO_3166.html
#
# The locale to be used is given by java.util.Locale.getDefaultLocale(),
# which looks for the user.language and user.region system properties.
# \uxxxx escapes may be included in the translations.
#
# If anyone wants to provide (or correct) translations, feel free to send
# them to the users@cryptix.org mailing list.
# ----------------------------------------------------------------------
Msg.notice =                             "Notice: "
Msg.warning =                            "Warning: "
Msg.error =                              "Error: "
Msg.yes =                                "Yes"
Msg.no =                                 "No"
Msg.ok =                                 "OK"
Msg.cancel =                             "Cancel"

Msg.commandline.yes_no =                 " : (y/n) "
Msg.commandline.yes_no_cancel =          " : (yes/no/cancel) "
Msg.commandline.ok_cancel =              " : (ok/cancel) "
Msg.commandline.passphrase =             "Please enter your passphrase: "
Msg.commandline.yes =                    "y"
Msg.commandline.no =                     "n"
Msg.commandline.ok =                     "o"
Msg.commandline.cancel =                 "c"

# These are commented out because I'm not absolutely sure of the
# translations. Also, for non-localized applications we don't
# want the text to come out as a mixture of English and the local
# language. Maybe the application should explicitly specify whether
# it wants the Cryptix messages to be localized when it creates a
# UserInterface. --DJH

#Msg.notice.de =                         "Bescheid: "
#Msg.warning.de =                        "Warnung: "
#Msg.error.de =                          "Fehler: "
#Msg.yes.de =                            "Ja"
#Msg.no.de =                             "Nein"
#Msg.ok.de =                             "OK"
#Msg.cancel.de =                         "Absagen"

#Msg.commandline.yes_no.de =             " : (Ja/Nein) "
#Msg.commandline.yes_no_cancel.de =      " : (Ja/Nein/Absagen) "
#Msg.commandline.ok_cancel.de =          " : (OK/Absagen) "
#Msg.commandline.passphrase.de =         "Bitte geben Sie Ihre Kennphrase ein: "
#Msg.commandline.yes.de =                "j"
#Msg.commandline.no.de =                 "n"
#Msg.commandline.ok.de =                 "o"
#Msg.commandline.cancel.de =             "a"

#Msg.notice.fr =                         "Avertissement! "
#Msg.warning.fr =                        "Notez bien! "
#Msg.error.fr =                          "Erreur! "
#Msg.yes.fr =                            "Oiu"
#Msg.no.fr =                             "Non"
#Msg.ok.fr =                             "OK"
#Msg.cancel.fr =                         "Annullez"

#Msg.commandline.yes_no.fr =             " : (Oui/Non) "
#Msg.commandline.yes_no_cancel.fr =      " : (Oui/Non/Annullez) "
#Msg.commandline.ok_cancel.fr =          " : (OK/Annullez) "
#Msg.commandline.passphrase.fr =         "Entrez-vous votre mot de passe, s'il vous plaît: "
#Msg.commandline.yes.fr =                "o"
#Msg.commandline.no.fr =                 "n"
#Msg.commandline.ok.fr =                 "o"
#Msg.commandline.cancel.fr =             "a"
