public class MinEntropy
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static int |
base_log
Base when computing the logarithms.
|
static int |
threshold |
Constructor and Description |
---|
MinEntropy() |
Modifier and Type | Method and Description |
---|---|
static double |
conditionalMinEntropy(ProbDist pd,
Channel channel)
Calculates the conditional min-entropy of a probability distribution.
|
static double |
conditionalVulnerability(ProbDist pd,
Channel channel)
Calculates the conditional vulnerability of a probability distribution
given a channel.
|
static boolean |
hasSufficientSamplesForMEL(Observations obs,
int numCells)
Tests whether the sample size recorded in this Observations object
is sufficient for estimating min-entropy leakage.
|
static double |
minCapacity(Channel channel)
Calculates the min-capacity of a channel.
|
static double[] |
minConditionalEntropyConfidenceIntervalChiSquare(Observations obs)
Calculates the confidence interval of the estimated conditional min-entropy
using the Chi-square test when the input distribution is also estimated.
|
static double |
minConditionalEntropyLowerBoundConfidenceIntervalChiSquare(Observations obs)
Calculates the lower bound of the confidence interval of
the estimated conditional min-entropy using the Chi-square
test when the input distribution is also estimated.
|
static double |
minConditionalEntropyUpperBoundConfidenceIntervalChiSquare(Observations obs)
Calculates the upper bound of the confidence interval of
the estimated conditional min-entropy using the Chi-square
test when the input distribution is also estimated.
|
static double |
minEntropy(ProbDist pd)
Calculates the min-entropy of a probability distribution.
|
static double |
minEntropyLeak(ProbDist pd,
Channel channel)
Calculates the min-entropy leakage from a channel
given an input probability distribution pd.
|
static double[] |
minEntropyLeakConfidenceIntervalChiSquare(Observations obs)
Calculates the confidence interval of the estimated min-entropy leakage
using the Chi-square test when the input distribution is also estimated.
|
static double[] |
minEntropyLeakConfidenceIntervalVajda(double[] pmf,
double[][] matrix,
int noOfTests,
int[] sampleSizeGivenOutput,
int noOfOutputs)
Calculates the lower bound of the confidence interval of
the estimated min-entropy leakage using information-theoretic
bounds presetend in [Vajda'02] & [Dutta, Goswami'10].
|
static double |
minEntropyLeakLowerBoundConfidenceIntervalChiSquare(Observations obs)
Calculates the lower bound of the confidence interval of
the estimated min-entropy leakage using the Chi-square test
when the input distribution is also estimated.
|
static double |
minEntropyLeakUpperBoundConfidenceIntervalChiSquare(Observations obs)
Calculates the upper bound of the confidence interval of
the estimated min-entropy leakage using the Chi-square test
when the input distribution is also estimated.
|
static double |
vulnerability(ProbDist pd)
Calculates the vulnerability of a probability distribution.
|
public static final int base_log
public static final int threshold
public static double conditionalMinEntropy(ProbDist pd, Channel channel)
pd
- prbability distributionchannel
- channelpublic static double conditionalVulnerability(ProbDist pd, Channel channel)
pd
- prbability distributionchannel
- channelpublic static boolean hasSufficientSamplesForMEL(Observations obs, int numCells)
obs
- observationsnumCells
- the number of unique pairs of input and outputpublic static double minCapacity(Channel channel)
channel
- channelpublic static double[] minConditionalEntropyConfidenceIntervalChiSquare(Observations obs)
obs
- observationspublic static double minConditionalEntropyLowerBoundConfidenceIntervalChiSquare(Observations obs)
obs
- observationspublic static double minConditionalEntropyUpperBoundConfidenceIntervalChiSquare(Observations obs)
obs
- observationspublic static double minEntropy(ProbDist pd)
pd
- probability distributionpublic static double minEntropyLeak(ProbDist pd, Channel channel)
pd
- prbability distributionchannel
- channelpublic static double[] minEntropyLeakConfidenceIntervalChiSquare(Observations obs)
obs
- observationspublic static double[] minEntropyLeakConfidenceIntervalVajda(double[] pmf, double[][] matrix, int noOfTests, int[] sampleSizeGivenOutput, int noOfOutputs)
pmf
- pmf arraymatrix
- channel matrixnoOfTests
- the sample sizesampleSizeGivenOutput
- the sample size given an outputnoOfOutputs
- the number of outputspublic static double minEntropyLeakLowerBoundConfidenceIntervalChiSquare(Observations obs)
obs
- observationspublic static double minEntropyLeakUpperBoundConfidenceIntervalChiSquare(Observations obs)
obs
- observationspublic static double vulnerability(ProbDist pd)
pd
- probability distribution