106 lines
3.5 KiB
Java
106 lines
3.5 KiB
Java
|
package org.bouncycastle.asn1;
|
||
|
|
||
|
import java.io.IOException;
|
||
|
import org.bouncycastle.util.Arrays;
|
||
|
import org.bouncycastle.util.Strings;
|
||
|
|
||
|
/* loaded from: classes6.dex */
|
||
|
public class DERIA5String extends ASN1Primitive implements ASN1String {
|
||
|
private final byte[] string;
|
||
|
|
||
|
/* JADX INFO: Access modifiers changed from: package-private */
|
||
|
@Override // org.bouncycastle.asn1.ASN1Primitive
|
||
|
public boolean isConstructed() {
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
public String toString() {
|
||
|
return getString();
|
||
|
}
|
||
|
|
||
|
@Override // org.bouncycastle.asn1.ASN1Primitive, org.bouncycastle.asn1.ASN1Object
|
||
|
public int hashCode() {
|
||
|
return Arrays.hashCode(this.string);
|
||
|
}
|
||
|
|
||
|
@Override // org.bouncycastle.asn1.ASN1String
|
||
|
public String getString() {
|
||
|
return Strings.fromByteArray(this.string);
|
||
|
}
|
||
|
|
||
|
public byte[] getOctets() {
|
||
|
return Arrays.clone(this.string);
|
||
|
}
|
||
|
|
||
|
/* JADX INFO: Access modifiers changed from: package-private */
|
||
|
@Override // org.bouncycastle.asn1.ASN1Primitive
|
||
|
public int encodedLength() {
|
||
|
return StreamUtil.calculateBodyLength(this.string.length) + 1 + this.string.length;
|
||
|
}
|
||
|
|
||
|
/* JADX INFO: Access modifiers changed from: package-private */
|
||
|
@Override // org.bouncycastle.asn1.ASN1Primitive
|
||
|
public void encode(ASN1OutputStream aSN1OutputStream) throws IOException {
|
||
|
aSN1OutputStream.writeEncoded(22, this.string);
|
||
|
}
|
||
|
|
||
|
@Override // org.bouncycastle.asn1.ASN1Primitive
|
||
|
boolean asn1Equals(ASN1Primitive aSN1Primitive) {
|
||
|
if (aSN1Primitive instanceof DERIA5String) {
|
||
|
return Arrays.areEqual(this.string, ((DERIA5String) aSN1Primitive).string);
|
||
|
}
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
public static boolean isIA5String(String str) {
|
||
|
for (int length = str.length() - 1; length >= 0; length--) {
|
||
|
if (str.charAt(length) > 127) {
|
||
|
return false;
|
||
|
}
|
||
|
}
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
public static DERIA5String getInstance(ASN1TaggedObject aSN1TaggedObject, boolean z) {
|
||
|
ASN1Primitive object = aSN1TaggedObject.getObject();
|
||
|
return (z || (object instanceof DERIA5String)) ? getInstance(object) : new DERIA5String(((ASN1OctetString) object).getOctets());
|
||
|
}
|
||
|
|
||
|
public static DERIA5String getInstance(Object obj) {
|
||
|
if (obj == null || (obj instanceof DERIA5String)) {
|
||
|
return (DERIA5String) obj;
|
||
|
}
|
||
|
if (!(obj instanceof byte[])) {
|
||
|
StringBuilder sb = new StringBuilder("illegal object in getInstance: ");
|
||
|
sb.append(obj.getClass().getName());
|
||
|
throw new IllegalArgumentException(sb.toString());
|
||
|
}
|
||
|
try {
|
||
|
return (DERIA5String) fromByteArray((byte[]) obj);
|
||
|
} catch (Exception e) {
|
||
|
StringBuilder sb2 = new StringBuilder("encoding error in getInstance: ");
|
||
|
sb2.append(e.toString());
|
||
|
throw new IllegalArgumentException(sb2.toString());
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/* JADX INFO: Access modifiers changed from: package-private */
|
||
|
public DERIA5String(byte[] bArr) {
|
||
|
this.string = bArr;
|
||
|
}
|
||
|
|
||
|
public DERIA5String(String str, boolean z) {
|
||
|
if (str == null) {
|
||
|
throw new NullPointerException("string cannot be null");
|
||
|
}
|
||
|
if (z && !isIA5String(str)) {
|
||
|
throw new IllegalArgumentException("string contains illegal characters");
|
||
|
}
|
||
|
this.string = Strings.toByteArray(str);
|
||
|
}
|
||
|
|
||
|
public DERIA5String(String str) {
|
||
|
this(str, false);
|
||
|
}
|
||
|
}
|