directory-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From plusplusjia...@apache.org
Subject [21/21] directory-kerby git commit: Merge from pkinit-support branch.
Date Wed, 16 Dec 2015 06:17:08 GMT
Merge from pkinit-support branch.


Project: http://git-wip-us.apache.org/repos/asf/directory-kerby/repo
Commit: http://git-wip-us.apache.org/repos/asf/directory-kerby/commit/0a19b1d7
Tree: http://git-wip-us.apache.org/repos/asf/directory-kerby/tree/0a19b1d7
Diff: http://git-wip-us.apache.org/repos/asf/directory-kerby/diff/0a19b1d7

Branch: refs/heads/master
Commit: 0a19b1d7ee1b424a46d1ac10bed85693d688bd98
Parents: f976a68
Author: plusplusjiajia <jiajia.li@intel.com>
Authored: Wed Dec 16 14:19:54 2015 +0800
Committer: plusplusjiajia <jiajia.li@intel.com>
Committed: Wed Dec 16 14:19:54 2015 +0800

----------------------------------------------------------------------
 docs/kerby-checkstyle.xml                       |    2 +-
 .../main/java/org/apache/kerby/asn1/Asn1.java   |    8 +-
 .../org/apache/kerby/asn1/Asn1Converter.java    |   10 +-
 .../kerby/asn1/type/Asn1CollectionType.java     |    6 +-
 .../apache/kerby/asn1/type/Asn1Constructed.java |    2 +-
 .../org/apache/kerby/asn1/PersonnelRecord.java  |   14 +-
 kerby-dist/kdc-dist/conf/kdc.conf               |    4 +-
 kerby-dist/tool-dist/conf/krb5.conf             |    5 +-
 kerby-dist/tool-dist/pom.xml                    |    5 +
 .../src/main/resources/cacerttest.pem           |   23 +
 .../src/main/resources/kdccerttest.pem          |   25 +
 .../kerberos/kdc/AnonymousPkinitKdcTest.java    |   91 ++
 .../kerby/kerberos/kdc/WithCertKdcTest.java     |  115 ++
 kerby-kerb/kerb-client-api-all/pom.xml          |    2 +
 kerby-kerb/kerb-client/pom.xml                  |    5 +
 .../kerby/kerberos/kerb/client/KrbConfig.java   |   16 +
 .../kerberos/kerb/client/KrbConfigKey.java      |    5 +-
 .../kerby/kerberos/kerb/client/KrbHandler.java  |    1 +
 .../kerberos/kerb/client/KrbPkinitClient.java   |   16 +-
 .../client/impl/AbstractInternalKrbClient.java  |    6 +-
 .../kerb/client/preauth/PreauthHandler.java     |    3 +-
 .../preauth/pkinit/ClientConfiguration.java     |  140 +++
 .../preauth/pkinit/EnvelopedDataEngine.java     |  109 ++
 .../client/preauth/pkinit/PkinitContext.java    |   11 +-
 .../client/preauth/pkinit/PkinitPreauth.java    |  161 ++-
 .../preauth/pkinit/PkinitRequestOpts.java       |    2 +-
 .../preauth/pkinit/ServerConfiguration.java     |  143 +++
 .../client/preauth/pkinit/SignedDataEngine.java |  210 ++++
 .../pkinit/certs/CertificateChainFactory.java   |  284 +++++
 .../pkinit/certs/EndEntityGenerator.java        |  272 +++++
 .../pkinit/certs/IntermediateCaGenerator.java   |  130 +++
 .../preauth/pkinit/certs/KeyPairSpec.java       |  114 ++
 .../pkinit/certs/TrustAnchorGenerator.java      |  123 ++
 .../kerberos/kerb/client/request/AsRequest.java |   10 +-
 .../kerb/client/request/AsRequestWithCert.java  |  160 ++-
 .../kerb/client/request/KdcRequest.java         |   20 +-
 .../kerberos/kerb/client/TestKrbConfigLoad.java |    3 +
 .../preauth/pkinit/EnvelopedDataEngineTest.java |  124 ++
 .../preauth/pkinit/SignedDataEngineTest.java    |  133 +++
 .../certs/CertificateChainFactoryTest.java      |  110 ++
 .../kerb-client/src/test/resources/krb5.conf    |    3 +
 .../kerberos/kerb/common/EncryptionUtil.java    |    8 +-
 .../kerby/kerberos/kerb/common/KrbUtil.java     |   30 +
 .../kerb/preauth/pkinit/CMSMessageType.java     |   59 +
 .../kerb/preauth/pkinit/CertificateHelper.java  |   58 +
 .../kerb/preauth/pkinit/PkinitCrypto.java       |  377 +++++++
 .../preauth/pkinit/PkinitPlgCryptoContext.java  |  148 +++
 .../kerb/preauth/pkinit/PluginOpts.java         |   11 +-
 .../kerberos/kerb/preauth/pkinit/Util.java      |  141 +++
 .../apache/kerby/kerberos/kerb/KrbRuntime.java  |   21 -
 .../kerberos/kerb/provider/OtpProvider.java     |   29 -
 .../kerby/kerberos/kerb/provider/PkiLoader.java |   70 --
 .../kerberos/kerb/provider/PkiProvider.java     |   33 -
 .../kerberos/kerb/type/KrbAppSequenceType.java  |    2 +-
 .../kerberos/kerb/type/KrbSequenceType.java     |    2 +-
 .../kerby/kerberos/kerb/type/ad/AdToken.java    |    1 +
 .../kerb/type/ad/AuthorizationDataEntry.java    |    3 +-
 .../kerby/kerberos/kerb/type/ap/ApRep.java      |    3 +-
 .../kerby/kerberos/kerb/type/ap/ApReq.java      |    3 +-
 .../kerberos/kerb/type/ap/Authenticator.java    |    3 +-
 .../kerberos/kerb/type/ap/EncAPRepPart.java     |    3 +-
 .../kerby/kerberos/kerb/type/base/CheckSum.java |    5 +-
 .../kerberos/kerb/type/base/EncryptedData.java  |    5 +-
 .../kerberos/kerb/type/base/EncryptionKey.java  |    5 +-
 .../kerb/type/base/EtypeInfo2Entry.java         |    3 +-
 .../kerberos/kerb/type/base/EtypeInfoEntry.java |    3 +-
 .../kerberos/kerb/type/base/HostAddress.java    |    5 +-
 .../kerby/kerberos/kerb/type/base/KrbError.java |    3 +-
 .../kerberos/kerb/type/base/KrbMessage.java     |    1 +
 .../kerby/kerberos/kerb/type/base/KrbToken.java |    3 +-
 .../kerberos/kerb/type/base/LastReqEntry.java   |    3 +-
 .../kerby/kerberos/kerb/type/base/NameType.java |    3 +-
 .../kerberos/kerb/type/base/PrincipalName.java  |    5 +-
 .../kerb/type/base/TransitedEncoding.java       |    5 +-
 .../kerberos/kerb/type/fast/KrbFastArmor.java   |    3 +-
 .../kerb/type/fast/KrbFastArmoredRep.java       |    1 +
 .../kerb/type/fast/KrbFastArmoredReq.java       |    1 +
 .../kerb/type/fast/KrbFastFinished.java         |    1 +
 .../kerberos/kerb/type/fast/KrbFastReq.java     |    1 +
 .../kerb/type/fast/KrbFastResponse.java         |    3 +-
 .../kerberos/kerb/type/fast/PaAuthnEntry.java   |    3 +-
 .../kerberos/kerb/type/fast/PaFxFastReply.java  |    5 +-
 .../kerb/type/fast/PaFxFastRequest.java         |    5 +-
 .../kerberos/kerb/type/kdc/EncKdcRepPart.java   |    3 +-
 .../kerby/kerberos/kerb/type/kdc/KdcRep.java    |    3 +-
 .../kerby/kerberos/kerb/type/kdc/KdcReq.java    |    3 +-
 .../kerberos/kerb/type/kdc/KdcReqBody.java      |    5 +-
 .../kerb/type/pa/PaAuthenticationSetElem.java   |    3 +-
 .../kerberos/kerb/type/pa/PaDataEntry.java      |    3 +-
 .../kerby/kerberos/kerb/type/pa/PaEncTsEnc.java |    3 +-
 .../kerberos/kerb/type/pa/otp/OtpTokenInfo.java |    3 +-
 .../kerb/type/pa/otp/PaOtpChallenge.java        |    3 +-
 .../kerberos/kerb/type/pa/pkinit/AuthPack.java  |    5 +-
 .../kerberos/kerb/type/pa/pkinit/DHRepInfo.java |   18 +-
 .../pa/pkinit/ExternalPrincipalIdentifier.java  |    3 +-
 .../kerb/type/pa/pkinit/KdcDHKeyInfo.java       |   27 +-
 .../kerb/type/pa/pkinit/Krb5PrincipalName.java  |    1 +
 .../kerberos/kerb/type/pa/pkinit/PaPkAsRep.java |    7 +-
 .../kerberos/kerb/type/pa/pkinit/PaPkAsReq.java |    3 +-
 .../kerb/type/pa/pkinit/PkAuthenticator.java    |    3 +-
 .../kerb/type/pa/pkinit/ReplyKeyPack.java       |    1 +
 .../kerb/type/pa/token/PaTokenChallenge.java    |    1 +
 .../kerb/type/pa/token/PaTokenRequest.java      |    1 +
 .../kerberos/kerb/type/pa/token/TokenInfo.java  |    3 +-
 .../kerb/type/ticket/EncTicketPart.java         |    1 +
 .../kerberos/kerb/type/ticket/TgtTicket.java    |    4 +-
 .../kerby/kerberos/kerb/type/ticket/Ticket.java |    3 +-
 .../kerby/kerberos/kerb/codec/CodecTest.java    |    6 +-
 .../kerberos/kerb/codec/TestPaPkAsRep.java      |   46 +
 .../codec/TestPkinitAnonymousAsRepCodec.java    |   47 +-
 .../codec/TestPkinitAnonymousAsReqCodec.java    |    8 +-
 .../kerby/kerberos/kerb/crypto/dh/DhClient.java |  128 +++
 .../kerby/kerberos/kerb/crypto/dh/DhGroup.java  |  138 +++
 .../kerby/kerberos/kerb/crypto/dh/DhServer.java |  126 +++
 .../kerb/crypto/dh/OctetString2Key.java         |   91 ++
 .../kerberos/kerb/crypto/dh/DhGroupTest.java    |   52 +
 .../kerb/crypto/dh/DhKeyAgreementTest.java      |  173 +++
 .../kerb/crypto/dh/OctetString2KeyTest.java     |  225 ++++
 .../kerby/kerberos/kerb/server/KdcConfig.java   |   10 +
 .../kerberos/kerb/server/KdcConfigKey.java      |    4 +-
 .../kerby/kerberos/kerb/server/KdcHandler.java  |    5 +
 .../kerb/server/preauth/PreauthContext.java     |   14 +-
 .../kerb/server/preauth/PreauthHandler.java     |   14 +
 .../server/preauth/pkinit/PkinitKdcContext.java |   39 +-
 .../server/preauth/pkinit/PkinitPreauth.java    |  279 ++++-
 .../kerberos/kerb/server/request/AsRequest.java |    8 +
 .../kerb/server/request/KdcRequest.java         |   48 +-
 .../kerb/server/request/TicketIssuer.java       |    7 +-
 kerby-pkix/README.txt                           |    2 +
 kerby-pkix/pom.xml                              |   21 +
 .../java/org/apache/commons/ssl/CRLUtil.java    |   75 ++
 .../org/apache/commons/ssl/Certificates.java    |  618 ++++++++++
 .../apache/commons/ssl/ComboInputStream.java    |   95 ++
 .../java/org/apache/commons/ssl/DerivedKey.java |   49 +
 .../apache/commons/ssl/HostnameVerifier.java    |  491 ++++++++
 .../org/apache/commons/ssl/KeyMaterial.java     |  286 +++++
 .../org/apache/commons/ssl/KeyStoreBuilder.java |  692 ++++++++++++
 .../java/org/apache/commons/ssl/OpenSSL.java    |  725 ++++++++++++
 .../org/apache/commons/ssl/PBETestCreate.java   |   79 ++
 .../java/org/apache/commons/ssl/PEMItem.java    |  106 ++
 .../java/org/apache/commons/ssl/PEMUtil.java    |  259 +++++
 .../java/org/apache/commons/ssl/PKCS8Key.java   | 1055 ++++++++++++++++++
 .../org/apache/commons/ssl/PkcsStructure.java   |  111 ++
 .../java/org/apache/commons/ssl/PkcsUtil.java   |  190 ++++
 .../ssl/ProbablyBadPasswordException.java       |   55 +
 .../commons/ssl/ProbablyNotPKCS8Exception.java  |   54 +
 .../java/org/apache/commons/ssl/TrustChain.java |  221 ++++
 .../org/apache/commons/ssl/TrustMaterial.java   |  280 +++++
 .../java/org/apache/commons/ssl/Version.java    |  195 ++++
 .../ssl/X509CertificateChainBuilder.java        |  204 ++++
 .../org/apache/kerby/cms/type/Attribute.java    |    1 +
 .../cms/type/AttributeCertificateInfoV1.java    |    3 +-
 .../kerby/cms/type/AttributeCertificateV1.java  |    3 +-
 .../org/apache/kerby/cms/type/Certificate.java  |   89 --
 .../kerby/cms/type/CertificateChoices.java      |    6 +-
 .../apache/kerby/cms/type/CompressedData.java   |    1 +
 .../org/apache/kerby/cms/type/ContentInfo.java  |    5 +-
 .../kerby/cms/type/EncapsulatedContentInfo.java |    3 +-
 .../kerby/cms/type/ExtendedCertificate.java     |    1 +
 .../kerby/cms/type/ExtendedCertificateInfo.java |    1 +
 .../kerby/cms/type/IssuerAndSerialNumber.java   |    1 +
 .../kerby/cms/type/OtherCertificateFormat.java  |    3 +-
 .../cms/type/OtherRevocationInfoFormat.java     |    3 +-
 .../kerby/cms/type/RevocationInfoChoice.java    |    4 +-
 .../org/apache/kerby/cms/type/SignedData.java   |    3 +-
 .../apache/kerby/cms/type/SignerIdentifier.java |    5 +-
 .../org/apache/kerby/cms/type/SignerInfo.java   |    3 +-
 .../java/org/apache/kerby/cms/type/Subject.java |    5 +-
 .../java/org/apache/kerby/pki/PkiLoader.java    |  114 ++
 .../kerby/x500/type/AttributeTypeAndValue.java  |    3 +-
 .../java/org/apache/kerby/x500/type/Name.java   |    3 +-
 .../kerby/x509/type/AccessDescription.java      |    1 +
 .../kerby/x509/type/AlgorithmIdentifier.java    |    8 +-
 .../apache/kerby/x509/type/AttCertIssuer.java   |    3 +-
 .../org/apache/kerby/x509/type/Attribute.java   |    1 +
 .../kerby/x509/type/AttributeCertificate.java   |    3 +-
 .../x509/type/AttributeCertificateInfo.java     |    3 +-
 .../kerby/x509/type/AuthorityKeyIdentifier.java |    3 +-
 .../kerby/x509/type/BasicConstraints.java       |    5 +-
 .../org/apache/kerby/x509/type/Certificate.java |    3 +-
 .../apache/kerby/x509/type/CertificateList.java |    3 +-
 .../apache/kerby/x509/type/CertificatePair.java |    3 +-
 .../org/apache/kerby/x509/type/DHParameter.java |   65 ++
 .../apache/kerby/x509/type/DSAParameter.java    |    3 +-
 .../org/apache/kerby/x509/type/DigestInfo.java  |    1 +
 .../apache/kerby/x509/type/DirectoryString.java |    3 +-
 .../org/apache/kerby/x509/type/DisplayText.java |    3 +-
 .../kerby/x509/type/DistributionPoint.java      |    3 +-
 .../kerby/x509/type/DistributionPointName.java  |    5 +-
 .../apache/kerby/x509/type/EDIPartyName.java    |    5 +-
 .../org/apache/kerby/x509/type/Extension.java   |    8 +-
 .../apache/kerby/x509/type/GeneralNames.java    |    3 +
 .../apache/kerby/x509/type/GeneralSubtree.java  |    3 +-
 .../java/org/apache/kerby/x509/type/Holder.java |    3 +-
 .../apache/kerby/x509/type/IetfAttrSyntax.java  |    3 +-
 .../kerby/x509/type/IetfAttrSyntaxChoice.java   |    3 +-
 .../apache/kerby/x509/type/IssuerSerial.java    |    3 +-
 .../x509/type/IssuingDistributionPoint.java     |    5 +-
 .../apache/kerby/x509/type/NameConstraints.java |    3 +-
 .../apache/kerby/x509/type/NoticeReference.java |    1 +
 .../kerby/x509/type/ObjectDigestInfo.java       |    3 +-
 .../org/apache/kerby/x509/type/OtherName.java   |    5 +-
 .../kerby/x509/type/PolicyConstraints.java      |    3 +-
 .../kerby/x509/type/PolicyInformation.java      |    1 +
 .../apache/kerby/x509/type/PolicyMapping.java   |    1 +
 .../kerby/x509/type/PolicyQualifierInfo.java    |    3 +-
 .../kerby/x509/type/PrivateKeyUsagePeriod.java  |    3 +-
 .../kerby/x509/type/RevokedCertificate.java     |    1 +
 .../org/apache/kerby/x509/type/RoleSyntax.java  |    3 +-
 .../kerby/x509/type/SubjectPublicKeyInfo.java   |    7 +-
 .../org/apache/kerby/x509/type/TBSCertList.java |    3 +-
 .../apache/kerby/x509/type/TBSCertificate.java  |   10 +-
 .../java/org/apache/kerby/x509/type/Target.java |    5 +-
 .../org/apache/kerby/x509/type/TargetCert.java  |    1 +
 .../java/org/apache/kerby/x509/type/Time.java   |    5 +-
 .../org/apache/kerby/x509/type/UserNotice.java  |    1 +
 .../java/org/apache/kerby/x509/type/V2Form.java |    3 +-
 .../org/apache/commons/ssl/JUnitConfig.java     |   16 +
 .../apache/commons/ssl/TestCertificates.java    |   84 ++
 .../org/apache/commons/ssl/TestKeyMaterial.java |   72 ++
 .../org/apache/commons/ssl/TestOpenSSL.java     |  163 +++
 .../org/apache/commons/ssl/TestPKCS8Key.java    |   58 +
 .../apache/commons/ssl/TestTrustMaterial.java   |   67 ++
 .../org/apache/kerby/cms/TestCertificate.java   |   17 +-
 .../org/apache/kerby/cms/TestExtension.java     |   54 +
 .../org/apache/kerby/cms/TestSignedData.java    |   15 +
 .../org/apache/kerby/x509/PkiLoaderTest.java    |   67 ++
 kerby-pkix/src/test/resources/anonymous.txt     |   21 +-
 kerby-pkix/src/test/resources/cacert.pem        |   23 +
 kerby-pkix/src/test/resources/cakey.pem         |   27 +
 kerby-pkix/src/test/resources/extensions.kdc    |   36 +
 kerby-pkix/src/test/resources/kdccert.pem       |   26 +
 kerby-pkix/src/test/resources/kdckey.pem        |   27 +
 .../resources/not-so-commons-ssl/PASSWORD.txt   |    3 +
 .../resources/not-so-commons-ssl/README.txt     |    3 +
 .../test/resources/not-so-commons-ssl/ca/CA.sh  |   76 ++
 .../resources/not-so-commons-ssl/ca/clean.sh    |    6 +
 .../ca/dsa-intermediate/cacert.pem              |  137 +++
 .../ca/dsa-intermediate/dsa.params              |   34 +
 .../ca/dsa-intermediate/private/cakey.pem       |   20 +
 .../resources/not-so-commons-ssl/ca/openssl.cnf |  313 ++++++
 .../not-so-commons-ssl/ca/root/cacert.pem       |   85 ++
 .../ca/root/private/cakey.pem                   |   27 +
 .../ca/rsa-intermediate/cacert.pem              |   86 ++
 .../ca/rsa-intermediate/private/cakey.pem       |   27 +
 .../resources/not-so-commons-ssl/ca/rsa.key     |   27 +
 .../not-so-commons-ssl/ca/test-dsa-cert.pem     |   67 ++
 .../not-so-commons-ssl/ca/test-dsa-chain.pem    |  289 +++++
 .../not-so-commons-ssl/ca/test-rsa-cert.pem     |   83 ++
 .../not-so-commons-ssl/ca/test-rsa-chain.pem    |  254 +++++
 ...erts-with-78-entries-and-one-private-key.jks |  Bin 0 -> 84754 bytes
 .../cacerts-with-78-entries.jks                 |  Bin 0 -> 82586 bytes
 .../not-so-commons-ssl/createPBESamples.sh      |  106 ++
 .../test/resources/not-so-commons-ssl/dsa.html  |  115 ++
 .../dsa/openssl_dsa_aes128_cbc.pem              |   23 +
 .../dsa/openssl_dsa_aes128_cfb.pem              |   23 +
 .../dsa/openssl_dsa_aes128_ecb.pem              |   23 +
 .../dsa/openssl_dsa_aes128_ofb.pem              |   23 +
 .../dsa/openssl_dsa_aes192_cbc.pem              |   23 +
 .../dsa/openssl_dsa_aes192_cfb.pem              |   23 +
 .../dsa/openssl_dsa_aes192_ecb.pem              |   23 +
 .../dsa/openssl_dsa_aes192_ofb.pem              |   23 +
 .../dsa/openssl_dsa_aes256_cbc.pem              |   23 +
 .../dsa/openssl_dsa_aes256_cfb.pem              |   23 +
 .../dsa/openssl_dsa_aes256_ecb.pem              |   23 +
 .../dsa/openssl_dsa_aes256_ofb.pem              |   23 +
 .../dsa/openssl_dsa_blowfish_cbc.pem            |   23 +
 .../dsa/openssl_dsa_blowfish_cfb.pem            |   23 +
 .../dsa/openssl_dsa_blowfish_ecb.pem            |   23 +
 .../dsa/openssl_dsa_blowfish_ofb.pem            |   23 +
 .../dsa/openssl_dsa_des1_cbc.pem                |   23 +
 .../dsa/openssl_dsa_des1_cfb.pem                |   23 +
 .../dsa/openssl_dsa_des1_ecb.pem                |   23 +
 .../dsa/openssl_dsa_des1_ofb.pem                |   23 +
 .../dsa/openssl_dsa_des2_cbc.pem                |   23 +
 .../dsa/openssl_dsa_des2_cfb.pem                |   23 +
 .../dsa/openssl_dsa_des2_ecb.pem                |   23 +
 .../dsa/openssl_dsa_des2_ofb.pem                |   23 +
 .../dsa/openssl_dsa_des3_cbc.pem                |   23 +
 .../dsa/openssl_dsa_des3_cfb.pem                |   23 +
 .../dsa/openssl_dsa_des3_ecb.pem                |   23 +
 .../dsa/openssl_dsa_des3_ofb.pem                |   23 +
 .../dsa/openssl_dsa_rc2_128_cbc.pem             |   23 +
 .../dsa/openssl_dsa_rc2_128_cfb.pem             |   23 +
 .../dsa/openssl_dsa_rc2_128_ecb.pem             |   23 +
 .../dsa/openssl_dsa_rc2_128_ofb.pem             |   23 +
 .../dsa/openssl_dsa_rc2_40_cbc.pem              |   23 +
 .../dsa/openssl_dsa_rc2_64_cbc.pem              |   23 +
 .../dsa/openssl_dsa_unencrypted.der             |  Bin 0 -> 834 bytes
 .../dsa/openssl_dsa_unencrypted.pem             |   20 +
 .../dsa/pkcs8_dsa_unencrypted.der               |  Bin 0 -> 593 bytes
 .../dsa/pkcs8_dsa_unencrypted.pem               |   15 +
 .../dsa/pkcs8v1_dsa_md2_des1_cbc.der            |  Bin 0 -> 637 bytes
 .../dsa/pkcs8v1_dsa_md2_des1_cbc.pem            |   16 +
 .../dsa/pkcs8v1_dsa_md2_rc2_64_cbc.der          |  Bin 0 -> 637 bytes
 .../dsa/pkcs8v1_dsa_md2_rc2_64_cbc.pem          |   16 +
 .../dsa/pkcs8v1_dsa_md5_des1_cbc.der            |  Bin 0 -> 637 bytes
 .../dsa/pkcs8v1_dsa_md5_des1_cbc.pem            |   16 +
 .../dsa/pkcs8v1_dsa_md5_rc2_64_cbc.der          |  Bin 0 -> 637 bytes
 .../dsa/pkcs8v1_dsa_md5_rc2_64_cbc.pem          |   16 +
 .../dsa/pkcs8v1_dsa_sha1_des1_cbc.der           |  Bin 0 -> 637 bytes
 .../dsa/pkcs8v1_dsa_sha1_des1_cbc.pem           |   16 +
 .../dsa/pkcs8v1_dsa_sha1_des2_cbc.der           |  Bin 0 -> 638 bytes
 .../dsa/pkcs8v1_dsa_sha1_des2_cbc.pem           |   16 +
 .../dsa/pkcs8v1_dsa_sha1_des3_cbc.der           |  Bin 0 -> 638 bytes
 .../dsa/pkcs8v1_dsa_sha1_des3_cbc.pem           |   16 +
 .../dsa/pkcs8v1_dsa_sha1_rc2_128_cbc.der        |  Bin 0 -> 638 bytes
 .../dsa/pkcs8v1_dsa_sha1_rc2_128_cbc.pem        |   16 +
 .../dsa/pkcs8v1_dsa_sha1_rc2_40_cbc.der         |  Bin 0 -> 638 bytes
 .../dsa/pkcs8v1_dsa_sha1_rc2_40_cbc.pem         |   16 +
 .../dsa/pkcs8v1_dsa_sha1_rc2_64_cbc.der         |  Bin 0 -> 637 bytes
 .../dsa/pkcs8v1_dsa_sha1_rc2_64_cbc.pem         |   16 +
 .../dsa/pkcs8v1_dsa_sha1_rc4_128.der            |  Bin 0 -> 631 bytes
 .../dsa/pkcs8v1_dsa_sha1_rc4_128.pem            |   16 +
 .../dsa/pkcs8v1_dsa_sha1_rc4_40.der             |  Bin 0 -> 631 bytes
 .../dsa/pkcs8v1_dsa_sha1_rc4_40.pem             |   16 +
 .../dsa/pkcs8v2_dsa_aes128_cbc.der              |  Bin 0 -> 691 bytes
 .../dsa/pkcs8v2_dsa_aes128_cbc.pem              |   17 +
 .../dsa/pkcs8v2_dsa_aes128_cfb.der              |  Bin 0 -> 676 bytes
 .../dsa/pkcs8v2_dsa_aes128_cfb.pem              |   17 +
 .../dsa/pkcs8v2_dsa_aes128_ecb.der              |  Bin 0 -> 691 bytes
 .../dsa/pkcs8v2_dsa_aes128_ecb.pem              |   17 +
 .../dsa/pkcs8v2_dsa_aes128_ofb.der              |  Bin 0 -> 676 bytes
 .../dsa/pkcs8v2_dsa_aes128_ofb.pem              |   17 +
 .../dsa/pkcs8v2_dsa_aes192_cbc.der              |  Bin 0 -> 691 bytes
 .../dsa/pkcs8v2_dsa_aes192_cbc.pem              |   17 +
 .../dsa/pkcs8v2_dsa_aes192_cfb.der              |  Bin 0 -> 676 bytes
 .../dsa/pkcs8v2_dsa_aes192_cfb.pem              |   17 +
 .../dsa/pkcs8v2_dsa_aes192_ecb.der              |  Bin 0 -> 691 bytes
 .../dsa/pkcs8v2_dsa_aes192_ecb.pem              |   17 +
 .../dsa/pkcs8v2_dsa_aes192_ofb.der              |  Bin 0 -> 676 bytes
 .../dsa/pkcs8v2_dsa_aes192_ofb.pem              |   17 +
 .../dsa/pkcs8v2_dsa_aes256_cbc.der              |  Bin 0 -> 691 bytes
 .../dsa/pkcs8v2_dsa_aes256_cbc.pem              |   17 +
 .../dsa/pkcs8v2_dsa_aes256_cfb.der              |  Bin 0 -> 676 bytes
 .../dsa/pkcs8v2_dsa_aes256_cfb.pem              |   17 +
 .../dsa/pkcs8v2_dsa_aes256_ecb.der              |  Bin 0 -> 691 bytes
 .../dsa/pkcs8v2_dsa_aes256_ecb.pem              |   17 +
 .../dsa/pkcs8v2_dsa_aes256_ofb.der              |  Bin 0 -> 676 bytes
 .../dsa/pkcs8v2_dsa_aes256_ofb.pem              |   17 +
 .../dsa/pkcs8v2_dsa_blowfish_cbc.der            |  Bin 0 -> 675 bytes
 .../dsa/pkcs8v2_dsa_blowfish_cbc.pem            |   17 +
 .../dsa/pkcs8v2_dsa_des1_cbc.der                |  Bin 0 -> 671 bytes
 .../dsa/pkcs8v2_dsa_des1_cbc.pem                |   16 +
 .../dsa/pkcs8v2_dsa_des1_cfb.der                |  Bin 0 -> 664 bytes
 .../dsa/pkcs8v2_dsa_des1_cfb.pem                |   16 +
 .../dsa/pkcs8v2_dsa_des1_ecb.der                |  Bin 0 -> 671 bytes
 .../dsa/pkcs8v2_dsa_des1_ecb.pem                |   16 +
 .../dsa/pkcs8v2_dsa_des1_ofb.der                |  Bin 0 -> 664 bytes
 .../dsa/pkcs8v2_dsa_des1_ofb.pem                |   16 +
 .../dsa/pkcs8v2_dsa_des2_ecb_SEEMS_WRONG.der    |  Bin 0 -> 671 bytes
 .../dsa/pkcs8v2_dsa_des2_ecb_SEEMS_WRONG.pem    |   16 +
 .../dsa/pkcs8v2_dsa_des3_cbc.der                |  Bin 0 -> 674 bytes
 .../dsa/pkcs8v2_dsa_des3_cbc.pem                |   17 +
 .../dsa/pkcs8v2_dsa_rc2_128_cbc.der             |  Bin 0 -> 682 bytes
 .../dsa/pkcs8v2_dsa_rc2_128_cbc.pem             |   17 +
 .../dsa/pkcs8v2_dsa_rc2_40_cbc.der              |  Bin 0 -> 683 bytes
 .../dsa/pkcs8v2_dsa_rc2_40_cbc.pem              |   17 +
 .../dsa/pkcs8v2_dsa_rc2_64_cbc.der              |  Bin 0 -> 682 bytes
 .../dsa/pkcs8v2_dsa_rc2_64_cbc.pem              |   17 +
 .../not-so-commons-ssl/dsa_result.html          |   38 +
 .../not-so-commons-ssl/keystores/BC.BKS.ks      |  Bin 0 -> 2204 bytes
 .../keystores/BC.PKCS12-3DES-3DES.ks            |  Bin 0 -> 2588 bytes
 .../keystores/BC.PKCS12-DEF-3DES-3DES.ks        |  Bin 0 -> 2596 bytes
 .../keystores/BC.PKCS12-DEF.ks                  |  Bin 0 -> 2580 bytes
 .../not-so-commons-ssl/keystores/BC.PKCS12.ks   |  Bin 0 -> 2658 bytes
 .../not-so-commons-ssl/keystores/BC.UBER.ks     |  Bin 0 -> 2208 bytes
 .../not-so-commons-ssl/keystores/README.txt     |    8 +
 .../keystores/Sun.2pass.jks.ks                  |  Bin 0 -> 2214 bytes
 .../not-so-commons-ssl/keystores/Sun.jks.ks     |  Bin 0 -> 2200 bytes
 .../keystores/SunJCE.jceks.ks                   |  Bin 0 -> 2182 bytes
 .../keystores/chain-rsa_dsa_rsa.ks              |  Bin 0 -> 5058 bytes
 .../keystores/chain-rsa_dsa_rsa.pem             |  289 +++++
 .../keystores/chain-rsa_dsa_rsa.pkcs12.der      |  Bin 0 -> 5373 bytes
 .../keystores/chain-rsa_dsa_rsa.pkcs12.pem      |  112 ++
 .../keystores/chain-rsa_rsa_rsa.ks              |  Bin 0 -> 4740 bytes
 .../keystores/chain-rsa_rsa_rsa.pem             |  254 +++++
 .../keystores/chain-rsa_rsa_rsa.pkcs12.der      |  Bin 0 -> 5061 bytes
 .../keystores/chain-rsa_rsa_rsa.pkcs12.pem      |  105 ++
 .../not-so-commons-ssl/keystores/generate.sh    |   63 ++
 .../not-so-commons-ssl/keystores/rsa.key        |   30 +
 .../test/resources/not-so-commons-ssl/pbe.tests |   45 +
 .../resources/not-so-commons-ssl/pbe/README.txt |   36 +
 .../pbe/java/aes-128-cbc.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes-128-cbc.raw |    1 +
 .../pbe/java/aes-128-cfb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes-128-cfb.raw |    1 +
 .../pbe/java/aes-128-cfb8.base64                |    1 +
 .../pbe/java/aes-128-cfb8.raw                   |    1 +
 .../pbe/java/aes-128-ecb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes-128-ecb.raw |    1 +
 .../pbe/java/aes-128-ofb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes-128-ofb.raw |    1 +
 .../not-so-commons-ssl/pbe/java/aes-128.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/aes-128.raw     |    1 +
 .../pbe/java/aes-192-cbc.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes-192-cbc.raw |    1 +
 .../pbe/java/aes-192-cfb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes-192-cfb.raw |    1 +
 .../pbe/java/aes-192-cfb8.base64                |    1 +
 .../pbe/java/aes-192-cfb8.raw                   |    1 +
 .../pbe/java/aes-192-ecb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes-192-ecb.raw |    2 +
 .../pbe/java/aes-192-ofb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes-192-ofb.raw |    1 +
 .../not-so-commons-ssl/pbe/java/aes-192.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/aes-192.raw     |    1 +
 .../pbe/java/aes-256-cbc.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes-256-cbc.raw |    1 +
 .../pbe/java/aes-256-cfb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes-256-cfb.raw |    1 +
 .../pbe/java/aes-256-cfb8.base64                |    1 +
 .../pbe/java/aes-256-cfb8.raw                   |    1 +
 .../pbe/java/aes-256-ecb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes-256-ecb.raw |    1 +
 .../pbe/java/aes-256-ofb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes-256-ofb.raw |    1 +
 .../not-so-commons-ssl/pbe/java/aes-256.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/aes-256.raw     |    1 +
 .../pbe/java/aes128-cbc.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/aes128-cbc.raw  |    1 +
 .../pbe/java/aes128-cfb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/aes128-cfb.raw  |    1 +
 .../pbe/java/aes128-cfb8.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes128-cfb8.raw |    1 +
 .../pbe/java/aes128-ecb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/aes128-ecb.raw  |    1 +
 .../pbe/java/aes128-ofb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/aes128-ofb.raw  |    1 +
 .../not-so-commons-ssl/pbe/java/aes128.base64   |    1 +
 .../not-so-commons-ssl/pbe/java/aes128.raw      |    1 +
 .../pbe/java/aes192-cbc.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/aes192-cbc.raw  |  Bin 0 -> 32 bytes
 .../pbe/java/aes192-cfb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/aes192-cfb.raw  |    2 +
 .../pbe/java/aes192-cfb8.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes192-cfb8.raw |    1 +
 .../pbe/java/aes192-ecb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/aes192-ecb.raw  |    1 +
 .../pbe/java/aes192-ofb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/aes192-ofb.raw  |    1 +
 .../not-so-commons-ssl/pbe/java/aes192.base64   |    1 +
 .../not-so-commons-ssl/pbe/java/aes192.raw      |    1 +
 .../pbe/java/aes256-cbc.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/aes256-cbc.raw  |    1 +
 .../pbe/java/aes256-cfb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/aes256-cfb.raw  |    2 +
 .../pbe/java/aes256-cfb8.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/aes256-cfb8.raw |    1 +
 .../pbe/java/aes256-ecb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/aes256-ecb.raw  |    1 +
 .../pbe/java/aes256-ofb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/aes256-ofb.raw  |    1 +
 .../not-so-commons-ssl/pbe/java/aes256.base64   |    1 +
 .../not-so-commons-ssl/pbe/java/aes256.raw      |    1 +
 .../not-so-commons-ssl/pbe/java/bf-cbc.base64   |    1 +
 .../not-so-commons-ssl/pbe/java/bf-cbc.raw      |    1 +
 .../not-so-commons-ssl/pbe/java/bf-cfb.base64   |    1 +
 .../not-so-commons-ssl/pbe/java/bf-cfb.raw      |    1 +
 .../not-so-commons-ssl/pbe/java/bf-cfb8.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/bf-cfb8.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/bf-ecb.base64   |    1 +
 .../not-so-commons-ssl/pbe/java/bf-ecb.raw      |    1 +
 .../not-so-commons-ssl/pbe/java/bf-ofb.base64   |    1 +
 .../not-so-commons-ssl/pbe/java/bf-ofb.raw      |    1 +
 .../not-so-commons-ssl/pbe/java/bf.base64       |    1 +
 .../not-so-commons-ssl/pbe/java/bf.raw          |    1 +
 .../pbe/java/blowfish-cbc.base64                |    1 +
 .../pbe/java/blowfish-cbc.raw                   |    1 +
 .../pbe/java/blowfish-cfb.base64                |    1 +
 .../pbe/java/blowfish-cfb.raw                   |    1 +
 .../pbe/java/blowfish-cfb8.base64               |    1 +
 .../pbe/java/blowfish-cfb8.raw                  |    1 +
 .../pbe/java/blowfish-ecb.base64                |    1 +
 .../pbe/java/blowfish-ecb.raw                   |    1 +
 .../pbe/java/blowfish-ofb.base64                |    1 +
 .../pbe/java/blowfish-ofb.raw.failed            |    2 +
 .../not-so-commons-ssl/pbe/java/blowfish.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/blowfish.raw    |    1 +
 .../pbe/java/camellia-128-cbc.base64            |    1 +
 .../pbe/java/camellia-128-cbc.raw               |    1 +
 .../pbe/java/camellia-128-cfb.base64            |    1 +
 .../pbe/java/camellia-128-cfb.raw               |  Bin 0 -> 28 bytes
 .../pbe/java/camellia-128-cfb8.base64           |    1 +
 .../pbe/java/camellia-128-cfb8.raw              |    1 +
 .../pbe/java/camellia-128-ecb.base64            |    1 +
 .../pbe/java/camellia-128-ecb.raw               |    1 +
 .../pbe/java/camellia-128-ofb.base64            |    1 +
 .../pbe/java/camellia-128-ofb.raw               |    1 +
 .../pbe/java/camellia-128.base64                |    1 +
 .../pbe/java/camellia-128.raw                   |    1 +
 .../pbe/java/camellia-192-cbc.base64            |    1 +
 .../pbe/java/camellia-192-cbc.raw               |    1 +
 .../pbe/java/camellia-192-cfb.base64            |    1 +
 .../pbe/java/camellia-192-cfb.raw               |    2 +
 .../pbe/java/camellia-192-cfb8.base64           |    1 +
 .../pbe/java/camellia-192-cfb8.raw              |    1 +
 .../pbe/java/camellia-192-ecb.base64            |    1 +
 .../pbe/java/camellia-192-ecb.raw               |    1 +
 .../pbe/java/camellia-192-ofb.base64            |    1 +
 .../pbe/java/camellia-192-ofb.raw               |    1 +
 .../pbe/java/camellia-192.base64                |    1 +
 .../pbe/java/camellia-192.raw                   |    1 +
 .../pbe/java/camellia-256-cbc.base64            |    1 +
 .../pbe/java/camellia-256-cbc.raw               |    1 +
 .../pbe/java/camellia-256-cfb.base64            |    1 +
 .../pbe/java/camellia-256-cfb.raw               |    1 +
 .../pbe/java/camellia-256-cfb8.base64           |    1 +
 .../pbe/java/camellia-256-cfb8.raw              |    1 +
 .../pbe/java/camellia-256-ecb.base64            |    1 +
 .../pbe/java/camellia-256-ecb.raw               |    1 +
 .../pbe/java/camellia-256-ofb.base64            |    1 +
 .../pbe/java/camellia-256-ofb.raw               |    1 +
 .../pbe/java/camellia-256.base64                |    1 +
 .../pbe/java/camellia-256.raw                   |    1 +
 .../pbe/java/camellia128-cbc.base64             |    1 +
 .../pbe/java/camellia128-cbc.raw                |    1 +
 .../pbe/java/camellia128-cfb.base64             |    1 +
 .../pbe/java/camellia128-cfb.raw                |    1 +
 .../pbe/java/camellia128-cfb8.base64            |    1 +
 .../pbe/java/camellia128-cfb8.raw               |    1 +
 .../pbe/java/camellia128-ecb.base64             |    1 +
 .../pbe/java/camellia128-ecb.raw                |    1 +
 .../pbe/java/camellia128-ofb.base64             |    1 +
 .../pbe/java/camellia128-ofb.raw                |    1 +
 .../pbe/java/camellia128.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/camellia128.raw |    1 +
 .../pbe/java/camellia192-cbc.base64             |    1 +
 .../pbe/java/camellia192-cbc.raw                |    1 +
 .../pbe/java/camellia192-cfb.base64             |    1 +
 .../pbe/java/camellia192-cfb.raw                |    1 +
 .../pbe/java/camellia192-cfb8.base64            |    1 +
 .../pbe/java/camellia192-cfb8.raw               |    1 +
 .../pbe/java/camellia192-ecb.base64             |    1 +
 .../pbe/java/camellia192-ecb.raw                |    1 +
 .../pbe/java/camellia192-ofb.base64             |    1 +
 .../pbe/java/camellia192-ofb.raw                |    1 +
 .../pbe/java/camellia192.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/camellia192.raw |    1 +
 .../pbe/java/camellia256-cbc.base64             |    1 +
 .../pbe/java/camellia256-cbc.raw                |    1 +
 .../pbe/java/camellia256-cfb.base64             |    1 +
 .../pbe/java/camellia256-cfb.raw                |    1 +
 .../pbe/java/camellia256-cfb8.base64            |    1 +
 .../pbe/java/camellia256-cfb8.raw               |    1 +
 .../pbe/java/camellia256-ecb.base64             |    1 +
 .../pbe/java/camellia256-ecb.raw                |    1 +
 .../pbe/java/camellia256-ofb.base64             |    1 +
 .../pbe/java/camellia256-ofb.raw                |    1 +
 .../pbe/java/camellia256.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/camellia256.raw |    1 +
 .../pbe/java/cast5-cbc.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/cast5-cbc.raw   |    1 +
 .../pbe/java/cast5-cfb.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/cast5-cfb.raw   |    1 +
 .../pbe/java/cast5-cfb8.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/cast5-cfb8.raw  |    1 +
 .../pbe/java/cast5-ecb.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/cast5-ecb.raw   |    1 +
 .../pbe/java/cast5-ofb.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/cast5-ofb.raw   |    1 +
 .../not-so-commons-ssl/pbe/java/cast5.base64    |    1 +
 .../not-so-commons-ssl/pbe/java/cast5.raw       |    2 +
 .../pbe/java/cast6-cbc.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/cast6-cbc.raw   |    1 +
 .../pbe/java/cast6-cfb.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/cast6-cfb.raw   |    1 +
 .../pbe/java/cast6-cfb8.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/cast6-cfb8.raw  |    1 +
 .../pbe/java/cast6-ecb.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/cast6-ecb.raw   |    1 +
 .../pbe/java/cast6-ofb.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/cast6-ofb.raw   |    1 +
 .../not-so-commons-ssl/pbe/java/cast6.base64    |    1 +
 .../not-so-commons-ssl/pbe/java/cast6.raw       |    1 +
 .../not-so-commons-ssl/pbe/java/des-cbc.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/des-cbc.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/des-cfb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/des-cfb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/des-cfb8.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/des-cfb8.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/des-ecb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/des-ecb.raw     |    1 +
 .../pbe/java/des-ede-cbc.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/des-ede-cbc.raw |    1 +
 .../pbe/java/des-ede-cfb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/des-ede-cfb.raw |  Bin 0 -> 28 bytes
 .../pbe/java/des-ede-cfb8.base64                |    1 +
 .../pbe/java/des-ede-cfb8.raw                   |    1 +
 .../pbe/java/des-ede-ecb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/des-ede-ecb.raw |    1 +
 .../pbe/java/des-ede-ofb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/des-ede-ofb.raw |    1 +
 .../not-so-commons-ssl/pbe/java/des-ede.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/des-ede.raw     |  Bin 0 -> 32 bytes
 .../pbe/java/des-ede3-cbc.base64                |    1 +
 .../pbe/java/des-ede3-cbc.raw                   |    1 +
 .../pbe/java/des-ede3-cfb.base64                |    1 +
 .../pbe/java/des-ede3-cfb.raw                   |    1 +
 .../pbe/java/des-ede3-cfb8.base64               |    1 +
 .../pbe/java/des-ede3-cfb8.raw                  |    1 +
 .../pbe/java/des-ede3-ecb.base64                |    1 +
 .../pbe/java/des-ede3-ecb.raw                   |    1 +
 .../pbe/java/des-ede3-ofb.base64                |    1 +
 .../pbe/java/des-ede3-ofb.raw                   |    1 +
 .../not-so-commons-ssl/pbe/java/des-ede3.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/des-ede3.raw    |  Bin 0 -> 32 bytes
 .../not-so-commons-ssl/pbe/java/des-ofb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/des-ofb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/des.base64      |    1 +
 .../not-so-commons-ssl/pbe/java/des.raw         |    1 +
 .../not-so-commons-ssl/pbe/java/des2-cbc.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/des2-cbc.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/des2-cfb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/des2-cfb.raw    |    1 +
 .../pbe/java/des2-cfb8.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/des2-cfb8.raw   |    1 +
 .../not-so-commons-ssl/pbe/java/des2-ecb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/des2-ecb.raw    |  Bin 0 -> 32 bytes
 .../not-so-commons-ssl/pbe/java/des2-ofb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/des2-ofb.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/des2.base64     |    1 +
 .../not-so-commons-ssl/pbe/java/des2.raw        |    1 +
 .../not-so-commons-ssl/pbe/java/des3-cbc.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/des3-cbc.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/des3-cfb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/des3-cfb.raw    |    1 +
 .../pbe/java/des3-cfb8.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/des3-cfb8.raw   |    1 +
 .../not-so-commons-ssl/pbe/java/des3-ecb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/des3-ecb.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/des3-ofb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/des3-ofb.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/des3.base64     |    1 +
 .../not-so-commons-ssl/pbe/java/des3.raw        |    1 +
 .../not-so-commons-ssl/pbe/java/gost-cbc.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/gost-cbc.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/gost-cfb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/gost-cfb.raw    |    1 +
 .../pbe/java/gost-cfb8.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/gost-cfb8.raw   |    1 +
 .../not-so-commons-ssl/pbe/java/gost-ecb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/gost-ecb.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/gost-ofb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/gost-ofb.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/gost.base64     |    1 +
 .../not-so-commons-ssl/pbe/java/gost.raw        |    2 +
 .../pbe/java/gost28147-cbc.base64               |    1 +
 .../pbe/java/gost28147-cbc.raw                  |    1 +
 .../pbe/java/gost28147-cfb.base64               |    1 +
 .../pbe/java/gost28147-cfb.raw                  |    1 +
 .../pbe/java/gost28147-cfb8.base64              |    1 +
 .../pbe/java/gost28147-cfb8.raw                 |    1 +
 .../pbe/java/gost28147-ecb.base64               |    1 +
 .../pbe/java/gost28147-ecb.raw                  |    1 +
 .../pbe/java/gost28147-ofb.base64               |    1 +
 .../pbe/java/gost28147-ofb.raw                  |    1 +
 .../pbe/java/gost28147.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/gost28147.raw   |  Bin 0 -> 32 bytes
 .../not-so-commons-ssl/pbe/java/idea-cbc.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/idea-cbc.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/idea-cfb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/idea-cfb.raw    |    2 +
 .../pbe/java/idea-cfb8.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/idea-cfb8.raw   |    1 +
 .../not-so-commons-ssl/pbe/java/idea-ecb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/idea-ecb.raw    |    2 +
 .../not-so-commons-ssl/pbe/java/idea-ofb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/idea-ofb.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/idea.base64     |    1 +
 .../not-so-commons-ssl/pbe/java/idea.raw        |    1 +
 .../pbe/java/rc2-40-cbc.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-40-cbc.raw  |    1 +
 .../pbe/java/rc2-40-cfb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-40-cfb.raw  |    1 +
 .../pbe/java/rc2-40-cfb8.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-40-cfb8.raw |    1 +
 .../pbe/java/rc2-40-ecb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-40-ecb.raw  |    1 +
 .../pbe/java/rc2-40-ofb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-40-ofb.raw  |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-40.base64   |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-40.raw      |    1 +
 .../pbe/java/rc2-64-cbc.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-64-cbc.raw  |    1 +
 .../pbe/java/rc2-64-cfb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-64-cfb.raw  |    1 +
 .../pbe/java/rc2-64-cfb8.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-64-cfb8.raw |  Bin 0 -> 28 bytes
 .../pbe/java/rc2-64-ecb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-64-ecb.raw  |    1 +
 .../pbe/java/rc2-64-ofb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-64-ofb.raw  |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-64.base64   |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-64.raw      |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-cbc.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-cbc.raw     |  Bin 0 -> 32 bytes
 .../not-so-commons-ssl/pbe/java/rc2-cfb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-cfb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-cfb8.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-cfb8.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-ecb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-ecb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-ofb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc2-ofb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/rc2.base64      |    1 +
 .../not-so-commons-ssl/pbe/java/rc2.raw         |    1 +
 .../pbe/java/rc4-40-cbc.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-40-cbc.raw  |    1 +
 .../pbe/java/rc4-40-cfb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-40-cfb.raw  |    1 +
 .../pbe/java/rc4-40-cfb1.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-40-cfb1.raw |    1 +
 .../pbe/java/rc4-40-cfb8.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-40-cfb8.raw |    1 +
 .../pbe/java/rc4-40-ecb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-40-ecb.raw  |    1 +
 .../pbe/java/rc4-40-ofb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-40-ofb.raw  |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-40.base64   |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-40.raw      |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-cbc.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-cbc.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-cfb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-cfb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-cfb1.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-cfb1.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-cfb8.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-cfb8.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-ecb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-ecb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-ofb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc4-ofb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/rc4.base64      |    1 +
 .../not-so-commons-ssl/pbe/java/rc4.raw         |  Bin 0 -> 28 bytes
 .../not-so-commons-ssl/pbe/java/rc5-cbc.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc5-cbc.raw     |  Bin 0 -> 32 bytes
 .../not-so-commons-ssl/pbe/java/rc5-cfb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc5-cfb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/rc5-cfb8.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/rc5-cfb8.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/rc5-ecb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc5-ecb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/rc5-ofb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc5-ofb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/rc5.base64      |    1 +
 .../not-so-commons-ssl/pbe/java/rc5.raw         |    2 +
 .../not-so-commons-ssl/pbe/java/rc6-cbc.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc6-cbc.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/rc6-cfb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc6-cfb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/rc6-cfb8.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/rc6-cfb8.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/rc6-ecb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc6-ecb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/rc6-ofb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/rc6-ofb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/rc6.base64      |    1 +
 .../not-so-commons-ssl/pbe/java/rc6.raw         |    1 +
 .../pbe/java/rijndael-cbc.base64                |    1 +
 .../pbe/java/rijndael-cbc.raw                   |    1 +
 .../pbe/java/rijndael-cfb.base64                |    1 +
 .../pbe/java/rijndael-cfb.raw                   |    1 +
 .../pbe/java/rijndael-cfb8.base64               |    1 +
 .../pbe/java/rijndael-cfb8.raw                  |    1 +
 .../pbe/java/rijndael-ecb.base64                |    1 +
 .../pbe/java/rijndael-ecb.raw                   |    1 +
 .../pbe/java/rijndael-ofb.base64                |    1 +
 .../pbe/java/rijndael-ofb.raw                   |  Bin 0 -> 28 bytes
 .../not-so-commons-ssl/pbe/java/rijndael.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/rijndael.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/seed-cbc.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/seed-cbc.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/seed-cfb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/seed-cfb.raw    |    1 +
 .../pbe/java/seed-cfb8.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/seed-cfb8.raw   |    1 +
 .../not-so-commons-ssl/pbe/java/seed-ecb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/seed-ecb.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/seed-ofb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/seed-ofb.raw    |  Bin 0 -> 28 bytes
 .../not-so-commons-ssl/pbe/java/seed.base64     |    1 +
 .../not-so-commons-ssl/pbe/java/seed.raw        |    1 +
 .../pbe/java/serpent-cbc.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/serpent-cbc.raw |    1 +
 .../pbe/java/serpent-cfb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/serpent-cfb.raw |  Bin 0 -> 28 bytes
 .../pbe/java/serpent-cfb8.base64                |    1 +
 .../pbe/java/serpent-cfb8.raw                   |    1 +
 .../pbe/java/serpent-ecb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/serpent-ecb.raw |    1 +
 .../pbe/java/serpent-ofb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/serpent-ofb.raw |    1 +
 .../not-so-commons-ssl/pbe/java/serpent.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/serpent.raw     |    2 +
 .../pbe/java/skipjack-cbc.base64                |    1 +
 .../pbe/java/skipjack-cbc.raw                   |    1 +
 .../pbe/java/skipjack-cfb.base64                |    1 +
 .../pbe/java/skipjack-cfb.raw                   |    1 +
 .../pbe/java/skipjack-cfb8.base64               |    1 +
 .../pbe/java/skipjack-cfb8.raw                  |    1 +
 .../pbe/java/skipjack-ecb.base64                |    1 +
 .../pbe/java/skipjack-ecb.raw                   |    1 +
 .../pbe/java/skipjack-ofb.base64                |    1 +
 .../pbe/java/skipjack-ofb.raw                   |    1 +
 .../not-so-commons-ssl/pbe/java/skipjack.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/skipjack.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/tea-cbc.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/tea-cbc.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/tea-cfb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/tea-cfb.raw     |  Bin 0 -> 28 bytes
 .../not-so-commons-ssl/pbe/java/tea-cfb8.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/tea-cfb8.raw    |  Bin 0 -> 28 bytes
 .../not-so-commons-ssl/pbe/java/tea-ecb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/tea-ecb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/tea-ofb.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/tea-ofb.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/tea.base64      |    1 +
 .../not-so-commons-ssl/pbe/java/tea.raw         |    1 +
 .../pbe/java/twofish-cbc.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/twofish-cbc.raw |    2 +
 .../pbe/java/twofish-cfb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/twofish-cfb.raw |    1 +
 .../pbe/java/twofish-cfb8.base64                |    1 +
 .../pbe/java/twofish-cfb8.raw                   |  Bin 0 -> 28 bytes
 .../pbe/java/twofish-ecb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/twofish-ecb.raw |    1 +
 .../pbe/java/twofish-ofb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/java/twofish-ofb.raw |    1 +
 .../not-so-commons-ssl/pbe/java/twofish.base64  |    1 +
 .../not-so-commons-ssl/pbe/java/twofish.raw     |    1 +
 .../not-so-commons-ssl/pbe/java/xtea-cbc.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/xtea-cbc.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/xtea-cfb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/xtea-cfb.raw    |    1 +
 .../pbe/java/xtea-cfb8.base64                   |    1 +
 .../not-so-commons-ssl/pbe/java/xtea-cfb8.raw   |  Bin 0 -> 28 bytes
 .../not-so-commons-ssl/pbe/java/xtea-ecb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/xtea-ecb.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/xtea-ofb.base64 |    1 +
 .../not-so-commons-ssl/pbe/java/xtea-ofb.raw    |    1 +
 .../not-so-commons-ssl/pbe/java/xtea.base64     |    1 +
 .../not-so-commons-ssl/pbe/java/xtea.raw        |    1 +
 .../not-so-commons-ssl/pbe/openssl/README.txt   |    5 +
 .../pbe/openssl/aes-128-cbc.base64              |    1 +
 .../pbe/openssl/aes-128-cbc.raw                 |  Bin 0 -> 32 bytes
 .../pbe/openssl/aes-128-cfb.base64              |    1 +
 .../pbe/openssl/aes-128-cfb.raw                 |    1 +
 .../pbe/openssl/aes-128-cfb1.base64             |    1 +
 .../pbe/openssl/aes-128-cfb1.raw                |  Bin 0 -> 28 bytes
 .../pbe/openssl/aes-128-cfb8.base64             |    1 +
 .../pbe/openssl/aes-128-cfb8.raw                |    2 +
 .../pbe/openssl/aes-128-ecb.base64              |    1 +
 .../pbe/openssl/aes-128-ecb.raw                 |    1 +
 .../pbe/openssl/aes-128-ofb.base64              |    1 +
 .../pbe/openssl/aes-128-ofb.raw                 |    1 +
 .../pbe/openssl/aes-192-cbc.base64              |    1 +
 .../pbe/openssl/aes-192-cbc.raw                 |    1 +
 .../pbe/openssl/aes-192-cfb.base64              |    1 +
 .../pbe/openssl/aes-192-cfb.raw                 |    1 +
 .../pbe/openssl/aes-192-cfb1.base64             |    1 +
 .../pbe/openssl/aes-192-cfb1.raw                |  Bin 0 -> 28 bytes
 .../pbe/openssl/aes-192-cfb8.base64             |    1 +
 .../pbe/openssl/aes-192-cfb8.raw                |    1 +
 .../pbe/openssl/aes-192-ecb.base64              |    1 +
 .../pbe/openssl/aes-192-ecb.raw                 |    1 +
 .../pbe/openssl/aes-192-ofb.base64              |    1 +
 .../pbe/openssl/aes-192-ofb.raw                 |    1 +
 .../pbe/openssl/aes-256-cbc.base64              |    1 +
 .../pbe/openssl/aes-256-cbc.raw                 |    1 +
 .../pbe/openssl/aes-256-cfb.base64              |    1 +
 .../pbe/openssl/aes-256-cfb.raw                 |    1 +
 .../pbe/openssl/aes-256-cfb1.base64             |    1 +
 .../pbe/openssl/aes-256-cfb1.raw                |  Bin 0 -> 28 bytes
 .../pbe/openssl/aes-256-cfb8.base64             |    1 +
 .../pbe/openssl/aes-256-cfb8.raw                |    1 +
 .../pbe/openssl/aes-256-ecb.base64              |    1 +
 .../pbe/openssl/aes-256-ecb.raw                 |  Bin 0 -> 32 bytes
 .../pbe/openssl/aes-256-ofb.base64              |    1 +
 .../pbe/openssl/aes-256-ofb.raw                 |    1 +
 .../pbe/openssl/aes128.base64                   |    1 +
 .../not-so-commons-ssl/pbe/openssl/aes128.raw   |  Bin 0 -> 32 bytes
 .../pbe/openssl/aes192.base64                   |    1 +
 .../not-so-commons-ssl/pbe/openssl/aes192.raw   |    3 +
 .../pbe/openssl/aes256.base64                   |    1 +
 .../not-so-commons-ssl/pbe/openssl/aes256.raw   |  Bin 0 -> 32 bytes
 .../pbe/openssl/bf-cbc.base64                   |    1 +
 .../not-so-commons-ssl/pbe/openssl/bf-cbc.raw   |    1 +
 .../pbe/openssl/bf-cfb.base64                   |    1 +
 .../not-so-commons-ssl/pbe/openssl/bf-cfb.raw   |  Bin 0 -> 28 bytes
 .../pbe/openssl/bf-ecb.base64                   |    1 +
 .../not-so-commons-ssl/pbe/openssl/bf-ecb.raw   |    1 +
 .../pbe/openssl/bf-ofb.base64                   |    1 +
 .../not-so-commons-ssl/pbe/openssl/bf-ofb.raw   |    1 +
 .../not-so-commons-ssl/pbe/openssl/bf.base64    |    1 +
 .../not-so-commons-ssl/pbe/openssl/bf.raw       |    1 +
 .../pbe/openssl/blowfish.base64                 |    1 +
 .../not-so-commons-ssl/pbe/openssl/blowfish.raw |    1 +
 .../pbe/openssl/camellia-128-cbc.base64         |    1 +
 .../pbe/openssl/camellia-128-cbc.raw            |    1 +
 .../pbe/openssl/camellia-128-cfb.base64         |    1 +
 .../pbe/openssl/camellia-128-cfb.raw            |    1 +
 .../pbe/openssl/camellia-128-cfb1.base64        |    1 +
 .../pbe/openssl/camellia-128-cfb1.raw           |  Bin 0 -> 28 bytes
 .../pbe/openssl/camellia-128-cfb8.base64        |    1 +
 .../pbe/openssl/camellia-128-cfb8.raw           |    1 +
 .../pbe/openssl/camellia-128-ecb.base64         |    1 +
 .../pbe/openssl/camellia-128-ecb.raw            |    1 +
 .../pbe/openssl/camellia-128-ofb.base64         |    1 +
 .../pbe/openssl/camellia-128-ofb.raw            |    1 +
 .../pbe/openssl/camellia-192-cbc.base64         |    1 +
 .../pbe/openssl/camellia-192-cbc.raw            |    1 +
 .../pbe/openssl/camellia-192-cfb.base64         |    1 +
 .../pbe/openssl/camellia-192-cfb.raw            |    1 +
 .../pbe/openssl/camellia-192-cfb1.base64        |    1 +
 .../pbe/openssl/camellia-192-cfb1.raw           |  Bin 0 -> 28 bytes
 .../pbe/openssl/camellia-192-cfb8.base64        |    1 +
 .../pbe/openssl/camellia-192-cfb8.raw           |    1 +
 .../pbe/openssl/camellia-192-ecb.base64         |    1 +
 .../pbe/openssl/camellia-192-ecb.raw            |    1 +
 .../pbe/openssl/camellia-192-ofb.base64         |    1 +
 .../pbe/openssl/camellia-192-ofb.raw            |  Bin 0 -> 28 bytes
 .../pbe/openssl/camellia-256-cbc.base64         |    1 +
 .../pbe/openssl/camellia-256-cbc.raw            |    1 +
 .../pbe/openssl/camellia-256-cfb.base64         |    1 +
 .../pbe/openssl/camellia-256-cfb.raw            |    2 +
 .../pbe/openssl/camellia-256-cfb1.base64        |    1 +
 .../pbe/openssl/camellia-256-cfb1.raw           |  Bin 0 -> 28 bytes
 .../pbe/openssl/camellia-256-cfb8.base64        |    1 +
 .../pbe/openssl/camellia-256-cfb8.raw           |    1 +
 .../pbe/openssl/camellia-256-ecb.base64         |    1 +
 .../pbe/openssl/camellia-256-ecb.raw            |    1 +
 .../pbe/openssl/camellia-256-ofb.base64         |    1 +
 .../pbe/openssl/camellia-256-ofb.raw            |    1 +
 .../pbe/openssl/camellia128.base64              |    1 +
 .../pbe/openssl/camellia128.raw                 |    1 +
 .../pbe/openssl/camellia192.base64              |    1 +
 .../pbe/openssl/camellia192.raw                 |    1 +
 .../pbe/openssl/camellia256.base64              |    1 +
 .../pbe/openssl/camellia256.raw                 |  Bin 0 -> 32 bytes
 .../pbe/openssl/cast-cbc.base64                 |    1 +
 .../not-so-commons-ssl/pbe/openssl/cast-cbc.raw |  Bin 0 -> 32 bytes
 .../not-so-commons-ssl/pbe/openssl/cast.base64  |    1 +
 .../not-so-commons-ssl/pbe/openssl/cast.raw     |    1 +
 .../pbe/openssl/cast5-cbc.base64                |    1 +
 .../pbe/openssl/cast5-cbc.raw                   |    2 +
 .../pbe/openssl/cast5-cfb.base64                |    1 +
 .../pbe/openssl/cast5-cfb.raw                   |    1 +
 .../pbe/openssl/cast5-ecb.base64                |    1 +
 .../pbe/openssl/cast5-ecb.raw                   |    1 +
 .../pbe/openssl/cast5-ofb.base64                |    1 +
 .../pbe/openssl/cast5-ofb.raw                   |    2 +
 .../pbe/openssl/des-cbc.base64                  |    1 +
 .../not-so-commons-ssl/pbe/openssl/des-cbc.raw  |    1 +
 .../pbe/openssl/des-cfb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/openssl/des-cfb.raw  |    1 +
 .../pbe/openssl/des-cfb1.base64                 |    1 +
 .../not-so-commons-ssl/pbe/openssl/des-cfb1.raw |  Bin 0 -> 28 bytes
 .../pbe/openssl/des-cfb8.base64                 |    1 +
 .../not-so-commons-ssl/pbe/openssl/des-cfb8.raw |    1 +
 .../pbe/openssl/des-ecb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/openssl/des-ecb.raw  |  Bin 0 -> 32 bytes
 .../pbe/openssl/des-ede-cbc.base64              |    1 +
 .../pbe/openssl/des-ede-cbc.raw                 |    1 +
 .../pbe/openssl/des-ede-cfb.base64              |    1 +
 .../pbe/openssl/des-ede-cfb.raw                 |    1 +
 .../pbe/openssl/des-ede-ofb.base64              |    1 +
 .../pbe/openssl/des-ede-ofb.raw                 |    1 +
 .../pbe/openssl/des-ede.base64                  |    1 +
 .../not-so-commons-ssl/pbe/openssl/des-ede.raw  |    1 +
 .../pbe/openssl/des-ede3-cbc.base64             |    1 +
 .../pbe/openssl/des-ede3-cbc.raw                |    2 +
 .../pbe/openssl/des-ede3-cfb.base64             |    1 +
 .../pbe/openssl/des-ede3-cfb.raw                |    1 +
 .../pbe/openssl/des-ede3-ofb.base64             |    1 +
 .../pbe/openssl/des-ede3-ofb.raw                |    1 +
 .../pbe/openssl/des-ede3.base64                 |    1 +
 .../not-so-commons-ssl/pbe/openssl/des-ede3.raw |    1 +
 .../pbe/openssl/des-ofb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/openssl/des-ofb.raw  |    1 +
 .../not-so-commons-ssl/pbe/openssl/des.base64   |    1 +
 .../not-so-commons-ssl/pbe/openssl/des.raw      |    1 +
 .../not-so-commons-ssl/pbe/openssl/des3.base64  |    1 +
 .../not-so-commons-ssl/pbe/openssl/des3.raw     |    1 +
 .../pbe/openssl/idea-cbc.base64                 |    1 +
 .../not-so-commons-ssl/pbe/openssl/idea-cbc.raw |    1 +
 .../pbe/openssl/idea-cfb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/openssl/idea-cfb.raw |    1 +
 .../pbe/openssl/idea-ecb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/openssl/idea-ecb.raw |    1 +
 .../pbe/openssl/idea-ofb.base64                 |    1 +
 .../not-so-commons-ssl/pbe/openssl/idea-ofb.raw |    1 +
 .../not-so-commons-ssl/pbe/openssl/idea.base64  |    1 +
 .../not-so-commons-ssl/pbe/openssl/idea.raw     |    1 +
 .../pbe/openssl/rc2-40-cbc.base64               |    1 +
 .../pbe/openssl/rc2-40-cbc.raw                  |    1 +
 .../pbe/openssl/rc2-64-cbc.base64               |    1 +
 .../pbe/openssl/rc2-64-cbc.raw                  |    1 +
 .../pbe/openssl/rc2-cbc.base64                  |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc2-cbc.raw  |    1 +
 .../pbe/openssl/rc2-cfb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc2-cfb.raw  |    1 +
 .../pbe/openssl/rc2-ecb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc2-ecb.raw  |    1 +
 .../pbe/openssl/rc2-ofb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc2-ofb.raw  |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc2.base64   |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc2.raw      |    1 +
 .../pbe/openssl/rc4-40.base64                   |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc4-40.raw   |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc4.base64   |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc4.raw      |    1 +
 .../pbe/openssl/rc5-cbc.base64                  |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc5-cbc.raw  |    1 +
 .../pbe/openssl/rc5-cfb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc5-cfb.raw  |    1 +
 .../pbe/openssl/rc5-ecb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc5-ecb.raw  |    1 +
 .../pbe/openssl/rc5-ofb.base64                  |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc5-ofb.raw  |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc5.base64   |    1 +
 .../not-so-commons-ssl/pbe/openssl/rc5.raw      |    1 +
 .../pkcs12/pkcs12_client_cert.p12               |  Bin 0 -> 4070 bytes
 .../pkcs12/pkcs12_client_cert.pem               |   94 ++
 .../test/resources/not-so-commons-ssl/rsa.html  |  115 ++
 .../rsa/openssl_rsa_aes128_cbc.pem              |   30 +
 .../rsa/openssl_rsa_aes128_cfb.pem              |   30 +
 .../rsa/openssl_rsa_aes128_ecb.pem              |   30 +
 .../rsa/openssl_rsa_aes128_ofb.pem              |   30 +
 .../rsa/openssl_rsa_aes192_cbc.pem              |   30 +
 .../rsa/openssl_rsa_aes192_cfb.pem              |   30 +
 .../rsa/openssl_rsa_aes192_ecb.pem              |   30 +
 .../rsa/openssl_rsa_aes192_ofb.pem              |   30 +
 .../rsa/openssl_rsa_aes256_cbc.pem              |   30 +
 .../rsa/openssl_rsa_aes256_cfb.pem              |   30 +
 .../rsa/openssl_rsa_aes256_ecb.pem              |   30 +
 .../rsa/openssl_rsa_aes256_ofb.pem              |   30 +
 .../rsa/openssl_rsa_blowfish_cbc.pem            |   30 +
 .../rsa/openssl_rsa_blowfish_cfb.pem            |   30 +
 .../rsa/openssl_rsa_blowfish_ecb.pem            |   30 +
 .../rsa/openssl_rsa_blowfish_ofb.pem            |   30 +
 .../rsa/openssl_rsa_des1_cbc.pem                |   30 +
 .../rsa/openssl_rsa_des1_cfb.pem                |   30 +
 .../rsa/openssl_rsa_des1_ecb.pem                |   30 +
 .../rsa/openssl_rsa_des1_ofb.pem                |   30 +
 .../rsa/openssl_rsa_des2_cbc.pem                |   30 +
 .../rsa/openssl_rsa_des2_cfb.pem                |   30 +
 .../rsa/openssl_rsa_des2_ecb.pem                |   30 +
 .../rsa/openssl_rsa_des2_ofb.pem                |   30 +
 .../rsa/openssl_rsa_des3_cbc.pem                |   30 +
 .../rsa/openssl_rsa_des3_cfb.pem                |   30 +
 .../rsa/openssl_rsa_des3_ecb.pem                |   30 +
 .../rsa/openssl_rsa_des3_ofb.pem                |   30 +
 .../rsa/openssl_rsa_rc2_128_cbc.pem             |   30 +
 .../rsa/openssl_rsa_rc2_128_cfb.pem             |   30 +
 .../rsa/openssl_rsa_rc2_128_ecb.pem             |   30 +
 .../rsa/openssl_rsa_rc2_128_ofb.pem             |   30 +
 .../rsa/openssl_rsa_rc2_40.pem                  |   30 +
 .../rsa/openssl_rsa_rc2_64.pem                  |   30 +
 .../rsa/openssl_rsa_unencrypted.der             |  Bin 0 -> 1192 bytes
 .../rsa/openssl_rsa_unencrypted.pem             |   27 +
 .../rsa/pkcs8_rsa_unencrypted.der               |  Bin 0 -> 1218 bytes
 .../rsa/pkcs8_rsa_unencrypted.pem               |   28 +
 .../rsa/pkcs8v1_rsa_md2_des1.der                |  Bin 0 -> 1261 bytes
 .../rsa/pkcs8v1_rsa_md2_des1.pem                |   29 +
 .../rsa/pkcs8v1_rsa_md2_rc2_64.der              |  Bin 0 -> 1261 bytes
 .../rsa/pkcs8v1_rsa_md2_rc2_64.pem              |   29 +
 .../rsa/pkcs8v1_rsa_md5_des1.der                |  Bin 0 -> 1261 bytes
 .../rsa/pkcs8v1_rsa_md5_des1.pem                |   29 +
 .../rsa/pkcs8v1_rsa_md5_rc2_64.der              |  Bin 0 -> 1261 bytes
 .../rsa/pkcs8v1_rsa_md5_rc2_64.pem              |   29 +
 .../rsa/pkcs8v1_rsa_sha1_des1.der               |  Bin 0 -> 1261 bytes
 .../rsa/pkcs8v1_rsa_sha1_des1.pem               |   29 +
 .../rsa/pkcs8v1_rsa_sha1_des2.der               |  Bin 0 -> 1262 bytes
 .../rsa/pkcs8v1_rsa_sha1_des2.pem               |   29 +
 .../rsa/pkcs8v1_rsa_sha1_des3.der               |  Bin 0 -> 1262 bytes
 .../rsa/pkcs8v1_rsa_sha1_des3.pem               |   29 +
 .../rsa/pkcs8v1_rsa_sha1_rc2_128.der            |  Bin 0 -> 1262 bytes
 .../rsa/pkcs8v1_rsa_sha1_rc2_128.pem            |   29 +
 .../rsa/pkcs8v1_rsa_sha1_rc2_40.der             |  Bin 0 -> 1262 bytes
 .../rsa/pkcs8v1_rsa_sha1_rc2_40.pem             |   29 +
 .../rsa/pkcs8v1_rsa_sha1_rc2_64.der             |  Bin 0 -> 1261 bytes
 .../rsa/pkcs8v1_rsa_sha1_rc2_64.pem             |   29 +
 .../rsa/pkcs8v1_rsa_sha1_rc4_128.der            |  Bin 0 -> 1256 bytes
 .../rsa/pkcs8v1_rsa_sha1_rc4_128.pem            |   29 +
 .../rsa/pkcs8v1_rsa_sha1_rc4_40.der             |  Bin 0 -> 1256 bytes
 .../rsa/pkcs8v1_rsa_sha1_rc4_40.pem             |   29 +
 .../rsa/pkcs8v2_rsa_aes128_cbc.der              |  Bin 0 -> 1315 bytes
 .../rsa/pkcs8v2_rsa_aes128_cbc.pem              |   30 +
 .../rsa/pkcs8v2_rsa_aes128_cfb.der              |  Bin 0 -> 1301 bytes
 .../rsa/pkcs8v2_rsa_aes128_cfb.pem              |   30 +
 .../rsa/pkcs8v2_rsa_aes128_ecb.der              |  Bin 0 -> 1315 bytes
 .../rsa/pkcs8v2_rsa_aes128_ecb.pem              |   30 +
 .../rsa/pkcs8v2_rsa_aes128_ofb.der              |  Bin 0 -> 1301 bytes
 .../rsa/pkcs8v2_rsa_aes128_ofb.pem              |   30 +
 .../rsa/pkcs8v2_rsa_aes192_cbc.der              |  Bin 0 -> 1315 bytes
 .../rsa/pkcs8v2_rsa_aes192_cbc.pem              |   30 +
 .../rsa/pkcs8v2_rsa_aes192_cfb.der              |  Bin 0 -> 1301 bytes
 .../rsa/pkcs8v2_rsa_aes192_cfb.pem              |   30 +
 .../rsa/pkcs8v2_rsa_aes192_ecb.der              |  Bin 0 -> 1315 bytes
 .../rsa/pkcs8v2_rsa_aes192_ecb.pem              |   30 +
 .../rsa/pkcs8v2_rsa_aes192_ofb.der              |  Bin 0 -> 1301 bytes
 .../rsa/pkcs8v2_rsa_aes192_ofb.pem              |   30 +
 .../rsa/pkcs8v2_rsa_aes256_cbc.der              |  Bin 0 -> 1315 bytes
 .../rsa/pkcs8v2_rsa_aes256_cbc.pem              |   30 +
 .../rsa/pkcs8v2_rsa_aes256_cfb.der              |  Bin 0 -> 1301 bytes
 .../rsa/pkcs8v2_rsa_aes256_cfb.pem              |   30 +
 .../rsa/pkcs8v2_rsa_aes256_ecb.der              |  Bin 0 -> 1315 bytes
 .../rsa/pkcs8v2_rsa_aes256_ecb.pem              |   30 +
 .../rsa/pkcs8v2_rsa_aes256_ofb.der              |  Bin 0 -> 1301 bytes
 .../rsa/pkcs8v2_rsa_aes256_ofb.pem              |   30 +
 .../rsa/pkcs8v2_rsa_blowfish_cbc.der            |  Bin 0 -> 1299 bytes
 .../rsa/pkcs8v2_rsa_blowfish_cbc.pem            |   30 +
 .../rsa/pkcs8v2_rsa_des1_cbc.der                |  Bin 0 -> 1295 bytes
 .../rsa/pkcs8v2_rsa_des1_cbc.pem                |   29 +
 .../rsa/pkcs8v2_rsa_des1_cfb.der                |  Bin 0 -> 1289 bytes
 .../rsa/pkcs8v2_rsa_des1_cfb.pem                |   29 +
 .../rsa/pkcs8v2_rsa_des1_ecb.der                |  Bin 0 -> 1295 bytes
 .../rsa/pkcs8v2_rsa_des1_ecb.pem                |   29 +
 .../rsa/pkcs8v2_rsa_des1_ofb.der                |  Bin 0 -> 1289 bytes
 .../rsa/pkcs8v2_rsa_des1_ofb.pem                |   29 +
 .../rsa/pkcs8v2_rsa_des2_ecb_SEEMS_WRONG.der    |  Bin 0 -> 1295 bytes
 .../rsa/pkcs8v2_rsa_des2_ecb_SEEMS_WRONG.pem    |   29 +
 .../not-so-commons-ssl/rsa/pkcs8v2_rsa_des3.der |  Bin 0 -> 1298 bytes
 .../not-so-commons-ssl/rsa/pkcs8v2_rsa_des3.pem |   30 +
 .../rsa/pkcs8v2_rsa_rc2_128.der                 |  Bin 0 -> 1306 bytes
 .../rsa/pkcs8v2_rsa_rc2_128.pem                 |   30 +
 .../rsa/pkcs8v2_rsa_rc2_40.der                  |  Bin 0 -> 1307 bytes
 .../rsa/pkcs8v2_rsa_rc2_40.pem                  |   30 +
 .../rsa/pkcs8v2_rsa_rc2_64.der                  |  Bin 0 -> 1306 bytes
 .../rsa/pkcs8v2_rsa_rc2_64.pem                  |   30 +
 .../not-so-commons-ssl/rsa_result.html          |   38 +
 .../not-so-commons-ssl/x509/certificate.der     |  Bin 0 -> 1092 bytes
 .../not-so-commons-ssl/x509/certificate.pem     |   85 ++
 .../x509/certificate_chain.pem                  |   79 ++
 .../x509/certificate_root_ca.der                |  Bin 0 -> 1156 bytes
 .../x509/certificate_root_ca.pem                |   87 ++
 .../resources/not-so-commons-ssl/x509/oscp.pem  |   22 +
 .../not-so-commons-ssl/x509/two-crls.pem        |   46 +
 .../not-so-commons-ssl/x509/x509_foo.pem        |   85 ++
 .../not-so-commons-ssl/x509/x509_foo_bar.pem    |   88 ++
 .../x509/x509_foo_bar_hanako.pem                |   88 ++
 .../not-so-commons-ssl/x509/x509_hanako.pem     |   85 ++
 .../not-so-commons-ssl/x509/x509_no_cns_foo.pem |   87 ++
 .../x509/x509_three_cns_foo_bar_hanako.pem      |   86 ++
 .../not-so-commons-ssl/x509/x509_wild_co_jp.pem |   85 ++
 .../not-so-commons-ssl/x509/x509_wild_foo.pem   |   85 ++
 .../x509/x509_wild_foo_bar_hanako.pem           |   88 ++
 kerby-pkix/src/test/resources/usercert.pem      |   26 +
 kerby-pkix/src/test/resources/userkey.pem       |   27 +
 .../kerby/kerberos/tool/kinit/KinitTool.java    |   17 +-
 .../apache/kerby/util/ByteArrayReadLine.java    |   38 +
 .../java/org/apache/kerby/util/HostPort.java    |   57 +
 .../org/apache/kerby/util/IPAddressParser.java  |  181 +++
 .../org/apache/kerby/util/PublicKeyDeriver.java |   82 ++
 .../java/org/apache/kerby/util/ReadLine.java    |   97 ++
 .../main/java/org/apache/kerby/util/Util.java   |  414 +++++++
 .../java/org/apache/kerby/util/TestBase64.java  |   90 ++
 .../apache/kerby/util/TestIPAddressParser.java  |   80 ++
 1159 files changed, 21128 insertions(+), 540 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/0a19b1d7/docs/kerby-checkstyle.xml
