# Uses of Package
java.security

Packages that use java.security
Package
Description
com.sun.jdi
This is the core package of the Java Debug Interface (JDI), it defines mirrors for values, types, and the target VirtualMachine itself - as well bootstrapping facilities.
com.sun.net.httpserver
Provides a simple high-level Http server API, which can be used to build embedded HTTP servers.
com.sun.security.auth
Provides implementations of `Principal`.
com.sun.security.jgss
This package defines classes and interfaces for the JDK extensions to the GSS-API.
com.sun.tools.attach
Provides the API to attach to a Java virtual machine.
java.awt
Contains all of the classes for creating user interfaces and for painting graphics and images.
java.io
Provides for system input and output through data streams, serialization and the file system.
java.lang
Provides classes that are fundamental to the design of the Java programming language.
java.lang.instrument
Provides services that allow Java programming language agents to instrument programs running on the Java Virtual Machine (JVM).
java.lang.management
Provides the management interfaces for monitoring and management of the Java virtual machine and other components in the Java runtime.
java.lang.reflect
Provides classes and interfaces for obtaining reflective information about classes and objects.
java.net
Provides the classes for implementing networking applications.
java.nio.file
Defines interfaces and classes for the Java virtual machine to access files, file attributes, and file systems.
java.nio.file.attribute
Interfaces and classes providing access to file and file system attributes.
java.security
Provides the classes and interfaces for the security framework.
java.security.cert
Provides classes and interfaces for parsing and managing certificates, certificate revocation lists (CRLs), and certification paths.
java.security.interfaces
Provides interfaces for generating RSA (Rivest, Shamir and Adleman AsymmetricCipher algorithm) keys as defined in the RSA Laboratory Technical Note PKCS#1, and DSA (Digital Signature Algorithm) keys as defined in NIST's FIPS-186.
java.security.spec
Provides classes and interfaces for key specifications and algorithm parameter specifications.
java.sql
Provides the API for accessing and processing data stored in a data source (usually a relational database) using the Java programming language.
java.util
Contains the collections framework, some internationalization support classes, a service loader, properties, random number generation, string parsing and scanning classes, base64 encoding and decoding, a bit array, and several miscellaneous utility classes.
java.util.concurrent
Utility classes commonly useful in concurrent programming.
java.util.jar
Provides classes for reading and writing the JAR (Java ARchive) file format, which is based on the standard ZIP file format with an optional manifest file.
java.util.logging
Provides the classes and interfaces of the Java 2 platform's core logging facilities.
javax.crypto
Provides the classes and interfaces for cryptographic operations.
javax.crypto.interfaces
Provides interfaces for Diffie-Hellman keys as defined in RSA Laboratories' PKCS #3.
javax.crypto.spec
Provides classes and interfaces for key specifications and algorithm parameter specifications.
javax.management
Provides the core classes for the Java Management Extensions.
javax.management.remote
Interfaces for remote access to JMX MBean servers.
javax.net.ssl
Provides classes for the secure socket package.
javax.security.auth
This package provides a framework for authentication and authorization.
javax.security.auth.kerberos
This package contains utility classes related to the Kerberos network authentication protocol.
javax.security.auth.login
This package provides a pluggable authentication framework.
javax.security.auth.x500
This package contains the classes that should be used to store X500 Principal and X500 Private Credentials in a Subject.
javax.security.cert
Provides classes for public key certificates.
javax.smartcardio
Java™ Smart Card I/O API.
javax.sound.sampled
Provides interfaces and classes for capture, processing, and playback of sampled audio data.
javax.xml.crypto
Common classes for XML cryptography.
javax.xml.crypto.dsig
Classes for generating and validating XML digital signatures.
javax.xml.crypto.dsig.dom
DOM-specific classes for the `javax.xml.crypto.dsig` package.
javax.xml.crypto.dsig.keyinfo
Classes for parsing and processing `KeyInfo` elements and structures.
jdk.jfr
This package provides classes to create events and control Flight Recorder.
jdk.net
Platform specific socket options for the `java.net` and `java.nio.channels` socket classes.
jdk.security.jarsigner
This package defines APIs for signing jar files.
org.ietf.jgss
This package presents a framework that allows application developers to make use of security services like authentication, data integrity and data confidentiality from a variety of underlying security mechanisms like Kerberos, using a unified API.

