AlgorithmUtil.smali
.class public final Lcom/baidu/mapsdkplatform/comapi/util/AlgorithmUtil;
.super Ljava/lang/Object;
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method private constructor <init>()V
.registers 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private static a(Ljava/lang/String;Ljava/lang/String;[B)[B
.registers 7
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
if-nez p1, :cond_4
const/4 p0, 0x0
return-object p0
:cond_4
new-instance v0, Ljavax/crypto/spec/SecretKeySpec;
invoke-virtual {p1}, Ljava/lang/String;->getBytes()[B
move-result-object p1
const-string v1, "AES"
invoke-direct {v0, p1, v1}, Ljavax/crypto/spec/SecretKeySpec;-><init>([BLjava/lang/String;)V
const-string p1, "AES/CBC/NoPadding"
invoke-static {p1}, Ljavax/crypto/Cipher;->getInstance(Ljava/lang/String;)Ljavax/crypto/Cipher;
move-result-object p1
new-instance v1, Ljavax/crypto/spec/IvParameterSpec;
invoke-virtual {p0}, Ljava/lang/String;->getBytes()[B
move-result-object p0
invoke-direct {v1, p0}, Ljavax/crypto/spec/IvParameterSpec;-><init>([B)V
const/4 p0, 0x1
invoke-virtual {p1, p0, v0, v1}, Ljavax/crypto/Cipher;->init(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
array-length p0, p2
:goto_23
rem-int/lit8 v0, p0, 0x10
if-eqz v0, :cond_2a
add-int/lit8 p0, p0, 0x1
goto :goto_23
:cond_2a
new-array v0, p0, [B
const/4 v1, 0x0
const/4 v2, 0x0
:goto_2e
if-ge v2, p0, :cond_3d
array-length v3, p2
if-ge v2, v3, :cond_38
aget-byte v3, p2, v2
aput-byte v3, v0, v2
goto :goto_3a
:cond_38
aput-byte v1, v0, v2
:goto_3a
add-int/lit8 v2, v2, 0x1
goto :goto_2e
:cond_3d
invoke-virtual {p1, v0}, Ljavax/crypto/Cipher;->doFinal([B)[B
move-result-object p0
return-object p0
.end method
.method private static b(Ljava/lang/String;Ljava/lang/String;[B)[B
.registers 5
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-nez v0, :cond_32
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_d
goto :goto_32
:cond_d
new-instance v0, Ljavax/crypto/spec/SecretKeySpec;
const-string v1, "ASCII"
invoke-virtual {p1, v1}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B
move-result-object p1
const-string v1, "AES"
invoke-direct {v0, p1, v1}, Ljavax/crypto/spec/SecretKeySpec;-><init>([BLjava/lang/String;)V
const-string p1, "AES/CBC/NoPadding"
invoke-static {p1}, Ljavax/crypto/Cipher;->getInstance(Ljava/lang/String;)Ljavax/crypto/Cipher;
move-result-object p1
new-instance v1, Ljavax/crypto/spec/IvParameterSpec;
invoke-virtual {p0}, Ljava/lang/String;->getBytes()[B
move-result-object p0
invoke-direct {v1, p0}, Ljavax/crypto/spec/IvParameterSpec;-><init>([B)V
const/4 p0, 0x2
invoke-virtual {p1, p0, v0, v1}, Ljavax/crypto/Cipher;->init(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
invoke-virtual {p1, p2}, Ljavax/crypto/Cipher;->doFinal([B)[B
move-result-object p0
return-object p0
:cond_32
:goto_32
const/4 p0, 0x0
return-object p0
.end method
.method public static getUrlNeedInfo(Ljava/lang/String;Ljava/lang/String;[B)[B
.registers 3
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
invoke-static {p0, p1, p2}, Lcom/baidu/mapsdkplatform/comapi/util/AlgorithmUtil;->b(Ljava/lang/String;Ljava/lang/String;[B)[B
move-result-object p0
return-object p0
.end method
.method public static setUrlNeedInfo(Ljava/lang/String;Ljava/lang/String;[B)[B
.registers 3
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
invoke-static {p0, p1, p2}, Lcom/baidu/mapsdkplatform/comapi/util/AlgorithmUtil;->a(Ljava/lang/String;Ljava/lang/String;[B)[B
move-result-object p0
return-object p0
.end method