Skip to content

Commit 424d793

Browse files
author
gefeili
committed
Centralise OperatorHelper construction in operator/jcajce in package-private OperatorUtils factory methods
Add createDefaultHelper/createProviderHelper/createNamedHelper to the package-private operator/jcajce OperatorUtils. Collapses 27 inlined new OperatorHelper(new *JcaJceHelper(...)) sites across 9 builder/wrapper classes and removes the now-stranded JcaJceHelper-family imports. Behaviour-preserving. JceInputDecryptorProviderBuilder is left as-is — it holds a raw JcaJceHelper, not an OperatorHelper.
1 parent 1425e04 commit 424d793

10 files changed

Lines changed: 46 additions & 54 deletions

pkix/src/main/java/org/bouncycastle/operator/jcajce/JcaContentSignerBuilder.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,6 @@
3636
import org.bouncycastle.jcajce.CompositePrivateKey;
3737
import org.bouncycastle.jcajce.io.OutputStreamFactory;
3838
import org.bouncycastle.jcajce.spec.CompositeAlgorithmSpec;
39-
import org.bouncycastle.jcajce.util.DefaultJcaJceHelper;
40-
import org.bouncycastle.jcajce.util.NamedJcaJceHelper;
41-
import org.bouncycastle.jcajce.util.ProviderJcaJceHelper;
4239
import org.bouncycastle.operator.ContentSigner;
4340
import org.bouncycastle.operator.FixedLengthContentSigner;
4441
import org.bouncycastle.operator.DefaultDigestAlgorithmIdentifierFinder;
@@ -76,7 +73,7 @@ public class JcaContentSignerBuilder
7673
private final String signatureAlgorithm;
7774
private final AlgorithmIdentifier signatureDigestAlgorithm;
7875

79-
private OperatorHelper helper = new OperatorHelper(new DefaultJcaJceHelper());
76+
private OperatorHelper helper = OperatorUtils.createDefaultHelper();
8077
private SecureRandom random;
8178

8279
private AlgorithmIdentifier sigAlgId;
@@ -183,14 +180,14 @@ else if (sigParamSpec instanceof CompositeAlgorithmSpec)
183180

184181
public JcaContentSignerBuilder setProvider(Provider provider)
185182
{
186-
this.helper = new OperatorHelper(new ProviderJcaJceHelper(provider));
183+
this.helper = OperatorUtils.createProviderHelper(provider);
187184

188185
return this;
189186
}
190187

191188
public JcaContentSignerBuilder setProvider(String providerName)
192189
{
193-
this.helper = new OperatorHelper(new NamedJcaJceHelper(providerName));
190+
this.helper = OperatorUtils.createNamedHelper(providerName);
194191

195192
return this;
196193
}

pkix/src/main/java/org/bouncycastle/operator/jcajce/JcaContentVerifierProviderBuilder.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,6 @@
2020
import org.bouncycastle.cert.jcajce.JcaX509CertificateHolder;
2121
import org.bouncycastle.jcajce.CompositePublicKey;
2222
import org.bouncycastle.jcajce.io.OutputStreamFactory;
23-
import org.bouncycastle.jcajce.util.DefaultJcaJceHelper;
24-
import org.bouncycastle.jcajce.util.NamedJcaJceHelper;
25-
import org.bouncycastle.jcajce.util.ProviderJcaJceHelper;
2623
import org.bouncycastle.operator.ContentVerifier;
2724
import org.bouncycastle.operator.ContentVerifierProvider;
2825
import org.bouncycastle.operator.OperatorCreationException;
@@ -32,22 +29,22 @@
3229

