Table of Contents

Class PgpUtilities

Namespace
Org.BouncyCastle.Bcpg.OpenPgp
Assembly
BouncyCastle.Cryptography.dll
public sealed class PgpUtilities
Inheritance
PgpUtilities
Inherited Members

Remarks

Basic utility class.

Methods

DsaSigToMpi(byte[])

public static MPInteger[] DsaSigToMpi(byte[] encoding)

Parameters

encoding byte[]

Returns

MPInteger[]

GetCurveName(DerObjectIdentifier)

public static string GetCurveName(DerObjectIdentifier oid)

Parameters

oid DerObjectIdentifier

Returns

string

GetDecoderStream(Stream)

Return either an ArmoredInputStream or a BcpgInputStream based on whether the initial characters of the stream are binary PGP encodings or not.

public static Stream GetDecoderStream(Stream inputStream)

Parameters

inputStream Stream

Returns

Stream

GetDigestIDForName(string)

public static int GetDigestIDForName(string name)

Parameters

name string

Returns

int

GetDigestName(HashAlgorithmTag)

public static string GetDigestName(HashAlgorithmTag hashAlgorithm)

Parameters

hashAlgorithm HashAlgorithmTag

Returns

string

GetKeySize(SymmetricKeyAlgorithmTag)

public static int GetKeySize(SymmetricKeyAlgorithmTag algorithm)

Parameters

algorithm SymmetricKeyAlgorithmTag

Returns

int

GetSignatureName(PublicKeyAlgorithmTag, HashAlgorithmTag)

public static string GetSignatureName(PublicKeyAlgorithmTag keyAlgorithm, HashAlgorithmTag hashAlgorithm)

Parameters

keyAlgorithm PublicKeyAlgorithmTag
hashAlgorithm HashAlgorithmTag

Returns

string

GetSymmetricCipherName(SymmetricKeyAlgorithmTag)

public static string GetSymmetricCipherName(SymmetricKeyAlgorithmTag algorithm)

Parameters

algorithm SymmetricKeyAlgorithmTag

Returns

string

MakeKey(SymmetricKeyAlgorithmTag, byte[])

public static KeyParameter MakeKey(SymmetricKeyAlgorithmTag algorithm, byte[] keyBytes)

Parameters

algorithm SymmetricKeyAlgorithmTag
keyBytes byte[]

Returns

KeyParameter

MakeKeyFromPassPhrase(SymmetricKeyAlgorithmTag, S2k, char[])

public static KeyParameter MakeKeyFromPassPhrase(SymmetricKeyAlgorithmTag algorithm, S2k s2k, char[] passPhrase)

Parameters

algorithm SymmetricKeyAlgorithmTag
s2k S2k
passPhrase char[]

Returns

KeyParameter

Remarks

Conversion of the passphrase characters to bytes is performed using Convert.ToByte(), which is the historical behaviour of the library (1.7 and earlier).

MakeKeyFromPassPhraseRaw(SymmetricKeyAlgorithmTag, S2k, byte[])

public static KeyParameter MakeKeyFromPassPhraseRaw(SymmetricKeyAlgorithmTag algorithm, S2k s2k, byte[] rawPassPhrase)

Parameters

algorithm SymmetricKeyAlgorithmTag
s2k S2k
rawPassPhrase byte[]

Returns

KeyParameter

Remarks

Allows the caller to handle the encoding of the passphrase to bytes.

MakeKeyFromPassPhraseUtf8(SymmetricKeyAlgorithmTag, S2k, char[])

public static KeyParameter MakeKeyFromPassPhraseUtf8(SymmetricKeyAlgorithmTag algorithm, S2k s2k, char[] passPhrase)

Parameters

algorithm SymmetricKeyAlgorithmTag
s2k S2k
passPhrase char[]

Returns

KeyParameter

Remarks

The passphrase is encoded to bytes using UTF8 (Encoding.UTF8.GetBytes).

MakeRandomKey(SymmetricKeyAlgorithmTag, SecureRandom)

public static KeyParameter MakeRandomKey(SymmetricKeyAlgorithmTag algorithm, SecureRandom random)

Parameters

algorithm SymmetricKeyAlgorithmTag
random SecureRandom

Returns

KeyParameter

RsaSigToMpi(byte[])

public static MPInteger[] RsaSigToMpi(byte[] encoding)

Parameters

encoding byte[]

Returns

MPInteger[]

WriteFileToLiteralData(Stream, char, FileInfo)

Write out the passed in file as a literal data packet.

public static void WriteFileToLiteralData(Stream output, char fileType, FileInfo file)

Parameters

output Stream
fileType char
file FileInfo

WriteFileToLiteralData(Stream, char, FileInfo, byte[])

Write out the passed in file as a literal data packet in partial packet format.

public static void WriteFileToLiteralData(Stream output, char fileType, FileInfo file, byte[] buffer)

Parameters

output Stream
fileType char
file FileInfo
buffer byte[]