Top Description Inners Fields Constructors Methods
org.bouncycastle.crypto.util

public final Class DERMacData

extends Object
Class Inheritance
Imports
org.bouncycastle.asn1.ASN1OctetString, .DERTaggedObject, org.bouncycastle.util.Arrays, .Strings

Builder and holder class for preparing SP 800-56A compliant MacData. Elements in the data are encoded as DER objects with empty octet strings used to represent nulls in compulsory fields.

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class
DERMacData.Builder

Builder to create OtherInfo

public static enum

Field Summary

Modifier and TypeField and Description
private final byte[]

Constructor Summary

AccessConstructor and Description
private
DERMacData(byte[] macData)

Method Summary

Modifier and TypeMethod and Description
public byte[]
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

macDataback to summary
private final byte[] macData

Constructor Detail

DERMacDataback to summary
private DERMacData(byte[] macData)

Method Detail

getMacDataback to summary
public byte[] getMacData()
org.bouncycastle.crypto.util back to summary

public final Class DERMacData.Builder

extends Object
Class Inheritance

Builder to create OtherInfo

Field Summary

Modifier and TypeField and Description
private ASN1OctetString
private ASN1OctetString
private ASN1OctetString
private ASN1OctetString
private byte[]
private final DERMacData.Type

Constructor Summary

AccessConstructor and Description
public
Builder(DERMacData.Type
the MAC header
type
,
byte[]
sender party ID.
idU
,
byte[]
receiver party ID.
idV
,
byte[]
ephemeral data from sender.
ephemDataU
,
byte[]
ephemeral data from receiver.
ephemDataV
)

Create a basic builder with just the compulsory fields.

Method Summary

Modifier and TypeMethod and Description
public DERMacData
private byte[]
concatenate(byte[] header, byte[] id1, byte[] id2, byte[] ed1, byte[] ed2, byte[] text)

public DERMacData.Builder

Returns:

the current builder instance.
withText
(byte[]
optional agreed text to add to the MAC.
text
)

Add optional text.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

ephemDataUback to summary
private ASN1OctetString ephemDataU
ephemDataVback to summary
private ASN1OctetString ephemDataV
idUback to summary
private ASN1OctetString idU
idVback to summary
private ASN1OctetString idV
textback to summary
private byte[] text
typeback to summary
private final DERMacData.Type type

Constructor Detail

Builderback to summary
public Builder(DERMacData.Type type, byte[] idU, byte[] idV, byte[] ephemDataU, byte[] ephemDataV)

Create a basic builder with just the compulsory fields.

Parameters
type:DERMacData.Type

the MAC header

idU:byte[]

sender party ID.

idV:byte[]

receiver party ID.

ephemDataU:byte[]

ephemeral data from sender.

ephemDataV:byte[]

ephemeral data from receiver.

Method Detail

buildback to summary
public DERMacData build()
concatenateback to summary
private byte[] concatenate(byte[] header, byte[] id1, byte[] id2, byte[] ed1, byte[] ed2, byte[] text)
withTextback to summary
public DERMacData.Builder withText(byte[] text)

Add optional text.

Parameters
text:byte[]

optional agreed text to add to the MAC.

Returns:DERMacData.Builder

the current builder instance.

org.bouncycastle.crypto.util back to summary

public final Enum DERMacData.Type

extends Enum<DERMacData.Type>
Class Inheritance

Field Summary

Modifier and TypeField and Description
public static final DERMacData.Type
public static final DERMacData.Type
private final String
public static final DERMacData.Type
public static final DERMacData.Type

Constructor Summary

AccessConstructor and Description
private
Type(String enc)

Method Summary

Modifier and TypeMethod and Description
public byte[]
public static DERMacData.Type
public static DERMacData.Type[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

BILATERALUback to summary
public static final DERMacData.Type BILATERALU
BILATERALVback to summary
public static final DERMacData.Type BILATERALV
encback to summary
private final String enc
UNILATERALUback to summary
public static final DERMacData.Type UNILATERALU
UNILATERALVback to summary
public static final DERMacData.Type UNILATERALV

Constructor Detail

Typeback to summary
private Type(String enc)

Method Detail

getHeaderback to summary
public byte[] getHeader()
valueOfback to summary
public static DERMacData.Type valueOf(String name)
valuesback to summary
public static DERMacData.Type[] values()