- Classes in java.security used by com.sun.jdi
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
- Classes in java.security used by com.sun.net.httpserver
  Class
  Description
  Principal
  This interface represents the abstract notion of a `Principal`, which can be used to represent any entity, such as an individual, a corporation, and a login id.
- Classes in java.security used by com.sun.security.auth
  Class
  Description
  Principal
  This interface represents the abstract notion of a `Principal`, which can be used to represent any entity, such as an individual, a corporation, and a login id.
- Classes in java.security used by com.sun.security.jgss
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
- Classes in java.security used by com.sun.tools.attach
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
- Classes in java.security used by java.awt
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
- Classes in java.security used by java.io
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
  PermissionCollection
  Abstract class representing a collection of Permission objects.
- Classes in java.security used by java.lang
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
  ProtectionDomain
  The `ProtectionDomain` class encapsulates the characteristics of a domain, which encloses a set of classes whose instances are granted a set of permissions when being executed on behalf of a given set of Principals.
- Classes in java.security used by java.lang.instrument
  Class
  Description
  ProtectionDomain
  The `ProtectionDomain` class encapsulates the characteristics of a domain, which encloses a set of classes whose instances are granted a set of permissions when being executed on behalf of a given set of Principals.
- Classes in java.security used by java.lang.management
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
- Classes in java.security used by java.lang.reflect
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
- Classes in java.security used by java.net
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  CodeSource
  This class extends the concept of a codebase to encapsulate not only the location (URL) but also the certificate chains that were used to verify signed code originating from that location.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
  PermissionCollection
  Abstract class representing a collection of Permission objects.
  Principal
  This interface represents the abstract notion of a `Principal`, which can be used to represent any entity, such as an individual, a corporation, and a login id.
  SecureClassLoader
  This class extends `ClassLoader` with additional support for defining classes with an associated code source and permissions which are retrieved by the system policy by default.
- Classes in java.security used by java.nio.file
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
- Classes in java.security used by java.nio.file.attribute
  Class
  Description
  Principal
  This interface represents the abstract notion of a `Principal`, which can be used to represent any entity, such as an individual, a corporation, and a login id.
