a.smali
.class public final Lcom/imo/android/imoim/util/a;
.super Ljava/lang/Object;
.source "SourceFile"
# direct methods
.method public constructor <init>()V
.registers 1
.line 12
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static a(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.registers 6
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
const-string v0, "AES/CBC/PKCS5Padding"
.line 24
invoke-static {v0}, Ljavax/crypto/Cipher;->getInstance(Ljava/lang/String;)Ljavax/crypto/Cipher;
move-result-object v0
const-string v1, "1RXD5WYw5wrdHR9y"
.line 25
invoke-virtual {v1}, Ljava/lang/String;->getBytes()[B
move-result-object v1
.line 26
new-instance v2, Ljavax/crypto/spec/SecretKeySpec;
const-string v3, "AES"
invoke-direct {v2, v1, v3}, Ljavax/crypto/spec/SecretKeySpec;-><init>([BLjava/lang/String;)V
.line 27
new-instance v1, Ljavax/crypto/spec/IvParameterSpec;
invoke-virtual {p1}, Ljava/lang/String;->getBytes()[B
move-result-object p1
invoke-direct {v1, p1}, Ljavax/crypto/spec/IvParameterSpec;-><init>([B)V
const/4 p1, 0x1
.line 28
invoke-virtual {v0, p1, v2, v1}, Ljavax/crypto/Cipher;->init(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
const-string p1, "utf-8"
.line 29
invoke-virtual {p0, p1}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B
move-result-object p0
invoke-virtual {v0, p0}, Ljavax/crypto/Cipher;->doFinal([B)[B
move-result-object p0
const/4 p1, 0x2
.line 38
invoke-static {p0, p1}, Landroid/util/Base64;->encodeToString([BI)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method public static b(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.registers 5
:try_start_0
const-string v0, "1RXD5WYw5wrdHR9y"
const-string v1, "ASCII"
.line 43
invoke-virtual {v0, v1}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B
move-result-object v0
.line 44
new-instance v1, Ljavax/crypto/spec/SecretKeySpec;
const-string v2, "AES"
invoke-direct {v1, v0, v2}, Ljavax/crypto/spec/SecretKeySpec;-><init>([BLjava/lang/String;)V
const-string v0, "AES/CBC/PKCS5Padding"
.line 45
invoke-static {v0}, Ljavax/crypto/Cipher;->getInstance(Ljava/lang/String;)Ljavax/crypto/Cipher;
move-result-object v0
.line 46
new-instance v2, Ljavax/crypto/spec/IvParameterSpec;
invoke-virtual {p1}, Ljava/lang/String;->getBytes()[B
move-result-object p1
invoke-direct {v2, p1}, Ljavax/crypto/spec/IvParameterSpec;-><init>([B)V
const/4 p1, 0x2
.line 47
invoke-virtual {v0, p1, v1, v2}, Ljavax/crypto/Cipher;->init(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V
const/4 p1, 0x0
.line 48
invoke-static {p0, p1}, Landroid/util/Base64;->decode(Ljava/lang/String;I)[B
move-result-object p0
.line 49
invoke-virtual {v0, p0}, Ljavax/crypto/Cipher;->doFinal([B)[B
move-result-object p0
.line 50
new-instance p1, Ljava/lang/String;
const-string v0, "utf-8"
invoke-direct {p1, p0, v0}, Ljava/lang/String;-><init>([BLjava/lang/String;)V
:try_end_32
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_32} :catch_33
return-object p1
:catch_33
move-exception p0
.line 53
invoke-static {p0}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p0
const-string p1, "decrypt: ex = "
invoke-virtual {p1, p0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
const/4 p1, 0x1
const-string v0, "AES128Operator"
.line 1079
invoke-static {v0, p0, p1}, Lcom/imo/android/imoim/util/bt;->a(Ljava/lang/String;Ljava/lang/String;Z)V
const/4 p0, 0x0
return-object p0
.end method