• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * This code is free software; you can redistribute it and/or modify it
6  * under the terms of the GNU General Public License version 2 only, as
7  * published by the Free Software Foundation.  Oracle designates this
8  * particular file as subject to the "Classpath" exception as provided
9  * by Oracle in the LICENSE file that accompanied this code.
10  *
11  * This code is distributed in the hope that it will be useful, but WITHOUT
12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14  * version 2 for more details (a copy is included in the LICENSE file that
15  * accompanied this code).
16  *
17  * You should have received a copy of the GNU General Public License version
18  * 2 along with this work; if not, write to the Free Software Foundation,
19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20  *
21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22  * or visit www.oracle.com if you need additional information or have any
23  * questions.
24  */
25 
26 /**
27  * Provides the classes and interfaces for the security framework.
28  * This includes classes that implement an easily configurable,
29  * fine-grained access control security architecture.
30  * This package also supports
31  * the generation and storage of cryptographic public key pairs,
32  * as well as a number of exportable cryptographic operations
33  * including those for message digest and signature generation.  Finally,
34  * this package provides classes that support signed/guarded objects
35  * and secure random number generation.
36  *
37  * Many of the classes provided in this package (the cryptographic
38  * and secure random number generator classes in particular) are
39  * provider-based.  The class itself defines a programming interface
40  * to which applications may write.  The implementations themselves may
41  * then be written by independent third-party vendors and plugged
42  * in seamlessly as needed.  Therefore application developers may
43  * take advantage of any number of provider-based implementations
44  * without having to add or rewrite code.
45  *
46  * <h2>Package Specification</h2>
47  *
48  * <ul>
49  *   <li><a href="https://docs.oracle.com/javase/8/docs/technotes/guides/security/crypto/CryptoSpec.html">
50  *     <b>Java&trade;
51  *     Cryptography Architecture (JCA) Reference Guide</b></a></li>
52  *
53  *   <li>PKCS #8: Private-Key Information Syntax Standard, Version 1.2,
54  *     November 1993</li>
55  *
56  *   <li><a href="https://docs.oracle.com/javase/8/docs/technotes/guides/security/StandardNames.html">
57  *     <b>Java&trade;
58  *     Cryptography Architecture Standard Algorithm Name
59  *     Documentation</b></a></li>
60  * </ul>
61  *
62  * <h2>Related Documentation</h2>
63  *
64  * For further documentation, please see:
65  * <ul>
66  *   <li><a href=
67  *     "https://docs.oracle.com/javase/8/docs/technotes/guides/security/spec/security-spec.doc.html">
68  *     <b>Java&trade;
69  *     SE Platform Security Architecture</b></a></li>
70  *
71  *   <li><a href=
72  *     "https://docs.oracle.com/javase/8/docs/technotes/guides/security/crypto/HowToImplAProvider.html">
73  *     <b>How to Implement a Provider in the
74  *     Java&trade; Cryptography Architecture
75  *     </b></a></li>
76  *
77  *   <li><a href=
78  *     "https://docs.oracle.com/javase/8/docs/technotes/guides/security/PolicyFiles.html"><b>
79  *     Default Policy Implementation and Policy File Syntax
80  *     </b></a></li>
81  *
82  *   <li><a href=
83  *     "https://docs.oracle.com/javase/8/docs/technotes/guides/security/permissions.html"><b>
84  *     Permissions in the
85  *     Java&trade; SE Development Kit (JDK)
86  *     </b></a></li>
87  *
88  *   <li><a href=
89  *     "https://docs.oracle.com/javase/8/docs/technotes/guides/security/SecurityToolsSummary.html"><b>
90  *     Summary of Tools for
91  *     Java&trade; Platform Security
92  *     </b></a></li>
93  *
94  *   <li><b>keytool</b>
95  *     (<a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/keytool.html">
96  *       for Solaris/Linux</a>)
97  *     (<a href="https://docs.oracle.com/javase/8/docs/technotes/tools/windows/keytool.html">
98  *       for Windows</a>)
99  *     </li>
100  *
101  *   <li><b>jarsigner</b>
102  *     (<a href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/jarsigner.html">
103  *       for Solaris/Linux</a>)
104  *     (<a href="https://docs.oracle.com/javase/8/docs/technotes/tools/windows/jarsigner.html">
105  *       for Windows</a>)
106  *     </li>
107  *
108  * </ul>
109  *
110  * @since 1.1
111  */
112 package java.security;
113