- Classes in java.security used by java.security
  Class
  Description
  AccessControlContext
  Deprecated, for removal: This API element is subject to removal in a future version.
  This class is only useful in conjunction with the Security Manager, which is deprecated and subject to removal in a future release.
  AccessControlException
  Deprecated, for removal: This API element is subject to removal in a future version.
  This class is only useful in conjunction with the Security Manager, which is deprecated and subject to removal in a future release.
  AlgorithmParameterGenerator
  The `AlgorithmParameterGenerator` class is used to generate a set of parameters to be used with a certain algorithm.
  AlgorithmParameterGeneratorSpi
  This class defines the Service Provider Interface (SPI) for the `AlgorithmParameterGenerator` class, which is used to generate a set of parameters to be used with a certain algorithm.
  AlgorithmParameters
  This class is used as an opaque representation of cryptographic parameters.
  AlgorithmParametersSpi
  This class defines the Service Provider Interface (SPI) for the `AlgorithmParameters` class, which is used to manage algorithm parameters.
  AsymmetricKey
  An asymmetric key, which can be either a public key or a private key.
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Certificate
  Deprecated, for removal: This API element is subject to removal in a future version.
  This class is deprecated and subject to removal in a future version of Java SE.
  CodeSigner
  This class encapsulates information about a code signer.
  CodeSource
  This class extends the concept of a codebase to encapsulate not only the location (URL) but also the certificate chains that were used to verify signed code originating from that location.
  CryptoPrimitive
  An enumeration of cryptographic primitives.
  DigestException
  This is the generic Message Digest exception.
  DomainCombiner
  Deprecated, for removal: This API element is subject to removal in a future version.
  This class is only useful in conjunction with the Security Manager, which is deprecated and subject to removal in a future release.
  DrbgParameters.Capability
  The reseedable and prediction resistance capabilities of a DRBG.
  DrbgParameters.Instantiation
  DRBG parameters for instantiation.
  DrbgParameters.NextBytes
  DRBG parameters for random bits generation.
  DrbgParameters.Reseed
  DRBG parameters for reseed.
  GeneralSecurityException
  The `GeneralSecurityException` class is a generic security exception class that provides type safety for all the security-related exception classes that extend from it.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Identity
  Deprecated, for removal: This API element is subject to removal in a future version.
  This class is deprecated and subject to removal in a future version of Java SE.
  IdentityScope
  Deprecated, for removal: This API element is subject to removal in a future version.
  This class is deprecated and subject to removal in a future version of Java SE.
  InvalidAlgorithmParameterException
  This is the exception for invalid or inappropriate algorithm parameters.
  InvalidKeyException
  This is the exception for invalid Keys (invalid encoding, wrong length, uninitialized, etc.).
  InvalidParameterException
  This exception, designed for use by the JCA/JCE engine classes, is thrown when an invalid parameter is passed to a method.
  Key
  The `Key` interface is the top-level interface for all keys.
  KeyException
  This is the basic key exception.
  KeyFactory
  Key factories are used to convert keys (opaque cryptographic keys of type `Key`) into key specifications (transparent representations of the underlying key material), and vice versa.
  KeyFactorySpi
  This class defines the Service Provider Interface (SPI) for the `KeyFactory` class.
  KeyManagementException
  This is the general key management exception for all operations dealing with key management.
  KeyPair
  This class is a simple holder for a key pair (a public key and a private key).
  KeyPairGenerator
  The `KeyPairGenerator` class is used to generate pairs of public and private keys.
  KeyPairGeneratorSpi
  This class defines the Service Provider Interface (SPI) for the `KeyPairGenerator` class, which is used to generate pairs of public and private keys.
  KeyRep.Type
  Key type.
  KeyStore
  This class represents a storage facility for cryptographic keys and certificates.
  KeyStore.Builder
  A description of a to-be-instantiated `KeyStore` object.
  KeyStore.Entry
  A marker interface for `KeyStore` entry types.
  KeyStore.Entry.Attribute
  An attribute associated with a keystore entry.
  KeyStore.LoadStoreParameter
  A marker interface for `KeyStore` `load` and `store` parameters.
  KeyStore.ProtectionParameter
  A marker interface for keystore protection parameters.
  KeyStoreException
  This is the generic KeyStore exception.
  KeyStoreSpi
  This class defines the Service Provider Interface (SPI) for the `KeyStore` class.
  MessageDigest
  This `MessageDigest` class provides applications the functionality of a message digest algorithm, such as SHA-1 or SHA-256.
  MessageDigestSpi
  This class defines the Service Provider Interface (SPI) for the `MessageDigest` class, which provides the functionality of a message digest algorithm, such as MD5 or SHA.
  NoSuchAlgorithmException
  This exception is thrown when a particular cryptographic algorithm is requested but is not available in the environment.
  NoSuchProviderException
  This exception is thrown when a particular security provider is requested but is not available in the environment.
  Permission
  Abstract class for representing access to a system resource.
  PermissionCollection
  Abstract class representing a collection of Permission objects.
  Policy
  Deprecated, for removal: This API element is subject to removal in a future version.
  This class is only useful in conjunction with the Security Manager, which is deprecated and subject to removal in a future release.
  Policy.Parameters
  Deprecated, for removal: This API element is subject to removal in a future version.
  This class is only useful in conjunction with the Security Manager, which is deprecated and subject to removal in a future release.
  Principal
  This interface represents the abstract notion of a `Principal`, which can be used to represent any entity, such as an individual, a corporation, and a login id.
  PrivateKey
  A private key.
  PrivilegedAction
  A computation to be performed with privileges enabled.
  PrivilegedActionException
  This exception is thrown by `doPrivileged(PrivilegedExceptionAction)` and `doPrivileged(PrivilegedExceptionAction, AccessControlContext context)` to indicate that the action being performed threw a checked exception.
  PrivilegedExceptionAction
  A computation to be performed with privileges enabled, that throws one or more checked exceptions.
  ProtectionDomain
  The `ProtectionDomain` class encapsulates the characteristics of a domain, which encloses a set of classes whose instances are granted a set of permissions when being executed on behalf of a given set of Principals.
  Provider
  This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.
  Provider.Service
  The description of a security service.
  PublicKey
  A public key.
  SecureRandom
  This class provides a cryptographically strong random number generator (RNG).
  SecureRandomParameters
  A marker interface for parameters used in various `SecureRandom` methods.
  SecureRandomSpi
  This class defines the Service Provider Interface (SPI) for the `SecureRandom` class.
  Signature
  The `Signature` class is used to provide applications the functionality of a digital signature algorithm.
  SignatureException
  This is the generic Signature exception.
  SignatureSpi
  This class defines the Service Provider Interface (SPI) for the `Signature` class, which is used to provide the functionality of a digital signature algorithm.
  Timestamp
  This class encapsulates information about a signed timestamp.
  UnrecoverableEntryException
  This exception is thrown if an entry in the keystore cannot be recovered.
  UnrecoverableKeyException
  This exception is thrown if a key in the keystore cannot be recovered.
