Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.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 access control operations and decisions.
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 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.
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, designed for use by the JCA/JCE engine classes, 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.4.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.

Copyright 2002 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.