NTRUEncryptionKeyGenerationParameters.smali
.class public Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.super Lorg/spongycastle/crypto/KeyGenerationParameters;
.source "NTRUEncryptionKeyGenerationParameters.java"
# interfaces
.implements Ljava/lang/Cloneable;
# static fields
.field public static final APR2011_439:Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.field public static final APR2011_439_FAST:Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.field public static final APR2011_743:Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.field public static final APR2011_743_FAST:Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.field public static final EES1087EP2:Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.field public static final EES1171EP1:Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.field public static final EES1499EP1:Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
# instance fields
.field public N:I
.field public bufferLenBits:I
.field bufferLenTrits:I
.field public c:I
.field public db:I
.field public df:I
.field public df1:I
.field public df2:I
.field public df3:I
.field public dg:I
.field public dm0:I
.field public dr:I
.field public dr1:I
.field public dr2:I
.field public dr3:I
.field public fastFp:Z
.field public hashAlg:Lorg/spongycastle/crypto/Digest;
.field public hashSeed:Z
.field llen:I
.field public maxMsgLenBytes:I
.field public minCallsMask:I
.field public minCallsR:I
.field public oid:[B
.field public pkLen:I
.field public polyType:I
.field public q:I
.field public sparse:Z
# direct methods
.method static constructor <clinit>()V
.registers 16
.prologue
.line 26
new-instance v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
const/16 v1, 0x43f
const/16 v2, 0x800
const/16 v3, 0x78
const/16 v4, 0x78
const/16 v5, 0x100
const/16 v6, 0xd
const/16 v7, 0x19
const/16 v8, 0xe
const/4 v9, 0x1
const/4 v10, 0x3
new-array v10, v10, [B
fill-array-data v10, :array_10c
const/4 v11, 0x1
const/4 v12, 0x0
new-instance v13, Lorg/spongycastle/crypto/digests/SHA512Digest;
invoke-direct {v13}, Lorg/spongycastle/crypto/digests/SHA512Digest;-><init>()V
invoke-direct/range {v0 .. v13}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;-><init>(IIIIIIIIZ[BZZLorg/spongycastle/crypto/Digest;)V
sput-object v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->EES1087EP2:Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.line 31
new-instance v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
const/16 v1, 0x493
const/16 v2, 0x800
const/16 v3, 0x6a
const/16 v4, 0x6a
const/16 v5, 0x100
const/16 v6, 0xd
const/16 v7, 0x14
const/16 v8, 0xf
const/4 v9, 0x1
const/4 v10, 0x3
new-array v10, v10, [B
fill-array-data v10, :array_112
const/4 v11, 0x1
const/4 v12, 0x0
new-instance v13, Lorg/spongycastle/crypto/digests/SHA512Digest;
invoke-direct {v13}, Lorg/spongycastle/crypto/digests/SHA512Digest;-><init>()V
invoke-direct/range {v0 .. v13}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;-><init>(IIIIIIIIZ[BZZLorg/spongycastle/crypto/Digest;)V
sput-object v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->EES1171EP1:Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.line 36
new-instance v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
const/16 v1, 0x5db
const/16 v2, 0x800
const/16 v3, 0x4f
const/16 v4, 0x4f
const/16 v5, 0x100
const/16 v6, 0xd
const/16 v7, 0x11
const/16 v8, 0x13
const/4 v9, 0x1
const/4 v10, 0x3
new-array v10, v10, [B
fill-array-data v10, :array_118
const/4 v11, 0x1
const/4 v12, 0x0
new-instance v13, Lorg/spongycastle/crypto/digests/SHA512Digest;
invoke-direct {v13}, Lorg/spongycastle/crypto/digests/SHA512Digest;-><init>()V
invoke-direct/range {v0 .. v13}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;-><init>(IIIIIIIIZ[BZZLorg/spongycastle/crypto/Digest;)V
sput-object v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->EES1499EP1:Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.line 41
new-instance v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
const/16 v1, 0x1b7
const/16 v2, 0x800
const/16 v3, 0x92
const/16 v4, 0x82
const/16 v5, 0x80
const/16 v6, 0x9
const/16 v7, 0x20
const/16 v8, 0x9
const/4 v9, 0x1
const/4 v10, 0x3
new-array v10, v10, [B
fill-array-data v10, :array_11e
const/4 v11, 0x1
const/4 v12, 0x0
new-instance v13, Lorg/spongycastle/crypto/digests/SHA256Digest;
invoke-direct {v13}, Lorg/spongycastle/crypto/digests/SHA256Digest;-><init>()V
invoke-direct/range {v0 .. v13}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;-><init>(IIIIIIIIZ[BZZLorg/spongycastle/crypto/Digest;)V
sput-object v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->APR2011_439:Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.line 46
new-instance v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
const/16 v1, 0x1b7
const/16 v2, 0x800
const/16 v3, 0x9
const/16 v4, 0x8
const/4 v5, 0x5
const/16 v6, 0x82
const/16 v7, 0x80
const/16 v8, 0x9
const/16 v9, 0x20
const/16 v10, 0x9
const/4 v11, 0x1
const/4 v12, 0x3
new-array v12, v12, [B
fill-array-data v12, :array_124
const/4 v13, 0x1
const/4 v14, 0x1
new-instance v15, Lorg/spongycastle/crypto/digests/SHA256Digest;
invoke-direct {v15}, Lorg/spongycastle/crypto/digests/SHA256Digest;-><init>()V
invoke-direct/range {v0 .. v15}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;-><init>(IIIIIIIIIIZ[BZZLorg/spongycastle/crypto/Digest;)V
sput-object v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->APR2011_439_FAST:Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.line 51
new-instance v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
const/16 v1, 0x2e7
const/16 v2, 0x800
const/16 v3, 0xf8
const/16 v4, 0xdc
const/16 v5, 0x100
const/16 v6, 0xa
const/16 v7, 0x1b
const/16 v8, 0xe
const/4 v9, 0x1
const/4 v10, 0x3
new-array v10, v10, [B
fill-array-data v10, :array_12a
const/4 v11, 0x0
const/4 v12, 0x0
new-instance v13, Lorg/spongycastle/crypto/digests/SHA512Digest;
invoke-direct {v13}, Lorg/spongycastle/crypto/digests/SHA512Digest;-><init>()V
invoke-direct/range {v0 .. v13}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;-><init>(IIIIIIIIZ[BZZLorg/spongycastle/crypto/Digest;)V
sput-object v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->APR2011_743:Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.line 56
new-instance v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
const/16 v1, 0x2e7
const/16 v2, 0x800
const/16 v3, 0xb
const/16 v4, 0xb
const/16 v5, 0xf
const/16 v6, 0xdc
const/16 v7, 0x100
const/16 v8, 0xa
const/16 v9, 0x1b
const/16 v10, 0xe
const/4 v11, 0x1
const/4 v12, 0x3
new-array v12, v12, [B
fill-array-data v12, :array_130
const/4 v13, 0x0
const/4 v14, 0x1
new-instance v15, Lorg/spongycastle/crypto/digests/SHA512Digest;
invoke-direct {v15}, Lorg/spongycastle/crypto/digests/SHA512Digest;-><init>()V
invoke-direct/range {v0 .. v15}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;-><init>(IIIIIIIIIIZ[BZZLorg/spongycastle/crypto/Digest;)V
sput-object v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->APR2011_743_FAST:Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
return-void
.line 26
nop
:array_10c
.array-data 1
0x0t
0x6t
0x3t
.end array-data
.line 31
:array_112
.array-data 1
0x0t
0x6t
0x4t
.end array-data
.line 36
:array_118
.array-data 1
0x0t
0x6t
0x5t
.end array-data
.line 41
:array_11e
.array-data 1
0x0t
0x7t
0x65t
.end array-data
.line 46
:array_124
.array-data 1
0x0t
0x7t
0x65t
.end array-data
.line 51
:array_12a
.array-data 1
0x0t
0x7t
0x69t
.end array-data
.line 56
:array_130
.array-data 1
0x0t
0x7t
0x69t
.end array-data
.end method
.method public constructor <init>(IIIIIIIIIIZ[BZZLorg/spongycastle/crypto/Digest;)V
.registers 18
.prologue
.line 139
new-instance v1, Ljava/security/SecureRandom;
invoke-direct {v1}, Ljava/security/SecureRandom;-><init>()V
invoke-direct {p0, v1, p7}, Lorg/spongycastle/crypto/KeyGenerationParameters;-><init>(Ljava/security/SecureRandom;I)V
.line 141
iput p1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
.line 142
iput p2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->q:I
.line 143
iput p3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df1:I
.line 144
iput p4, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df2:I
.line 145
iput p5, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df3:I
.line 146
iput p7, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->db:I
.line 147
iput p6, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dm0:I
.line 148
iput p8, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->c:I
.line 149
iput p9, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsR:I
.line 150
iput p10, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsMask:I
.line 151
iput-boolean p11, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashSeed:Z
.line 152
iput-object p12, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->oid:[B
.line 153
iput-boolean p13, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->sparse:Z
.line 154
move/from16 v0, p14
iput-boolean v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->fastFp:Z
.line 155
const/4 v1, 0x1
iput v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->polyType:I
.line 156
move-object/from16 v0, p15
iput-object v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
.line 157
invoke-direct {p0}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->init()V
.line 158
return-void
.end method
.method public constructor <init>(IIIIIIIIZ[BZZLorg/spongycastle/crypto/Digest;)V
.registers 15
.prologue
.line 100
new-instance v0, Ljava/security/SecureRandom;
invoke-direct {v0}, Ljava/security/SecureRandom;-><init>()V
invoke-direct {p0, v0, p5}, Lorg/spongycastle/crypto/KeyGenerationParameters;-><init>(Ljava/security/SecureRandom;I)V
.line 101
iput p1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
.line 102
iput p2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->q:I
.line 103
iput p3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df:I
.line 104
iput p5, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->db:I
.line 105
iput p4, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dm0:I
.line 106
iput p6, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->c:I
.line 107
iput p7, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsR:I
.line 108
iput p8, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsMask:I
.line 109
iput-boolean p9, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashSeed:Z
.line 110
iput-object p10, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->oid:[B
.line 111
iput-boolean p11, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->sparse:Z
.line 112
iput-boolean p12, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->fastFp:Z
.line 113
const/4 v0, 0x0
iput v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->polyType:I
.line 114
iput-object p13, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
.line 115
invoke-direct {p0}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->init()V
.line 116
return-void
.end method
.method public constructor <init>(Ljava/io/InputStream;)V
.registers 4
.prologue
.line 183
new-instance v0, Ljava/security/SecureRandom;
invoke-direct {v0}, Ljava/security/SecureRandom;-><init>()V
const/4 v1, -0x1
invoke-direct {p0, v0, v1}, Lorg/spongycastle/crypto/KeyGenerationParameters;-><init>(Ljava/security/SecureRandom;I)V
.line 184
new-instance v0, Ljava/io/DataInputStream;
invoke-direct {v0, p1}, Ljava/io/DataInputStream;-><init>(Ljava/io/InputStream;)V
.line 185
invoke-virtual {v0}, Ljava/io/DataInputStream;->readInt()I
move-result v1
iput v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
.line 186
invoke-virtual {v0}, Ljava/io/DataInputStream;->readInt()I
move-result v1
iput v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->q:I
.line 187
invoke-virtual {v0}, Ljava/io/DataInputStream;->readInt()I
move-result v1
iput v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df:I
.line 188
invoke-virtual {v0}, Ljava/io/DataInputStream;->readInt()I
move-result v1
iput v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df1:I
.line 189
invoke-virtual {v0}, Ljava/io/DataInputStream;->readInt()I
move-result v1
iput v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df2:I
.line 190
invoke-virtual {v0}, Ljava/io/DataInputStream;->readInt()I
move-result v1
iput v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df3:I
.line 191
invoke-virtual {v0}, Ljava/io/DataInputStream;->readInt()I
move-result v1
iput v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->db:I
.line 192
invoke-virtual {v0}, Ljava/io/DataInputStream;->readInt()I
move-result v1
iput v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dm0:I
.line 193
invoke-virtual {v0}, Ljava/io/DataInputStream;->readInt()I
move-result v1
iput v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->c:I
.line 194
invoke-virtual {v0}, Ljava/io/DataInputStream;->readInt()I
move-result v1
iput v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsR:I
.line 195
invoke-virtual {v0}, Ljava/io/DataInputStream;->readInt()I
move-result v1
iput v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsMask:I
.line 196
invoke-virtual {v0}, Ljava/io/DataInputStream;->readBoolean()Z
move-result v1
iput-boolean v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashSeed:Z
.line 197
const/4 v1, 0x3
new-array v1, v1, [B
iput-object v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->oid:[B
.line 198
iget-object v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->oid:[B
invoke-virtual {v0, v1}, Ljava/io/DataInputStream;->read([B)I
.line 199
invoke-virtual {v0}, Ljava/io/DataInputStream;->readBoolean()Z
move-result v1
iput-boolean v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->sparse:Z
.line 200
invoke-virtual {v0}, Ljava/io/DataInputStream;->readBoolean()Z
move-result v1
iput-boolean v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->fastFp:Z
.line 201
invoke-virtual {v0}, Ljava/io/DataInputStream;->read()I
move-result v1
iput v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->polyType:I
.line 203
invoke-virtual {v0}, Ljava/io/DataInputStream;->readUTF()Ljava/lang/String;
move-result-object v0
.line 205
const-string v1, "SHA-512"
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_89
.line 207
new-instance v0, Lorg/spongycastle/crypto/digests/SHA512Digest;
invoke-direct {v0}, Lorg/spongycastle/crypto/digests/SHA512Digest;-><init>()V
iput-object v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
.line 214
:cond_85
:goto_85
invoke-direct {p0}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->init()V
.line 215
return-void
.line 209
:cond_89
const-string v1, "SHA-256"
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_85
.line 211
new-instance v0, Lorg/spongycastle/crypto/digests/SHA256Digest;
invoke-direct {v0}, Lorg/spongycastle/crypto/digests/SHA256Digest;-><init>()V
iput-object v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
goto :goto_85
.end method
.method private init()V
.registers 3
.prologue
.line 162
iget v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df:I
iput v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr:I
.line 163
iget v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df1:I
iput v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr1:I
.line 164
iget v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df2:I
iput v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr2:I
.line 165
iget v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df3:I
iput v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr3:I
.line 166
iget v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
div-int/lit8 v0, v0, 0x3
iput v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dg:I
.line 167
const/4 v0, 0x1
iput v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->llen:I
.line 168
iget v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
mul-int/lit8 v0, v0, 0x3
div-int/lit8 v0, v0, 0x2
div-int/lit8 v0, v0, 0x8
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->llen:I
sub-int/2addr v0, v1
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->db:I
div-int/lit8 v1, v1, 0x8
sub-int/2addr v0, v1
add-int/lit8 v0, v0, -0x1
iput v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->maxMsgLenBytes:I
.line 169
iget v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
mul-int/lit8 v0, v0, 0x3
div-int/lit8 v0, v0, 0x2
add-int/lit8 v0, v0, 0x7
div-int/lit8 v0, v0, 0x8
shl-int/lit8 v0, v0, 0x3
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->bufferLenBits:I
.line 170
iget v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
add-int/lit8 v0, v0, -0x1
iput v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->bufferLenTrits:I
.line 171
iget v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->db:I
iput v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->pkLen:I
.line 172
return-void
.end method
# virtual methods
.method public bridge synthetic clone()Ljava/lang/Object;
.registers 2
.prologue
.line 19
invoke-virtual {p0}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->clone()Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
move-result-object v0
return-object v0
.end method
.method public clone()Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.registers 18
.prologue
.line 231
move-object/from16 v0, p0
iget v1, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->polyType:I
if-nez v1, :cond_40
.line 233
new-instance v1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
move-object/from16 v0, p0
iget v2, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
move-object/from16 v0, p0
iget v3, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->q:I
move-object/from16 v0, p0
iget v4, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df:I
move-object/from16 v0, p0
iget v5, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dm0:I
move-object/from16 v0, p0
iget v6, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->db:I
move-object/from16 v0, p0
iget v7, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->c:I
move-object/from16 v0, p0
iget v8, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsR:I
move-object/from16 v0, p0
iget v9, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsMask:I
move-object/from16 v0, p0
iget-boolean v10, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashSeed:Z
move-object/from16 v0, p0
iget-object v11, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->oid:[B
move-object/from16 v0, p0
iget-boolean v12, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->sparse:Z
move-object/from16 v0, p0
iget-boolean v13, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->fastFp:Z
move-object/from16 v0, p0
iget-object v14, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
invoke-direct/range {v1 .. v14}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;-><init>(IIIIIIIIZ[BZZLorg/spongycastle/crypto/Digest;)V
.line 237
:goto_3f
return-object v1
:cond_40
new-instance v1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
move-object/from16 v0, p0
iget v2, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
move-object/from16 v0, p0
iget v3, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->q:I
move-object/from16 v0, p0
iget v4, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df1:I
move-object/from16 v0, p0
iget v5, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df2:I
move-object/from16 v0, p0
iget v6, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df3:I
move-object/from16 v0, p0
iget v7, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dm0:I
move-object/from16 v0, p0
iget v8, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->db:I
move-object/from16 v0, p0
iget v9, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->c:I
move-object/from16 v0, p0
iget v10, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsR:I
move-object/from16 v0, p0
iget v11, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsMask:I
move-object/from16 v0, p0
iget-boolean v12, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashSeed:Z
move-object/from16 v0, p0
iget-object v13, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->oid:[B
move-object/from16 v0, p0
iget-boolean v14, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->sparse:Z
move-object/from16 v0, p0
iget-boolean v15, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->fastFp:Z
move-object/from16 v0, p0
iget-object v0, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
move-object/from16 v16, v0
invoke-direct/range {v1 .. v16}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;-><init>(IIIIIIIIIIZ[BZZLorg/spongycastle/crypto/Digest;)V
goto :goto_3f
.end method
.method public equals(Ljava/lang/Object;)Z
.registers 6
.prologue
const/4 v0, 0x1
const/4 v1, 0x0
.line 317
if-ne p0, p1, :cond_5
.line 445
:cond_4
:goto_4
return v0
.line 321
:cond_5
if-nez p1, :cond_9
move v0, v1
.line 323
goto :goto_4
.line 325
:cond_9
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v2
invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v3
if-eq v2, v3, :cond_15
move v0, v1
.line 327
goto :goto_4
.line 329
:cond_15
check-cast p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;
.line 330
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
if-eq v2, v3, :cond_1f
move v0, v1
.line 332
goto :goto_4
.line 334
:cond_1f
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->bufferLenBits:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->bufferLenBits:I
if-eq v2, v3, :cond_27
move v0, v1
.line 336
goto :goto_4
.line 338
:cond_27
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->bufferLenTrits:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->bufferLenTrits:I
if-eq v2, v3, :cond_2f
move v0, v1
.line 340
goto :goto_4
.line 342
:cond_2f
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->c:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->c:I
if-eq v2, v3, :cond_37
move v0, v1
.line 344
goto :goto_4
.line 346
:cond_37
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->db:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->db:I
if-eq v2, v3, :cond_3f
move v0, v1
.line 348
goto :goto_4
.line 350
:cond_3f
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df:I
if-eq v2, v3, :cond_47
move v0, v1
.line 352
goto :goto_4
.line 354
:cond_47
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df1:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df1:I
if-eq v2, v3, :cond_4f
move v0, v1
.line 356
goto :goto_4
.line 358
:cond_4f
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df2:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df2:I
if-eq v2, v3, :cond_57
move v0, v1
.line 360
goto :goto_4
.line 362
:cond_57
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df3:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df3:I
if-eq v2, v3, :cond_5f
move v0, v1
.line 364
goto :goto_4
.line 366
:cond_5f
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dg:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dg:I
if-eq v2, v3, :cond_67
move v0, v1
.line 368
goto :goto_4
.line 370
:cond_67
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dm0:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dm0:I
if-eq v2, v3, :cond_6f
move v0, v1
.line 372
goto :goto_4
.line 374
:cond_6f
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr:I
if-eq v2, v3, :cond_77
move v0, v1
.line 376
goto :goto_4
.line 378
:cond_77
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr1:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr1:I
if-eq v2, v3, :cond_7f
move v0, v1
.line 380
goto :goto_4
.line 382
:cond_7f
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr2:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr2:I
if-eq v2, v3, :cond_88
move v0, v1
.line 384
goto/16 :goto_4
.line 386
:cond_88
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr3:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr3:I
if-eq v2, v3, :cond_91
move v0, v1
.line 388
goto/16 :goto_4
.line 390
:cond_91
iget-boolean v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->fastFp:Z
iget-boolean v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->fastFp:Z
if-eq v2, v3, :cond_9a
move v0, v1
.line 392
goto/16 :goto_4
.line 394
:cond_9a
iget-object v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
if-nez v2, :cond_a5
.line 396
iget-object v2, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
if-eqz v2, :cond_ba
move v0, v1
.line 398
goto/16 :goto_4
.line 401
:cond_a5
iget-object v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
invoke-interface {v2}, Lorg/spongycastle/crypto/Digest;->getAlgorithmName()Ljava/lang/String;
move-result-object v2
iget-object v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
invoke-interface {v3}, Lorg/spongycastle/crypto/Digest;->getAlgorithmName()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-nez v2, :cond_ba
move v0, v1
.line 403
goto/16 :goto_4
.line 405
:cond_ba
iget-boolean v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashSeed:Z
iget-boolean v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashSeed:Z
if-eq v2, v3, :cond_c3
move v0, v1
.line 407
goto/16 :goto_4
.line 409
:cond_c3
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->llen:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->llen:I
if-eq v2, v3, :cond_cc
move v0, v1
.line 411
goto/16 :goto_4
.line 413
:cond_cc
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->maxMsgLenBytes:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->maxMsgLenBytes:I
if-eq v2, v3, :cond_d5
move v0, v1
.line 415
goto/16 :goto_4
.line 417
:cond_d5
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsMask:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsMask:I
if-eq v2, v3, :cond_de
move v0, v1
.line 419
goto/16 :goto_4
.line 421
:cond_de
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsR:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsR:I
if-eq v2, v3, :cond_e7
move v0, v1
.line 423
goto/16 :goto_4
.line 425
:cond_e7
iget-object v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->oid:[B
iget-object v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->oid:[B
invoke-static {v2, v3}, Ljava/util/Arrays;->equals([B[B)Z
move-result v2
if-nez v2, :cond_f4
move v0, v1
.line 427
goto/16 :goto_4
.line 429
:cond_f4
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->pkLen:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->pkLen:I
if-eq v2, v3, :cond_fd
move v0, v1
.line 431
goto/16 :goto_4
.line 433
:cond_fd
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->polyType:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->polyType:I
if-eq v2, v3, :cond_106
move v0, v1
.line 435
goto/16 :goto_4
.line 437
:cond_106
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->q:I
iget v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->q:I
if-eq v2, v3, :cond_10f
move v0, v1
.line 439
goto/16 :goto_4
.line 441
:cond_10f
iget-boolean v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->sparse:Z
iget-boolean v3, p1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->sparse:Z
if-eq v2, v3, :cond_4
move v0, v1
.line 443
goto/16 :goto_4
.end method
.method public getEncryptionParameters()Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionParameters;
.registers 18
.prologue
.line 219
move-object/from16 v0, p0
iget v1, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->polyType:I
if-nez v1, :cond_40
.line 221
new-instance v1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionParameters;
move-object/from16 v0, p0
iget v2, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
move-object/from16 v0, p0
iget v3, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->q:I
move-object/from16 v0, p0
iget v4, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df:I
move-object/from16 v0, p0
iget v5, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dm0:I
move-object/from16 v0, p0
iget v6, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->db:I
move-object/from16 v0, p0
iget v7, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->c:I
move-object/from16 v0, p0
iget v8, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsR:I
move-object/from16 v0, p0
iget v9, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsMask:I
move-object/from16 v0, p0
iget-boolean v10, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashSeed:Z
move-object/from16 v0, p0
iget-object v11, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->oid:[B
move-object/from16 v0, p0
iget-boolean v12, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->sparse:Z
move-object/from16 v0, p0
iget-boolean v13, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->fastFp:Z
move-object/from16 v0, p0
iget-object v14, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
invoke-direct/range {v1 .. v14}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionParameters;-><init>(IIIIIIIIZ[BZZLorg/spongycastle/crypto/Digest;)V
.line 225
:goto_3f
return-object v1
:cond_40
new-instance v1, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionParameters;
move-object/from16 v0, p0
iget v2, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
move-object/from16 v0, p0
iget v3, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->q:I
move-object/from16 v0, p0
iget v4, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df1:I
move-object/from16 v0, p0
iget v5, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df2:I
move-object/from16 v0, p0
iget v6, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df3:I
move-object/from16 v0, p0
iget v7, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dm0:I
move-object/from16 v0, p0
iget v8, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->db:I
move-object/from16 v0, p0
iget v9, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->c:I
move-object/from16 v0, p0
iget v10, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsR:I
move-object/from16 v0, p0
iget v11, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsMask:I
move-object/from16 v0, p0
iget-boolean v12, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashSeed:Z
move-object/from16 v0, p0
iget-object v13, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->oid:[B
move-object/from16 v0, p0
iget-boolean v14, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->sparse:Z
move-object/from16 v0, p0
iget-boolean v15, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->fastFp:Z
move-object/from16 v0, p0
iget-object v0, v0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
move-object/from16 v16, v0
invoke-direct/range {v1 .. v16}, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionParameters;-><init>(IIIIIIIIIIZ[BZZLorg/spongycastle/crypto/Digest;)V
goto :goto_3f
.end method
.method public getMaxMessageLength()I
.registers 2
.prologue
.line 248
iget v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->maxMsgLenBytes:I
return v0
.end method
.method public hashCode()I
.registers 5
.prologue
const/16 v2, 0x4d5
const/16 v1, 0x4cf
.line 285
iget v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
add-int/lit8 v0, v0, 0x1f
.line 286
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->bufferLenBits:I
add-int/2addr v0, v3
.line 287
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->bufferLenTrits:I
add-int/2addr v0, v3
.line 288
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->c:I
add-int/2addr v0, v3
.line 289
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->db:I
add-int/2addr v0, v3
.line 290
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df:I
add-int/2addr v0, v3
.line 291
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df1:I
add-int/2addr v0, v3
.line 292
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df2:I
add-int/2addr v0, v3
.line 293
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df3:I
add-int/2addr v0, v3
.line 294
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dg:I
add-int/2addr v0, v3
.line 295
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dm0:I
add-int/2addr v0, v3
.line 296
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr:I
add-int/2addr v0, v3
.line 297
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr1:I
add-int/2addr v0, v3
.line 298
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr2:I
add-int/2addr v0, v3
.line 299
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dr3:I
add-int/2addr v0, v3
.line 300
mul-int/lit8 v3, v0, 0x1f
iget-boolean v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->fastFp:Z
if-eqz v0, :cond_9a
move v0, v1
:goto_55
add-int/2addr v0, v3
.line 301
mul-int/lit8 v3, v0, 0x1f
iget-object v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
if-nez v0, :cond_9c
const/4 v0, 0x0
:goto_5d
add-int/2addr v0, v3
.line 302
mul-int/lit8 v3, v0, 0x1f
iget-boolean v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashSeed:Z
if-eqz v0, :cond_a7
move v0, v1
:goto_65
add-int/2addr v0, v3
.line 303
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->llen:I
add-int/2addr v0, v3
.line 304
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->maxMsgLenBytes:I
add-int/2addr v0, v3
.line 305
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsMask:I
add-int/2addr v0, v3
.line 306
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsR:I
add-int/2addr v0, v3
.line 307
mul-int/lit8 v0, v0, 0x1f
iget-object v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->oid:[B
invoke-static {v3}, Ljava/util/Arrays;->hashCode([B)I
move-result v3
add-int/2addr v0, v3
.line 308
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->pkLen:I
add-int/2addr v0, v3
.line 309
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->polyType:I
add-int/2addr v0, v3
.line 310
mul-int/lit8 v0, v0, 0x1f
iget v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->q:I
add-int/2addr v0, v3
.line 311
mul-int/lit8 v0, v0, 0x1f
iget-boolean v3, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->sparse:Z
if-eqz v3, :cond_a9
:goto_98
add-int/2addr v0, v1
.line 312
return v0
:cond_9a
move v0, v2
.line 300
goto :goto_55
.line 301
:cond_9c
iget-object v0, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
invoke-interface {v0}, Lorg/spongycastle/crypto/Digest;->getAlgorithmName()Ljava/lang/String;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/String;->hashCode()I
move-result v0
goto :goto_5d
:cond_a7
move v0, v2
.line 302
goto :goto_65
:cond_a9
move v1, v2
.line 311
goto :goto_98
.end method
.method public toString()Ljava/lang/String;
.registers 4
.prologue
.line 450
new-instance v0, Ljava/lang/StringBuilder;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "EncryptionParameters(N="
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " q="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->q:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
.line 451
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->polyType:I
if-nez v1, :cond_bd
.line 453
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, " polyType=SIMPLE df="
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 459
:goto_3a
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, " dm0="
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dm0:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " db="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->db:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " c="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->c:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " minCallsR="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsR:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " minCallsMask="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsMask:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " hashSeed="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget-boolean v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashSeed:Z
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " hashAlg="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget-object v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " oid="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget-object v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->oid:[B
.line 460
invoke-static {v2}, Ljava/util/Arrays;->toString([B)Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " sparse="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget-boolean v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->sparse:Z
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, ")"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
.line 459
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 461
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.line 457
:cond_bd
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, " polyType=PRODUCT df1="
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df1:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " df2="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df2:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " df3="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget v2, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df3:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto/16 :goto_3a
.end method
.method public writeTo(Ljava/io/OutputStream;)V
.registers 4
.prologue
.line 260
new-instance v0, Ljava/io/DataOutputStream;
invoke-direct {v0, p1}, Ljava/io/DataOutputStream;-><init>(Ljava/io/OutputStream;)V
.line 261
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->N:I
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeInt(I)V
.line 262
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->q:I
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeInt(I)V
.line 263
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df:I
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeInt(I)V
.line 264
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df1:I
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeInt(I)V
.line 265
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df2:I
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeInt(I)V
.line 266
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->df3:I
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeInt(I)V
.line 267
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->db:I
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeInt(I)V
.line 268
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->dm0:I
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeInt(I)V
.line 269
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->c:I
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeInt(I)V
.line 270
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsR:I
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeInt(I)V
.line 271
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->minCallsMask:I
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeInt(I)V
.line 272
iget-boolean v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashSeed:Z
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeBoolean(Z)V
.line 273
iget-object v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->oid:[B
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->write([B)V
.line 274
iget-boolean v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->sparse:Z
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeBoolean(Z)V
.line 275
iget-boolean v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->fastFp:Z
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeBoolean(Z)V
.line 276
iget v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->polyType:I
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->write(I)V
.line 277
iget-object v1, p0, Lorg/spongycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters;->hashAlg:Lorg/spongycastle/crypto/Digest;
invoke-interface {v1}, Lorg/spongycastle/crypto/Digest;->getAlgorithmName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/io/DataOutputStream;->writeUTF(Ljava/lang/String;)V
.line 278
return-void
.end method