.class public abstract Lcom/digitalturbine/ignite/encryption/a; .super Ljava/lang/Object; .source "SourceFile" # direct methods .method public static a(Ljavax/crypto/Cipher;Ljava/lang/String;)Ljava/lang/String; .locals 3 const/4 v0, 0x0 .line 4 invoke-static {p1, v0}, Landroid/util/Base64;->decode(Ljava/lang/String;I)[B move-result-object p1 .line 5 new-instance v1, Ljava/io/ByteArrayInputStream; invoke-direct {v1, p1}, Ljava/io/ByteArrayInputStream;->([B)V .line 6 new-instance p1, Ljavax/crypto/CipherInputStream; invoke-direct {p1, v1, p0}, Ljavax/crypto/CipherInputStream;->(Ljava/io/InputStream;Ljavax/crypto/Cipher;)V .line 8 new-instance p0, Ljava/util/ArrayList; invoke-direct {p0}, Ljava/util/ArrayList;->()V .line 9 :goto_0 invoke-virtual {p1}, Ljavax/crypto/CipherInputStream;->read()I move-result v1 const/4 v2, -0x1 if-eq v1, v2, :cond_0 int-to-byte v1, v1 .line 10 invoke-static {v1}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte; move-result-object v1 invoke-virtual {p0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z goto :goto_0 .line 13 :cond_0 invoke-virtual {p0}, Ljava/util/ArrayList;->size()I move-result p1 new-array p1, p1, [B .line 14 :goto_1 invoke-virtual {p0}, Ljava/util/ArrayList;->size()I move-result v1 if-ge v0, v1, :cond_1 .line 15 invoke-virtual {p0, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Ljava/lang/Byte; invoke-virtual {v1}, Ljava/lang/Byte;->byteValue()B move-result v1 aput-byte v1, p1, v0 add-int/lit8 v0, v0, 0x1 goto :goto_1 .line 18 :cond_1 new-instance p0, Ljava/lang/String; const-string v0, "UTF-8" invoke-direct {p0, p1, v0}, Ljava/lang/String;->([BLjava/lang/String;)V return-object p0 .end method .method public static a(I[BLjavax/crypto/SecretKey;)Ljavax/crypto/Cipher; .locals 3 const-string v0, "AES/GCM/NoPadding" .line 1 invoke-static {v0}, Ljavax/crypto/Cipher;->getInstance(Ljava/lang/String;)Ljavax/crypto/Cipher; move-result-object v0 .line 2 new-instance v1, Ljavax/crypto/spec/GCMParameterSpec; const/16 v2, 0x80 invoke-direct {v1, v2, p1}, Ljavax/crypto/spec/GCMParameterSpec;->(I[B)V .line 3 invoke-virtual {v0, p0, p2, v1}, Ljavax/crypto/Cipher;->init(ILjava/security/Key;Ljava/security/spec/AlgorithmParameterSpec;)V return-object v0 .end method