----------------------------------------------------------------------
diff --git a/docs/kerby-checkstyle.xml b/docs/kerby-checkstyle.xml
index 72388df..ff9f5de 100644
--- a/docs/kerby-checkstyle.xml
+++ b/docs/kerby-checkstyle.xml
@@ -66,7 +66,7 @@
 
         <!-- Checks for imports                              -->
         <!-- See http://checkstyle.sf.net/config_import.html -->
-        <!--module name="AvoidStarImport"/-->
+        <!-- module name="AvoidStarImport"/ -->
         <module name="IllegalImport"/> <!-- defaults to sun.* packages -->
         <module name="RedundantImport"/>
         <module name="UnusedImports"/>

http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/0a19b1d7/kerby-asn1/src/main/java/org/apache/kerby/asn1/Asn1.java
----------------------------------------------------------------------
diff --git a/kerby-asn1/src/main/java/org/apache/kerby/asn1/Asn1.java b/kerby-asn1/src/main/java/org/apache/kerby/asn1/Asn1.java
index 80bf9db..c0c6f7e 100644
--- a/kerby-asn1/src/main/java/org/apache/kerby/asn1/Asn1.java
+++ b/kerby-asn1/src/main/java/org/apache/kerby/asn1/Asn1.java
@@ -51,7 +51,7 @@ public final class Asn1 {
 
     public static Asn1Type decode(ByteBuffer content) throws IOException {
         Asn1ParseResult parseResult = Asn1Parser.parse(content);
-        return Asn1Converter.convert(parseResult);
+        return Asn1Converter.convert(parseResult, false);
     }
 
     public static Asn1ParseResult parse(byte[] content) throws IOException {
@@ -91,10 +91,10 @@ public final class Asn1 {
 
     public static void dump(byte[] content,
                             boolean useRawFormat) throws IOException {
-        String hexStr = HexUtil.bytesToHex(content);
+        //String hexStr = HexUtil.bytesToHex(content);
         Asn1Dumper dumper = new Asn1Dumper();
-        System.out.println("Dumping data:");
-        dumper.dumpData(hexStr);
+        //System.out.println("Dumping data:");
+        //dumper.dumpData(hexStr);
         dumper.dump(content, useRawFormat);
         String output = dumper.output();
         System.out.println(output);

http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/0a19b1d7/kerby-asn1/src/main/java/org/apache/kerby/asn1/Asn1Converter.java
----------------------------------------------------------------------
diff --git a/kerby-asn1/src/main/java/org/apache/kerby/asn1/Asn1Converter.java b/kerby-asn1/src/main/java/org/apache/kerby/asn1/Asn1Converter.java
index 8f79b28..072784b 100644
--- a/kerby-asn1/src/main/java/org/apache/kerby/asn1/Asn1Converter.java
+++ b/kerby-asn1/src/main/java/org/apache/kerby/asn1/Asn1Converter.java
@@ -38,11 +38,12 @@ public final class Asn1Converter {
 
     }
 
-    public static Asn1Type convert(Asn1ParseResult parseResult) throws IOException {
+    public static Asn1Type convert(Asn1ParseResult parseResult,
+                                   boolean isLazy) throws IOException {
         if (Asn1Simple.isSimple(parseResult.tag())) {
             return Asn1Converter.convertAsSimple(parseResult);
         } else if (Asn1Collection.isCollection(parseResult.tag())) {
-            return Asn1Converter.convertAsCollection(parseResult);
+            return Asn1Converter.convertAsCollection(parseResult, isLazy);
         } else if (!parseResult.tag().isPrimitive()) {
             Asn1Encodeable tmpValue = new Asn1Constructed(parseResult.tag());
             tmpValue.decode(parseResult);
@@ -63,10 +64,11 @@ public final class Asn1Converter {
         return value;
     }
 
-    public static Asn1Type convertAsCollection(Asn1ParseResult parseResult) throws IOException {
+    public static Asn1Type convertAsCollection(Asn1ParseResult parseResult,
+                                               boolean isLazy) throws IOException {
         Asn1Collection value = Asn1Collection.createCollection(parseResult.tag());
         value.useDefinitiveLength(parseResult.isDefinitiveLength());
-        value.setLazy(true);
+        value.setLazy(isLazy);
         Asn1Binder.bind(parseResult, value);
         return value;
     }

http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/0a19b1d7/kerby-asn1/src/main/java/org/apache/kerby/asn1/type/Asn1CollectionType.java
----------------------------------------------------------------------
diff --git a/kerby-asn1/src/main/java/org/apache/kerby/asn1/type/Asn1CollectionType.java b/kerby-asn1/src/main/java/org/apache/kerby/asn1/type/Asn1CollectionType.java
index dab2e48..3aa5225 100644
--- a/kerby-asn1/src/main/java/org/apache/kerby/asn1/type/Asn1CollectionType.java
+++ b/kerby-asn1/src/main/java/org/apache/kerby/asn1/type/Asn1CollectionType.java
@@ -30,6 +30,7 @@ import org.apache.kerby.asn1.parse.Asn1Container;
 import org.apache.kerby.asn1.parse.Asn1ParseResult;
 
 import java.io.IOException;
+import java.math.BigInteger;
 import java.nio.ByteBuffer;
 import java.util.List;
 
@@ -220,13 +221,16 @@ public abstract class Asn1CollectionType
         setFieldAs(index, new Asn1Integer(value));
     }
 
+    protected void setFieldAsBigInteger(EnumType index, BigInteger value) {
+        setFieldAs(index, new Asn1Integer(value));
+    }
+
     protected <T extends Asn1Type> T getFieldAsAny(EnumType index, Class<T> t) {
         Asn1Type value = fields[index.getValue()];
         if (value != null && value instanceof Asn1Any) {
             Asn1Any any = (Asn1Any) value;
             return any.getValueAs(t);
         }
-
         return null;
     }
 

http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/0a19b1d7/kerby-asn1/src/main/java/org/apache/kerby/asn1/type/Asn1Constructed.java
----------------------------------------------------------------------
diff --git a/kerby-asn1/src/main/java/org/apache/kerby/asn1/type/Asn1Constructed.java b/kerby-asn1/src/main/java/org/apache/kerby/asn1/type/Asn1Constructed.java
index 65c10f3..67e9514 100644
--- a/kerby-asn1/src/main/java/org/apache/kerby/asn1/type/Asn1Constructed.java
+++ b/kerby-asn1/src/main/java/org/apache/kerby/asn1/type/Asn1Constructed.java
@@ -106,7 +106,7 @@ public class Asn1Constructed
                 continue;
             }
 
-            Asn1Type tmpValue = Asn1Converter.convert(parsingItem);
+            Asn1Type tmpValue = Asn1Converter.convert(parsingItem, lazy);
             addItem(tmpValue);
         }
     }

http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/0a19b1d7/kerby-asn1/src/test/java/org/apache/kerby/asn1/PersonnelRecord.java
----------------------------------------------------------------------
diff --git a/kerby-asn1/src/test/java/org/apache/kerby/asn1/PersonnelRecord.java b/kerby-asn1/src/test/java/org/apache/kerby/asn1/PersonnelRecord.java
index 1810186..a518a9c 100644
--- a/kerby-asn1/src/test/java/org/apache/kerby/asn1/PersonnelRecord.java
+++ b/kerby-asn1/src/test/java/org/apache/kerby/asn1/PersonnelRecord.java
@@ -27,17 +27,9 @@ import org.apache.kerby.asn1.type.Asn1TaggingSequence;
 import org.apache.kerby.asn1.type.Asn1TaggingSet;
 import org.apache.kerby.asn1.type.Asn1VisibleString;
 
-import static org.apache.kerby.asn1.PersonnelRecord.ChildInformation.MyEnum.CHILD_NAME;
-import static org.apache.kerby.asn1.PersonnelRecord.ChildInformation.MyEnum.DATE_OF_BIRTH;
-import static org.apache.kerby.asn1.PersonnelRecord.MyEnum.CHILDREN;
-import static org.apache.kerby.asn1.PersonnelRecord.MyEnum.DATE_OF_HIRE;
-import static org.apache.kerby.asn1.PersonnelRecord.MyEnum.NAME;
-import static org.apache.kerby.asn1.PersonnelRecord.MyEnum.NAME_OF_SPOUSE;
-import static org.apache.kerby.asn1.PersonnelRecord.MyEnum.NUMBER;
-import static org.apache.kerby.asn1.PersonnelRecord.MyEnum.TITLE;
-import static org.apache.kerby.asn1.PersonnelRecord.Name.MyEnum.FAMILYNAME;
-import static org.apache.kerby.asn1.PersonnelRecord.Name.MyEnum.GIVENNAME;
-import static org.apache.kerby.asn1.PersonnelRecord.Name.MyEnum.INITIAL;
+import static org.apache.kerby.asn1.PersonnelRecord.ChildInformation.MyEnum.*;
+import static org.apache.kerby.asn1.PersonnelRecord.MyEnum.*;
+import static org.apache.kerby.asn1.PersonnelRecord.Name.MyEnum.*;
 
 /**
  * Ref. X.690-0207(http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf),

http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/0a19b1d7/kerby-dist/kdc-dist/conf/kdc.conf
----------------------------------------------------------------------
diff --git a/kerby-dist/kdc-dist/conf/kdc.conf b/kerby-dist/kdc-dist/conf/kdc.conf
index ac72940..e92345a 100644
--- a/kerby-dist/kdc-dist/conf/kdc.conf
+++ b/kerby-dist/kdc-dist/conf/kdc.conf
@@ -18,6 +18,6 @@
 
 [kdcdefaults]
   kdc_host = localhost
-  kdc_udp_port = 8014
-  kdc_tcp_port = 8015
+  kdc_udp_port = 88
+  kdc_tcp_port = 88
   kdc_realm = EXAMPLE.COM

http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/0a19b1d7/kerby-dist/tool-dist/conf/krb5.conf
----------------------------------------------------------------------
diff --git a/kerby-dist/tool-dist/conf/krb5.conf b/kerby-dist/tool-dist/conf/krb5.conf
index 698daac..e857b84 100644
--- a/kerby-dist/tool-dist/conf/krb5.conf
+++ b/kerby-dist/tool-dist/conf/krb5.conf
@@ -19,5 +19,6 @@
 [libdefaults]
     kdc_realm = EXAMPLE.COM
     default_realm = EXAMPLE.COM
-    kdc_udp_port = 8014
-    kdc_tcp_port = 8015
+    kdc_udp_port = 88
+    kdc_tcp_port = 88
+    pkinit_anchors = /etc/krb5/cacert.pem

http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/0a19b1d7/kerby-dist/tool-dist/pom.xml
----------------------------------------------------------------------
diff --git a/kerby-dist/tool-dist/pom.xml b/kerby-dist/tool-dist/pom.xml
index 7bf67ce..f8e8ec0 100644
--- a/kerby-dist/tool-dist/pom.xml
+++ b/kerby-dist/tool-dist/pom.xml
@@ -64,6 +64,11 @@
       <artifactId>log4j</artifactId>
       <version>${log4j.version}</version>
     </dependency>
+    <dependency>
+      <groupId>org.bouncycastle</groupId>
+      <artifactId>bcpkix-jdk15on</artifactId>
+      <version>1.52</version>
+    </dependency>
   </dependencies>
 
   <profiles>

http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/0a19b1d7/kerby-kdc-test/src/main/resources/cacerttest.pem
----------------------------------------------------------------------
diff --git a/kerby-kdc-test/src/main/resources/cacerttest.pem b/kerby-kdc-test/src/main/resources/cacerttest.pem
new file mode 100644
index 0000000..bc9051e
--- /dev/null
+++ b/kerby-kdc-test/src/main/resources/cacerttest.pem
@@ -0,0 +1,23 @@
+-----BEGIN CERTIFICATE-----
+MIIDyzCCArOgAwIBAgIJAJ9WHdl87hv5MA0GCSqGSIb3DQEBBQUAMHwxCzAJBgNV
+BAYTAkNOMQswCQYDVQQIDAJTSDELMAkGA1UEBwwCU0gxDjAMBgNVBAoMBUlOVEVM
+MQ4wDAYDVQQLDAVJTlRFTDEPMA0GA1UEAwwGSklBSklBMSIwIAYJKoZIhvcNAQkB
+FhNKSUFKSUEuTElASU5URUwuQ09NMB4XDTE1MDkxNTAyMTczNloXDTI1MDkxMjAy
+MTczNlowfDELMAkGA1UEBhMCQ04xCzAJBgNVBAgMAlNIMQswCQYDVQQHDAJTSDEO
+MAwGA1UECgwFSU5URUwxDjAMBgNVBAsMBUlOVEVMMQ8wDQYDVQQDDAZKSUFKSUEx
+IjAgBgkqhkiG9w0BCQEWE0pJQUpJQS5MSUBJTlRFTC5DT00wggEiMA0GCSqGSIb3
+DQEBAQUAA4IBDwAwggEKAoIBAQC1OxDz9GMHNrlMYVz+sggRuhhMUy8SfoJfCUMI
+nmiQLybMAjr1DxuKxTsYYtuIJgUdupdKByGb5rbfJ48qqNKa/3jMGsv3w30Q4hll
+eGnDFPTyzXAjLAYDzeNGUiuJ8HViZQ2BBC0wwiBhIZHyPB7zmZ+iLb8tSyGxGDc9
+IWV88WEie42cXy4FMyXqTAAc83SWe/MqUjNy75IZZ20osCj2uMY/TALBdnY43+wV
+98CO89vhlN4nb5yIpgCG7i61NvwnKJIk5O0VNx7/pUWpoaWWHtoFyXmtUgVO9PcV
+6FTmpNHavlcCS3aC2PUGgx0pAYocgMZsJ0u5zr5GOprMzXD7AgMBAAGjUDBOMB0G
+A1UdDgQWBBRCPVYKRg2XoIq60AQ2+KTUJmHXsDAfBgNVHSMEGDAWgBRCPVYKRg2X
+oIq60AQ2+KTUJmHXsDAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQCk
+k0x3/3f77r7UltXKjgBNcY8GwChOVRKQPDuidXSkKg1ifGTyhUk7CB7xHmcT0TsO
+tcCk3p8E0antUmLVUfV4lu60KPH0KddqXzKq1kqvULNPLEWirWAbFw9h6gyymHJg
+N2Gx2oUBThDGL4yJGNqhrVg29HpP3gREahFyrrV4DXAhtzpS78fxSSrTA65OpbMI
+/cvim7iMZnBo6bEQHnejWDNeqTC0R+pQvOiB1ahqbL32w70hr1kr1xdSZgMcCZc6
+z97S9POkDxYReuiflA+MezEq0gf/EMvuTC358ckQzE53iVdmdIigyiEodBTqZ4rF
+t2LR/VCE4aO+A3KKE/OT
+-----END CERTIFICATE-----

http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/0a19b1d7/kerby-kdc-test/src/main/resources/kdccerttest.pem
----------------------------------------------------------------------
diff --git a/kerby-kdc-test/src/main/resources/kdccerttest.pem b/kerby-kdc-test/src/main/resources/kdccerttest.pem
new file mode 100644
index 0000000..f1d6bb2
--- /dev/null
+++ b/kerby-kdc-test/src/main/resources/kdccerttest.pem
@@ -0,0 +1,25 @@
+-----BEGIN CERTIFICATE-----
+MIIEQDCCAyigAwIBAgIJAJV7O31Zn93hMA0GCSqGSIb3DQEBBQUAMHwxCzAJBgNV
+BAYTAkNOMQswCQYDVQQIDAJTSDELMAkGA1UEBwwCU0gxDjAMBgNVBAoMBUlOVEVM
+MQ4wDAYDVQQLDAVJTlRFTDEPMA0GA1UEAwwGSklBSklBMSIwIAYJKoZIhvcNAQkB
+FhNKSUFKSUEuTElASU5URUwuQ09NMB4XDTE1MDkxNTAyMTk1OVoXDTE2MDkxNDAy
+MTk1OVowfDELMAkGA1UEBhMCQ04xCzAJBgNVBAgMAlNIMQswCQYDVQQHDAJTSDEO
+MAwGA1UECgwFSU5URUwxDjAMBgNVBAsMBUlOVEVMMQ8wDQYDVQQDDAZKSUFKSUEx
+IjAgBgkqhkiG9w0BCQEWE0pJQUpJQS5MSUBJTlRFTC5DT00wggEiMA0GCSqGSIb3
+DQEBAQUAA4IBDwAwggEKAoIBAQC0kDRrl+o9v6hdWWyUtAT7rK87ig8lqt3xeZAI
+9N7xwjG9x9bpJ9KWef+IlP17yZEs7G2GO6MlIs2Sg+64nj+2FQ0afQ1iLnx3sY8z
+oLJWnAEkzYKsx5TToTmjA30s8Hqd7NXSff4uENUrfIDRS1uFm7QjZEwanpfq/2qx
+anvRV7zCTWzzn18UE1+gBR1H+OM1HH3Z1QCOsHTSdn4K56f1jyD7Q7LDgDZZTEpg
+qnINXMPYk5X+WKn/X8/oX9AJvC5Zx6CA7t2IPOXBUfaYg2y7ufO4yLrUX9zwOQ3b
+yeRd2+bL51xQEofbuXRPCb6npjjvwD10slkzvA85dEQj+fJhAgMBAAGjgcQwgcEw
+CQYDVR0TBAIwADALBgNVHQ8EBAMCA+gwEgYDVR0lBAswCQYHKwYBBQIDBTAdBgNV
+HQ4EFgQUH5Rn/jDvxhXJqk6BCX4RQ2yk3wkwHwYDVR0jBBgwFoAUQj1WCkYNl6CK
+utAENvik1CZh17AwCQYDVR0SBAIwADBIBgNVHREEQTA/oD0GBisGAQUCAqAzMDGg
+DRsLRVhBTVBMRS5DT02hIDAeoAMCAQGhFzAVGwZrcmJ0Z3QbC0VYQU1QTEUuQ09N
+MA0GCSqGSIb3DQEBBQUAA4IBAQCO+G3mDx6wT0thG+7HC80QKUFEouRhbX8fwCRs
+0KFg+GIHjO0+9B6u+0xBogAor6Q9R8PNrvnj/Ys5hPtcUJLTm2JUM15V8nssFwh4
+QVw2JMRccSl5gLHReTkwFiCdHzON4x/BMz/S0dXkVW3eJKUJ7EbZAhX/liUwKsbd
+EHO+c6QPUm0BU98tn6j9BAl0tdlTRDAMC40MGOonCQs0o4HGFeGIbwLYxxS0O0oo
+61vMFHYzdyzdmbyixgGSnmZyGZyyUPboY1A+7VPCMdvwxBerd3BEvS3taDo62ZRv
+XrmSmcKtblm1FkxLy6A2ilzhbJ/35VDa3phmvVV73QHHH5gj
+-----END CERTIFICATE-----

http://git-wip-us.apache.org/repos/asf/directory-kerby/blob/0a19b1d7/kerby-kdc-test/src/test/java/org/apache/kerby/kerberos/kdc/AnonymousPkinitKdcTest.java
----------------------------------------------------------------------
diff --git a/kerby-kdc-test/src/test/java/org/apache/kerby/kerberos/kdc/AnonymousPkinitKdcTest.java b/kerby-kdc-test/src/test/java/org/apache/kerby/kerberos/kdc/AnonymousPkinitKdcTest.java
new file mode 100644
index 0000000..1eb8fa5
--- /dev/null
+++ b/kerby-kdc-test/src/test/java/org/apache/kerby/kerberos/kdc/AnonymousPkinitKdcTest.java
@@ -0,0 +1,91 @@
+/**
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you 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 org.apache.kerby.kerberos.kdc;
+
+import org.apache.kerby.kerberos.kerb.KrbException;
+import org.apache.kerby.kerberos.kerb.client.KrbPkinitClient;
+import org.apache.kerby.kerberos.kerb.server.KdcConfigKey;
+import org.apache.kerby.kerberos.kerb.server.KdcTestBase;
+import org.apache.kerby.kerberos.kerb.type.ticket.SgtTicket;
+import org.apache.kerby.kerberos.kerb.type.ticket.TgtTicket;
+import org.apache.kerby.pki.PkiLoader;
+import org.junit.Before;
+import org.junit.Test;
+
+import java.net.URL;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+public class AnonymousPkinitKdcTest extends KdcTestBase {
+
+    private PkiLoader pkiLoader;
+    private String serverPrincipal;
+
+    @Before
+    public void setUp() throws Exception {
+        pkiLoader = new PkiLoader();
+
+        super.setUp();
+    }
+
+    @Override
+    protected void configKdcSeverAndClient() {
+        super.configKdcSeverAndClient();
+
+        String pkinitIdentity = getClass().getResource("/kdccerttest.pem").getPath() + ","
+                + getClass().getResource("/kdckey.pem").getPath();
+        getKdcServer().getKdcConfig().setString(KdcConfigKey.PKINIT_IDENTITY, pkinitIdentity);
+    }
+
+    @Override
+    protected void setUpClient() throws Exception {
+        super.setUpClient();
+    }
+
+    @Override
+    protected void createPrincipals() throws KrbException {
+        super.createPrincipals();
+        //Anonymity support is not enabled by default.
+        //To enable it, you must create the principal WELLKNOWN/ANONYMOUS
+        getKdcServer().createPrincipal("WELLKNOWN/ANONYMOUS");
+    }
+
+    @Test
+    public void testAnonymity() throws Exception {
+
+        getKrbClient().init();
+
+        URL url = getClass().getResource("/cacerttest.pem");
+        TgtTicket tgt;
+        KrbPkinitClient pkinitClient = new KrbPkinitClient(getKrbClient());
+        try {
+            tgt = pkinitClient.requestTgt(url.getPath());
+        } catch (KrbException te) {
+            te.printStackTrace();
+            assertThat(te.getMessage().contains("timeout")).isTrue();
+            return;
+        }
+        assertThat(tgt).isNotNull();
+
+        serverPrincipal = getServerPrincipal();
+        SgtTicket tkt = getKrbClient().requestSgt(tgt, serverPrincipal);
+        assertThat(tkt).isNotNull();
+    }
+}


Mime
View raw message