3330
public class JcaContentVerifierProviderBuilder
3431
{
35-
private OperatorHelper helper = new OperatorHelper(new DefaultJcaJceHelper());
32+
private OperatorHelper helper = OperatorUtils.createDefaultHelper();
3633

3734
public JcaContentVerifierProviderBuilder()
3835
{
3936
}
4037

4138
public JcaContentVerifierProviderBuilder setProvider(Provider provider)
4239
{
43-
this.helper = new OperatorHelper(new ProviderJcaJceHelper(provider));
40+
this.helper = OperatorUtils.createProviderHelper(provider);
4441

4542
return this;
4643
}
4744

4845
public JcaContentVerifierProviderBuilder setProvider(String providerName)
4946
{
50-
this.helper = new OperatorHelper(new NamedJcaJceHelper(providerName));
47+
this.helper = OperatorUtils.createNamedHelper(providerName);
5148

5249
return this;
5350
}

pkix/src/main/java/org/bouncycastle/operator/jcajce/JcaDigestCalculatorProviderBuilder.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,14 @@
77
import java.security.Provider;
88

99
import org.bouncycastle.asn1.x509.AlgorithmIdentifier;
10-
import org.bouncycastle.jcajce.util.DefaultJcaJceHelper;
1110
import org.bouncycastle.jcajce.util.JcaJceHelper;
12-
import org.bouncycastle.jcajce.util.NamedJcaJceHelper;
13-
import org.bouncycastle.jcajce.util.ProviderJcaJceHelper;
1411
import org.bouncycastle.operator.DigestCalculator;
1512
import org.bouncycastle.operator.DigestCalculatorProvider;
1613
import org.bouncycastle.operator.OperatorCreationException;
1714

1815
public class JcaDigestCalculatorProviderBuilder
1916
{
20-
private OperatorHelper helper = new OperatorHelper(new DefaultJcaJceHelper());
17+
private OperatorHelper helper = OperatorUtils.createDefaultHelper();
2118

2219
public JcaDigestCalculatorProviderBuilder()
2320
{
@@ -33,14 +30,14 @@ public JcaDigestCalculatorProviderBuilder setHelper(JcaJceHelper helper)
3330

3431
public JcaDigestCalculatorProviderBuilder setProvider(Provider provider)
3532
{
36-
this.helper = new OperatorHelper(new ProviderJcaJceHelper(provider));
33+
this.helper = OperatorUtils.createProviderHelper(provider);
3734

3835
return this;
3936
}
4037

4138
public JcaDigestCalculatorProviderBuilder setProvider(String providerName)
4239
{
43-
this.helper = new OperatorHelper(new NamedJcaJceHelper(providerName));
40+
this.helper = OperatorUtils.createNamedHelper(providerName);
4441

4542
return this;
4643
}

pkix/src/main/java/org/bouncycastle/operator/jcajce/JceAsymmetricKeyUnwrapper.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,17 +19,14 @@
1919
import org.bouncycastle.asn1.ASN1ObjectIdentifier;
2020
import org.bouncycastle.asn1.oiw.OIWObjectIdentifiers;
2121
import org.bouncycastle.asn1.x509.AlgorithmIdentifier;
22-
import org.bouncycastle.jcajce.util.DefaultJcaJceHelper;
23-
import org.bouncycastle.jcajce.util.NamedJcaJceHelper;
24-
import org.bouncycastle.jcajce.util.ProviderJcaJceHelper;
2522
import org.bouncycastle.operator.AsymmetricKeyUnwrapper;
2623
import org.bouncycastle.operator.GenericKey;
2724
import org.bouncycastle.operator.OperatorException;
2825

2926
public class JceAsymmetricKeyUnwrapper
3027
extends AsymmetricKeyUnwrapper
3128
{
32-
private OperatorHelper helper = new OperatorHelper(new DefaultJcaJceHelper());
29+
private OperatorHelper helper = OperatorUtils.createDefaultHelper();
3330
private Map extraMappings = new HashMap();
3431
private PrivateKey privKey;
3532
private boolean unwrappedKeyMustBeEncodable;
@@ -43,14 +40,14 @@ public JceAsymmetricKeyUnwrapper(AlgorithmIdentifier algorithmIdentifier, Privat
4340

4441
public JceAsymmetricKeyUnwrapper setProvider(Provider provider)
4542
{
46-
this.helper = new OperatorHelper(new ProviderJcaJceHelper(provider));
43+
this.helper = OperatorUtils.createProviderHelper(provider);
4744

4845
return this;
4946
}
5047

5148
public JceAsymmetricKeyUnwrapper setProvider(String providerName)
5249
{
53-
this.helper = new OperatorHelper(new NamedJcaJceHelper(providerName));
50+
this.helper = OperatorUtils.createNamedHelper(providerName);
5451

5552
return this;
5653
}

pkix/src/main/java/org/bouncycastle/operator/jcajce/JceAsymmetricKeyWrapper.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,6 @@
4343
import org.bouncycastle.crypto.CryptoServicesRegistrar;
4444
import org.bouncycastle.jcajce.spec.GOST28147WrapParameterSpec;
4545
import org.bouncycastle.jcajce.spec.UserKeyingMaterialSpec;
46-
import org.bouncycastle.jcajce.util.DefaultJcaJceHelper;
47-
import org.bouncycastle.jcajce.util.NamedJcaJceHelper;
48-
import org.bouncycastle.jcajce.util.ProviderJcaJceHelper;
4946
import org.bouncycastle.operator.AsymmetricKeyWrapper;
5047
import org.bouncycastle.operator.GenericKey;
5148
import org.bouncycastle.operator.OperatorException;
@@ -71,7 +68,7 @@ static boolean isGOST(ASN1ObjectIdentifier algorithm)
7168
return gostAlgs.contains(algorithm);
7269
}
7370

74-
private OperatorHelper helper = new OperatorHelper(new DefaultJcaJceHelper());
71+
private OperatorHelper helper = OperatorUtils.createDefaultHelper();
7572
private Map extraMappings = new HashMap();
7673
private PublicKey publicKey;
7774
private SecureRandom random;
@@ -131,14 +128,14 @@ public JceAsymmetricKeyWrapper(AlgorithmParameterSpec algorithmParameterSpec, Pu
131128

132129
public JceAsymmetricKeyWrapper setProvider(Provider provider)
133130
{
134-
this.helper = new OperatorHelper(new ProviderJcaJceHelper(provider));
131+
this.helper = OperatorUtils.createProviderHelper(provider);
135132

136133
return this;
137134
}
138135

139136
public JceAsymmetricKeyWrapper setProvider(String providerName)
140137
{
141-
this.helper = new OperatorHelper(new NamedJcaJceHelper(providerName));
138+
this.helper = OperatorUtils.createNamedHelper(providerName);
142139

143140
return this;
144141
}

pkix/src/main/java/org/bouncycastle/operator/jcajce/JceKTSKeyUnwrapper.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,6 @@
1313
import org.bouncycastle.asn1.x509.AlgorithmIdentifier;
1414
import org.bouncycastle.crypto.util.DEROtherInfo;
1515
import org.bouncycastle.jcajce.spec.KTSParameterSpec;
16-
import org.bouncycastle.jcajce.util.DefaultJcaJceHelper;
17-
import org.bouncycastle.jcajce.util.NamedJcaJceHelper;
18-
import org.bouncycastle.jcajce.util.ProviderJcaJceHelper;
1916
import org.bouncycastle.operator.AsymmetricKeyUnwrapper;
2017
import org.bouncycastle.operator.GenericKey;
2118
import org.bouncycastle.operator.OperatorException;
@@ -24,7 +21,7 @@
2421
public class JceKTSKeyUnwrapper
2522
extends AsymmetricKeyUnwrapper
2623
{
27-
private OperatorHelper helper = new OperatorHelper(new DefaultJcaJceHelper());
24+
private OperatorHelper helper = OperatorUtils.createDefaultHelper();
2825
private Map extraMappings = new HashMap();
2926
private PrivateKey privKey;
3027
private byte[] partyUInfo;
@@ -41,14 +38,14 @@ public JceKTSKeyUnwrapper(AlgorithmIdentifier algorithmIdentifier, PrivateKey pr
4138

4239
public JceKTSKeyUnwrapper setProvider(Provider provider)
4340
{
44-
this.helper = new OperatorHelper(new ProviderJcaJceHelper(provider));
41+
this.helper = OperatorUtils.createProviderHelper(provider);
4542

4643
return this;
4744
}
4845

4946
public JceKTSKeyUnwrapper setProvider(String providerName)
5047
{
51-
this.helper = new OperatorHelper(new NamedJcaJceHelper(providerName));
48+
this.helper = OperatorUtils.createNamedHelper(providerName);
5249

5350
return this;
5451
}

pkix/src/main/java/org/bouncycastle/operator/jcajce/JceKTSKeyWrapper.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,6 @@
1717
import org.bouncycastle.asn1.x9.X9ObjectIdentifiers;
1818
import org.bouncycastle.crypto.util.DEROtherInfo;
1919
import org.bouncycastle.jcajce.spec.KTSParameterSpec;
20-
import org.bouncycastle.jcajce.util.DefaultJcaJceHelper;
21-
import org.bouncycastle.jcajce.util.NamedJcaJceHelper;
22-
import org.bouncycastle.jcajce.util.ProviderJcaJceHelper;
2320
import org.bouncycastle.operator.AsymmetricKeyWrapper;
2421
import org.bouncycastle.operator.GenericKey;
2522
import org.bouncycastle.operator.OperatorException;
@@ -33,7 +30,7 @@ public class JceKTSKeyWrapper
3330
private final byte[] partyUInfo;
3431
private final byte[] partyVInfo;
3532

36-
private OperatorHelper helper = new OperatorHelper(new DefaultJcaJceHelper());
33+
private OperatorHelper helper = OperatorUtils.createDefaultHelper();
3734
private PublicKey publicKey;
3835
private SecureRandom random;
3936

@@ -55,14 +52,14 @@ public JceKTSKeyWrapper(X509Certificate certificate, String symmetricWrappingAlg
5552

5653
public JceKTSKeyWrapper setProvider(Provider provider)
5754
{
58-
this.helper = new OperatorHelper(new ProviderJcaJceHelper(provider));
55+
this.helper = OperatorUtils.createProviderHelper(provider);
5956

6057
return this;
6158
}
6259

6360
public JceKTSKeyWrapper setProvider(String providerName)
6461
{
65-
this.helper = new OperatorHelper(new NamedJcaJceHelper(providerName));
62+
this.helper = OperatorUtils.createNamedHelper(providerName);
6663

6764
return this;
6865
}

pkix/src/main/java/org/bouncycastle/operator/jcajce/JceSymmetricKeyUnwrapper.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,14 @@
88
import javax.crypto.SecretKey;
99

1010
import org.bouncycastle.asn1.x509.AlgorithmIdentifier;
11-
import org.bouncycastle.jcajce.util.DefaultJcaJceHelper;
12-
import org.bouncycastle.jcajce.util.NamedJcaJceHelper;
13-
import org.bouncycastle.jcajce.util.ProviderJcaJceHelper;
1411
import org.bouncycastle.operator.GenericKey;
1512
import org.bouncycastle.operator.OperatorException;
1613
import org.bouncycastle.operator.SymmetricKeyUnwrapper;
1714

1815
public class JceSymmetricKeyUnwrapper
1916
extends SymmetricKeyUnwrapper
2017
{
21-
private OperatorHelper helper = new OperatorHelper(new DefaultJcaJceHelper());
18+
private OperatorHelper helper = OperatorUtils.createDefaultHelper();
2219
private SecretKey secretKey;
2320

2421
public JceSymmetricKeyUnwrapper(AlgorithmIdentifier algorithmIdentifier, SecretKey secretKey)
@@ -30,14 +27,14 @@ public JceSymmetricKeyUnwrapper(AlgorithmIdentifier algorithmIdentifier, SecretK
3027

3128
public JceSymmetricKeyUnwrapper setProvider(Provider provider)
3229
{
33-
this.helper = new OperatorHelper(new ProviderJcaJceHelper(provider));
30+
this.helper = OperatorUtils.createProviderHelper(provider);
3431

3532
return this;
3633
}
3734

3835
public JceSymmetricKeyUnwrapper setProvider(String providerName)
3936
{
40-
this.helper = new OperatorHelper(new NamedJcaJceHelper(providerName));
37+
this.helper = OperatorUtils.createNamedHelper(providerName);
4138

4239
return this;
4340
}

pkix/src/main/java/org/bouncycastle/operator/jcajce/JceSymmetricKeyWrapper.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,14 @@
1616
import org.bouncycastle.asn1.ntt.NTTObjectIdentifiers;
1717
import org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers;
1818
import org.bouncycastle.asn1.x509.AlgorithmIdentifier;
19-
import org.bouncycastle.jcajce.util.DefaultJcaJceHelper;
20-
import org.bouncycastle.jcajce.util.NamedJcaJceHelper;
21-
import org.bouncycastle.jcajce.util.ProviderJcaJceHelper;
2219
import org.bouncycastle.operator.GenericKey;
2320
import org.bouncycastle.operator.OperatorException;
2421
import org.bouncycastle.operator.SymmetricKeyWrapper;
2522

2623
public class JceSymmetricKeyWrapper
2724
extends SymmetricKeyWrapper
2825
{
29-
private OperatorHelper helper = new OperatorHelper(new DefaultJcaJceHelper());
26+
private OperatorHelper helper = OperatorUtils.createDefaultHelper();
3027
private SecureRandom random;
3128
private SecretKey wrappingKey;
3229

@@ -39,14 +36,14 @@ public JceSymmetricKeyWrapper(SecretKey wrappingKey)
3936

4037
public JceSymmetricKeyWrapper setProvider(Provider provider)
4138
{
42-
this.helper = new OperatorHelper(new ProviderJcaJceHelper(provider));
39+
this.helper = OperatorUtils.createProviderHelper(provider);
4340

4441
return this;
4542
}
4643

4744
public JceSymmetricKeyWrapper setProvider(String providerName)
4845
{
49-
this.helper = new OperatorHelper(new NamedJcaJceHelper(providerName));
46+
this.helper = OperatorUtils.createNamedHelper(providerName);
5047

5148
return this;
5249
}

pkix/src/main/java/org/bouncycastle/operator/jcajce/OperatorUtils.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,13 @@
11
package org.bouncycastle.operator.jcajce;
22

33
import java.security.Key;
4+
import java.security.Provider;
45

56
import javax.crypto.spec.SecretKeySpec;
67

8+
import org.bouncycastle.jcajce.util.DefaultJcaJceHelper;
9+
import org.bouncycastle.jcajce.util.NamedJcaJceHelper;
10+
import org.bouncycastle.jcajce.util.ProviderJcaJceHelper;
711
import org.bouncycastle.operator.GenericKey;
812

913
class OperatorUtils
@@ -22,4 +26,19 @@ static Key getJceKey(GenericKey key)
2226

2327
throw new IllegalArgumentException("unknown generic key type");
2428
}
29+
30+
static OperatorHelper createDefaultHelper()
31+
{
32+
return new OperatorHelper(new DefaultJcaJceHelper());
33+
}
34+
35+
static OperatorHelper createProviderHelper(Provider provider)
36+
{
37+
return new OperatorHelper(new ProviderJcaJceHelper(provider));
38+
}
39+
40+
static OperatorHelper createNamedHelper(String providerName)
41+
{
42+
return new OperatorHelper(new NamedJcaJceHelper(providerName));
43+
}
2544
}

0 commit comments

Comments
 (0)