pointycastle_broadcom library
This is the main entry point to the cipher library API.
It includes the following libraries:
- api.dart = comprises the whole API specification
- impl.dart = defines algorithm implementations and all cipherParameters to be used with them
- asn1.dart = ASN1 library to encode and decode ASN1 objects
Classes
- AEADBlockCipher
- A block cipher mode that includes authenticated encryption
- AEADCipher
-
AEADParameters<
UnderlyingCipherParameters extends CipherParameters> - Algorithm
- All algorithms defined by Pointy Castle inherit from this class.
- Argon2Parameters
- The Argon2 parameters.
- ASN1AlgorithmIdentifier
-
AlgorithmIdentifier ::= SEQUENCE { algorithm OBJECT IDENTIFIER, parameters ANY DEFINED BY algorithm OPTIONAL }
- ASN1AttributeTypeAndValue
-
AttributeTypeAndValue ::= SEQUENCE { type AttributeType, value AttributeValue }
- ASN1AuthenticatedSafe
- Taken from RFC 7292.
- ASN1BitString
- An ASN1 Bit String object
- ASN1BMPString
- An ASN1 IA5 String object
- ASN1Boolean
- An ASN1 Boolean object
- ASN1CertBag
-
CertBag ::= SEQUENCE { certId BAG-TYPE.&id ({CertTypes}), certValue [0] EXPLICIT BAG-TYPE.&Type ({CertTypes}{@certId}) }
- ASN1CertificationRequest
-
CertificationRequest ::= SEQUENCE { certificationRequestInfo CertificationRequestInfo, signatureAlgorithm AlgorithmIdentifier{{ SignatureAlgorithms }}, signature BIT STRING }
- ASN1CertificationRequestInfo
-
CertificationRequestInfo ::= SEQUENCE { version INTEGER { v1(0) } (v1,...), subject Name, subjectPKInfo SubjectPublicKeyInfo{{ PKInfoAlgorithms }}, attributes [0] Attributes{{ CRIAttributes }} }
- ASN1ContentInfo
-
ContentInfo ::= SEQUENCE { contentType ContentType, content [0] EXPLICIT ANY DEFINED BY contentType OPTIONAL }
- ASN1DigestInfo
-
DigestInfo ::= SEQUENCE { digestAlgorithm DigestAlgorithmIdentifier, digest Digest } Digest ::= OCTET STRING
- ASN1EncryptedContentInfo
-
EncryptedContentInfo ::= SEQUENCE { contentType ContentType, contentEncryptionAlgorithm ContentEncryptionAlgorithmIdentifier, encryptedContent [0] IMPLICIT EncryptedContent OPTIONAL }
- ASN1EncryptedData
-
EncryptedData ::= SEQUENCE { version Version, encryptedContentInfo EncryptedContentInfo }
- ASN1EncryptedPrivateKeyInfo
- ASN1Enumerated
- An ASN1Enumerated object
- ASN1GeneralizedTime
- ASN1IA5String
- An ASN1 IA5 String object
- ASN1Integer
- ASN1KeyBag
-
KeyBag ::= PrivateKeyInfo
- ASN1MacData
-
MacData ::= SEQUENCE { mac DigestInfo, macSalt OCTET STRING, iterations INTEGER DEFAULT 1 }
- ASN1Name
-
Name ::= CHOICE { -- only one possibility for now -- rdnSequence RDNSequence } RDNSequence ::= SEQUENCE OF RelativeDistinguishedName
- ASN1Null
- An ASN1 Null object
- ASN1Object
- Base model for all ASN1Objects
- ASN1ObjectIdentifier
- ASN1OctetString
- An ASN1 Octed String object
- ASN1Parser
- The ASN1Parser to parse bytes into ASN1 Objects
- ASN1Pfx
-
PFX ::= SEQUENCE { version INTEGER {v3(3)}(v3,...), authSafe ContentInfo, macData MacData OPTIONAL }
- ASN1Pkcs12Attribute
-
PKCS12Attribute ::= SEQUENCE { attrId ATTRIBUTE.&id ({PKCS12AttrSet}), attrValues SET OF ATTRIBUTE.&Type ({PKCS12AttrSet}{@attrId}) }
- ASN1PrintableString
- An ASN1 Printable String object
- ASN1PrivateKeyInfo
-
PrivateKeyInfo ::= OneAsymmetricKey OneAsymmetricKey ::= SEQUENCE { version Version, privateKeyAlgorithm PrivateKeyAlgorithmIdentifier, privateKey PrivateKey, attributes [0] Attributes OPTIONAL, ..., [[2: publicKey [1] PublicKey OPTIONAL ]], ... }
- ASN1RDN
-
RelativeDistinguishedName ::= SET SIZE (1..MAX) OF AttributeTypeAndValue
- ASN1SafeBag
-
SafeBag ::= SEQUENCE { bagId BAG-TYPE.&id ({PKCS12BagSet}) bagValue [0] EXPLICIT BAG-TYPE.&Type({PKCS12BagSet}{@bagId}), bagAttributes SET OF PKCS12Attribute OPTIONAL }
- ASN1SafeContents
-
SafeContents ::= SEQUENCE OF SafeBag
- ASN1Sequence
- ASN1Set
- ASN1SubjectPublicKeyInfo
-
SubjectPublicKeyInfo { ALGORITHM : IOSet} ::= SEQUENCE { algorithm AlgorithmIdentifier {{IOSet}}, subjectPublicKey BIT STRING }
- ASN1Tags
- Class holding all ASN1 BER tags, supported by this package
- ASN1TeletextString
- An ASN1 Octed String object
- ASN1UtcTime
- An ASN1 Utc Time object
- ASN1UTF8String
- An ASN1 UTF8 String object
- ASN1Utils
- Utils class holding different methods to ease the handling of ANS1Objects and their byte representation.
- AsymmetricBlockCipher
- Asymmetric block cipher engines are expected to conform to this interface.
- AsymmetricKey
- The interface that asymmetric (public and private) keys conform to.
-
AsymmetricKeyPair<
B extends PublicKey, V extends PrivateKey> - A pair of public and private asymmetric keys.
-
AsymmetricKeyParameter<
T extends AsymmetricKey> - Abstract CipherParameters to hold an asymmetric (public or private) key
- BlockCipher
- Block cipher engines are expected to conform to this interface.
- CipherParameters
- All cipher initialization parameters classes implement this.
- DESedeParameters
- DESParameters
- Digest
- The interface that a message digest conforms to.
- ECAsymmetricKey
- Base class for asymmetric keys in ECC
- ECCurve
- An elliptic curve
- ECDecryptor
- The decryptor using Elliptic Curve
- ECDHAgreement
- ECDHBasicAgreement
- P1363 7.2.1 ECSVDP-DH
- ECDHKDFParameters
- ECDomainParameters
- Standard ECC curve description
- ECEncryptor
- The encryptor using Elliptic Curve
- ECFieldElement
- Type for coordinates of an ECPoint
- ECKeyGeneratorParameters
- Abstract CipherParameters to init an ECC key generator.
- ECPair
- A pair of ECPoints.
- ECPoint
- An elliptic curve point
- ECPrivateKey
- Private keys in ECC
- ECPublicKey
- Public keys in ECC
- ECSignature
- A Signature created with ECC.
- HkdfParameters
- Generates CipherParameters for HKDF key derivation function.
- KeyDerivator
- The interface that a symmetric key derivator conforms to.
- KeyGenerator
- The interface that asymmetric key generators conform to.
- KeyGeneratorParameters
- Abstract CipherParameters to init an asymmetric key generator.
- KeyParameter
- CipherParameters consisting of just a key of arbitrary length.
- Mac
- The interface that a MAC (message authentication code) conforms to.
- PaddedBlockCipher
- All padded block ciphers conform to this interface.
-
PaddedBlockCipherParameters<
UnderlyingCipherParameters extends CipherParameters?, PaddingCipherParameters extends CipherParameters?> -
CipherParameters for PaddedBlockCiphers consisting of two underlying CipherParameters, one for the BlockCipher (of
type
UnderlyingCipherParameters
) and the other for the Padding (of typePaddingCipherParameters
). - Padding
- The interface that a padding conforms to.
-
ParametersWithIV<
UnderlyingParameters extends CipherParameters?> -
CipherParameters consisting of an underlying CipherParameters (of type
UnderlyingParameters
) and an initialization vector of arbitrary length. -
ParametersWithRandom<
UnderlyingParameters extends CipherParameters> -
CipherParameters consisting of an underlying CipherParameters (of type
UnderlyingParameters
) and an acompanying SecureRandom. -
ParametersWithSalt<
UnderlyingParameters extends CipherParameters> -
CipherParameters consisting of an underlying CipherParameters (of type
UnderlyingParameters
) and an acompanying salt of type Uint8List. -
ParametersWithSaltConfiguration<
UnderlyingParameters extends CipherParameters> -
CipherParameters consisting of an underlying CipherParameters (of type
UnderlyingParameters
), an acompanying SecureRandom, and salt length. - PBEParametersGenerator
- Pbkdf2Parameters
- CipherParameters used by PBKDF2.
- PrivateKey
- The interface that asymmetric private keys conform to.
-
PrivateKeyParameter<
T extends PrivateKey> - A CipherParameters to hold an asymmetric private key
- PSSSignature
- A Signature created with PSS.
- PublicKey
- The interface that asymmetric public keys conform to.
-
PublicKeyParameter<
T extends PublicKey> - A CipherParameters to hold an asymmetric public key
- RC2Parameters
- RSAAsymmetricKey
- Base class for asymmetric keys in RSA
- RSAKeyGeneratorParameters
- Abstract CipherParameters to init an RSA key generator.
- RSAPrivateKey
- Private keys in RSA
- RSAPublicKey
- Public keys in RSA
- RSASignature
- A Signature created with RSA.
- ScryptParameters
- CipherParameters for the scrypt password based key derivation function.
- SecureRandom
- A synchronous secure random number generator (RNG).
- Signature
- An interface for signatures created by a Signer
- Signer
- An interface for DSAs (digital signature algorithms)
- SRPClient
- SRPServer
- Implements the server side SRP-6a protocol. Note that this class is stateful, and therefore NOT threadsafe. This implementation of SRP is based on the optimized message sequence put forth by Thomas Wu in the paper "SRP-6: Improvements and Refinements to the Secure Remote Password Protocol, 2002"
- StreamCipher
- The interface stream ciphers conform to.
- Xof
Enums
Functions
-
cleanPoint(
ECCurve c, ECPoint p) → ECPoint?
Exceptions / Errors
- InvalidCipherTextException
- RegistryFactoryException
- This kind of exception is thrown when a user tries to create an algorithm or domain parameters that were not correctly registered. This can be because the corresponding class was not imported, or because the algorithm does not exist.
- UnsupportedAsn1EncodingRuleException
- Exception that indicates that the given ASN1EncodingRule is not supported
- UnsupportedASN1TagException
- Exception that indicates that the given tag is not supported