org.bouncycastle.pqc.jcajce.interfaces.XMSSMTPrivateKey Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bcprov-ext-debug-jdk18on Show documentation
Show all versions of bcprov-ext-debug-jdk18on Show documentation
The Bouncy Castle Crypto package is a Java implementation of cryptographic algorithms. This jar contains JCE provider and lightweight API for the Bouncy Castle Cryptography APIs for Java 1.8 and later with debug enabled.
The newest version!
package org.bouncycastle.pqc.jcajce.interfaces;
import java.security.PrivateKey;
/**
* Base interface for an XMSSMT private key
*/
public interface XMSSMTPrivateKey
extends XMSSMTKey, PrivateKey
{
/**
* Return the index of the next signature.
*
* @return the index number for the next signature.
*/
long getIndex();
/**
* Return the number of usages left for the private key.
*
* @return the number of times the key can be used before it is exhausted.
*/
long getUsagesRemaining();
/**
* Return a key representing a shard of the key space that can be used usageCount times.
*
* Note: this will use the range [index...index + usageCount) for the current key.
*
* @param usageCount the number of usages the key should have.
* @return a key based on the current key that can be used usageCount times.
*/
XMSSMTPrivateKey extractKeyShard(int usageCount);
}