- Classes in java.security used by java.security.cert
  Class
  Description
  GeneralSecurityException
  The `GeneralSecurityException` class is a generic security exception class that provides type safety for all the security-related exception classes that extend from it.
  InvalidAlgorithmParameterException
  This is the exception for invalid or inappropriate algorithm parameters.
  InvalidKeyException
  This is the exception for invalid Keys (invalid encoding, wrong length, uninitialized, etc.).
  KeyStore
  This class represents a storage facility for cryptographic keys and certificates.
  KeyStoreException
  This is the generic KeyStore exception.
  NoSuchAlgorithmException
  This exception is thrown when a particular cryptographic algorithm is requested but is not available in the environment.
  NoSuchProviderException
  This exception is thrown when a particular security provider is requested but is not available in the environment.
  Principal
  This interface represents the abstract notion of a `Principal`, which can be used to represent any entity, such as an individual, a corporation, and a login id.
  Provider
  This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.
  PublicKey
  A public key.
  SignatureException
  This is the generic Signature exception.
- Classes in java.security used by java.security.interfaces
  Class
  Description
  AsymmetricKey
  An asymmetric key, which can be either a public key or a private key.
  Key
  The `Key` interface is the top-level interface for all keys.
  PrivateKey
  A private key.
  PublicKey
  A public key.
  SecureRandom
  This class provides a cryptographically strong random number generator (RNG).
- Classes in java.security used by java.security.spec
  Class
  Description
  GeneralSecurityException
  The `GeneralSecurityException` class is a generic security exception class that provides type safety for all the security-related exception classes that extend from it.
- Classes in java.security used by java.sql
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
- Classes in java.security used by java.util
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
  PermissionCollection
  Abstract class representing a collection of Permission objects.
- Classes in java.security used by java.util.concurrent
  Class
  Description
  PrivilegedAction
  A computation to be performed with privileges enabled.
  PrivilegedExceptionAction
  A computation to be performed with privileges enabled, that throws one or more checked exceptions.
- Classes in java.security used by java.util.jar
  Class
  Description
  CodeSigner
  This class encapsulates information about a code signer.
