## defines error code - str message mapping
0 = General security error
1 = An unsupported token was provided
2 = An unsupported signature or encryption algorithm was used
3 = An error was discovered processing the <wsse:Security> header.
4 = An invalid security token was provided
5 = The security token could not be authenticated or authorized
6 = The signature verification failed
7 = Referenced security token could not be retrieved.
8 = Cannot encrypt/decrypt data
9 = Signature creation failed

## detailed error msgs
noToken = Reference \"{0}\"
noReference = <Reference> token could not be retrieved
badReferenceURI = Reference URI is null
unhandledToken = Security token supported but currently not handled \"{0}\"
unsupportedBinaryTokenType = Token type \"{0}\"
invalidConstructor = Token impl. class \"{0}\" does not provide appropriate constructor
invalidValueType = Bad ValueType \"{0}\"
unsupportedKeyInfo = Unsupported KeyInfo type
invalidX509Data = Unexpected number of X509Data: {0}
invalidCertData = Unexpected number of certificates: {0}
noSKIHandling = Error during processing of SKI data: {0}
invalidDataRef = Cannot handle multiple data references
noEncryptedData = Referenced encrypted data could not be retrieved. Reference \"{0}\"
badElement = Bad element, expected \"{0}\" while got \"{1}\"
badTokenType00 = Bad UsernameToken Type
badTokenType01 = Bad UsernameToken Values
failedAuthentication = User ({0}) not authenticated
missingUsernameToken = UsernameToken is missing
missingSecurityHeader = Security header is missing
missingUsername = Username is missing
missingPassword = Password is missing
missingPasswordType =Password attribute type is missing
missingNonce = Nonce is missing
missingCreated = Created time is missing
noSecProvider = Specified security provider not available
parseError = Cannot parse/decode the certificate data
encodeError = Cannot encode the certificate data
unsupportedCertType = Certificate type not supported by security provider
invalidCert = The provided certificate is invalid
noXMLSig = Cannot setup signature data structure
noSKIHandling = Problem with SKI information: {0}
keystore = Cannot access/read keystore data
noCert = No certificate provided
##
noSigCryptoFile=WSSecurityEngine: No crypto protery file supplied to verify signature
noDecCryptoFile=WSSecurityEngine: No crypto propery file supplied for decryption
noCallback=WSSecurityEngine: No password callback supplied
noPassword=WSSecurityEngine: Callback supplied no password for: {0}
noKey=WSSecurityEngine: Callback supplied no key for: {0}
noEncAlgo=WSSecurityEngine: xenc:EncryptedKey does not contain xenc:EncryptionMethod/@Algorithm
unsupportedKeyTransp=unsupported key transport encryption algorithm: {0}
noCipher=WSSecurityEngine: EncryptedKey does not contain xenc:CipherData/xenc:CipherValue
noKeyinfo=WSSecurityEngine: EncryptedKey does not contain ds:KeyInfo
noSecTokRef=WSSecurityEngine: EncryptedKey does not contain ds:KeyInfo/wsse:SecurityTokenReference
unsupportedKeyId=Unsupported key identification
dataRef=WSSecurityEngine: DataReference - referenced data not found
noKeyname=WSSecurityEngine: ds:KeyName does not contain a key name
noEncElement=WSEncryptBody/WSSignEnvelope: Element to encrypt/sign not found: {0}
certpath=Error during certificate path validation: {0}
invalidTimestamp=WSSecurityEngine: Invalid timestamp {0}
noKeySupplied=WSEncryptBody: No symmetrical encryption key supplied
#
noSAMLdoc=Cannot convert SAML to DOM document
invalidSAMLsecurity=SAML token security failure
invalidData=Invalid data: {0}
noKeyInSAMLToken=Provided SAML token does not contain a suitable key
#
decoding.divisible.four = It should be divisible by four
decoding.general = Error while decoding

unknownAction=Unknown Action {0}
unableToLoadClass=Unable to load class {0}

requiredElementNoID=Element {0} is not signed; it does not have a wsu:Id attribute
noSignResult=No SIGN result in WSS4J result vector
requiredElementNotSigned=Element {0} is not included in the signature

invalidKeySize=Invalid keysize