11package org .bouncycastle .openpgp .api ;
22
3+ import java .util .Date ;
4+ import java .util .Objects ;
5+
36import org .bouncycastle .openpgp .PGPSignature ;
47import org .bouncycastle .openpgp .PGPSignatureSubpacketGenerator ;
58import org .bouncycastle .util .Arrays ;
69
7- import java .util .Date ;
8- import java .util .Objects ;
9-
1010/**
1111 * Parameters for signature generation.
1212 * Some signature builders allow the user to pass in a {@link Callback}, which can be used to modify
@@ -37,14 +37,14 @@ private SignatureParameters(int... allowedSignatureTypes)
3737 * @param policy algorithm policy
3838 * @return parameters
3939 * @see <a href="https://sequoia-pgp.gitlab.io/sequoia-wot/#name-certifications-and-delegati">
40- * OpenPGP Web-of-Trust</a>
40+ * OpenPGP Web-of-Trust</a>
4141 */
4242 public static SignatureParameters directKeySignature (OpenPGPPolicy policy )
4343 {
4444 return new SignatureParameters (PGPSignature .DIRECT_KEY )
45- .setSignatureType (PGPSignature .DIRECT_KEY )
46- .setSignatureHashAlgorithm (policy .getDefaultCertificationSignatureHashAlgorithm ())
47- .setSignatureCreationTime (new Date ());
45+ .setSignatureType (PGPSignature .DIRECT_KEY )
46+ .setSignatureHashAlgorithm (policy .getDefaultCertificationSignatureHashAlgorithm ())
47+ .setSignatureCreationTime (new Date ());
4848 }
4949
5050 /**
@@ -60,9 +60,9 @@ public static SignatureParameters directKeySignature(OpenPGPPolicy policy)
6060 public static SignatureParameters keyRevocation (OpenPGPPolicy policy )
6161 {
6262 return new SignatureParameters (PGPSignature .KEY_REVOCATION )
63- .setSignatureType (PGPSignature .KEY_REVOCATION )
64- .setSignatureHashAlgorithm (policy .getDefaultCertificationSignatureHashAlgorithm ())
65- .setSignatureCreationTime (new Date ());
63+ .setSignatureType (PGPSignature .KEY_REVOCATION )
64+ .setSignatureHashAlgorithm (policy .getDefaultCertificationSignatureHashAlgorithm ())
65+ .setSignatureCreationTime (new Date ());
6666 }
6767
6868 /**
@@ -80,13 +80,13 @@ public static SignatureParameters keyRevocation(OpenPGPPolicy policy)
8080 public static SignatureParameters certification (OpenPGPPolicy policy )
8181 {
8282 return new SignatureParameters (
83- PGPSignature .DEFAULT_CERTIFICATION ,
84- PGPSignature .NO_CERTIFICATION ,
85- PGPSignature .CASUAL_CERTIFICATION ,
86- PGPSignature .POSITIVE_CERTIFICATION )
87- .setSignatureType (PGPSignature .POSITIVE_CERTIFICATION )
88- .setSignatureHashAlgorithm (policy .getDefaultCertificationSignatureHashAlgorithm ())
89- .setSignatureCreationTime (new Date ());
83+ PGPSignature .DEFAULT_CERTIFICATION ,
84+ PGPSignature .NO_CERTIFICATION ,
85+ PGPSignature .CASUAL_CERTIFICATION ,
86+ PGPSignature .POSITIVE_CERTIFICATION )
87+ .setSignatureType (PGPSignature .POSITIVE_CERTIFICATION )
88+ .setSignatureHashAlgorithm (policy .getDefaultCertificationSignatureHashAlgorithm ())
89+ .setSignatureCreationTime (new Date ());
9090 }
9191
9292 /**
@@ -98,9 +98,9 @@ public static SignatureParameters certification(OpenPGPPolicy policy)
9898 public static SignatureParameters subkeyBinding (OpenPGPPolicy policy )
9999 {
100100 return new SignatureParameters (PGPSignature .SUBKEY_BINDING )
101- .setSignatureType (PGPSignature .SUBKEY_BINDING )
102- .setSignatureHashAlgorithm (policy .getDefaultCertificationSignatureHashAlgorithm ())
103- .setSignatureCreationTime (new Date ());
101+ .setSignatureType (PGPSignature .SUBKEY_BINDING )
102+ .setSignatureHashAlgorithm (policy .getDefaultCertificationSignatureHashAlgorithm ())
103+ .setSignatureCreationTime (new Date ());
104104 }
105105
106106 /**
@@ -112,9 +112,9 @@ public static SignatureParameters subkeyBinding(OpenPGPPolicy policy)
112112 public static SignatureParameters subkeyRevocation (OpenPGPPolicy policy )
113113 {
114114 return new SignatureParameters (PGPSignature .SUBKEY_REVOCATION )
115- .setSignatureType (PGPSignature .SUBKEY_REVOCATION )
116- .setSignatureHashAlgorithm (policy .getDefaultCertificationSignatureHashAlgorithm ())
117- .setSignatureCreationTime (new Date ());
115+ .setSignatureType (PGPSignature .SUBKEY_REVOCATION )
116+ .setSignatureHashAlgorithm (policy .getDefaultCertificationSignatureHashAlgorithm ())
117+ .setSignatureCreationTime (new Date ());
118118 }
119119
120120 /**
@@ -126,9 +126,9 @@ public static SignatureParameters subkeyRevocation(OpenPGPPolicy policy)
126126 public static SignatureParameters primaryKeyBinding (OpenPGPPolicy policy )
127127 {
128128 return new SignatureParameters (PGPSignature .PRIMARYKEY_BINDING )
129- .setSignatureType (PGPSignature .PRIMARYKEY_BINDING )
130- .setSignatureHashAlgorithm (policy .getDefaultCertificationSignatureHashAlgorithm ())
131- .setSignatureCreationTime (new Date ());
129+ .setSignatureType (PGPSignature .PRIMARYKEY_BINDING )
130+ .setSignatureHashAlgorithm (policy .getDefaultCertificationSignatureHashAlgorithm ())
131+ .setSignatureCreationTime (new Date ());
132132 }
133133
134134 /**
@@ -140,9 +140,9 @@ public static SignatureParameters primaryKeyBinding(OpenPGPPolicy policy)
140140 public static SignatureParameters certificationRevocation (OpenPGPPolicy policy )
141141 {
142142 return new SignatureParameters (PGPSignature .CERTIFICATION_REVOCATION )
143- .setSignatureType (PGPSignature .CERTIFICATION_REVOCATION )
144- .setSignatureHashAlgorithm (policy .getDefaultCertificationSignatureHashAlgorithm ())
145- .setSignatureCreationTime (new Date ());
143+ .setSignatureType (PGPSignature .CERTIFICATION_REVOCATION )
144+ .setSignatureHashAlgorithm (policy .getDefaultCertificationSignatureHashAlgorithm ())
145+ .setSignatureCreationTime (new Date ());
146146 }
147147
148148 /**
@@ -156,9 +156,9 @@ public static SignatureParameters certificationRevocation(OpenPGPPolicy policy)
156156 public static SignatureParameters dataSignature (OpenPGPPolicy policy )
157157 {
158158 return new SignatureParameters (PGPSignature .BINARY_DOCUMENT , PGPSignature .CANONICAL_TEXT_DOCUMENT )
159- .setSignatureType (PGPSignature .BINARY_DOCUMENT )
160- .setSignatureHashAlgorithm (policy .getDefaultDocumentSignatureHashAlgorithm ())
161- .setSignatureCreationTime (new Date ());
159+ .setSignatureType (PGPSignature .BINARY_DOCUMENT )
160+ .setSignatureHashAlgorithm (policy .getDefaultDocumentSignatureHashAlgorithm ())
161+ .setSignatureCreationTime (new Date ());
162162 }
163163
164164 /**
@@ -201,7 +201,7 @@ public int getSignatureType()
201201 public SignatureParameters setSignatureCreationTime (Date signatureCreationTime )
202202 {
203203 this .signatureCreationTime = Objects .requireNonNull (signatureCreationTime ,
204- "Signature creation time cannot be null." );
204+ "Signature creation time cannot be null." );
205205 return this ;
206206 }
207207
@@ -309,23 +309,26 @@ default SignatureParameters apply(SignatureParameters parameters)
309309 return parameters ;
310310 }
311311
312- /**
313- * Shortcut method returning a {@link Callback} which only applies the given
314- * {@link SignatureSubpacketsFunction} to the hashed signature subpacket area of a signature.
315- *
316- * @param function signature subpackets function to apply to the hashed area
317- * @return callback
318- */
319- static Callback modifyHashedSubpackets (SignatureSubpacketsFunction function )
312+ static class Util
320313 {
321- return new Callback ()
314+ /**
315+ * Shortcut method returning a {@link Callback} which only applies the given
316+ * {@link SignatureSubpacketsFunction} to the hashed signature subpacket area of a signature.
317+ *
318+ * @param function signature subpackets function to apply to the hashed area
319+ * @return callback
320+ */
321+ public static Callback modifyHashedSubpackets (SignatureSubpacketsFunction function )
322322 {
323- @ Override
324- public SignatureParameters apply (SignatureParameters parameters )
323+ return new Callback ()
325324 {
326- return parameters .setHashedSubpacketsFunction (function );
327- }
328- };
325+ @ Override
326+ public SignatureParameters apply (SignatureParameters parameters )
327+ {
328+ return parameters .setHashedSubpacketsFunction (function );
329+ }
330+ };
331+ }
329332 }
330333 }
331334}
0 commit comments