From c97eb1fb7c739dc4cd2f92bf359c2f85966297aa Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ville=20Skytt=C3=A4?=
* 8.11.2 The contents octets shall consist of the complete
* encoding of a data value from each of the types listed in the
* ASN.1 definition of the set type, in an order chosen by the sender,
* unless the type was referenced with the keyword
* OPTIONAL or the keyword DEFAULT.
- *
* 8.11.3 The encoding of a data value may, but need not,
* be present for a type which was referenced with the keyword
* OPTIONAL or the keyword DEFAULT.
diff --git a/core/src/main/java/org/bouncycastle/asn1/eac/CVCertificate.java b/core/src/main/java/org/bouncycastle/asn1/eac/CVCertificate.java
index 845925c7..7bbd7f15 100644
--- a/core/src/main/java/org/bouncycastle/asn1/eac/CVCertificate.java
+++ b/core/src/main/java/org/bouncycastle/asn1/eac/CVCertificate.java
@@ -15,7 +15,6 @@ import org.bouncycastle.asn1.DEROctetString;
/**
* an iso7816Certificate structure.
- *
* Returns:
- *
* ISIS-MTT-SigG: The signature act allows publishing certificates only then,
* when the certificate owner gives his explicit permission. Accordingly, there
* may be �nondownloadable� certificates, about which the responder must provide
@@ -36,7 +36,6 @@ import org.bouncycastle.asn1.x509.Certificate;
* Clients requesting RetrieveIfAllowed MUST be able to handle these cases. If
* any of the OCTET STRING options is used, it MUST contain the DER encoding of
* the requested certificate.
- *
* Only one parameter can be given. All other must be
* Returns:
- *
* Returns:
- *
* ISIS-MTT PROFILE: The relatively complex structure of AdmissionSyntax
* supports the following concepts and requirements:
*
* By means of different namingAuthority-OIDs or profession OIDs hierarchies of
* professions, specializations, disciplines, fields of activity, etc. can be
* expressed. The issuing admission authority should always be indicated (field
@@ -89,9 +88,7 @@ import org.bouncycastle.asn1.x509.GeneralName;
* naming authority by the exclusive use of the component professionItems. In
* this case the certification authority is responsible for the verification of
* the admission information.
- *
* This attribute is single-valued. Still, several admissions can be captured in
* the sequence structure of the component contentsOfAdmissions of
* AdmissionSyntax or in the component professionInfos of Admissions. The
@@ -102,7 +99,7 @@ import org.bouncycastle.asn1.x509.GeneralName;
* value for the component namingAuthority of ProfessionInfo. Within the latter
* component the default value can be overwritten, in case that another naming
* authority needs to be recorded.
- *
* The length of the string objects is limited to 128 characters. It is
* recommended to indicate a namingAuthorityURL in all issued attribute
* certificates. If a namingAuthorityURL is indicated, the field professionItems
@@ -209,30 +206,29 @@ public class AdmissionSyntax
/**
* Produce an object suitable for an ASN1OutputStream.
- *
* Returns:
- *
* Parameter
* Returns:
- *
* fullAgeAtCountry indicates the majority of the owner with respect to the laws
* of a specific country.
*/
@@ -101,9 +101,8 @@ public class DeclarationOfMajority
/**
* Produce an object suitable for an ASN1OutputStream.
- *
* Returns:
- *
* Indicates a monetary limit within which the certificate holder is authorized
* to act. (This value DOES NOT express a limit on the liability of the
* certification authority).
- *
* currency must be the ISO code.
- *
* value = amount�10*exponent
*/
public class MonetaryLimit
@@ -72,8 +71,7 @@ public class MonetaryLimit
/**
* Constructor from a given details.
- *
* value = amount�10^exponent
*
* @param currency The currency. Must be the ISO code.
@@ -104,9 +102,8 @@ public class MonetaryLimit
/**
* Produce an object suitable for an ASN1OutputStream.
- *
* Returns:
- *
* All parameters can be combined.
*
* @param namingAuthorityId ObjectIdentifier for naming authority.
@@ -193,7 +193,7 @@ public class NamingAuthority
/**
* Constructor from given details.
- *
* All parameters can be combined.
*
* @param namingAuthorityId ObjectIdentifier for naming authority.
@@ -210,9 +210,8 @@ public class NamingAuthority
/**
* Produce an object suitable for an ASN1OutputStream.
- *
* Returns:
- *
* Either
* Either
* Returns:
- *
*
* Returns:
- *
* Returns:
- *
* Returns:
- *
* The sequence is of type NameOrPseudonym:
- *
* Returns:
- *
* Returns:
- *
* The J-PAKE exchange is defined by Feng Hao and Peter Ryan in the paper
*
* "Password Authenticated Key Exchange by Juggling, 2008."
- *
* The J-PAKE protocol is symmetric.
* There is no notion of a client or server, but rather just two participants.
* An instance of {@link JPAKEParticipant} represents one participant, and
* is the primary interface for executing the exchange.
- *
* To execute an exchange, construct a {@link JPAKEParticipant} on each end,
* and call the following 7 methods
* (once and only once, in the given order, for each participant, sending messages between them as described):
@@ -35,36 +32,29 @@ import org.bouncycastle.util.Arrays;
*
* Each side should derive a session key from the keying material returned by {@link #calculateKeyingMaterial()}.
* The caller is responsible for deriving the session key using a secure key derivation function (KDF).
- *
* Round 3 is an optional key confirmation process.
* If you do not execute round 3, then there is no assurance that both participants are using the same key.
* (i.e. if the participants used different passwords, then their session keys will differ.)
- *
* If the round 3 validation succeeds, then the keys are guaranteed to be the same on both sides.
- *
* The symmetric design can easily support the asymmetric cases when one party initiates the communication.
* e.g. Sometimes the round1 payload and round2 payload may be sent in one pass.
* Also, in some cases, the key confirmation payload can be sent together with the round2 payload.
* These are the trivial techniques to optimize the communication.
- *
* The key confirmation process is implemented as specified in
* NIST SP 800-56A Revision 1,
* Section 8.2 Unilateral Key Confirmation for Key Agreement Schemes.
- *
* This class is stateful and NOT threadsafe.
* Each instance should only be used for ONE complete J-PAKE exchange
* (i.e. a new {@link JPAKEParticipant} should be constructed for each new J-PAKE exchange).
- *
* See {@link JPAKEExample} for example usage.
*/
public class JPAKEParticipant
@@ -155,7 +145,7 @@ public class JPAKEParticipant
* Convenience constructor for a new {@link JPAKEParticipant} that uses
* the {@link JPAKEPrimeOrderGroups#NIST_3072} prime order group,
* a SHA-256 digest, and a default {@link SecureRandom} implementation.
- *
* After construction, the {@link #getState() state} will be {@link #STATE_INITIALIZED}.
*
* @param participantId unique identifier of this participant.
@@ -180,7 +170,7 @@ public class JPAKEParticipant
/**
* Convenience constructor for a new {@link JPAKEParticipant} that uses
* a SHA-256 digest and a default {@link SecureRandom} implementation.
- *
* After construction, the {@link #getState() state} will be {@link #STATE_INITIALIZED}.
*
* @param participantId unique identifier of this participant.
@@ -209,7 +199,7 @@ public class JPAKEParticipant
/**
* Construct a new {@link JPAKEParticipant}.
- *
* After construction, the {@link #getState() state} will be {@link #STATE_INITIALIZED}.
*
* @param participantId unique identifier of this participant.
@@ -278,8 +268,7 @@ public class JPAKEParticipant
/**
* Creates and returns the payload to send to the other participant during round 1.
- *
* After execution, the {@link #getState() state} will be {@link #STATE_ROUND_1_CREATED}.
*/
public JPAKERound1Payload createRound1PayloadToSend()
@@ -304,11 +293,9 @@ public class JPAKEParticipant
/**
* Validates the payload received from the other participant during round 1.
- *
* Must be called prior to {@link #createRound2PayloadToSend()}.
- *
* After execution, the {@link #getState() state} will be {@link #STATE_ROUND_1_VALIDATED}.
*
* @throws CryptoException if validation fails.
@@ -338,11 +325,9 @@ public class JPAKEParticipant
/**
* Creates and returns the payload to send to the other participant during round 2.
- *
* {@link #validateRound1PayloadReceived(JPAKERound1Payload)} must be called prior to this method.
- *
* After execution, the {@link #getState() state} will be {@link #STATE_ROUND_2_CREATED}.
*
* @throws IllegalStateException if called prior to {@link #validateRound1PayloadReceived(JPAKERound1Payload)}, or multiple times
@@ -370,16 +355,13 @@ public class JPAKEParticipant
/**
* Validates the payload received from the other participant during round 2.
- *
* Note that this DOES NOT detect a non-common password.
* The only indication of a non-common password is through derivation
* of different keys (which can be detected explicitly by executing round 3 and round 4)
- *
* Must be called prior to {@link #calculateKeyingMaterial()}.
- *
* After execution, the {@link #getState() state} will be {@link #STATE_ROUND_2_VALIDATED}.
*
* @throws CryptoException if validation fails.
@@ -412,8 +394,7 @@ public class JPAKEParticipant
* Calculates and returns the key material.
* A session key must be derived from this key material using a secure key derivation function (KDF).
* The KDF used to derive the key is handled externally (i.e. not by {@link JPAKEParticipant}).
- *
* The keying material will be identical for each participant if and only if
* each participant's password is the same. i.e. If the participants do not
* share the same password, then each participant will derive a different key.
@@ -422,17 +403,13 @@ public class JPAKEParticipant
* If you want to handle this detection explicitly, you can optionally perform
* rounds 3 and 4. See {@link JPAKEParticipant} for details on how to execute
* rounds 3 and 4.
- *
* The keying material will be in the range [0, p-1].
- *
* {@link #validateRound2PayloadReceived(JPAKERound2Payload)} must be called prior to this method.
- *
* As a side effect, the internal {@link #password} array is cleared, since it is no longer needed.
- *
* After execution, the {@link #getState() state} will be {@link #STATE_KEY_CALCULATED}.
*
* @throws IllegalStateException if called prior to {@link #validateRound2PayloadReceived(JPAKERound2Payload)},
@@ -484,11 +461,9 @@ public class JPAKEParticipant
/**
* Creates and returns the payload to send to the other participant during round 3.
- *
* See {@link JPAKEParticipant} for more details on round 3.
- *
* After execution, the {@link #getState() state} will be {@link #STATE_ROUND_3_CREATED}.
*
* @param keyingMaterial The keying material as returned from {@link #calculateKeyingMaterial()}.
@@ -522,11 +497,9 @@ public class JPAKEParticipant
/**
* Validates the payload received from the other participant during round 3.
- *
* See {@link JPAKEParticipant} for more details on round 3.
- *
* After execution, the {@link #getState() state} will be {@link #STATE_ROUND_3_VALIDATED}.
*
* @param keyingMaterial The keying material as returned from {@link #calculateKeyingMaterial()}.
diff --git a/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKEPrimeOrderGroup.java b/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKEPrimeOrderGroup.java
index d5df727d..ad2c6aea 100644
--- a/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKEPrimeOrderGroup.java
+++ b/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKEPrimeOrderGroup.java
@@ -4,15 +4,12 @@ import java.math.BigInteger;
/**
* A pre-computed prime order group for use during a J-PAKE exchange.
- *
* Typically a Schnorr group is used. In general, J-PAKE can use any prime order group
* that is suitable for public key cryptography, including elliptic curve cryptography.
- *
* See {@link JPAKEPrimeOrderGroups} for convenient standard groups.
- *
* NIST publishes
* many groups that can be used for the desired level of security.
*/
@@ -24,12 +21,10 @@ public class JPAKEPrimeOrderGroup
/**
* Constructs a new {@link JPAKEPrimeOrderGroup}.
- *
* In general, you should use one of the pre-approved groups from
* {@link JPAKEPrimeOrderGroups}, rather than manually constructing one.
- *
* The following basic checks are performed:
*
* The prime checks are performed using {@link BigInteger#isProbablePrime(int)},
* and are therefore subject to the same probability guarantees.
- *
* These checks prevent trivial mistakes.
* However, due to the small uncertainties if p and q are not prime,
* advanced attacks are not prevented.
diff --git a/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKEPrimeOrderGroups.java b/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKEPrimeOrderGroups.java
index 812d776e..2fb18613 100644
--- a/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKEPrimeOrderGroups.java
+++ b/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKEPrimeOrderGroups.java
@@ -5,12 +5,10 @@ import java.math.BigInteger;
/**
* Standard pre-computed prime order groups for use by J-PAKE.
* (J-PAKE can use pre-computed prime order groups, same as DSA and Diffie-Hellman.)
- *
* This class contains some convenient constants for use as input for
* constructing {@link JPAKEParticipant}s.
- *
* The prime order groups below are taken from Sun's JDK JavaDoc (docs/guide/security/CryptoSpec.html#AppB),
* and from the prime order groups
* published by NIST.
diff --git a/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKERound1Payload.java b/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKERound1Payload.java
index b319f9c4..086196dd 100644
--- a/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKERound1Payload.java
+++ b/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKERound1Payload.java
@@ -6,19 +6,16 @@ import org.bouncycastle.util.Arrays;
/**
* The payload sent/received during the first round of a J-PAKE exchange.
- *
* Each {@link JPAKEParticipant} creates and sends an instance
* of this payload to the other {@link JPAKEParticipant}.
* The payload to send should be created via
* {@link JPAKEParticipant#createRound1PayloadToSend()}.
- *
* Each {@link JPAKEParticipant} must also validate the payload
* received from the other {@link JPAKEParticipant}.
* The received payload should be validated via
* {@link JPAKEParticipant#validateRound1PayloadReceived(JPAKERound1Payload)}.
- *
* Each {@link JPAKEParticipant} creates and sends an instance
* of this payload to the other {@link JPAKEParticipant}.
* The payload to send should be created via
* {@link JPAKEParticipant#createRound2PayloadToSend()}
- *
* Each {@link JPAKEParticipant} must also validate the payload
* received from the other {@link JPAKEParticipant}.
* The received payload should be validated via
* {@link JPAKEParticipant#validateRound2PayloadReceived(JPAKERound2Payload)}
- *
* Each {@link JPAKEParticipant} creates and sends an instance
* of this payload to the other {@link JPAKEParticipant}.
* The payload to send should be created via
* {@link JPAKEParticipant#createRound3PayloadToSend(BigInteger)}
- *
* Each {@link JPAKEParticipant} must also validate the payload
* received from the other {@link JPAKEParticipant}.
* The received payload should be validated via
* {@link JPAKEParticipant#validateRound3PayloadReceived(JPAKERound3Payload, BigInteger)}
- *
* The recommended way to perform a J-PAKE exchange is by using
* two {@link JPAKEParticipant}s. Internally, those participants
* call these primitive operations in {@link JPAKEUtil}.
- *
* The primitives, however, can be used without a {@link JPAKEParticipant}
* if needed.
*/
@@ -31,8 +29,7 @@ public class JPAKEUtil
/**
* Return a value that can be used as x1 or x3 during round 1.
- *
* The returned value is a random value in the range [0, q-1].
*/
public static BigInteger generateX1(
@@ -46,8 +43,7 @@ public class JPAKEUtil
/**
* Return a value that can be used as x2 or x4 during round 1.
- *
* The returned value is a random value in the range [1, q-1].
*/
public static BigInteger generateX2(
@@ -188,10 +184,9 @@ public class JPAKEUtil
/**
* Validates that ga is not 1.
- *
* As described by Feng Hao...
- *
*
* Following the naming conventions used in the C source code to enable easy review of the implementation.
*/
public class SHA3Digest
diff --git a/core/src/main/java/org/bouncycastle/crypto/digests/SM3Digest.java b/core/src/main/java/org/bouncycastle/crypto/digests/SM3Digest.java
index 55e579ed..a02938bc 100644
--- a/core/src/main/java/org/bouncycastle/crypto/digests/SM3Digest.java
+++ b/core/src/main/java/org/bouncycastle/crypto/digests/SM3Digest.java
@@ -7,7 +7,7 @@ import org.bouncycastle.util.Memoable;
* Implementation of Chinese SM3 digest as described at
* http://tools.ietf.org/html/draft-shen-sm3-hash-00
* and at .... ( Chinese PDF )
- *
* The specification says "process a bit stream",
* but this is written to process bytes in blocks of 4,
* meaning this will process 32-bit word groups.
diff --git a/core/src/main/java/org/bouncycastle/crypto/digests/SkeinDigest.java b/core/src/main/java/org/bouncycastle/crypto/digests/SkeinDigest.java
index 06eaabd0..ae1dbd62 100644
--- a/core/src/main/java/org/bouncycastle/crypto/digests/SkeinDigest.java
+++ b/core/src/main/java/org/bouncycastle/crypto/digests/SkeinDigest.java
@@ -8,13 +8,12 @@ import org.bouncycastle.util.Memoable;
/**
* Implementation of the Skein parameterised hash function in 256, 512 and 1024 bit block sizes,
* based on the {@link ThreefishEngine Threefish} tweakable block cipher.
- *
* This is the 1.3 version of Skein defined in the Skein hash function submission to the NIST SHA-3
* competition in October 2010.
- *
* Skein was designed by Niels Ferguson - Stefan Lucks - Bruce Schneier - Doug Whiting - Mihir
* Bellare - Tadayoshi Kohno - Jon Callas - Jesse Walker.
- *
* This is the 1.3 version of Skein defined in the Skein hash function submission to the NIST SHA-3
* competition in October 2010.
- *
* Skein was designed by Niels Ferguson - Stefan Lucks - Bruce Schneier - Doug Whiting - Mihir
* Bellare - Tadayoshi Kohno - Jon Callas - Jesse Walker.
- *
* This implementation is the basis for {@link SkeinDigest} and {@link SkeinMac}, implementing the
* parameter based configuration system that allows Skein to be adapted to multiple applications.
* Implemented:
*
* Not implemented:
*
* Serpent was designed by Ross Anderson, Eli Biham and Lars Knudsen as a
- * candidate algorithm for the NIST AES Quest.>
+ * candidate algorithm for the NIST AES Quest.
*
* For full details see the The Serpent home page
*/
diff --git a/core/src/main/java/org/bouncycastle/crypto/engines/ThreefishEngine.java b/core/src/main/java/org/bouncycastle/crypto/engines/ThreefishEngine.java
index 74bccfe7..33660224 100644
--- a/core/src/main/java/org/bouncycastle/crypto/engines/ThreefishEngine.java
+++ b/core/src/main/java/org/bouncycastle/crypto/engines/ThreefishEngine.java
@@ -9,13 +9,13 @@ import org.bouncycastle.crypto.params.TweakableBlockCipherParameters;
/**
* Implementation of the Threefish tweakable large block cipher in 256, 512 and 1024 bit block
* sizes.
- *
* This is the 1.3 version of Threefish defined in the Skein hash function submission to the NIST
* SHA-3 competition in October 2010.
- *
* Threefish was designed by Niels Ferguson - Stefan Lucks - Bruce Schneier - Doug Whiting - Mihir
* Bellare - Tadayoshi Kohno - Jon Callas - Jesse Walker.
- *
* This implementation inlines all round functions, unrolls 8 rounds, and uses 1.2k of static tables
* to speed up key schedule injection.
* When decrypting;
+ *
* This example shows how to use the light-weight API, DES and
* the filesystem for message encryption and decryption.
diff --git a/core/src/main/java/org/bouncycastle/crypto/generators/DSAParametersGenerator.java b/core/src/main/java/org/bouncycastle/crypto/generators/DSAParametersGenerator.java
index f7a3df23..fe98b7c8 100644
--- a/core/src/main/java/org/bouncycastle/crypto/generators/DSAParametersGenerator.java
+++ b/core/src/main/java/org/bouncycastle/crypto/generators/DSAParametersGenerator.java
@@ -42,7 +42,7 @@ public class DSAParametersGenerator
/**
* initialise the key generator.
*
- * @param size size of the key (range 2^512 -> 2^1024 - 64 bit increments)
+ * @param size size of the key (range 2^512 -> 2^1024 - 64 bit increments)
* @param certainty measure of robustness of prime (for FIPS 186-2 compliance this should be at least 80).
* @param random random byte source.
*/
diff --git a/core/src/main/java/org/bouncycastle/crypto/generators/HKDFBytesGenerator.java b/core/src/main/java/org/bouncycastle/crypto/generators/HKDFBytesGenerator.java
index 8e93e6b0..75915cf2 100644
--- a/core/src/main/java/org/bouncycastle/crypto/generators/HKDFBytesGenerator.java
+++ b/core/src/main/java/org/bouncycastle/crypto/generators/HKDFBytesGenerator.java
@@ -11,7 +11,7 @@ import org.bouncycastle.crypto.params.KeyParameter;
/**
* HMAC-based Extract-and-Expand Key Derivation Function (HKDF) implemented
* according to IETF RFC 5869, May 2010 as specified by H. Krawczyk, IBM
- * Research & P. Eronen, Nokia. It uses a HMac internally to compute de OKM
+ * Research & P. Eronen, Nokia. It uses a HMac internally to compute de OKM
* (output keying material) and is likely to have better security properties
* than KDF's based on just a hash function.
*/
diff --git a/core/src/main/java/org/bouncycastle/crypto/generators/Poly1305KeyGenerator.java b/core/src/main/java/org/bouncycastle/crypto/generators/Poly1305KeyGenerator.java
index 91659730..59eee39e 100644
--- a/core/src/main/java/org/bouncycastle/crypto/generators/Poly1305KeyGenerator.java
+++ b/core/src/main/java/org/bouncycastle/crypto/generators/Poly1305KeyGenerator.java
@@ -53,7 +53,7 @@ public class Poly1305KeyGenerator
*
* For example, if the Cipher is initialized for decryption, the
* CipherInputStream will attempt to read in data and decrypt them,
* before returning the decrypted data.
@@ -162,7 +162,7 @@ public class CipherInputStream
/**
* Reads data from the underlying stream and processes it with the cipher until the cipher
* outputs data, and returns the next available byte.
- *
* If the underlying stream is exhausted by this call, the cipher will be finalised.
*
* @throws IOException if there was an error closing the input stream.
@@ -186,7 +186,7 @@ public class CipherInputStream
/**
* Reads data from the underlying stream and processes it with the cipher until the cipher
* outputs data, and then returns up to
* If the underlying stream is exhausted by this call, the cipher will be finalised.
*
* @param b the buffer into which the data is read.
@@ -206,7 +206,7 @@ public class CipherInputStream
/**
* Reads data from the underlying stream and processes it with the cipher until the cipher
* outputs data, and then returns up to
* If the underlying stream is exhausted by this call, the cipher will be finalised.
*
* @param b the buffer into which the data is read.
diff --git a/core/src/main/java/org/bouncycastle/crypto/io/CipherOutputStream.java b/core/src/main/java/org/bouncycastle/crypto/io/CipherOutputStream.java
index 9beb5b95..4b68adfd 100644
--- a/core/src/main/java/org/bouncycastle/crypto/io/CipherOutputStream.java
+++ b/core/src/main/java/org/bouncycastle/crypto/io/CipherOutputStream.java
@@ -14,7 +14,7 @@ import org.bouncycastle.crypto.modes.AEADBlockCipher;
* the written data with the cipher, and the output of the cipher is in turn written to the
* underlying OutputStream. The cipher must be fully initialized before being used by a
* CipherInputStream.
- *
* For example, if the cipher is initialized for encryption, the CipherOutputStream will encrypt the
* data before writing the encrypted data to the underlying stream.
*/
@@ -86,7 +86,7 @@ public class CipherOutputStream
/**
* Writes
* The
* Any bytes buffered by the encapsulated cipher
* and waiting to be processed by it will not be written out. For example,
* if the encapsulated cipher is a block cipher, and the total number of
@@ -196,12 +195,12 @@ public class CipherOutputStream
/**
* Closes this output stream and releases any system resources
* associated with this stream.
- *
* This method invokes the
* This method resets the encapsulated cipher object to its initial state
* and calls the
* Note: the size of the MAC must be at least 24 bits (FIPS Publication 81),
* or 16 bits if being used as a data authenticator (FIPS Publication 113),
* and in general should be less than the size of the block cipher as it reduces
* the chance of an exhaustive attack (see Handbook of Applied Cryptography).
*
* @param cipher the cipher to be used as the basis of the MAC generation.
- * @param macSizeInBits the size of the MAC in bits, must be a multiple of 8 and <= 128.
+ * @param macSizeInBits the size of the MAC in bits, must be a multiple of 8 and <= 128.
*/
public CMac(BlockCipher cipher, int macSizeInBits)
{
diff --git a/core/src/main/java/org/bouncycastle/crypto/macs/GMac.java b/core/src/main/java/org/bouncycastle/crypto/macs/GMac.java
index 8aae1e26..89a0f7e1 100644
--- a/core/src/main/java/org/bouncycastle/crypto/macs/GMac.java
+++ b/core/src/main/java/org/bouncycastle/crypto/macs/GMac.java
@@ -23,7 +23,7 @@ public class GMac implements Mac
/**
* Creates a GMAC based on the operation of a block cipher in GCM mode.
- *
* This will produce an authentication code the length of the block size of the cipher.
*
* @param cipher
@@ -40,7 +40,7 @@ public class GMac implements Mac
* Creates a GMAC based on the operation of a 128 bit block cipher in GCM mode.
*
* @param macSizeBits
- * the mac size to generate, in bits. Must be a multiple of 8 and >= 96 and <= 128.
+ * the mac size to generate, in bits. Must be a multiple of 8 and >= 96 and <= 128.
* @param cipher
* the cipher to be used in GCM mode to generate the MAC.
*/
diff --git a/core/src/main/java/org/bouncycastle/crypto/macs/Poly1305.java b/core/src/main/java/org/bouncycastle/crypto/macs/Poly1305.java
index 366aa762..578765e7 100644
--- a/core/src/main/java/org/bouncycastle/crypto/macs/Poly1305.java
+++ b/core/src/main/java/org/bouncycastle/crypto/macs/Poly1305.java
@@ -75,7 +75,7 @@ public class Poly1305
/**
* Initialises the Poly1305 MAC.
*
- * @param if used with a block cipher, then a {@link ParametersWithIV} containing a 128 bit
+ * @param params if used with a block cipher, then a {@link ParametersWithIV} containing a 128 bit
* nonce and a {@link KeyParameter} with a 256 bit key complying to the
* {@link Poly1305KeyGenerator Poly1305 key format}, otherwise just the
* {@link KeyParameter}.
diff --git a/core/src/main/java/org/bouncycastle/crypto/macs/SipHash.java b/core/src/main/java/org/bouncycastle/crypto/macs/SipHash.java
index 527c8040..5a4845ca 100644
--- a/core/src/main/java/org/bouncycastle/crypto/macs/SipHash.java
+++ b/core/src/main/java/org/bouncycastle/crypto/macs/SipHash.java
@@ -10,7 +10,7 @@ import org.bouncycastle.util.Arrays;
/**
* Implementation of SipHash as specified in "SipHash: a fast short-input PRF", by Jean-Philippe
* Aumasson and Daniel J. Bernstein (https://131002.net/siphash/siphash.pdf).
- *
* "SipHash is a family of PRFs SipHash-c-d where the integer parameters c and d are the number of
* compression rounds and the number of finalization rounds. A compression round is identical to a
* finalization round and this round function is called SipRound. Given a 128-bit key k and a
diff --git a/core/src/main/java/org/bouncycastle/crypto/macs/SkeinMac.java b/core/src/main/java/org/bouncycastle/crypto/macs/SkeinMac.java
index 60972470..7115b510 100644
--- a/core/src/main/java/org/bouncycastle/crypto/macs/SkeinMac.java
+++ b/core/src/main/java/org/bouncycastle/crypto/macs/SkeinMac.java
@@ -10,13 +10,12 @@ import org.bouncycastle.crypto.params.SkeinParameters;
/**
* Implementation of the Skein parameterised MAC function in 256, 512 and 1024 bit block sizes,
* based on the {@link ThreefishEngine Threefish} tweakable block cipher.
- *
* This is the 1.3 version of Skein defined in the Skein hash function submission to the NIST SHA-3
* competition in October 2010.
- *
* Skein was designed by Niels Ferguson - Stefan Lucks - Bruce Schneier - Doug Whiting - Mihir
* Bellare - Tadayoshi Kohno - Jon Callas - Jesse Walker.
- *
*
* This is a non-binding summary of a legal document (the link above). The parameters of the license
* are specified in the license document and that document is controlling.
* Parameterised Skein can be used for:
*
+ * Parameters with type < {@value SkeinParameters#PARAM_TYPE_MESSAGE} are processed before
+ * the message content, parameters with type > {@value SkeinParameters#PARAM_TYPE_MESSAGE}
* are processed after the message and prior to output.
*
* @param type the type of the parameter, in the range 5..62.
@@ -227,7 +227,7 @@ public class SkeinParameters
/**
* Implements the recommended personalisation format for Skein defined in Section 4.11 of
* the Skein 1.3 specification.
- *
* The format is 8: Basic encoding rules
* 8.11 Encoding of a set value
* 8.11.1 The encoding of a set value shall be constructed
- *
+ *
* Certificate ::= SEQUENCE {
* CertificateBody Iso7816CertificateBody,
@@ -85,7 +84,6 @@ public class CVCertificate
* Create an iso7816Certificate structure from an ASN1InputStream.
*
* @param aIS the byte stream to parse.
- * @return the Iso7816CertificateStructure represented by the byte stream.
* @throws IOException if there is a problem parsing the data.
*/
public CVCertificate(ASN1InputStream aIS)
@@ -129,7 +127,6 @@ public class CVCertificate
*
* @param body the Iso7816CertificateBody object containing the body.
* @param signature the byte array containing the signature
- * @return the Iso7816CertificateStructure
* @throws IOException if there is a problem parsing the data.
*/
public CVCertificate(CertificateBody body, byte[] signature)
@@ -147,7 +144,6 @@ public class CVCertificate
*
* @param obj the Object to extract the certificate from.
* @return the Iso7816CertificateStructure represented by the byte stream.
- * @throws IOException if there is a problem parsing the data.
*/
public static CVCertificate getInstance(Object obj)
{
diff --git a/core/src/main/java/org/bouncycastle/asn1/eac/CertificateBody.java b/core/src/main/java/org/bouncycastle/asn1/eac/CertificateBody.java
index 87d6554c..04c4d703 100644
--- a/core/src/main/java/org/bouncycastle/asn1/eac/CertificateBody.java
+++ b/core/src/main/java/org/bouncycastle/asn1/eac/CertificateBody.java
@@ -13,7 +13,6 @@ import org.bouncycastle.asn1.DEROctetString;
/**
* an Iso7816CertificateBody structure.
- *
*
* CertificateBody ::= SEQUENCE {
* // version of the certificate format. Must be 0 (version 1)
@@ -128,7 +127,6 @@ public class CertificateBody
* @param certificateHolderAuthorization
* @param certificateEffectiveDate
* @param certificateExpirationDate
- * @throws IOException
*/
public CertificateBody(
DERApplicationSpecific certificateProfileIdentifier,
@@ -276,7 +274,6 @@ public class CertificateBody
* create a "request" or "profile" type Iso7816CertificateBody according to the variables sets.
*
* @return return the ASN1Primitive representing the "request" or "profile" type certificate body.
- * @throws IOException if the DERApplicationSpecific cannot be created or if data are missings to create a valid certificate.
*/
public ASN1Primitive toASN1Primitive()
{
diff --git a/core/src/main/java/org/bouncycastle/asn1/eac/CertificateHolderAuthorization.java b/core/src/main/java/org/bouncycastle/asn1/eac/CertificateHolderAuthorization.java
index 93ae57f2..ba8486aa 100644
--- a/core/src/main/java/org/bouncycastle/asn1/eac/CertificateHolderAuthorization.java
+++ b/core/src/main/java/org/bouncycastle/asn1/eac/CertificateHolderAuthorization.java
@@ -13,7 +13,6 @@ import org.bouncycastle.util.Integers;
/**
* an Iso7816CertificateHolderAuthorization structure.
- *
*
* Certificate Holder Authorization ::= SEQUENCE {
* // specifies the format and the rules for the evaluation of the authorization
diff --git a/core/src/main/java/org/bouncycastle/asn1/eac/ECDSAPublicKey.java b/core/src/main/java/org/bouncycastle/asn1/eac/ECDSAPublicKey.java
index 3dd22fc3..077807f2 100644
--- a/core/src/main/java/org/bouncycastle/asn1/eac/ECDSAPublicKey.java
+++ b/core/src/main/java/org/bouncycastle/asn1/eac/ECDSAPublicKey.java
@@ -15,7 +15,6 @@ import org.bouncycastle.asn1.DERTaggedObject;
/**
* an Iso7816ECDSAPublicKeyStructure structure.
- *
*
* Certificate Holder Authorization ::= SEQUENCE {
* ASN1TaggedObject primeModulusP; // OPTIONAL
diff --git a/core/src/main/java/org/bouncycastle/asn1/eac/RSAPublicKey.java b/core/src/main/java/org/bouncycastle/asn1/eac/RSAPublicKey.java
index 7c851699..3e1727e4 100644
--- a/core/src/main/java/org/bouncycastle/asn1/eac/RSAPublicKey.java
+++ b/core/src/main/java/org/bouncycastle/asn1/eac/RSAPublicKey.java
@@ -12,7 +12,6 @@ import org.bouncycastle.asn1.DERSequence;
/**
* an Iso7816RSAPublicKeyStructure structure.
- *
*
* Certificate Holder Authorization ::= SEQUENCE {
* // modulus should be at least 1024bit and a multiple of 512.
diff --git a/core/src/main/java/org/bouncycastle/asn1/icao/CscaMasterList.java b/core/src/main/java/org/bouncycastle/asn1/icao/CscaMasterList.java
index 2cae261f..ff629f2f 100644
--- a/core/src/main/java/org/bouncycastle/asn1/icao/CscaMasterList.java
+++ b/core/src/main/java/org/bouncycastle/asn1/icao/CscaMasterList.java
@@ -13,7 +13,7 @@ import org.bouncycastle.asn1.x509.Certificate;
/**
* The CscaMasterList object. This object can be wrapped in a
* CMSSignedData to be published in LDAP.
- *
+ *
*
* CscaMasterList ::= SEQUENCE {
* version CscaMasterListVersion,
diff --git a/core/src/main/java/org/bouncycastle/asn1/isismtt/ocsp/CertHash.java b/core/src/main/java/org/bouncycastle/asn1/isismtt/ocsp/CertHash.java
index 932d3008..1791b508 100644
--- a/core/src/main/java/org/bouncycastle/asn1/isismtt/ocsp/CertHash.java
+++ b/core/src/main/java/org/bouncycastle/asn1/isismtt/ocsp/CertHash.java
@@ -19,8 +19,6 @@ import org.bouncycastle.asn1.x509.AlgorithmIdentifier;
* the expiry of the corresponding certificate. Hence, clients MUST support this
* extension. If a positive statement of availability is to be delivered, this
* extension syntax and OID MUST be used.
- *
- *
*
* CertHash ::= SEQUENCE {
* hashAlgorithm AlgorithmIdentifier,
@@ -102,9 +100,8 @@ public class CertHash
/**
* Produce an object suitable for an ASN1OutputStream.
- *
+ *
* CertHash ::= SEQUENCE {
* hashAlgorithm AlgorithmIdentifier,
diff --git a/core/src/main/java/org/bouncycastle/asn1/isismtt/ocsp/RequestedCertificate.java b/core/src/main/java/org/bouncycastle/asn1/isismtt/ocsp/RequestedCertificate.java
index cffcc5ab..5c12016e 100644
--- a/core/src/main/java/org/bouncycastle/asn1/isismtt/ocsp/RequestedCertificate.java
+++ b/core/src/main/java/org/bouncycastle/asn1/isismtt/ocsp/RequestedCertificate.java
@@ -16,7 +16,7 @@ import org.bouncycastle.asn1.x509.Certificate;
* ISIS-MTT-Optional: The certificate requested by the client by inserting the
* RetrieveIfAllowed extension in the request, will be returned in this
* extension.
- *
+ *
* RequestedCertificate ::= CHOICE {
* Certificate Certificate,
@@ -105,7 +104,7 @@ public class RequestedCertificate
/**
* Constructor from a given details.
- *
+ *
null
.
*
* @param certificate Given as Certificate
@@ -155,9 +154,8 @@ public class RequestedCertificate
/**
* Produce an object suitable for an ASN1OutputStream.
- *
* RequestedCertificate ::= CHOICE {
* Certificate Certificate,
diff --git a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/AdditionalInformationSyntax.java b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/AdditionalInformationSyntax.java
index ff9ed124..55c7d43f 100644
--- a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/AdditionalInformationSyntax.java
+++ b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/AdditionalInformationSyntax.java
@@ -54,9 +54,8 @@ public class AdditionalInformationSyntax
/**
* Produce an object suitable for an ASN1OutputStream.
- *
+ *
* AdditionalInformationSyntax ::= DirectoryString (SIZE(1..2048))
*
diff --git a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/AdmissionSyntax.java b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/AdmissionSyntax.java
index 202373ec..88bb7411 100644
--- a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/AdmissionSyntax.java
+++ b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/AdmissionSyntax.java
@@ -11,28 +11,28 @@ import org.bouncycastle.asn1.x509.GeneralName;
/**
* Attribute to indicate admissions to certain professions.
- *
+ *
*
* AdmissionSyntax ::= SEQUENCE
* {
* admissionAuthority GeneralName OPTIONAL,
* contentsOfAdmissions SEQUENCE OF Admissions
* }
- *
+ *
* Admissions ::= SEQUENCE
* {
* admissionAuthority [0] EXPLICIT GeneralName OPTIONAL
* namingAuthority [1] EXPLICIT NamingAuthority OPTIONAL
* professionInfos SEQUENCE OF ProfessionInfo
* }
- *
+ *
* NamingAuthority ::= SEQUENCE
* {
* namingAuthorityId OBJECT IDENTIFIER OPTIONAL,
* namingAuthorityUrl IA5String OPTIONAL,
* namingAuthorityText DirectoryString(SIZE(1..128)) OPTIONAL
* }
- *
+ *
* ProfessionInfo ::= SEQUENCE
* {
* namingAuthority [0] EXPLICIT NamingAuthority OPTIONAL,
@@ -42,8 +42,7 @@ import org.bouncycastle.asn1.x509.GeneralName;
* addProfessionInfo OCTET STRING OPTIONAL
* }
*
- *
- *
+ *
@@ -68,7 +67,7 @@ import org.bouncycastle.asn1.x509.GeneralName;
* component namingAuthorityId are grouped under the OID-branch
* id-isis-at-namingAuthorities and must be applied for.
*
- *
+ *
* AdmissionSyntax ::= SEQUENCE
* {
* admissionAuthority GeneralName OPTIONAL,
* contentsOfAdmissions SEQUENCE OF Admissions
* }
- *
+ *
* Admissions ::= SEQUENCE
* {
* admissionAuthority [0] EXPLICIT GeneralName OPTIONAL
* namingAuthority [1] EXPLICIT NamingAuthority OPTIONAL
* professionInfos SEQUENCE OF ProfessionInfo
* }
- *
+ *
* NamingAuthority ::= SEQUENCE
* {
* namingAuthorityId OBJECT IDENTIFIER OPTIONAL,
* namingAuthorityUrl IA5String OPTIONAL,
* namingAuthorityText DirectoryString(SIZE(1..128)) OPTIONAL
* }
- *
+ *
* ProfessionInfo ::= SEQUENCE
* {
* namingAuthority [0] EXPLICIT NamingAuthority OPTIONAL,
diff --git a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/Admissions.java b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/Admissions.java
index 3a5ef242..48a3e470 100644
--- a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/Admissions.java
+++ b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/Admissions.java
@@ -14,7 +14,6 @@ import org.bouncycastle.asn1.x509.GeneralName;
/**
* An Admissions structure.
- *
*
* Admissions ::= SEQUENCE
* {
@@ -22,7 +21,6 @@ import org.bouncycastle.asn1.x509.GeneralName;
* namingAuthority [1] EXPLICIT NamingAuthority OPTIONAL
* professionInfos SEQUENCE OF ProfessionInfo
* }
- *
*
*
* @see org.bouncycastle.asn1.isismtt.x509.AdmissionSyntax
@@ -117,7 +115,7 @@ public class Admissions
/**
* Constructor from a given details.
- *
+ * professionInfos
is mandatory.
*
* @param admissionAuthority The admission authority.
@@ -155,9 +153,8 @@ public class Admissions
/**
* Produce an object suitable for an ASN1OutputStream.
- *
* Admissions ::= SEQUENCE
* {
@@ -165,7 +162,6 @@ public class Admissions
* namingAuthority [1] EXPLICIT NamingAuthority OPTIONAL
* professionInfos SEQUENCE OF ProfessionInfo
* }
- *
*
*
* @return an ASN1Primitive
diff --git a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/DeclarationOfMajority.java b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/DeclarationOfMajority.java
index 20887cee..987c5907 100644
--- a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/DeclarationOfMajority.java
+++ b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/DeclarationOfMajority.java
@@ -15,7 +15,7 @@ import org.bouncycastle.asn1.DERTaggedObject;
/**
* A declaration of majority.
- *
+ *
*
* DeclarationOfMajoritySyntax ::= CHOICE
* {
@@ -28,7 +28,7 @@ import org.bouncycastle.asn1.DERTaggedObject;
* dateOfBirth [2] IMPLICIT GeneralizedTime
* }
*
- *
+ *
* DeclarationOfMajoritySyntax ::= CHOICE
* {
diff --git a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/MonetaryLimit.java b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/MonetaryLimit.java
index 1b101998..7425287e 100644
--- a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/MonetaryLimit.java
+++ b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/MonetaryLimit.java
@@ -17,11 +17,10 @@ import org.bouncycastle.asn1.DERSequence;
* since January 1, 2004. For the sake of backward compatibility with
* certificates already in use, components SHOULD support MonetaryLimit (as well
* as QcEuLimitValue).
- *
+ *
* MonetaryLimitSyntax ::= SEQUENCE
* {
@@ -30,9 +29,9 @@ import org.bouncycastle.asn1.DERSequence;
* exponent INTEGER
* }
*
- *
+ *
* MonetaryLimitSyntax ::= SEQUENCE
* {
diff --git a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/NamingAuthority.java b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/NamingAuthority.java
index 237f5e55..157e2cc7 100644
--- a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/NamingAuthority.java
+++ b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/NamingAuthority.java
@@ -173,9 +173,9 @@ public class NamingAuthority
return namingAuthorityUrl;
}
- /**
+ /**
* Constructor from given details.
- *
+ *
* NamingAuthority ::= SEQUENCE
* {
diff --git a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/ProcurationSyntax.java b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/ProcurationSyntax.java
index 0a64f8e9..b6ab3451 100644
--- a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/ProcurationSyntax.java
+++ b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/ProcurationSyntax.java
@@ -132,8 +132,7 @@ public class ProcurationSyntax
/**
* Constructor from a given details.
- *
- *
+ *
generalName
or certRef
MUST be
* null
.
*
@@ -154,8 +153,7 @@ public class ProcurationSyntax
/**
* Constructor from a given details.
- * generalName
or certRef
MUST be
* null
.
*
@@ -196,16 +194,15 @@ public class ProcurationSyntax
/**
* Produce an object suitable for an ASN1OutputStream.
- *
* ProcurationSyntax ::= SEQUENCE {
* country [1] EXPLICIT PrintableString(SIZE(2)) OPTIONAL,
* typeOfSubstitution [2] EXPLICIT DirectoryString (SIZE(1..128)) OPTIONAL,
* signingFor [3] EXPLICIT SigningFor
* }
- *
+ *
* SigningFor ::= CHOICE
* {
* thirdPerson GeneralName,
diff --git a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/ProfessionInfo.java b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/ProfessionInfo.java
index 081d9af9..67737f69 100644
--- a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/ProfessionInfo.java
+++ b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/ProfessionInfo.java
@@ -274,7 +274,7 @@ public class ProfessionInfo
/**
* Constructor from given details.
- *
+ *
*/
diff --git a/core/src/main/java/org/bouncycastle/asn1/pkcs/PrivateKeyInfo.java b/core/src/main/java/org/bouncycastle/asn1/pkcs/PrivateKeyInfo.java
index dad86502..7f02e709 100644
--- a/core/src/main/java/org/bouncycastle/asn1/pkcs/PrivateKeyInfo.java
+++ b/core/src/main/java/org/bouncycastle/asn1/pkcs/PrivateKeyInfo.java
@@ -68,7 +68,7 @@ public class PrivateKeyInfo
}
/**
- * @deprectaed use PrivateKeyInfo.getInstance()
+ * @deprecated use PrivateKeyInfo.getInstance()
* @param seq
*/
public PrivateKeyInfo(
diff --git a/core/src/main/java/org/bouncycastle/asn1/x509/CertificatePair.java b/core/src/main/java/org/bouncycastle/asn1/x509/CertificatePair.java
index cab44d1b..4a70f2df 100644
--- a/core/src/main/java/org/bouncycastle/asn1/x509/CertificatePair.java
+++ b/core/src/main/java/org/bouncycastle/asn1/x509/CertificatePair.java
@@ -123,9 +123,8 @@ public class CertificatePair
/**
* Produce an object suitable for an ASN1OutputStream.
- *
+ * professionItems
is mandatory, all other parameters are
* optional.
*
@@ -311,9 +311,8 @@ public class ProfessionInfo
/**
* Produce an object suitable for an ASN1OutputStream.
- *
* ProfessionInfo ::= SEQUENCE
* {
diff --git a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/Restriction.java b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/Restriction.java
index c2a2a413..3d06e77b 100644
--- a/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/Restriction.java
+++ b/core/src/main/java/org/bouncycastle/asn1/isismtt/x509/Restriction.java
@@ -6,7 +6,7 @@ import org.bouncycastle.asn1.x500.DirectoryString;
/**
* Some other restriction regarding the usage of this certificate.
- *
+ *
*
*/
public ASN1Primitive toASN1Primitive()
{
diff --git a/core/src/main/java/org/bouncycastle/asn1/pkcs/CertificationRequestInfo.java b/core/src/main/java/org/bouncycastle/asn1/pkcs/CertificationRequestInfo.java
index c9c14fe4..d2acd303 100644
--- a/core/src/main/java/org/bouncycastle/asn1/pkcs/CertificationRequestInfo.java
+++ b/core/src/main/java/org/bouncycastle/asn1/pkcs/CertificationRequestInfo.java
@@ -25,8 +25,8 @@ import org.bouncycastle.asn1.x509.X509Name;
* Attributes { ATTRIBUTE:IOSet } ::= SET OF Attribute{{ IOSet }}
*
* Attribute { ATTRIBUTE:IOSet } ::= SEQUENCE {
- * type ATTRIBUTE.&id({IOSet}),
- * values SET SIZE(1..MAX) OF ATTRIBUTE.&Type({IOSet}{\@type})
+ * type ATTRIBUTE.&id({IOSet}),
+ * values SET SIZE(1..MAX) OF ATTRIBUTE.&Type({IOSet}{\@type})
* }
*
* RestrictionSyntax ::= DirectoryString (SIZE(1..1024))
*
@@ -64,12 +64,10 @@ public class Restriction
/**
* Produce an object suitable for an ASN1OutputStream.
- *
+ *
* RestrictionSyntax ::= DirectoryString (SIZE(1..1024))
- *
*
*
* @return a DERObject
diff --git a/core/src/main/java/org/bouncycastle/asn1/misc/MiscObjectIdentifiers.java b/core/src/main/java/org/bouncycastle/asn1/misc/MiscObjectIdentifiers.java
index 6aff988d..dfc31214 100644
--- a/core/src/main/java/org/bouncycastle/asn1/misc/MiscObjectIdentifiers.java
+++ b/core/src/main/java/org/bouncycastle/asn1/misc/MiscObjectIdentifiers.java
@@ -36,7 +36,7 @@ public interface MiscObjectIdentifiers
/** Verisign CZAG (Country,Zip,Age,Gender) Extension OID: 2.16.840.1.113733.1.6.3 */
static final ASN1ObjectIdentifier verisignCzagExtension = verisign.branch("6.3");
- /** Verisign D&B D-U-N-S number Extension OID: 2.16.840.1.113733.1.6.15 */
+ /** Verisign D&B D-U-N-S number Extension OID: 2.16.840.1.113733.1.6.15 */
static final ASN1ObjectIdentifier verisignDnbDunsNumber = verisign.branch("6.15");
//
diff --git a/core/src/main/java/org/bouncycastle/asn1/pkcs/CRLBag.java b/core/src/main/java/org/bouncycastle/asn1/pkcs/CRLBag.java
index b91c1a59..06208731 100644
--- a/core/src/main/java/org/bouncycastle/asn1/pkcs/CRLBag.java
+++ b/core/src/main/java/org/bouncycastle/asn1/pkcs/CRLBag.java
@@ -56,19 +56,19 @@ public class CRLBag
/**
*
- CRLBag ::= SEQUENCE {
- crlId BAG-TYPE.&id ({CRLTypes}),
- crlValue [0] EXPLICIT BAG-TYPE.&Type ({CRLTypes}{@crlId})
- }
-
- x509CRL BAG-TYPE ::= {OCTET STRING IDENTIFIED BY {certTypes 1}
- -- DER-encoded X.509 CRL stored in OCTET STRING
-
- CRLTypes BAG-TYPE ::= {
- x509CRL,
- ... -- For future extensions
- }
-
+ * CRLBag ::= SEQUENCE {
+ * crlId BAG-TYPE.&id ({CRLTypes}),
+ * crlValue [0] EXPLICIT BAG-TYPE.&Type ({CRLTypes}{@crlId})
+ * }
+ *
+ * x509CRL BAG-TYPE ::= {OCTET STRING IDENTIFIED BY {certTypes 1}
+ * -- DER-encoded X.509 CRL stored in OCTET STRING
+ *
+ * CRLTypes BAG-TYPE ::= {
+ * x509CRL,
+ * ... -- For future extensions
+ * }
+ *
* CertificatePair ::= SEQUENCE {
* forward [0] Certificate OPTIONAL,
diff --git a/core/src/main/java/org/bouncycastle/asn1/x509/X509NameEntryConverter.java b/core/src/main/java/org/bouncycastle/asn1/x509/X509NameEntryConverter.java
index 5d919e1b..188af430 100644
--- a/core/src/main/java/org/bouncycastle/asn1/x509/X509NameEntryConverter.java
+++ b/core/src/main/java/org/bouncycastle/asn1/x509/X509NameEntryConverter.java
@@ -23,7 +23,7 @@ import org.bouncycastle.util.Strings;
* ASN1ObjectIdentifier oid,
* String value)
* {
- * if (str.length() != 0 && str.charAt(0) == '#')
+ * if (str.length() != 0 && str.charAt(0) == '#')
* {
* return convertHexEncoded(str, 1);
* }
@@ -45,6 +45,7 @@ import org.bouncycastle.util.Strings;
* }
* }
* }
+ *
*/
public abstract class X509NameEntryConverter
{
diff --git a/core/src/main/java/org/bouncycastle/asn1/x509/sigi/NameOrPseudonym.java b/core/src/main/java/org/bouncycastle/asn1/x509/sigi/NameOrPseudonym.java
index 304f1d46..f7162e2a 100644
--- a/core/src/main/java/org/bouncycastle/asn1/x509/sigi/NameOrPseudonym.java
+++ b/core/src/main/java/org/bouncycastle/asn1/x509/sigi/NameOrPseudonym.java
@@ -60,9 +60,8 @@ public class NameOrPseudonym
/**
* Constructor from DirectoryString.
- *
+ *
* NameOrPseudonym ::= CHOICE {
* surAndGivenName SEQUENCE {
@@ -159,9 +158,8 @@ public class NameOrPseudonym
/**
* Produce an object suitable for an ASN1OutputStream.
- *
+ *
* NameOrPseudonym ::= CHOICE {
* surAndGivenName SEQUENCE {
diff --git a/core/src/main/java/org/bouncycastle/asn1/x509/sigi/PersonalData.java b/core/src/main/java/org/bouncycastle/asn1/x509/sigi/PersonalData.java
index 0b732480..f8c23b3a 100644
--- a/core/src/main/java/org/bouncycastle/asn1/x509/sigi/PersonalData.java
+++ b/core/src/main/java/org/bouncycastle/asn1/x509/sigi/PersonalData.java
@@ -18,7 +18,7 @@ import org.bouncycastle.asn1.x500.DirectoryString;
/**
* Contains personal data for the otherName field in the subjectAltNames
* extension.
- *
+ *
*
* PersonalData ::= SEQUENCE {
* nameOrPseudonym NameOrPseudonym,
@@ -169,9 +169,8 @@ public class PersonalData
/**
* Produce an object suitable for an ASN1OutputStream.
- *
+ *
* PersonalData ::= SEQUENCE {
* nameOrPseudonym NameOrPseudonym,
diff --git a/core/src/main/java/org/bouncycastle/asn1/x9/X962Parameters.java b/core/src/main/java/org/bouncycastle/asn1/x9/X962Parameters.java
index 1c395d20..a4348dec 100644
--- a/core/src/main/java/org/bouncycastle/asn1/x9/X962Parameters.java
+++ b/core/src/main/java/org/bouncycastle/asn1/x9/X962Parameters.java
@@ -74,7 +74,7 @@ public class X962Parameters
*
* Parameters ::= CHOICE {
* ecParameters ECParameters,
- * namedCurve CURVES.&id({CurveNames}),
+ * namedCurve CURVES.&id({CurveNames}),
* implicitlyCA NULL
* }
*
diff --git a/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKEParticipant.java b/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKEParticipant.java
index 94efd92d..605b88ed 100644
--- a/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKEParticipant.java
+++ b/core/src/main/java/org/bouncycastle/crypto/agreement/jpake/JPAKEParticipant.java
@@ -10,19 +10,16 @@ import org.bouncycastle.util.Arrays;
/**
* A participant in a Password Authenticated Key Exchange by Juggling (J-PAKE) exchange.
- *
- *
+ *
*
- *
- *
+ *
* Alice could simply check ga != 1 to ensure it is a generator.
* In fact, as we will explain in Section 3, (x1 + x3 + x4 ) is random over Zq even in the face of active attacks.
@@ -250,8 +245,6 @@ public class JPAKEUtil
* Calculates the keying material, which can be done after round 2 has completed.
* A session key must be derived from this key material using a secure key derivation function (KDF).
* The KDF used to derive the key is handled externally (i.e. not by {@link JPAKEParticipant}).
- *
- *
*
* KeyingMaterial = (B/g^{x2*x4*s})^x2
*
@@ -326,8 +319,6 @@ public class JPAKEUtil
* Calculates the MacTag (to be used for key confirmation), as defined by
* NIST SP 800-56A Revision 1,
* Section 8.2 Unilateral Key Confirmation for Key Agreement Schemes.
- *
- *
*
* MacTag = HMAC(MacKey, MacLen, MacData)
*
@@ -339,10 +330,9 @@ public class JPAKEUtil
* is always the initiator for key confirmation.
*
* HMAC = {@link HMac} used with the given {@link Digest}
- * H = The given {@link Digest}
+ * H = The given {@link Digest}
* MacLen = length of MacTag
*
- *
*/
public static BigInteger calculateMacTag(
String participantId,
@@ -383,8 +373,6 @@ public class JPAKEUtil
/**
* Calculates the MacKey (i.e. the key to use when calculating the MagTag for key confirmation).
- *
- *
*
* MacKey = H(K || "JPAKE_KC")
*
@@ -407,7 +395,6 @@ public class JPAKEUtil
/**
* Validates the MacTag received from the partner participant.
- *
*
* @param partnerMacTag the MacTag received from the partner.
* @throws CryptoException if the participantId strings are equal.
diff --git a/core/src/main/java/org/bouncycastle/crypto/digests/SHA3Digest.java b/core/src/main/java/org/bouncycastle/crypto/digests/SHA3Digest.java
index 15eb77ce..e13dc614 100644
--- a/core/src/main/java/org/bouncycastle/crypto/digests/SHA3Digest.java
+++ b/core/src/main/java/org/bouncycastle/crypto/digests/SHA3Digest.java
@@ -5,7 +5,7 @@ import org.bouncycastle.util.Arrays;
/**
* implementation of SHA-3 based on following KeccakNISTInterface.c from http://keccak.noekeon.org/
- *
+ *
* Initialising the engine with {@link SkeinParameters} allows standard and arbitrary parameters to
* be applied during the Skein hash function.
- *
*
- *
+ *
*
*
* 2 x block size state is retained by each cipher instance.
diff --git a/core/src/main/java/org/bouncycastle/crypto/examples/DESExample.java b/core/src/main/java/org/bouncycastle/crypto/examples/DESExample.java
index 16989971..90a21def 100644
--- a/core/src/main/java/org/bouncycastle/crypto/examples/DESExample.java
+++ b/core/src/main/java/org/bouncycastle/crypto/examples/DESExample.java
@@ -41,9 +41,11 @@ import org.bouncycastle.util.encoders.Hex;
*
*
* k[0] ... k[15], r[0] ... r[15]
+ * @param key a 32 byte key value k[0] ... k[15], r[0] ... r[15]
*/
public static void clamp(byte[] key)
{
diff --git a/core/src/main/java/org/bouncycastle/crypto/io/CipherInputStream.java b/core/src/main/java/org/bouncycastle/crypto/io/CipherInputStream.java
index 93b04e99..38ebcb0c 100644
--- a/core/src/main/java/org/bouncycastle/crypto/io/CipherInputStream.java
+++ b/core/src/main/java/org/bouncycastle/crypto/io/CipherInputStream.java
@@ -13,7 +13,7 @@ import org.bouncycastle.crypto.modes.AEADBlockCipher;
* A CipherInputStream is composed of an InputStream and a cipher so that read() methods return data
* that are read in from the underlying InputStream but have been additionally processed by the
* Cipher. The cipher must be fully initialized before being used by a CipherInputStream.
- *
+ * b.length
bytes in the provided array.
- * len
bytes in the provided array.
- * b.length
bytes from the specified byte array
* to this output stream.
- * write
method of
* CipherOutputStream
calls the write
* method of three arguments with the three arguments
@@ -177,8 +177,7 @@ public class CipherOutputStream
* Flushes this output stream by forcing any buffered output bytes
* that have already been processed by the encapsulated cipher object
* to be written out.
- * doFinal
method of the encapsulated
* cipher object, which causes any bytes buffered by the encapsulated
* cipher to be processed. The result is written out by calling the
* flush
method of this output stream.
- * close
method of the underlying output
* stream.
diff --git a/core/src/main/java/org/bouncycastle/crypto/macs/CMac.java b/core/src/main/java/org/bouncycastle/crypto/macs/CMac.java
index 1aa8ede4..64294e08 100644
--- a/core/src/main/java/org/bouncycastle/crypto/macs/CMac.java
+++ b/core/src/main/java/org/bouncycastle/crypto/macs/CMac.java
@@ -58,14 +58,14 @@ public class CMac implements Mac
/**
* create a standard MAC based on a block cipher with the size of the
* MAC been given in bits.
- * License for
* Open-Source Software Implementations of OCB (Jan 9, 2013) — “License 1”
*/
diff --git a/core/src/main/java/org/bouncycastle/crypto/params/SkeinParameters.java b/core/src/main/java/org/bouncycastle/crypto/params/SkeinParameters.java
index 76241eea..4e2edd56 100644
--- a/core/src/main/java/org/bouncycastle/crypto/params/SkeinParameters.java
+++ b/core/src/main/java/org/bouncycastle/crypto/params/SkeinParameters.java
@@ -17,7 +17,7 @@ import org.bouncycastle.util.Integers;
/**
* Parameters for the Skein hash function - a series of byte[] strings identified by integer tags.
- *
+ *
* Under this license, you are authorized to make, use, and distribute open-source software
* implementations of OCB. This license terminates for you if you sue someone over their open-source
* software implementation of OCB claiming that you have a patent covering their implementation.
- *
+ *
*
* Parameter types must be in the range 0,5..62, and cannot use the value {@value
* SkeinParameters#PARAM_TYPE_MESSAGE} (reserved for message body).
- *
- * Parameters with type < {@value SkeinParameters#PARAM_TYPE_MESSAGE} are processed before
- * the message content, parameters with type > {@value SkeinParameters#PARAM_TYPE_MESSAGE}
+ * YYYYMMDD email@address distinguisher
, encoded to a byte
* sequence using UTF-8 encoding.
*
diff --git a/core/src/main/java/org/bouncycastle/crypto/prng/drbg/DualECPoints.java b/core/src/main/java/org/bouncycastle/crypto/prng/drbg/DualECPoints.java
index c3715bc1..7dcfa94f 100644
--- a/core/src/main/java/org/bouncycastle/crypto/prng/drbg/DualECPoints.java
+++ b/core/src/main/java/org/bouncycastle/crypto/prng/drbg/DualECPoints.java
@@ -19,7 +19,7 @@ public class DualECPoints
*
* max_outlen = largest multiple of 8 less than ((field size in bits) - (13 + log2(cofactor))
*
- *
* Note: the usual length for the salt is the length of the hash * function used in bytes. */ diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/AlwaysValidVerifyer.java b/core/src/main/java/org/bouncycastle/crypto/tls/AlwaysValidVerifyer.java index bf4cd13b..961408ae 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/AlwaysValidVerifyer.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/AlwaysValidVerifyer.java @@ -2,7 +2,6 @@ package org.bouncycastle.crypto.tls; /** * A certificate verifyer, that will always return true. - *
** DO NOT USE THIS FILE UNLESS YOU KNOW EXACTLY WHAT YOU ARE DOING. *diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/BulkCipherAlgorithm.java b/core/src/main/java/org/bouncycastle/crypto/tls/BulkCipherAlgorithm.java index e90bb7f9..7f013b3a 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/BulkCipherAlgorithm.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/BulkCipherAlgorithm.java @@ -2,7 +2,7 @@ package org.bouncycastle.crypto.tls; /** * RFC 2246 - * + *
* Note that the values here are implementation-specific and arbitrary. It is recommended not to * depend on the particular values (e.g. serialization). */ diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/Certificate.java b/core/src/main/java/org/bouncycastle/crypto/tls/Certificate.java index 02cf6931..33a6edd4 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/Certificate.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/Certificate.java @@ -11,12 +11,11 @@ import org.bouncycastle.asn1.ASN1Primitive; /** * Parsing and encoding of a Certificate struct from RFC 4346. - *
*- * opaque ASN.1Cert<2^24-1>; + * opaque ASN.1Cert<2^24-1>; * * struct { - * ASN.1Cert certificate_list<0..2^24-1>; + * ASN.1Cert certificate_list<0..2^24-1>; * } Certificate; ** diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/CertificateRequest.java b/core/src/main/java/org/bouncycastle/crypto/tls/CertificateRequest.java index b76e50a3..1e2e8e37 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/CertificateRequest.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/CertificateRequest.java @@ -12,11 +12,10 @@ import org.bouncycastle.asn1.x500.X500Name; /** * Parsing and encoding of a CertificateRequest struct from RFC 4346. - * *
* struct { - * ClientCertificateType certificate_types<1..2^8-1>; - * DistinguishedName certificate_authorities<3..2^16-1>; + * ClientCertificateType certificate_types<1..2^8-1>; + * DistinguishedName certificate_authorities<3..2^16-1>; * } CertificateRequest; ** @@ -42,7 +41,7 @@ public class CertificateRequest /** * @return an array of certificate types - * @see {@link ClientCertificateType} + * @see ClientCertificateType */ public short[] getCertificateTypes() { diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/CipherType.java b/core/src/main/java/org/bouncycastle/crypto/tls/CipherType.java index b2d3e797..c6d845a6 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/CipherType.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/CipherType.java @@ -2,7 +2,7 @@ package org.bouncycastle.crypto.tls; /** * RFC 2246 - * + *
* Note that the values here are implementation-specific and arbitrary. It is recommended not to * depend on the particular values (e.g. serialization). */ diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/ConnectionEnd.java b/core/src/main/java/org/bouncycastle/crypto/tls/ConnectionEnd.java index 9fdd5a89..bcbf607e 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/ConnectionEnd.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/ConnectionEnd.java @@ -2,7 +2,7 @@ package org.bouncycastle.crypto.tls; /** * RFC 2246 - *
+ ** Note that the values here are implementation-specific and arbitrary. It is recommended not to * depend on the particular values (e.g. serialization). */ diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/DigestAlgorithm.java b/core/src/main/java/org/bouncycastle/crypto/tls/DigestAlgorithm.java index 41d54009..8bb89a66 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/DigestAlgorithm.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/DigestAlgorithm.java @@ -2,7 +2,7 @@ package org.bouncycastle.crypto.tls; /** * RFC 2246 - *
+ ** Note that the values here are implementation-specific and arbitrary. It is recommended not to * depend on the particular values (e.g. serialization). * diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/EncryptionAlgorithm.java b/core/src/main/java/org/bouncycastle/crypto/tls/EncryptionAlgorithm.java index 8338ae56..2da2f76a 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/EncryptionAlgorithm.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/EncryptionAlgorithm.java @@ -2,7 +2,7 @@ package org.bouncycastle.crypto.tls; /** * RFC 2246 - *
+ ** Note that the values here are implementation-specific and arbitrary. It is recommended not to * depend on the particular values (e.g. serialization). */ diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/KeyExchangeAlgorithm.java b/core/src/main/java/org/bouncycastle/crypto/tls/KeyExchangeAlgorithm.java index 72a944f8..d862d769 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/KeyExchangeAlgorithm.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/KeyExchangeAlgorithm.java @@ -2,7 +2,7 @@ package org.bouncycastle.crypto.tls; /** * RFC 2246 - *
+ ** Note that the values here are implementation-specific and arbitrary. It is recommended not to * depend on the particular values (e.g. serialization). */ diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/MACAlgorithm.java b/core/src/main/java/org/bouncycastle/crypto/tls/MACAlgorithm.java index 856e5ffe..bd13ab89 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/MACAlgorithm.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/MACAlgorithm.java @@ -2,7 +2,7 @@ package org.bouncycastle.crypto.tls; /** * RFC 2246 - *
+ ** Note that the values here are implementation-specific and arbitrary. It is recommended not to * depend on the particular values (e.g. serialization). */ diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/NamedCurve.java b/core/src/main/java/org/bouncycastle/crypto/tls/NamedCurve.java index 83d64552..49fc923a 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/NamedCurve.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/NamedCurve.java @@ -2,7 +2,7 @@ package org.bouncycastle.crypto.tls; /** * RFC 4492 5.1.1 - *
+ ** The named curves defined here are those specified in SEC 2 [13]. Note that many of these curves * are also recommended in ANSI X9.62 [7] and FIPS 186-2 [11]. Values 0xFE00 through 0xFEFF are * reserved for private use. Values 0xFF01 and 0xFF02 indicate that the client supports arbitrary diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/PRFAlgorithm.java b/core/src/main/java/org/bouncycastle/crypto/tls/PRFAlgorithm.java index 3da5fdec..33c27c4a 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/PRFAlgorithm.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/PRFAlgorithm.java @@ -2,7 +2,7 @@ package org.bouncycastle.crypto.tls; /** * RFC 5246 - *
+ ** Note that the values here are implementation-specific and arbitrary. It is recommended not to * depend on the particular values (e.g. serialization). */ diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/SSL3Mac.java b/core/src/main/java/org/bouncycastle/crypto/tls/SSL3Mac.java index 0d2e2f19..7d838590 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/SSL3Mac.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/SSL3Mac.java @@ -8,9 +8,9 @@ import org.bouncycastle.util.Arrays; /** * HMAC implementation based on original internet draft for HMAC (RFC 2104) - *
+ ** The difference is that padding is concatenated versus XORed with the key - *
+ ** H(K + opad, H(K + ipad, text)) */ public class SSL3Mac diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/TlsClient.java b/core/src/main/java/org/bouncycastle/crypto/tls/TlsClient.java index 7db86cd4..8b29c1f7 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/TlsClient.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/TlsClient.java @@ -36,9 +36,9 @@ public interface TlsClient /** * Notifies the client of the session_id sent in the ServerHello. - * + * * @param sessionID - * @see {@link TlsContext#getResumableSession()} + * @see TlsContext#getResumableSession() */ void notifySessionID(byte[] sessionID); @@ -66,7 +66,7 @@ public interface TlsClient /** * RFC 5077 3.3. NewSessionTicket Handshake Message - *
+ ** This method will be called (only) when a NewSessionTicket handshake message is received. The * ticket is opaque to the client and clients MUST NOT examine the ticket under the assumption * that it complies with e.g. RFC 5077 4. Recommended Ticket Construction. diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/TlsContext.java b/core/src/main/java/org/bouncycastle/crypto/tls/TlsContext.java index 04781efc..33de8e36 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/TlsContext.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/TlsContext.java @@ -20,7 +20,7 @@ public interface TlsContext * * @return A {@link TlsSession} representing the resumable session used by this connection, or * null if no resumable session available. - * @see {@link TlsPeer#notifyHandshakeComplete()} + * @see TlsPeer#notifyHandshakeComplete() */ TlsSession getResumableSession(); diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/TlsMac.java b/core/src/main/java/org/bouncycastle/crypto/tls/TlsMac.java index e720d08d..00e0c79f 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/TlsMac.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/TlsMac.java @@ -26,7 +26,7 @@ public class TlsMac * @param digest The digest to use. * @param key A byte-array where the key for this MAC is located. * @param keyOff The number of bytes to skip, before the key starts in the buffer. - * @param len The length of the key. + * @param keyLen The length of the key. */ public TlsMac(TlsContext context, Digest digest, byte[] key, int keyOff, int keyLen) { diff --git a/core/src/main/java/org/bouncycastle/crypto/tls/TlsServer.java b/core/src/main/java/org/bouncycastle/crypto/tls/TlsServer.java index 85c0a9a8..d97c16d5 100644 --- a/core/src/main/java/org/bouncycastle/crypto/tls/TlsServer.java +++ b/core/src/main/java/org/bouncycastle/crypto/tls/TlsServer.java @@ -78,7 +78,7 @@ public interface TlsServer /** * RFC 5077 3.3. NewSessionTicket Handshake Message. - *
+ ** This method will be called (only) if a NewSessionTicket extension was sent by the server. See * RFC 5077 4. Recommended Ticket Construction for recommended format and protection. * diff --git a/core/src/main/java/org/bouncycastle/pqc/asn1/GMSSPublicKey.java b/core/src/main/java/org/bouncycastle/pqc/asn1/GMSSPublicKey.java index e4f8f502..fc5c4f2b 100644 --- a/core/src/main/java/org/bouncycastle/pqc/asn1/GMSSPublicKey.java +++ b/core/src/main/java/org/bouncycastle/pqc/asn1/GMSSPublicKey.java @@ -13,7 +13,6 @@ import org.bouncycastle.util.Arrays; /** * This class implements an ASN.1 encoded GMSS public key. The ASN.1 definition * of this structure is: - *
** GMSSPublicKey ::= SEQUENCE{ * version INTEGER diff --git a/core/src/main/java/org/bouncycastle/pqc/asn1/RainbowPrivateKey.java b/core/src/main/java/org/bouncycastle/pqc/asn1/RainbowPrivateKey.java index 06064646..7c21691d 100644 --- a/core/src/main/java/org/bouncycastle/pqc/asn1/RainbowPrivateKey.java +++ b/core/src/main/java/org/bouncycastle/pqc/asn1/RainbowPrivateKey.java @@ -14,9 +14,8 @@ import org.bouncycastle.pqc.crypto.rainbow.util.RainbowUtil; /** * Return the key data to encode in the PrivateKeyInfo structure. - * + ** The ASN.1 definition of the key structure is - *
** RainbowPrivateKey ::= SEQUENCE { * CHOICE diff --git a/core/src/main/java/org/bouncycastle/pqc/asn1/RainbowPublicKey.java b/core/src/main/java/org/bouncycastle/pqc/asn1/RainbowPublicKey.java index 2073c555..febe5387 100644 --- a/core/src/main/java/org/bouncycastle/pqc/asn1/RainbowPublicKey.java +++ b/core/src/main/java/org/bouncycastle/pqc/asn1/RainbowPublicKey.java @@ -14,7 +14,6 @@ import org.bouncycastle.pqc.crypto.rainbow.util.RainbowUtil; /** * This class implements an ASN.1 encoded Rainbow public key. The ASN.1 definition * of this structure is: - * ** RainbowPublicKey ::= SEQUENCE { * CHOICE diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/GMSSKeyPairGenerator.java b/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/GMSSKeyPairGenerator.java index f84b7f32..013441ec 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/GMSSKeyPairGenerator.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/GMSSKeyPairGenerator.java @@ -98,7 +98,6 @@ public class GMSSKeyPairGenerator /** * The standard constructor tries to generate the GMSS algorithm identifier * with the corresponding OID. - * * * @param digestProvider provider for digest implementations. */ @@ -363,21 +362,21 @@ public class GMSSKeyPairGenerator * This method initializes the GMSS KeyPairGenerator using an integer value *keySize
as input. It provides a simple use of the GMSS for * testing demands. - * + ** A given
* * @param layers the number of authentication tree layers * @param heightOfTrees the height of the authentication trees diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/GMSSSigner.java b/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/GMSSSigner.java index 7cedf120..8832fb34 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/GMSSSigner.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/GMSSSigner.java @@ -214,7 +214,6 @@ public class GMSSSigner /** * Signs a message. - * * * @return the signature. */ diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/util/WinternitzOTSVerify.java b/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/util/WinternitzOTSVerify.java index 096de757..d012ce7c 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/util/WinternitzOTSVerify.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/util/WinternitzOTSVerify.java @@ -20,7 +20,6 @@ public class WinternitzOTSVerify /** * The constructor - * * * @param digest the name of the hash function used by the OTS and the provider * name of the hash function diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/util/WinternitzOTSignature.java b/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/util/WinternitzOTSignature.java index 51eaf53c..23bf3fab 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/util/WinternitzOTSignature.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/util/WinternitzOTSignature.java @@ -50,7 +50,6 @@ public class WinternitzOTSignature /** * The constructor generates an OTS key pair, usingkeysize
of less than 10 creates an amount 2^10 * signatures. A keySize between 10 and 20 creates 2^20 signatures. Given an * integer greater than 20 the key pair generator creates 2^40 signatures. * * @param keySize Assigns the parameters used for the GMSS signatures. There are - * 3 choices:
- * 1. keysize <= 10: creates 2^10 signatures using the - * parameterset
- * P = (2, (5, 5), (3, 3), (3, 3))
- * 2. keysize > 10 and <= 20: creates 2^20 signatures using the - * parameterset
- * P = (2, (10, 10), (5, 4), (2, 2))
- * 3. keysize > 20: creates 2^40 signatures using the - * parameterset
+ * 3 choices:
+ * 1. keysize <= 10: creates 2^10 signatures using the + * parameterset
+ * P = (2, (5, 5), (3, 3), (3, 3))
+ * 2. keysize > 10 and <= 20: creates 2^20 signatures using the + * parameterset
+ * P = (2, (10, 10), (5, 4), (2, 2))
+ * 3. keysize > 20: creates 2^40 signatures using the + * parameterset
* P = (2, (10, 10, 10, 10), (9, 9, 9, 3), (2, 2, 2, 2)) * @param secureRandom not used by GMSS, the SHA1PRNG of the SUN Provider is always * used diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/GMSSParameters.java b/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/GMSSParameters.java index 04332619..aa89f76a 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/GMSSParameters.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/gmss/GMSSParameters.java @@ -32,7 +32,6 @@ public class GMSSParameters /** * The constructor for the parameters of the GMSSKeyPairGenerator. - *seed0
and * the PRNG - * * * @param seed0 the seed for the PRGN * @param digest an array of strings, containing the name of the used hash diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters.java b/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters.java index d5caa352..8d64ae29 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionKeyGenerationParameters.java @@ -79,7 +79,7 @@ public class NTRUEncryptionKeyGenerationParameters public Digest hashAlg; /** - * Constructs a parameter set that uses ternary private keys (i.e. polyType=SIMPLE). + * Constructs a parameter set that uses ternary private keys (i.e.polyType=SIMPLE
). * * @param N number of polynomial coefficients * @param q modulus @@ -116,7 +116,7 @@ public class NTRUEncryptionKeyGenerationParameters } /** - * Constructs a parameter set that uses product-form private keys (i.e. polyType=PRODUCT). + * Constructs a parameter set that uses product-form private keys (i.e.polyType=PRODUCT
). * * @param N number of polynomial coefficients * @param q modulus diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionKeyPairGenerator.java b/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionKeyPairGenerator.java index 7a648c8f..f2751caa 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionKeyPairGenerator.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionKeyPairGenerator.java @@ -10,7 +10,7 @@ import org.bouncycastle.pqc.math.ntru.polynomial.ProductFormPolynomial; import org.bouncycastle.pqc.math.ntru.util.Util; /** - * Generates key pairs.
+ * Generates key pairs.
* The parameter p is hardcoded to 3. */ public class NTRUEncryptionKeyPairGenerator diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionParameters.java b/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionParameters.java index eeb38391..b387bc24 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionParameters.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionParameters.java @@ -42,7 +42,7 @@ public class NTRUEncryptionParameters public Digest hashAlg; /** - * Constructs a parameter set that uses ternary private keys (i.e. polyType=SIMPLE). + * Constructs a parameter set that uses ternary private keys (i.e.polyType=SIMPLE
). * * @param N number of polynomial coefficients * @param q modulus @@ -78,7 +78,7 @@ public class NTRUEncryptionParameters } /** - * Constructs a parameter set that uses product-form private keys (i.e. polyType=PRODUCT). + * Constructs a parameter set that uses product-form private keys (i.e.polyType=PRODUCT
). * * @param N number of polynomial coefficients * @param q modulus diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionPrivateKeyParameters.java b/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionPrivateKeyParameters.java index d1ee858e..bcf9418e 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionPrivateKeyParameters.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEncryptionPrivateKeyParameters.java @@ -14,7 +14,7 @@ import org.bouncycastle.pqc.math.ntru.polynomial.SparseTernaryPolynomial; /** * A NtruEncrypt private key is essentially a polynomial namedf
* which takes different forms depending on whether product-form polynomials are used, - * and onfastP
+ * and onfastP
* The inverse off
modulop
is precomputed on initialization. */ public class NTRUEncryptionPrivateKeyParameters diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEngine.java b/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEngine.java index 1fb6a1de..6c5fe811 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEngine.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUEngine.java @@ -17,7 +17,7 @@ import org.bouncycastle.pqc.math.ntru.polynomial.TernaryPolynomial; import org.bouncycastle.util.Arrays; /** - * Encrypts, decrypts data and generates key pairs.
+ * Encrypts, decrypts data and generates key pairs.
* The parameter p is hardcoded to 3. */ public class NTRUEngine diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUSigningKeyGenerationParameters.java b/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUSigningKeyGenerationParameters.java index 1398e2b6..90c243eb 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUSigningKeyGenerationParameters.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUSigningKeyGenerationParameters.java @@ -75,7 +75,7 @@ public class NTRUSigningKeyGenerationParameters public int polyType; /** - * Constructs a parameter set that uses ternary private keys (i.e. polyType=SIMPLE). + * Constructs a parameter set that uses ternary private keys (i.e.polyType=SIMPLE
). * * @param N number of polynomial coefficients * @param q modulus @@ -110,7 +110,7 @@ public class NTRUSigningKeyGenerationParameters } /** - * Constructs a parameter set that uses product-form private keys (i.e. polyType=PRODUCT). + * Constructs a parameter set that uses product-form private keys (i.e.polyType=PRODUCT
). * * @param N number of polynomial coefficients * @param q modulus diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUSigningParameters.java b/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUSigningParameters.java index bf70cafb..2f018b0f 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUSigningParameters.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/ntru/NTRUSigningParameters.java @@ -29,7 +29,7 @@ public class NTRUSigningParameters public Digest hashAlg; /** - * Constructs a parameter set that uses ternary private keys (i.e. polyType=SIMPLE). + * Constructs a parameter set that uses ternary private keys (i.e.polyType=SIMPLE
). * * @param N number of polynomial coefficients * @param q modulus @@ -52,7 +52,7 @@ public class NTRUSigningParameters } /** - * Constructs a parameter set that uses product-form private keys (i.e. polyType=PRODUCT). + * Constructs a parameter set that uses product-form private keys (i.e.polyType=PRODUCT
). * * @param N number of polynomial coefficients * @param q modulus diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/Layer.java b/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/Layer.java index 4c457ec5..ae76922c 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/Layer.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/Layer.java @@ -10,14 +10,14 @@ import org.bouncycastle.util.Arrays; /** * This class represents a layer of the Rainbow Oil- and Vinegar Map. Each Layer * consists of oi polynomials with their coefficients, generated at random. - * + ** To sign a document, we solve a LES (linear equation system) for each layer in * order to find the oil variables of that layer and to be able to use the * variables to compute the signature. This functionality is implemented in the * RainbowSignature-class, by the aid of the private key. - *
+ ** Each layer is a part of the private key. - *
+ ** More information about the layer can be found in the paper of Jintai Ding, * Dieter Schmidt: Rainbow, a New Multivariable Polynomial Signature Scheme. * ACNS 2005: 164-175 (http://dx.doi.org/10.1007/11496137_12) @@ -124,7 +124,7 @@ public class Layer * This method plugs in the vinegar variables into the polynomials of this * layer and computes the coefficients of the Oil-variables as well as the * free coefficient in each polynomial. - *
+ ** It is needed for computing the Oil variables while signing. * * @param x vinegar variables of this layer that should be plugged into diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/RainbowKeyPairGenerator.java b/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/RainbowKeyPairGenerator.java index e7fe0593..8ef15337 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/RainbowKeyPairGenerator.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/RainbowKeyPairGenerator.java @@ -12,7 +12,7 @@ import org.bouncycastle.pqc.crypto.rainbow.util.GF2Field; * This class implements AsymmetricCipherKeyPairGenerator. It is used * as a generator for the private and public key of the Rainbow Signature * Scheme. - *
+ ** Detailed information about the key generation is to be found in the paper of * Jintai Ding, Dieter Schmidt: Rainbow, a New Multivariable Polynomial * Signature Scheme. ACNS 2005: 164-175 (http://dx.doi.org/10.1007/11496137_12) @@ -49,7 +49,6 @@ public class RainbowKeyPairGenerator /** * The standard constructor tries to generate the Rainbow algorithm identifier * with the corresponding OID. - *
*/ public RainbowKeyPairGenerator() { diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/RainbowSigner.java b/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/RainbowSigner.java index b6014a54..979e759b 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/RainbowSigner.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/RainbowSigner.java @@ -12,7 +12,7 @@ import org.bouncycastle.pqc.crypto.rainbow.util.GF2Field; * It implements the sign and verify functions for the Rainbow Signature Scheme. * Here the message, which has to be signed, is updated. The use of * different hash functions is possible. - * + ** Detailed information about the signature and the verify-method is to be found * in the paper of Jintai Ding, Dieter Schmidt: Rainbow, a New Multivariable * Polynomial Signature Scheme. ACNS 2005: 164-175 @@ -96,10 +96,10 @@ public class RainbowSigner /** * This function signs the message that has been updated, making use of the * private key. - *
+ ** For computing the signature, L1 and L2 are needed, as well as LES should * be solved for each layer in order to find the Oil-variables in the layer. - *
+ ** The Vinegar-variables of the first layer are random generated. * * @param message the message diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/util/ComputeInField.java b/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/util/ComputeInField.java index 9a1115da..3517ba30 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/util/ComputeInField.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/util/ComputeInField.java @@ -2,7 +2,7 @@ package org.bouncycastle.pqc.crypto.rainbow.util; /** * This class offers different operations on matrices in field GF2^8. - *
+ ** Implemented are functions: * - finding inverse of a matrix * - solving linear equation systems using the Gauss-Elimination method @@ -88,7 +88,7 @@ public class ComputeInField /** * This function computes the inverse of a given matrix using the Gauss- * Elimination method. - *
+ ** An exception is thrown if the matrix has no inverse * * @param coef the matrix which inverse matrix is needed @@ -345,7 +345,7 @@ public class ComputeInField /** * This function multiplies a given matrix with a one-dimensional array. - *
+ ** An exception is thrown, if the number of columns in the matrix and * the number of rows in the one-dim. array differ. * diff --git a/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/util/GF2Field.java b/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/util/GF2Field.java index 7c286491..8d542799 100644 --- a/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/util/GF2Field.java +++ b/core/src/main/java/org/bouncycastle/pqc/crypto/rainbow/util/GF2Field.java @@ -3,10 +3,10 @@ package org.bouncycastle.pqc.crypto.rainbow.util; /** * This class provides the basic operations like addition, multiplication and * finding the multiplicative inverse of an element in GF2^8. - *
+ ** The operations are implemented using the irreducible polynomial * 1+x^2+x^3+x^6+x^8 ( 1 0100 1101 = 0x14d ) - *
+ ** This class makes use of lookup tables(exps and logs) for implementing the * operations in order to increase the efficiency of Rainbow. */ diff --git a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2Polynomial.java b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2Polynomial.java index 64e21e7a..3ef1fbbc 100644 --- a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2Polynomial.java +++ b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2Polynomial.java @@ -1339,7 +1339,7 @@ public class GF2Polynomial /** * Checks if this is irreducible, according to IEEE P1363, A.5.5, - * p103.
+ *
+ * p103.
* Note: The algorithm from IEEE P1363, A5.5 can be used to check a * polynomial with coefficients in GF(2^r) for irreducibility. As this class * only represents polynomials with coefficients in GF(2), the algorithm is @@ -1635,7 +1635,7 @@ public class GF2Polynomial * Does a vector-multiplication modulo 2 and returns the result as boolean. * * @param b GF2Polynomial - * @return this x b as boolean (1->true, 0->false) + * @return this x b as boolean (1->true, 0->false) * @throws PolynomialsHaveDifferentLengthException if this and b have a different length and * thus cannot be vector-multiplied */ @@ -1730,7 +1730,7 @@ public class GF2Polynomial * Sets the bit at position i. * * @param i int - * @throws BitDoesNotExistException if (i < 0) || (i > (len - 1)) + * @throws BitDoesNotExistException if (i < 0) || (i > (len - 1)) */ public void setBit(int i) throws RuntimeException @@ -1767,7 +1767,7 @@ public class GF2Polynomial * Resets the bit at position i. * * @param i int - * @throws BitDoesNotExistException if (i < 0) || (i > (len - 1)) + * @throws BitDoesNotExistException if (i < 0) || (i > (len - 1)) */ public void resetBit(int i) throws RuntimeException @@ -1787,7 +1787,7 @@ public class GF2Polynomial * Xors the bit at position i. * * @param i int - * @throws BitDoesNotExistException if (i < 0) || (i > (len - 1)) + * @throws BitDoesNotExistException if (i < 0) || (i > (len - 1)) */ public void xorBit(int i) throws RuntimeException @@ -1808,7 +1808,7 @@ public class GF2Polynomial * * @param i the position of the bit to be tested * @return true if the bit at position i is set (a(i) == - * 1). False if (i < 0) || (i > (len - 1)) + * 1). False if (i < 0) || (i > (len - 1)) */ public boolean testBit(int i) { @@ -1822,7 +1822,7 @@ public class GF2Polynomial /** * Returns this GF2Polynomial shift-left by 1 in a new GF2Polynomial. * - * @return a new GF2Polynomial (this << 1) + * @return a new GF2Polynomial (this << 1) */ public GF2Polynomial shiftLeft() { @@ -1878,7 +1878,7 @@ public class GF2Polynomial * GF2Polynomial. * * @param k int - * @return a new GF2Polynomial (this << k) + * @return a new GF2Polynomial (this << k) */ public GF2Polynomial shiftLeft(int k) { @@ -1996,7 +1996,7 @@ public class GF2Polynomial /** * Returns this GF2Polynomial shift-right by 1 in a new GF2Polynomial. * - * @return a new GF2Polynomial (this << 1) + * @return a new GF2Polynomial (this << 1) */ public GF2Polynomial shiftRight() { diff --git a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2mField.java b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2mField.java index e74d20b2..37298a1e 100644 --- a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2mField.java +++ b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2mField.java @@ -7,9 +7,9 @@ import java.security.SecureRandom; * GF(2^m). ( GF(2^m)= GF(2)[A] where A is a root of irreducible polynomial with * degree m, each field element B has a polynomial basis representation, i.e. it * is represented by a different binary polynomial of degree less than m, B = - * poly(A) ) All operations are defined only for field with 1< m <32. For the - * representation of field elements the map f: F->Z, poly(A)->poly(2) is used, - * where integers have the binary representation. For example: A^7+A^3+A+1 -> + * poly(A) ) All operations are defined only for field with 1< m <32. For the + * representation of field elements the map f: F->Z, poly(A)->poly(2) is used, + * where integers have the binary representation. For example: A^7+A^3+A+1 -> * (00...0010001011)=139 Also for elements type Integer is used. * * @see PolynomialRingGF2 @@ -291,7 +291,7 @@ public class GF2mField /** * checks if given object is equal to this field. - ** The method returns false whenever the given object is not GF2m. * * @param other object @@ -322,7 +322,6 @@ public class GF2mField /** * Returns a human readable form of this field. - *
* * @return a human readable form of this field. */ diff --git a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2mMatrix.java b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2mMatrix.java index 5c985a18..8dfdb9b1 100644 --- a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2mMatrix.java +++ b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2mMatrix.java @@ -2,7 +2,7 @@ package org.bouncycastle.pqc.math.linearalgebra; /** * This class describes some operations with matrices over finite field GF(2m) - * with small m (1< m <32). + * with small m (1< m <32). * * @see Matrix */ diff --git a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2mVector.java b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2mVector.java index 1f2f5953..f2527f67 100644 --- a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2mVector.java +++ b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2mVector.java @@ -161,7 +161,7 @@ public class GF2mVector * @return this + addend * @throws ArithmeticException if the other vector is not defined over the same field as * this vector. - * + ** TODO: implement this method */ public Vector add(Vector addend) diff --git a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2nONBElement.java b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2nONBElement.java index d8ae6c7a..8b4b473f 100644 --- a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2nONBElement.java +++ b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/GF2nONBElement.java @@ -1048,7 +1048,7 @@ public class GF2nONBElement /** * Returns a String representation of this element. radix * specifies the radix of the String representation.
- * + *
- * NOTE: ONLY radix = 2 or radix = 16 IS IMPLEMENTED> + * NOTE: ONLY radix = 2 or radix = 16 IS IMPLEMENTED * * @param radix specifies the radix of the String representation * @return String representation of this element with the specified radix diff --git a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/IntUtils.java b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/IntUtils.java index bfb8fca0..90a3c60d 100644 --- a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/IntUtils.java +++ b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/IntUtils.java @@ -70,8 +70,7 @@ public final class IntUtils * Sorts this array of integers according to the Quicksort algorithm. After * calling this method this array is sorted in ascending order with the * smallest integer taking position 0 in the array. - ** This implementation is based on the quicksort algorithm as described in *
- * (A|B) = 0 IF gcd(A,B) > 1Data Structures In Java
by Thomas A. Standish, Chapter 10, * ISBN 0-201-30564-X. diff --git a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/IntegerFunctions.java b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/IntegerFunctions.java index 763b180e..779f384a 100644 --- a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/IntegerFunctions.java +++ b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/IntegerFunctions.java @@ -38,8 +38,8 @@ public final class IntegerFunctions * Computes the value of the Jacobi symbol (A|B). The following properties * hold for the Jacobi symbol which makes it a very efficient way to * evaluate the Legendre symbol - *
+ *+ * (A|B) = 0 IF gcd(A,B) > 1
* * @param A integer value * @param B integer value @@ -493,10 +492,10 @@ public final class IntegerFunctions } /** - * determines the order of g modulo p, p prime and 1 < g < p. This algorithm + * determines the order of g modulo p, p prime and 1 < g < p. This algorithm * is only efficient for small p (see X9.62-1998, p. 68). * - * @param g an integer with 1 < g < p + * @param g an integer with 1 < g < p * @param p a prime * @return the order k of g (that is k is the smallest integer with * gk = 1 mod p @@ -743,7 +742,7 @@ public final class IntegerFunctions * Find and return the least non-trivial divisor of an integer a. * * @param a - the integer - * @return divisor p >1 or 1 if a = -1,0,1 + * @return divisor p >1 or 1 if a = -1,0,1 */ public static int leastDiv(int a) { @@ -1008,11 +1007,11 @@ public final class IntegerFunctions } /** - * Computes the binomial coefficient (n|t) ("n over t"). Formula:
* (-1|B) = 1 IF n = 1 (mod 1)
* (-1|B) = -1 IF n = 3 (mod 4)
* (A|B) (C|B) = (AC|B)
@@ -47,7 +47,6 @@ public final class IntegerFunctions * (A|B) = (C|B) IF A = C (mod B)
* (2|B) = 1 IF N = 1 OR 7 (mod 8)
* (2|B) = 1 IF N = 3 OR 5 (mod 8) - *
+ * Computes the binomial coefficient (n|t) ("n over t"). Formula: *
* The method returns false whenever the given object is not permutation. * * @param other - diff --git a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/PolynomialGF2mSmallM.java b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/PolynomialGF2mSmallM.java index 668fbf93..866b6f7c 100644 --- a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/PolynomialGF2mSmallM.java +++ b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/PolynomialGF2mSmallM.java @@ -4,7 +4,7 @@ import java.security.SecureRandom; /** * This class describes operations with polynomials from the ring R = - * GF(2^m)[X], where 2 <= m <=31. + * GF(2^m)[X], where 2 <= m <=31. * * @see GF2mField * @see PolynomialRingGF2m @@ -948,10 +948,10 @@ public class PolynomialGF2mSmallM /** * Compute a polynomial pair (a,b) from this polynomial and the given - * polynomial g with the property b*this = a mod g and deg(a)<=deg(g)/2. + * polynomial g with the property b*this = a mod g and deg(a)<=deg(g)/2. * * @param g the reduction polynomial - * @return PolynomialGF2mSmallM[] {a,b} with b*this = a mod g and deg(a)<= + * @return PolynomialGF2mSmallM[] {a,b} with b*this = a mod g and deg(a)<= * deg(g)/2 */ public PolynomialGF2mSmallM[] modPolynomialToFracton(PolynomialGF2mSmallM g) @@ -978,7 +978,7 @@ public class PolynomialGF2mSmallM /** * checks if given object is equal to this polynomial. - *
+ ** The method returns false whenever the given object is not polynomial over * GF(2^m). * @@ -1045,7 +1045,6 @@ public class PolynomialGF2mSmallM /** * Returns a human readable form of the polynomial. - *
* * @return a human readable form of the polynomial. */ diff --git a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/PolynomialRingGF2.java b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/PolynomialRingGF2.java index 0bdbc41a..a0e2bacc 100644 --- a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/PolynomialRingGF2.java +++ b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/PolynomialRingGF2.java @@ -3,9 +3,9 @@ package org.bouncycastle.pqc.math.linearalgebra; /** * This class describes operations with polynomials over finite field GF(2), i e * polynomial ring R = GF(2)[X]. All operations are defined only for polynomials - * with degree <=32. For the polynomial representation the map f: R->Z, - * poly(X)->poly(2) is used, where integers have the binary representation. For - * example: X^7+X^3+X+1 -> (00...0010001011)=139 Also for polynomials type + * with degree <=32. For the polynomial representation the map f: R->Z, + * poly(X)->poly(2) is used, where integers have the binary representation. For + * example: X^7+X^3+X+1 -> (00...0010001011)=139 Also for polynomials type * Integer is used. * * @see GF2mField diff --git a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/PolynomialRingGF2m.java b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/PolynomialRingGF2m.java index 0711583b..9e5d4139 100644 --- a/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/PolynomialRingGF2m.java +++ b/core/src/main/java/org/bouncycastle/pqc/math/linearalgebra/PolynomialRingGF2m.java @@ -2,7 +2,7 @@ package org.bouncycastle.pqc.math.linearalgebra; /** * This class represents polynomial rings GF(2^m)[X]/p(X) for - * m<<;32. If p(X) is irreducible, the polynomial ring + * m<32. If p(X) is irreducible, the polynomial ring * is in fact an extension field of GF(2^m). */ public class PolynomialRingGF2m diff --git a/core/src/main/java/org/bouncycastle/pqc/math/ntru/euclid/BigIntEuclidean.java b/core/src/main/java/org/bouncycastle/pqc/math/ntru/euclid/BigIntEuclidean.java index b5af2ec5..5fb30584 100644 --- a/core/src/main/java/org/bouncycastle/pqc/math/ntru/euclid/BigIntEuclidean.java +++ b/core/src/main/java/org/bouncycastle/pqc/math/ntru/euclid/BigIntEuclidean.java @@ -14,7 +14,7 @@ public class BigIntEuclidean } /** - * Runs the EEA on twoBigInteger
sBigInteger
sint
sint
sadd
) change the polynomial, others (like mult
) do
* not but return the result as a new polynomial.
*/
@@ -95,7 +95,7 @@ public class BigIntPolynomial
/**
* Multiplies the polynomial by another, taking the indices mod N. Does not
- * change this polynomial but returns the result as a new polynomial.BigInteger
and rounds the result to the nearest whole number.BigInteger
and rounds the result to the nearest whole number.int
coefficients.int
coefficients.add
) change the polynomial, others (like mult
) do
* not but return the result as a new polynomial.
*/
@@ -143,7 +143,7 @@ public class IntegerPolynomial
}
/**
- * Decodes a byte array to a polynomial with N
ternary coefficientsN
ternary coefficients0
and q-1
.q
must be a power of 2.0
and q-1
.q
must be a power of 2.0
and q-1
.q
must be a power of 2.0
and q-1
.q
must be a power of 2.coeffs[2*i]
and coeffs[2*i+1]
must not both equal -1 for any integer i,
+ * coeffs[2*i]
and coeffs[2*i+1]
must not both equal -1 for any integer i
,
* so this method is only safe to use with polynomials produced by fromBinary3Sves()
.
*
* @return the encoded polynomial
@@ -366,7 +366,7 @@ public class IntegerPolynomial
}
/**
- * Computes the inverse mod q; q
must be a power of 2.
+ * Computes the inverse mod q; q
must be a power of 2.
* Returns null
if the polynomial is not invertible.
*
* @param q the modulus
@@ -572,14 +572,14 @@ public class IntegerPolynomial
/**
* Resultant of this polynomial with x^n-1
using a probabilistic algorithm.
- *
+ *
* Unlike EESS, this implementation does not compute all resultants modulo primes
* such that their product exceeds the maximum possible resultant, but rather stops
- * when NUM_EQUAL_RESULTANTS
consecutive modular resultants are equal.
+ * when NUM_EQUAL_RESULTANTS
consecutive modular resultants are equal.
* This means the return value may be incorrect. Experiments show this happens in
* about 1 out of 100 cases when N=439
and NUM_EQUAL_RESULTANTS=2
,
* so the likelyhood of leaving the loop too early is (1/100)^(NUM_EQUAL_RESULTANTS-1)
.
- *
+ *
* Because of the above, callers must verify the output and try a different polynomial if necessary.
*
* @return (rho, res)
satisfying res = rho*this + t*(x^n-1)
for some integer t
.
@@ -766,7 +766,7 @@ public class IntegerPolynomial
}
/**
- * Resultant of this polynomial with x^n-1 mod p
.
+ * Resultant of this polynomial with x^n-1 mod p
.
*
* @return (rho, res)
satisfying res = rho*this + t*(x^n-1) mod p
for some integer t
.
*/
diff --git a/core/src/main/java/org/bouncycastle/pqc/math/ntru/polynomial/LongPolynomial2.java b/core/src/main/java/org/bouncycastle/pqc/math/ntru/polynomial/LongPolynomial2.java
index c7ae56c3..d71615a3 100644
--- a/core/src/main/java/org/bouncycastle/pqc/math/ntru/polynomial/LongPolynomial2.java
+++ b/core/src/main/java/org/bouncycastle/pqc/math/ntru/polynomial/LongPolynomial2.java
@@ -4,7 +4,7 @@ import org.bouncycastle.util.Arrays;
/**
* A polynomial class that combines two coefficients into one long
value for
- * faster multiplication in 64 bit environments.
+ * faster multiplication in 64 bit environments.
* Coefficients can be between 0 and 2047 and are stored in pairs in the bits 0..10 and 24..34 of a long
number.
*/
public class LongPolynomial2
diff --git a/core/src/main/java/org/bouncycastle/pqc/math/ntru/polynomial/LongPolynomial5.java b/core/src/main/java/org/bouncycastle/pqc/math/ntru/polynomial/LongPolynomial5.java
index 69801e90..c804cc8d 100644
--- a/core/src/main/java/org/bouncycastle/pqc/math/ntru/polynomial/LongPolynomial5.java
+++ b/core/src/main/java/org/bouncycastle/pqc/math/ntru/polynomial/LongPolynomial5.java
@@ -4,7 +4,7 @@ import org.bouncycastle.util.Arrays;
/**
* A polynomial class that combines five coefficients into one long
value for
- * faster multiplication by a ternary polynomial.
+ * faster multiplication by a ternary polynomial.
* Coefficients can be between 0 and 2047 and are stored in bits 0..11, 12..23, ..., 48..59 of a long
number.
*/
public class LongPolynomial5
diff --git a/core/src/main/java/org/bouncycastle/pqc/math/ntru/polynomial/Polynomial.java b/core/src/main/java/org/bouncycastle/pqc/math/ntru/polynomial/Polynomial.java
index 7a7237c2..69193e39 100644
--- a/core/src/main/java/org/bouncycastle/pqc/math/ntru/polynomial/Polynomial.java
+++ b/core/src/main/java/org/bouncycastle/pqc/math/ntru/polynomial/Polynomial.java
@@ -32,7 +32,7 @@ public interface Polynomial
/**
* Multiplies the polynomial by a BigIntPolynomial
, taking the indices mod N. Does not
- * change this polynomial but returns the result as a new polynomial.
+ * change this polynomial but returns the result as a new polynomial.
* Both polynomials must have the same number of coefficients.
*
* @param poly2 the polynomial to multiply by
diff --git a/core/src/main/java/org/bouncycastle/pqc/math/ntru/util/ArrayEncoder.java b/core/src/main/java/org/bouncycastle/pqc/math/ntru/util/ArrayEncoder.java
index 0c8f5abf..a437d48a 100644
--- a/core/src/main/java/org/bouncycastle/pqc/math/ntru/util/ArrayEncoder.java
+++ b/core/src/main/java/org/bouncycastle/pqc/math/ntru/util/ArrayEncoder.java
@@ -56,7 +56,7 @@ public class ArrayEncoder
/**
* Encodes an int array whose elements are between 0 and q
,
- * to a byte array leaving no gaps between bits.
+ * to a byte array leaving no gaps between bits.
* q
must be a power of 2.
*
* @param a the input array
@@ -92,8 +92,8 @@ public class ArrayEncoder
}
/**
- * Decodes a byte
array encoded with {@link #encodeModQ(int[], int)} back to an int
array.
- * N
is the number of coefficients. q
must be a power of 2
.
+ * Decodes a byte
array encoded with {@link #encodeModQ(int[], int)} back to an int
array.
+ * N
is the number of coefficients. q
must be a power of 2
.
* Ignores any excess bytes.
*
* @param data an encoded ternary polynomial
@@ -120,8 +120,8 @@ public class ArrayEncoder
}
/**
- * Decodes data encoded with {@link #encodeModQ(int[], int)} back to an int
array.
- * N
is the number of coefficients. q
must be a power of 2
.
+ * Decodes data encoded with {@link #encodeModQ(int[], int)} back to an int
array.
+ * N
is the number of coefficients. q
must be a power of 2
.
* Ignores any excess bytes.
*
* @param is an encoded ternary polynomial
@@ -140,8 +140,8 @@ public class ArrayEncoder
/**
* Decodes a byte
array encoded with {@link #encodeMod3Sves(int[])} back to an int
array
- * with N
coefficients between -1
and 1
.
- * Ignores any excess bytes.
+ * with N
coefficients between -1
and 1
.
+ * Ignores any excess bytes.
* See P1363.1 section 9.2.2.
*
* @param data an encoded ternary polynomial
@@ -171,8 +171,8 @@ public class ArrayEncoder
/**
* Encodes an int
array whose elements are between -1
and 1
, to a byte array.
- * coeffs[2*i]
and coeffs[2*i+1]
must not both equal -1 for any integer
i,
- * so this method is only safe to use with arrays produced by {@link #decodeMod3Sves(byte[], int)}.
+ * coeffs[2*i]
and coeffs[2*i+1]
must not both equal -1 for any integer i
,
+ * so this method is only safe to use with arrays produced by {@link #decodeMod3Sves(byte[], int)}.
* See P1363.1 section 9.2.3.
*
* @param arr
diff --git a/core/src/main/java/org/bouncycastle/util/Memoable.java b/core/src/main/java/org/bouncycastle/util/Memoable.java
index 0be91711..ee0bedac 100644
--- a/core/src/main/java/org/bouncycastle/util/Memoable.java
+++ b/core/src/main/java/org/bouncycastle/util/Memoable.java
@@ -4,7 +4,7 @@ public interface Memoable
{
/**
* Produce a copy of this object with its configuration and in its current state.
- *
+ *
* The returned object may be used simply to store the state, or may be used as a similar object
* starting from the copied state.
*/
@@ -12,7 +12,7 @@ public interface Memoable
/**
* Restore a copied object state into this object.
- *
+ *
* Implementations of this method should try to avoid or minimise memory allocation to perform the reset.
*
* @param other an object originally {@link #copy() copied} from an object of the same type as this instance.
--
cgit v1.2.3