Class PgpSignatureSubpacketGenerator
- Namespace
- Org.BouncyCastle.Bcpg.OpenPgp
- Assembly
- BouncyCastle.Cryptography.dll
public class PgpSignatureSubpacketGenerator
- Inheritance
-
PgpSignatureSubpacketGenerator
- Inherited Members
Remarks
Generator for signature subpackets.
Constructors
PgpSignatureSubpacketGenerator()
Base constructor, creates an empty generator.
public PgpSignatureSubpacketGenerator()
PgpSignatureSubpacketGenerator(PgpSignatureSubpacketVector)
Constructor for pre-initialising the generator from an existing one.
public PgpSignatureSubpacketGenerator(PgpSignatureSubpacketVector sigSubV)
Parameters
sigSubVPgpSignatureSubpacketVectorsigSubV an initial set of subpackets.
Methods
AddCustomSubpacket(SignatureSubpacket)
public void AddCustomSubpacket(SignatureSubpacket subpacket)
Parameters
subpacketSignatureSubpacket
AddEmbeddedSignature(bool, PgpSignature)
public void AddEmbeddedSignature(bool isCritical, PgpSignature pgpSignature)
Parameters
isCriticalboolpgpSignaturePgpSignature
AddIntendedRecipientFingerprint(bool, PgpPublicKey)
public void AddIntendedRecipientFingerprint(bool isCritical, PgpPublicKey publicKey)
Parameters
isCriticalboolpublicKeyPgpPublicKey
AddNotationData(bool, bool, string, string)
public void AddNotationData(bool isCritical, bool isHumanReadable, string notationName, string notationValue)
Parameters
AddPolicyUrl(bool, string)
public void AddPolicyUrl(bool isCritical, string policyUrl)
Parameters
AddRevocationKey(bool, PublicKeyAlgorithmTag, byte[])
public void AddRevocationKey(bool isCritical, PublicKeyAlgorithmTag keyAlgorithm, byte[] fingerprint)
Parameters
isCriticalboolkeyAlgorithmPublicKeyAlgorithmTagfingerprintbyte[]
AddSignerUserId(bool, string)
public void AddSignerUserId(bool isCritical, string userId)
Parameters
Generate()
public PgpSignatureSubpacketVector Generate()
Returns
GetSubpackets(SignatureSubpacketTag)
public SignatureSubpacket[] GetSubpackets(SignatureSubpacketTag type)
Parameters
Returns
HasSubpacket(SignatureSubpacketTag)
public bool HasSubpacket(SignatureSubpacketTag type)
Parameters
Returns
RemovePacket(SignatureSubpacket)
public bool RemovePacket(SignatureSubpacket packet)
Parameters
packetSignatureSubpacket
Returns
SetEmbeddedSignature(bool, PgpSignature)
[Obsolete("Use 'AddEmbeddedSignature' instead")]
public void SetEmbeddedSignature(bool isCritical, PgpSignature pgpSignature)
Parameters
isCriticalboolpgpSignaturePgpSignature
SetExportable(bool, bool)
public void SetExportable(bool isCritical, bool isExportable)
Parameters
SetFeature(bool, byte)
public void SetFeature(bool isCritical, byte feature)
Parameters
SetIssuerFingerprint(bool, PgpPublicKey)
public void SetIssuerFingerprint(bool isCritical, PgpPublicKey publicKey)
Parameters
isCriticalboolpublicKeyPgpPublicKey
SetIssuerFingerprint(bool, PgpSecretKey)
public void SetIssuerFingerprint(bool isCritical, PgpSecretKey secretKey)
Parameters
isCriticalboolsecretKeyPgpSecretKey
SetIssuerKeyID(bool, long)
Sets issuer key sub packet
public void SetIssuerKeyID(bool isCritical, long keyID)
Parameters
SetKeyExpirationTime(bool, long)
Set the number of seconds a key is valid for after the time of its creation. A value of zero means the key never expires.
public void SetKeyExpirationTime(bool isCritical, long seconds)
Parameters
isCriticalboolTrue, if should be treated as critical, false otherwise.
secondslongThe number of seconds the key is valid, or zero if no expiry.
SetKeyFlags(bool, int)
public void SetKeyFlags(bool isCritical, int flags)
Parameters
SetNotationData(bool, bool, string, string)
[Obsolete("Use 'AddNotationData' instead")]
public void SetNotationData(bool isCritical, bool isHumanReadable, string notationName, string notationValue)
Parameters
SetPreferredAeadAlgorithms(bool, int[])
public void SetPreferredAeadAlgorithms(bool isCritical, int[] algorithms)
Parameters
SetPreferredCompressionAlgorithms(bool, int[])
public void SetPreferredCompressionAlgorithms(bool isCritical, int[] algorithms)
Parameters
SetPreferredHashAlgorithms(bool, int[])
public void SetPreferredHashAlgorithms(bool isCritical, int[] algorithms)
Parameters
SetPreferredSymmetricAlgorithms(bool, int[])
public void SetPreferredSymmetricAlgorithms(bool isCritical, int[] algorithms)
Parameters
SetPrimaryUserId(bool, bool)
public void SetPrimaryUserId(bool isCritical, bool isPrimaryUserId)
Parameters
SetRevocable(bool, bool)
public void SetRevocable(bool isCritical, bool isRevocable)
Parameters
SetRevocationKey(bool, PublicKeyAlgorithmTag, byte[])
[Obsolete("Use 'AddRevocationKey' instead")]
public void SetRevocationKey(bool isCritical, PublicKeyAlgorithmTag keyAlgorithm, byte[] fingerprint)
Parameters
isCriticalboolkeyAlgorithmPublicKeyAlgorithmTagfingerprintbyte[]
SetRevocationReason(bool, RevocationReasonTag, string)
Sets revocation reason sub packet
public void SetRevocationReason(bool isCritical, RevocationReasonTag reason, string description)
Parameters
isCriticalboolreasonRevocationReasonTagdescriptionstring
SetSignatureCreationTime(bool, DateTime)
Set the creation time for the signature.
Note: this overrides the generation of a creation time when the signature is generated.
public void SetSignatureCreationTime(bool isCritical, DateTime date)
Parameters
SetSignatureExpirationTime(bool, long)
Set the number of seconds a signature is valid for after the time of its creation. A value of zero means the signature never expires.
public void SetSignatureExpirationTime(bool isCritical, long seconds)
Parameters
isCriticalboolTrue, if should be treated as critical, false otherwise.
secondslongThe number of seconds the signature is valid, or zero if no expiry.
SetSignatureTarget(bool, int, int, byte[])
public void SetSignatureTarget(bool isCritical, int publicKeyAlgorithm, int hashAlgorithm, byte[] hashData)
Parameters
SetSignerUserId(bool, byte[])
public void SetSignerUserId(bool isCritical, byte[] rawUserId)
Parameters
SetSignerUserId(bool, string)
[Obsolete("Use 'AddSignerUserId' instead")]
public void SetSignerUserId(bool isCritical, string userId)
Parameters
SetTrust(bool, int, int)
Add a TrustSignature packet to the signature. The values for depth and trust are largely installation dependent but there are some guidelines in RFC 4880 - 5.2.3.13.
public void SetTrust(bool isCritical, int depth, int trustAmount)