org.bouncycastle.bcpg.sig.SignatureTarget Maven / Gradle / Ivy
package org.bouncycastle.bcpg.sig;
import org.bouncycastle.bcpg.SignatureSubpacket;
import org.bouncycastle.bcpg.SignatureSubpacketTags;
import org.bouncycastle.util.Arrays;
/**
* RFC 4880, Section 5.2.3.25 - Signature Target subpacket.
*/
public class SignatureTarget
extends SignatureSubpacket
{
public SignatureTarget(
boolean critical,
boolean isLongLength,
byte[] data)
{
super(SignatureSubpacketTags.SIGNATURE_TARGET, critical, isLongLength, data);
}
public SignatureTarget(
boolean critical,
int publicKeyAlgorithm,
int hashAlgorithm,
byte[] hashData)
{
super(SignatureSubpacketTags.SIGNATURE_TARGET, critical, false, Arrays.concatenate(new byte[] { (byte)publicKeyAlgorithm, (byte)hashAlgorithm }, hashData));
}
public int getPublicKeyAlgorithm()
{
return data[0] & 0xff;
}
public int getHashAlgorithm()
{
return data[1] & 0xff;
}
public byte[] getHashData()
{
return Arrays.copyOfRange(data, 2, data.length);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy