Bouncy Castle Cryptography Library 1.85

org.bouncycastle.pkcs.bc
Class BcPKCS12PBMac1CalculatorBuilder

java.lang.Object
  extended byorg.bouncycastle.pkcs.bc.BcPKCS12PBMac1CalculatorBuilder
All Implemented Interfaces:
PKCS12MacCalculatorBuilder

public class BcPKCS12PBMac1CalculatorBuilder
extends java.lang.Object
implements PKCS12MacCalculatorBuilder

Lightweight PKCS12MacCalculatorBuilder that produces a PBMAC1 calculator (RFC 8018 ยง7.1) for use as PKCS#12 PFX integrity protection per RFC 9579. Currently restricted to PBKDF2; RFC 9579 requires the PBKDF2 parameters to carry an explicit key length.


Constructor Summary
BcPKCS12PBMac1CalculatorBuilder(org.bouncycastle.asn1.pkcs.PBMAC1Params pbeMacParams)
          Base constructor.
 
Method Summary
 MacCalculator build(char[] password)
           
 org.bouncycastle.asn1.x509.AlgorithmIdentifier getDigestAlgorithmIdentifier()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BcPKCS12PBMac1CalculatorBuilder

public BcPKCS12PBMac1CalculatorBuilder(org.bouncycastle.asn1.pkcs.PBMAC1Params pbeMacParams)
                                throws java.io.IOException
Base constructor.

Parameters:
pbeMacParams - the PBMAC1 parameters carrying the key-derivation function and message-authentication scheme.
Throws:
java.io.IOException - if the PBMAC1 parameters omit a key length (required by RFC 9579) or use an unsupported key-derivation function.
Method Detail

getDigestAlgorithmIdentifier

public org.bouncycastle.asn1.x509.AlgorithmIdentifier getDigestAlgorithmIdentifier()
Specified by:
getDigestAlgorithmIdentifier in interface PKCS12MacCalculatorBuilder

build

public MacCalculator build(char[] password)
                    throws OperatorCreationException
Specified by:
build in interface PKCS12MacCalculatorBuilder
Throws:
OperatorCreationException

Bouncy Castle Cryptography Library 1.85