Stay organized with collections
    
    
      
      Save and categorize content based on your preferences.
    
  
  
    
  
  
  
  
    
    
    
  
  
    
    
  
  
java.security.spec
  Provides classes and interfaces for key specifications and algorithm
 parameter specifications.
 
A key specification is a transparent representation of the key material
 that constitutes a key. A key may be specified in an algorithm-specific
 way, or in an algorithm-independent encoding format (such as ASN.1).
 This package contains key specifications for DSA public and private keys,
 RSA public and private keys, PKCS #8 private keys in DER-encoded format,
 and X.509 public and private keys in DER-encoded format.
 
An algorithm parameter specification is a transparent representation
 of the sets of parameters used with an algorithm. This package contains
 an algorithm parameter specification for parameters used with the
 DSA algorithm.
 
Package Specification
 
   - PKCS #1: RSA Cryptography Specifications, Version 2.2 (RFC 8017)
- PKCS #8: Private-Key Information Syntax Standard,
     Version 1.2, November 1993
- Federal Information Processing Standards Publication (FIPS PUB) 186:
     Digital Signature Standard (DSS)
 For documentation that includes information about algorithm parameter
 and key specifications, please see:
 
  
  
    Interfaces
    
  
  
    
      
        | AlgorithmParameterSpec | A (transparent) specification of cryptographic parameters. | 
      
    
      
        | ECField | This interface represents an elliptic curve (EC) finite field. | 
      
    
      
        | KeySpec | A (transparent) specification of the key material
 that constitutes a cryptographic key. | 
      
    
  
  
  
    Classes
    
  
  
    
      
        | DSAGenParameterSpec | This immutable class specifies the set of parameters used for
 generating DSA parameters as specified in
 FIPS 186-3 Digital Signature Standard (DSS). | 
      
    
      
        | DSAParameterSpec | This class specifies the set of parameters used with the DSA algorithm. | 
      
    
      
        | DSAPrivateKeySpec | This class specifies a DSA private key with its associated parameters. | 
      
    
      
        | DSAPublicKeySpec | This class specifies a DSA public key with its associated parameters. | 
      
    
      
        | ECFieldF2m | This immutable class defines an elliptic curve (EC)
 characteristic 2 finite field. | 
      
    
      
        | ECFieldFp | This immutable class defines an elliptic curve (EC) prime
 finite field. | 
      
    
      
        | ECGenParameterSpec | This immutable class specifies the set of parameters used for
 generating elliptic curve (EC) domain parameters. | 
      
    
      
        | ECParameterSpec | This immutable class specifies the set of domain parameters
 used with elliptic curve cryptography (ECC). | 
      
    
      
        | ECPoint | This immutable class represents a point on an elliptic curve (EC)
 in affine coordinates. | 
      
    
      
        | ECPrivateKeySpec | This immutable class specifies an elliptic curve private key with
 its associated parameters. | 
      
    
      
        | ECPublicKeySpec | This immutable class specifies an elliptic curve public key with
 its associated parameters. | 
      
    
      
        | EdDSAParameterSpec | A class used to specify EdDSA signature and verification parameters. | 
      
    
      
        | EdECPoint | An elliptic curve point used to specify keys as defined by
 RFC 8032: Edwards-Curve
 Digital Signature Algorithm (EdDSA). | 
      
    
      
        | EdECPrivateKeySpec | A class representing elliptic curve private keys as defined in
 RFC 8032: Edwards-Curve
 Digital Signature Algorithm (EdDSA), including the curve and other
 algorithm parameters. | 
      
    
      
        | EdECPublicKeySpec | A class representing elliptic curve public keys as defined in
 RFC 8032: Edwards-Curve
 Digital Signature Algorithm (EdDSA), including the curve and other
 algorithm parameters. | 
      
    
      
        | EllipticCurve | This immutable class holds the necessary values needed to represent
 an elliptic curve. | 
      
    
      
        | EncodedKeySpec | This class represents a public or private key in encoded format. | 
      
    
      
        | MGF1ParameterSpec | This class specifies the set of parameters used with mask generation
 function MGF1 in OAEP Padding and RSASSA-PSS signature scheme, as
 defined in the
 PKCS#1 v2.2 standard. | 
      
    
      
        | NamedParameterSpec | This class is used to specify any algorithm parameters that are determined
 by a standard name. | 
      
    
      
        | PKCS8EncodedKeySpec | This class represents the ASN.1 encoding of a private key,
 encoded according to the ASN.1 type PrivateKeyInfo. | 
      
    
      
        | PSSParameterSpec | This class specifies a parameter spec for RSASSA-PSS signature scheme,
 as defined in the
 PKCS#1 v2.2 standard. | 
      
    
      
        | RSAKeyGenParameterSpec | This class specifies the set of parameters used to generate an RSA
 key pair. | 
      
    
      
        | RSAMultiPrimePrivateCrtKeySpec | This class specifies an RSA multi-prime private key, as defined in the
 PKCS#1 v2.2 standard
 using the Chinese Remainder Theorem (CRT) information values
 for efficiency. | 
      
    
      
        | RSAOtherPrimeInfo | This class represents the triplet (prime, exponent, and coefficient)
 inside RSA's OtherPrimeInfo structure, as defined in the
 PKCS#1 v2.2 standard. | 
      
    
      
        | RSAPrivateCrtKeySpec | This class specifies an RSA private key, as defined in the
 PKCS#1 v2.2 standard,
 using the Chinese Remainder Theorem (CRT) information values for efficiency. | 
      
    
      
        | RSAPrivateKeySpec | This class specifies an RSA private key. | 
      
    
      
        | RSAPublicKeySpec | This class specifies an RSA public key. | 
      
    
      
        | X509EncodedKeySpec | This class represents the ASN.1 encoding of a public key,
 encoded according to the ASN.1 type SubjectPublicKeyInfo. | 
      
    
      
        | XECPrivateKeySpec | A class representing elliptic curve private keys as defined in RFC 7748,
 including the curve and other algorithm parameters. | 
      
    
      
        | XECPublicKeySpec | A class representing elliptic curve public keys as defined in RFC 7748,
 including the curve and other algorithm parameters. | 
      
    
  
  
  
  
    Exceptions
    
  
  
  
  
 
  
  
    
    
    - Interfaces
- Classes
- Exceptions
 
 
  
  
    
  
 
  
    
      
      
    
    
      
    
    
  
       
    
    
      
    
  
  
  Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
  Last updated 2025-02-10 UTC.
  
  
  
    
      [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-02-10 UTC."],[],[]]