- Classes in java.security used by java.util.logging
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
- Classes in java.security used by javax.crypto
  Class
  Description
  AlgorithmParameters
  This class is used as an opaque representation of cryptographic parameters.
  GeneralSecurityException
  The `GeneralSecurityException` class is a generic security exception class that provides type safety for all the security-related exception classes that extend from it.
  InvalidAlgorithmParameterException
  This is the exception for invalid or inappropriate algorithm parameters.
  InvalidKeyException
  This is the exception for invalid Keys (invalid encoding, wrong length, uninitialized, etc.).
  Key
  The `Key` interface is the top-level interface for all keys.
  NoSuchAlgorithmException
  This exception is thrown when a particular cryptographic algorithm is requested but is not available in the environment.
  NoSuchProviderException
  This exception is thrown when a particular security provider is requested but is not available in the environment.
  PrivateKey
  A private key.
  Provider
  This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.
  PublicKey
  A public key.
  SecureRandom
  This class provides a cryptographically strong random number generator (RNG).
- Classes in java.security used by javax.crypto.interfaces
  Class
  Description
  AsymmetricKey
  An asymmetric key, which can be either a public key or a private key.
  Key
  The `Key` interface is the top-level interface for all keys.
  PrivateKey
  A private key.
  PublicKey
  A public key.
- Classes in java.security used by javax.crypto.spec
  Class
  Description
  InvalidKeyException
  This is the exception for invalid Keys (invalid encoding, wrong length, uninitialized, etc.).
  Key
  The `Key` interface is the top-level interface for all keys.
- Classes in java.security used by javax.management
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
- Classes in java.security used by javax.management.remote
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
  Principal
  This interface represents the abstract notion of a `Principal`, which can be used to represent any entity, such as an individual, a corporation, and a login id.
- Classes in java.security used by javax.net.ssl
  Class
  Description
  AlgorithmConstraints
  This interface specifies constraints for cryptographic algorithms, keys (key sizes), and other algorithm parameters.
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  InvalidAlgorithmParameterException
  This is the exception for invalid or inappropriate algorithm parameters.
  KeyManagementException
  This is the general key management exception for all operations dealing with key management.
  KeyStore
  This class represents a storage facility for cryptographic keys and certificates.
  KeyStore.Builder
  A description of a to-be-instantiated `KeyStore` object.
  KeyStoreException
  This is the generic KeyStore exception.
  NoSuchAlgorithmException
  This exception is thrown when a particular cryptographic algorithm is requested but is not available in the environment.
  NoSuchProviderException
  This exception is thrown when a particular security provider is requested but is not available in the environment.
  Permission
  Abstract class for representing access to a system resource.
  Principal
  This interface represents the abstract notion of a `Principal`, which can be used to represent any entity, such as an individual, a corporation, and a login id.
  PrivateKey
  A private key.
  Provider
  This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.
  SecureRandom
  This class provides a cryptographically strong random number generator (RNG).
  UnrecoverableKeyException
  This exception is thrown if a key in the keystore cannot be recovered.
- Classes in java.security used by javax.security.auth
  Class
  Description
  AccessControlContext
  Deprecated, for removal: This API element is subject to removal in a future version.
  This class is only useful in conjunction with the Security Manager, which is deprecated and subject to removal in a future release.
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  DomainCombiner
  Deprecated, for removal: This API element is subject to removal in a future version.
  This class is only useful in conjunction with the Security Manager, which is deprecated and subject to removal in a future release.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
  PermissionCollection
  Abstract class representing a collection of Permission objects.
  Principal
  This interface represents the abstract notion of a `Principal`, which can be used to represent any entity, such as an individual, a corporation, and a login id.
  PrivilegedAction
  A computation to be performed with privileges enabled.
  PrivilegedActionException
  This exception is thrown by `doPrivileged(PrivilegedExceptionAction)` and `doPrivileged(PrivilegedExceptionAction, AccessControlContext context)` to indicate that the action being performed threw a checked exception.
  PrivilegedExceptionAction
  A computation to be performed with privileges enabled, that throws one or more checked exceptions.
  ProtectionDomain
  The `ProtectionDomain` class encapsulates the characteristics of a domain, which encloses a set of classes whose instances are granted a set of permissions when being executed on behalf of a given set of Principals.
