1/*
2 * Copyright (c) 1998, 2017, 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> {@extLink security_guide_jca
50 *     Java Cryptography Architecture (JCA) Reference Guide}</li>
51 *
52 *   <li>PKCS #8: Private-Key Information Syntax Standard, Version 1.2,
53 *     November 1993</li>
54 *
55 *   <li><a href="{@docRoot}/../specs/security/standard-names.html">
56 *     Java Security Standard Algorithm Names Specification
57 *     </a></li>
58 * </ul>
59 *
60 * <h2>Related Documentation</h2>
61 *
62 * For further documentation, please see:
63 * <ul>
64 *   <li> {@extLink security_guide_overview
65 *     Java Security Overview} </li>
66 *
67 *   <li> {@extLink security_guide_impl_provider
68 *     How to Implement a Provider in the Java Cryptography Architecture}</li>
69 *
70 *   <li> {@extLink security_guide_default_policy
71 *     Default Policy Implementation and Policy File Syntax}</li>
72 *
73 *   <li> {@extLink security_guide_permissions
74 *     Permissions in the Java Development Kit (JDK)}</li>
75 *
76 *   <li> {@extLink security_guide_tools
77 *     Summary of Tools for Java Platform Security}
78 *     (for example {@code keytool} and {@code jarsigner}),</li>
79 *
80 * </ul>
81 *
82 * @since 1.1
83 */
84package java.security;
85