while (decoder.hasNextElement()) { final int type = decoder.peekType(); switch (type) { case INTEGER_TYPE: { builder.append("[int:").append(decoder.decodeInteger()).append("]"); break; builder.append("[bits:").append(decoder.decodeBitStringAsString()).append(']'); break; builder.append("[octets:").append(Arrays2.toString(decoder.decodeOctetString())).append(']'); break; decoder.decodeNull(); break; builder.append("[oid:").append(decoder.decodeObjectIdentifier()).append(']'); break; builder.append("[ia5:").append(decoder.decodeIA5String()).append(']'); break; decoder.startSequence(); formatAsn1(decoder, builder); decoder.endSequence(); builder.append(']'); break; decoder.startSet();
protected OneTimePasswordAlgorithmSpec engineDecode(final ASN1Decoder decoder) { decoder.startSequence(); final String algorithm = decoder.decodeOctetStringAsString(); final String seed = decoder.decodeIA5String(); final int sequenceNumber = decoder.decodeInteger().intValue(); decoder.endSequence(); return new OneTimePasswordAlgorithmSpec(algorithm, seed, sequenceNumber); } }
protected DigestPasswordAlgorithmSpec engineDecode(final ASN1Decoder decoder) { decoder.startSequence(); final String username = decoder.decodeOctetStringAsString(); final String realm = decoder.decodeOctetStringAsString(); decoder.endSequence(); return new DigestPasswordAlgorithmSpec(username, realm); } }
protected IteratedSaltedPasswordAlgorithmSpec engineDecode(final ASN1Decoder decoder) { decoder.startSequence(); final int iterationCount = decoder.decodeInteger().intValue(); final byte[] salt = decoder.decodeOctetString(); decoder.endSequence(); return new IteratedSaltedPasswordAlgorithmSpec(iterationCount, salt); } }
String[] strings = NO_STRINGS; int len = 0; decoder.startSequence(); while (decoder.hasNextElement()) { decoder.startSet(); while (decoder.hasNextElement()) { decoder.startSequence(); String testOid = decoder.decodeObjectIdentifier(); if (oid.equals(testOid)) { switch (decoder.peekType()) { case IA5_STRING_TYPE: { if (strings.length == len) { strings = Arrays.copyOf(strings, Math.max(2, strings.length) * 2); strings[len++] = decoder.decodeIA5String(); break; strings[len++] = decoder.decodePrintableString(); break; strings[len++] = decoder.decodeUniversalString(); break; strings[len++] = decoder.decodeUtf8String(); break; strings[len++] = decoder.decodeBMPString();
final Set<String> requiredAttributes = new HashSet<>(Arrays.asList(oids)); final ASN1Decoder decoder = new DERDecoder(principal.getEncoded()); decoder.startSequence(); while (decoder.hasNextElement() && ! requiredAttributes.isEmpty()) { decoder.startSet(); while (decoder.hasNextElement() && ! requiredAttributes.isEmpty()) { decoder.startSequence(); String testOid = decoder.decodeObjectIdentifier(); requiredAttributes.remove(testOid); decoder.skipElement(); decoder.endSequence(); decoder.endSet(); decoder.endSequence(); if (decoder.hasNextElement()) { throw log.unexpectedTrailingGarbageInX500principal();
protected IteratedPasswordAlgorithmSpec engineDecode(final ASN1Decoder decoder) { return new IteratedPasswordAlgorithmSpec(decoder.decodeInteger().intValue()); } }
protected SaltedPasswordAlgorithmSpec engineDecode(final ASN1Decoder decoder) { final byte[] salt = decoder.decodeOctetString(); return new SaltedPasswordAlgorithmSpec(salt); } }
String[] strings = NO_STRINGS; int len = 0; decoder.startSequence(); while (decoder.hasNextElement()) { decoder.startSet(); while (decoder.hasNextElement()) { decoder.startSequence(); String testOid = decoder.decodeObjectIdentifier(); if (oid.equals(testOid)) { switch (decoder.peekType()) { case IA5_STRING_TYPE: { if (strings.length == len) { strings = Arrays.copyOf(strings, Math.max(2, strings.length) * 2); strings[len++] = decoder.decodeIA5String(); break; strings[len++] = decoder.decodePrintableString(); break; strings[len++] = decoder.decodeUniversalString(); break; strings[len++] = decoder.decodeUtf8String(); break; strings[len++] = decoder.decodeBMPString();
protected MaskedPasswordAlgorithmSpec engineDecode(final ASN1Decoder decoder) { decoder.startSequence(); final char[] initialKeyMaterial = decoder.decodeOctetStringAsString().toCharArray(); final int iterationCount = decoder.decodeInteger().intValue(); final byte[] salt = decoder.decodeOctetString(); decoder.endSequence(); return new MaskedPasswordAlgorithmSpec(initialKeyMaterial, iterationCount, salt); } }
final Set<String> requiredAttributes = new HashSet<>(Arrays.asList(oids)); final ASN1Decoder decoder = new DERDecoder(principal.getEncoded()); decoder.startSequence(); while (decoder.hasNextElement() && ! requiredAttributes.isEmpty()) { decoder.startSet(); while (decoder.hasNextElement() && ! requiredAttributes.isEmpty()) { decoder.startSequence(); String testOid = decoder.decodeObjectIdentifier(); requiredAttributes.remove(testOid); decoder.skipElement(); decoder.endSequence(); decoder.endSet(); decoder.endSequence(); if (decoder.hasNextElement()) { throw log.unexpectedTrailingGarbageInX500principal();
protected OneTimePasswordAlgorithmSpec engineDecode(final ASN1Decoder decoder) { decoder.startSequence(); final String algorithm = decoder.decodeOctetStringAsString(); final String seed = decoder.decodeIA5String(); final int sequenceNumber = decoder.decodeInteger().intValue(); decoder.endSequence(); return new OneTimePasswordAlgorithmSpec(algorithm, seed, sequenceNumber); } }
protected DigestPasswordAlgorithmSpec engineDecode(final ASN1Decoder decoder) { decoder.startSequence(); final String username = decoder.decodeOctetStringAsString(); final String realm = decoder.decodeOctetStringAsString(); decoder.endSequence(); return new DigestPasswordAlgorithmSpec(username, realm); } }
protected RSAParameterSpec engineDecode(final ASN1Decoder decoder) { return new RSAParameterSpec(decoder.decodeInteger()); } }
protected SaltedPasswordAlgorithmSpec engineDecode(final ASN1Decoder decoder) { final byte[] salt = decoder.decodeOctetString(); return new SaltedPasswordAlgorithmSpec(salt); } }
while (decoder.hasNextElement()) { final int type = decoder.peekType(); switch (type) { case INTEGER_TYPE: { builder.append("[int:").append(decoder.decodeInteger()).append("]"); break; builder.append("[bits:").append(decoder.decodeBitStringAsString()).append(']'); break; builder.append("[octets:").append(Arrays2.toString(decoder.decodeOctetString())).append(']'); break; decoder.decodeNull(); break; builder.append("[oid:").append(decoder.decodeObjectIdentifier()).append(']'); break; builder.append("[ia5:").append(decoder.decodeIA5String()).append(']'); break; decoder.startSequence(); formatAsn1(decoder, builder); decoder.endSequence(); builder.append(']'); break; decoder.startSet();
String[] strings = NO_STRINGS; int len = 0; decoder.startSequence(); while (decoder.hasNextElement()) { decoder.startSet(); while (decoder.hasNextElement()) { decoder.startSequence(); String testOid = decoder.decodeObjectIdentifier(); if (oid.equals(testOid)) { switch (decoder.peekType()) { case IA5_STRING_TYPE: { if (strings.length == len) { strings = Arrays.copyOf(strings, Math.max(2, strings.length) * 2); strings[len++] = decoder.decodeIA5String(); break; strings[len++] = decoder.decodePrintableString(); break; strings[len++] = decoder.decodeUniversalString(); break; strings[len++] = decoder.decodeUtf8String(); break; strings[len++] = decoder.decodeBMPString();
protected MaskedPasswordAlgorithmSpec engineDecode(final ASN1Decoder decoder) { decoder.startSequence(); final char[] initialKeyMaterial = decoder.decodeOctetStringAsString().toCharArray(); final int iterationCount = decoder.decodeInteger().intValue(); final byte[] salt = decoder.decodeOctetString(); decoder.endSequence(); return new MaskedPasswordAlgorithmSpec(initialKeyMaterial, iterationCount, salt); } }
final Set<String> requiredAttributes = new HashSet<>(Arrays.asList(oids)); final ASN1Decoder decoder = new DERDecoder(principal.getEncoded()); decoder.startSequence(); while (decoder.hasNextElement() && ! requiredAttributes.isEmpty()) { decoder.startSet(); while (decoder.hasNextElement() && ! requiredAttributes.isEmpty()) { decoder.startSequence(); String testOid = decoder.decodeObjectIdentifier(); requiredAttributes.remove(testOid); decoder.skipElement(); decoder.endSequence(); decoder.endSet(); decoder.endSequence(); if (decoder.hasNextElement()) { throw log.unexpectedTrailingGarbageInX500principal();
protected OneTimePasswordAlgorithmSpec engineDecode(final ASN1Decoder decoder) { decoder.startSequence(); final String algorithm = decoder.decodeOctetStringAsString(); final String seed = decoder.decodeIA5String(); final int sequenceNumber = decoder.decodeInteger().intValue(); decoder.endSequence(); return new OneTimePasswordAlgorithmSpec(algorithm, seed, sequenceNumber); } }