org.bouncycastle.crypto.threshold
Class ShamirSecretSplitter
java.lang.Object
org.bouncycastle.crypto.threshold.ShamirSecretSplitter
- All Implemented Interfaces:
- SecretSplitter
- public class ShamirSecretSplitter
- extends java.lang.Object
- implements SecretSplitter
Field Summary |
protected int |
l
Length of the secret |
protected java.security.SecureRandom |
random
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
l
protected int l
- Length of the secret
random
protected java.security.SecureRandom random
ShamirSecretSplitter
public ShamirSecretSplitter(ShamirSecretSplitter.Algorithm algorithm,
ShamirSecretSplitter.Mode mode,
int l,
java.security.SecureRandom random)
split
public SplitSecret split(int m,
int n)
- Description copied from interface:
SecretSplitter
- Creates secret shares. The secret will be divided into shares, where the secret has a length of L bytes.
- Specified by:
split
in interface SecretSplitter
- Parameters:
m
- A threshold number of sharesn
- Total number of shares
- Returns:
- An array of representing the generated secret shares for m users with l bytes each.
splitAround
public SplitSecret splitAround(SecretShare s,
int m,
int n)
throws java.io.IOException
- Description copied from interface:
SecretSplitter
- Creates secret shares from a given secret share. The secret will be divided into shares, where the secret has a length of L bytes.
- Specified by:
splitAround
in interface SecretSplitter
- Parameters:
m
- A threshold number of sharesn
- Total number of shares
- Returns:
- An array of representing the generated secret shares for m users with l bytes each.
- Throws:
java.io.IOException
resplit
public SplitSecret resplit(byte[] secret,
int m,
int n)
- Description copied from interface:
SecretSplitter
- Creates secret shares from a given secret. The secret will be divided into shares, where the secret has a length of L bytes.
- Specified by:
resplit
in interface SecretSplitter
- Parameters:
m
- A threshold number of sharesn
- Total number of shares
- Returns:
- An array of representing the generated secret shares for m users with l bytes each.