Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.3.1
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES

## Package java.security

Provides the classes and interfaces for the security framework.

See:
Description

Interface Summary
Certificate | Deprecated. A new certificate handling package is created in the Java 2 platform.
DomainCombiner | A `DomainCombiner` provides a means to dynamically update the ProtectionDomains associated with the current `AccessControlContext`.
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.
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.
PrivilegedExceptionAction | A computation to be performed with privileges enabled, that throws one or more checked exceptions.
PublicKey | A public key.

Class Summary
AccessControlContext | An AccessControlContext is used to make system resource access decisions based on the context it encapsulates.
AccessController | The AccessController class is used for three purposes: to decide whether an access to a critical system resource is to be allowed or denied, based on the security policy currently in effect,
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.
AllPermission | The AllPermission is a permission that implies all other permissions.
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(s) that were used to verify signed code originating from that location.
DigestInputStream | A transparent stream that updates the associated message digest using the bits going through the stream.
DigestOutputStream | A transparent stream that updates the associated message digest using the bits going through the stream.
GuardedObject | A GuardedObject is an object that is used to protect access to another object.
Identity | Deprecated. This class is no longer used.
IdentityScope | Deprecated. This class is no longer used.
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.
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.
KeyStore | This class represents an in-memory collection of keys and certificates.
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 MD5 or SHA.
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.
Permission | Abstract class for representing access to a system resource.
PermissionCollection | Abstract class representing a collection of Permission objects.
Permissions | This class represents a heterogeneous collection of Permissions.
Policy | This is an abstract class for representing the system security policy for a Java application environment (specifying which permissions are available for code from various sources).
ProtectionDomain | This ProtectionDomain class encapulates the characteristics of a domain, which encloses a set of classes whose instances are granted the same set of permissions.
Provider | This class represents a "provider" for the Java Security API, where a provider implements some or all parts of Java Security, including: Algorithms (such as DSA, RSA, MD5 or SHA-1).
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.
SecureRandom | This class provides a cryptographically strong pseudo-random number generator (PRNG).
SecureRandomSpi | This class defines the Service Provider Interface (SPI) for the `SecureRandom` class.
Security | This class centralizes all security properties and common security methods.
SecurityPermission | This class is for security permissions.
Signature | This Signature class is used to provide applications the functionality of a digital signature algorithm.
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.
SignedObject | SignedObject is a class for the purpose of creating authentic runtime objects whose integrity cannot be compromised without being detected.
Signer | Deprecated. This class is no longer used.
UnresolvedPermission | The UnresolvedPermission class is used to hold Permissions that were "unresolved" when the Policy was initialized.

Exception Summary
AccessControlException | This exception is thrown by the AccessController to indicate that a requested access (to a critical system resource such as the file system or the network) is denied.
DigestException | This is the generic Message Digest exception.
GeneralSecurityException | This is the general security exception class, which serves to group all the exception classes of the `java.security` package 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).
InvalidParameterException | This exception is thrown when an invalid parameter is passed to a method.
KeyException | This is the basic key exception.
KeyManagementException | This is the general key management exception, for all operations dealing with key management.
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.
PrivilegedActionException | This exception is thrown by `doPrivileged(PrivilegedExceptionAction)` and `doPrivileged(PrivilegedExceptionAction, AccessControlContext context)` to indicate that the action being performed threw a checked exception.
ProviderException | A runtime exception for Provider exceptions (such as misconfiguration errors), which may be subclassed by Providers to throw specialized, provider-specific runtime errors.
SignatureException | This is the generic Signature exception.
UnrecoverableKeyException | This exception is thrown if a key in the keystore cannot be recovered.

## Package java.security Description

Provides the classes and interfaces for the security framework. This includes classes that implement an easily configurable, fine-grained access control security architecture. This package also supports the generation and storage of cryptographic public key pairs, as well as a number of exportable cryptographic operations including those for message digest and signature generation. Finally, this package provides classes that support signed/guarded objects and secure random number generation. Many of the classes provided in this package (the cryptographic and secure random number generator classes in particular) are provider-based. The class itself defines a programming interface to which applications may write. The implementations themselves may then be written by independent third-party vendors and plugged in seamlessly as needed. Therefore application developers may take advantage of any number of provider-based implementations without having to add or rewrite code.

## Package Specification

- PKCS8: Private-Key Information Standard, Version 1.2, November 1993

## Related Documentation

For further documentation, please see:

- Security Architecture
- Cryptography Architecture
- How to Implement a Provider for the Java Cryptography Architecture
- Default Policy Implementation and Policy File Syntax
- Policy Permissions
- Security Tools Summary
- keytool (for Solaris) (for Windows)
- jarsigner (for Solaris) (for Windows)

Since:
  JDK1.1

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.3.1
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Java, Java 2D, and JDBC are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-2001 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.