- Classes in java.security used by javax.security.auth.kerberos
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Key
  The `Key` interface is the top-level interface for all keys.
  Permission
  Abstract class for representing access to a system resource.
  PermissionCollection
  Abstract class representing a collection of Permission objects.
  Principal
  This interface represents the abstract notion of a `Principal`, which can be used to represent any entity, such as an individual, a corporation, and a login id.
- Classes in java.security used by javax.security.auth.login
  Class
  Description
  GeneralSecurityException
  The `GeneralSecurityException` class is a generic security exception class that provides type safety for all the security-related exception classes that extend from it.
  NoSuchAlgorithmException
  This exception is thrown when a particular cryptographic algorithm is requested but is not available in the environment.
  NoSuchProviderException
  This exception is thrown when a particular security provider is requested but is not available in the environment.
  Provider
  This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.
- Classes in java.security used by javax.security.auth.x500
  Class
  Description
  Principal
  This interface represents the abstract notion of a `Principal`, which can be used to represent any entity, such as an individual, a corporation, and a login id.
  PrivateKey
  A private key.
- Classes in java.security used by javax.security.cert
  Class
  Description
  InvalidKeyException
  This is the exception for invalid Keys (invalid encoding, wrong length, uninitialized, etc.).
  NoSuchAlgorithmException
  This exception is thrown when a particular cryptographic algorithm is requested but is not available in the environment.
  NoSuchProviderException
  This exception is thrown when a particular security provider is requested but is not available in the environment.
  Principal
  This interface represents the abstract notion of a `Principal`, which can be used to represent any entity, such as an individual, a corporation, and a login id.
  PublicKey
  A public key.
  SignatureException
  This is the generic Signature exception.
- Classes in java.security used by javax.smartcardio
  Class
  Description
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  NoSuchAlgorithmException
  This exception is thrown when a particular cryptographic algorithm is requested but is not available in the environment.
  NoSuchProviderException
  This exception is thrown when a particular security provider is requested but is not available in the environment.
  Permission
  Abstract class for representing access to a system resource.
  Provider
  This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.
- Classes in java.security used by javax.sound.sampled
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
- Classes in java.security used by javax.xml.crypto
  Class
  Description
  Key
  The `Key` interface is the top-level interface for all keys.
- Classes in java.security used by javax.xml.crypto.dsig
  Class
  Description
  InvalidAlgorithmParameterException
  This is the exception for invalid or inappropriate algorithm parameters.
  NoSuchAlgorithmException
  This exception is thrown when a particular cryptographic algorithm is requested but is not available in the environment.
  NoSuchProviderException
  This exception is thrown when a particular security provider is requested but is not available in the environment.
  Provider
  This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.
- Classes in java.security used by javax.xml.crypto.dsig.dom
  Class
  Description
  Key
  The `Key` interface is the top-level interface for all keys.
- Classes in java.security used by javax.xml.crypto.dsig.keyinfo
  Class
  Description
  KeyException
  This is the basic key exception.
  NoSuchProviderException
  This exception is thrown when a particular security provider is requested but is not available in the environment.
  Provider
  This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.
  PublicKey
  A public key.
- Classes in java.security used by jdk.jfr
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
- Classes in java.security used by jdk.net
  Class
  Description
  BasicPermission
  The `BasicPermission` class extends the `Permission` class, and can be used as the base class for permissions that want to follow the same naming convention as `BasicPermission`.
  Guard
  This interface represents a guard, which is an object that is used to protect access to another object.
  Permission
  Abstract class for representing access to a system resource.
- Classes in java.security used by jdk.security.jarsigner
  Class
  Description
  KeyStore.PrivateKeyEntry
  A `KeyStore` entry that holds a `PrivateKey` and corresponding certificate chain.
  NoSuchAlgorithmException
  This exception is thrown when a particular cryptographic algorithm is requested but is not available in the environment.
  PrivateKey
  A private key.
  Provider
  This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.
- Classes in java.security used by org.ietf.jgss
  Class
  Description
  Provider
  This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security.