1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
---|
2 | <html> |
---|
3 | <head> |
---|
4 | <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> |
---|
5 | <link rel="top" title="Home" href="http://www.mozilla.org/"> |
---|
6 | <link rel="stylesheet" type="text/css" href="../../../../css/print.css" media="print"> |
---|
7 | <link rel="stylesheet" type="text/css" href="../../../../css/base/content.css" media="all"> |
---|
8 | <link rel="stylesheet" type="text/css" href="../../../../css/cavendish/content.css" title="Cavendish" media="screen"> |
---|
9 | <link rel="stylesheet" type="text/css" href="../../../../css/base/template.css" media="screen"> |
---|
10 | <link rel="stylesheet" type="text/css" href="../../../../css/cavendish/template.css" title="Cavendish" media="screen"> |
---|
11 | <link rel="icon" href="../../../../images/mozilla-16.png" type="image/png"> |
---|
12 | |
---|
13 | <TITLE>NSS FAQ</TITLE> |
---|
14 | <script src="../../../../__utm.js" type="text/javascript"></script> |
---|
15 | </head> |
---|
16 | <body id="www-mozilla-org" class="secondLevel sectionDevelopers"> |
---|
17 | <div id="container"> |
---|
18 | <p class="skipLink"><a href="#mainContent" accesskey="2">Skip to main content</a></p> |
---|
19 | <div id="header"> |
---|
20 | <h1><a href="/" title="Return to home page" accesskey="1">Mozilla</a></h1> |
---|
21 | <ul> |
---|
22 | <li id="menu_aboutus"><a href="../../../../about/" title="Learn more about Mozilla">About</a></li> |
---|
23 | <li id="menu_foundation"><a href="../../../../foundation/" title="Information about the non-profit Mozilla Foundation">Foundation</a></li> |
---|
24 | <li id="menu_contribute"><a href="../../../../contribute/" title="Find out how to get involved with Mozilla">Contribute</a></li> |
---|
25 | <li id="menu_community"><a href="../../../../community/" title="List of community sites and other resources">Community</a></li> |
---|
26 | <li id="menu_developers"><a href="../../../../developer/" title="Resources and links for developers">Developers</a></li> |
---|
27 | <li id="menu_projects"><a href="../../../../projects/" title="Projects being created by the Mozilla community">Projects</a></li> |
---|
28 | </ul> |
---|
29 | <form id="searchbox_002443141534113389537:ysdmevkkknw" action="http://www.google.com/cse" title="mozilla.org Search"> |
---|
30 | <div> |
---|
31 | <label for="q" title="Search mozilla.org's sites">search mozilla:</label> |
---|
32 | <input type="hidden" name="cx" value="002443141534113389537:ysdmevkkknw"> |
---|
33 | <input type="hidden" name="cof" value="FORID:0"> |
---|
34 | <input type="text" id="q" name="q" accesskey="s" size="30"> |
---|
35 | <input type="submit" id="submit" value="Go"> |
---|
36 | </div> |
---|
37 | </form> |
---|
38 | </div> |
---|
39 | <hr class="hide"> |
---|
40 | <div id="mBody"> |
---|
41 | <div id="side"> |
---|
42 | |
---|
43 | <ul id="nav"> |
---|
44 | <li><a title="Roadmap" href="../../../../roadmap.html"><strong> Roadmap</strong></a></li> |
---|
45 | <li><a title="Projects" href="../../../../projects/"><strong> Projects</strong></a></li> |
---|
46 | <li><a title="For developers" href="../../../../developer/"><strong> Coding</strong></a> |
---|
47 | <ul> |
---|
48 | <li><a title="Module Owners" href="../../../../owners.html"> Module Owners</a></li> |
---|
49 | <li><a title="Hacking" href="../../../../hacking/"> Hacking</a></li> |
---|
50 | <li><a title="Get the Source" href="http://developer.mozilla.org/en/docs/Download_Mozilla_Source_Code"> Get the Source</a></li> |
---|
51 | <li><a title="Building Mozilla" href="http://developer.mozilla.org/en/docs/Build_Documentation"> Build It</a></li> |
---|
52 | </ul> |
---|
53 | </li> |
---|
54 | <li><a title="Testing" href="http://quality.mozilla.org/"><strong> Testing</strong></a> |
---|
55 | <ul> |
---|
56 | <li><a title="Downloads of mozilla.org software releases" href="../../../../download.html"> Releases</a></li> |
---|
57 | <li><a title="Latest mozilla builds for testers" href="../../../../developer/#builds"> Nightly Builds</a></li> |
---|
58 | <li><a title="For testers to report bugs" href="https://bugzilla.mozilla.org/"> Report A Problem</a></li> |
---|
59 | </ul> |
---|
60 | </li> |
---|
61 | <li><a title="Tools for mozilla developers" href="../../../../tools.html"><strong> Tools</strong></a> |
---|
62 | <ul> |
---|
63 | <li><a title="Bug tracking system for mozilla testers." href="https://bugzilla.mozilla.org/"> Bugzilla</a></li> |
---|
64 | <li><a title="Latest status of mozilla builds" href="http://tinderbox.mozilla.org/showbuilds.cgi?tree=Firefox"> Tinderbox</a></li> |
---|
65 | <li><a title="Latest checkins" href="http://bonsai.mozilla.org/cvsqueryform.cgi"> Bonsai</a></li> |
---|
66 | <li><a title="Source cross reference" href="http://mxr.mozilla.org/"> MXR</a></li> |
---|
67 | </ul> |
---|
68 | </li> |
---|
69 | <li><a title="Frequently Asked Questions." href="../../../../faq.html"><strong> FAQs</strong></a></li> |
---|
70 | </ul> |
---|
71 | |
---|
72 | </div> |
---|
73 | <hr class="hide"> |
---|
74 | <div id="mainContent"> |
---|
75 | |
---|
76 | |
---|
77 | |
---|
78 | |
---|
79 | <center> |
---|
80 | <h2>NSS FAQ</h2> |
---|
81 | <i><FONT SIZE="-1"> |
---|
82 | |
---|
83 | Newsgroup: |
---|
84 | <A HREF="news://news.mozilla.org/mozilla.dev.tech.crypto">mozilla.dev.tech.crypto</A> |
---|
85 | |
---|
86 | </FONT></i> |
---|
87 | </center> |
---|
88 | |
---|
89 | <p> |
---|
90 | <hr> |
---|
91 | <p> |
---|
92 | |
---|
93 | <a href="#Q1">General Questions</a> |
---|
94 | |
---|
95 | <ul> |
---|
96 | <li> |
---|
97 | <a href="#Q1.1">What is Network Security Services (NSS)?</a></li> |
---|
98 | <li> |
---|
99 | <a href="#Q1.2">What can I do with NSS? Is NSS appropriate for my application?</a></li> |
---|
100 | <li> |
---|
101 | <a href="#q1.2a">How does NSS compare to OpenSSL?</a></li> |
---|
102 | <li> |
---|
103 | <a href="#q1.3">How does NSS compare to SSLRef?</a></li> |
---|
104 | <li> |
---|
105 | <a href="#q1.4">What platforms and development environments are supported?</a></li> |
---|
106 | <li> |
---|
107 | <a href="#q1.5">What cryptography standards are supported?</a></li> |
---|
108 | <li> |
---|
109 | <a href="#q1.7">What is the relationship between NSS and PSM?</a></li> |
---|
110 | <li> |
---|
111 | <a href="#q1.7">Where can I get the source?</a></li> |
---|
112 | <li> |
---|
113 | <a href="#q1.8">How much does it cost?</a></li> |
---|
114 | </ul> |
---|
115 | |
---|
116 | <a href="#Q2">Developer Questions</a> |
---|
117 | <ul> |
---|
118 | <li> |
---|
119 | <a href="#q2.1">What hardware accelerators are supported?</a></li> |
---|
120 | <li> |
---|
121 | <a href="#q2.2">How do I integrate smart cards into my application using |
---|
122 | NSS?</a></li> |
---|
123 | <li> |
---|
124 | <a href="#q2.3">How is NSS compatible with other Netscape products?</a></li> |
---|
125 | <li> |
---|
126 | <a href="#q2.4">Does NSS require Netscape Portable Runtime (NSPR)?</a></li> |
---|
127 | <li> |
---|
128 | <a href="#q2.5">Can I use NSS even if my application protocol isn't HTTP?</a></li> |
---|
129 | <li> |
---|
130 | <a href="#q2.6">How long does it take to integrate NSS into my application?</a></li> |
---|
131 | <li> |
---|
132 | <a href="#q2.6">How can I learn more about SSL?</a></li> |
---|
133 | </ul> |
---|
134 | |
---|
135 | <a href="#Q3">Licensing Questions</a> |
---|
136 | <ul> |
---|
137 | <li> |
---|
138 | <a href="#q3.1">How is NSS licensed?</a> |
---|
139 | <li> |
---|
140 | <a href="#q3.2">Is NSS available outside the United States?</a></li> |
---|
141 | </ul> |
---|
142 | <h2> |
---|
143 | <a NAME="Q1"><hr WIDTH="100%"></a>General Questions</h2> |
---|
144 | <a NAME="Q1.1"></a><H4>What is Network Security Services (NSS)?</h4> |
---|
145 | <P>NSS is set of libraries, APIs, utilities, and documentation designed |
---|
146 | to support cross-platform development of security-enabled client and |
---|
147 | server applications. It provides a complete open-source implementation |
---|
148 | of the crypto libraries used by Netscape and other companies in the |
---|
149 | Netscape 6 browser, server products from iPlanet E-Commerce Solutions, the |
---|
150 | Gateway Connected Touch Pad with Instant AOL, and other products. |
---|
151 | |
---|
152 | <p>For an |
---|
153 | overview of NSS, see <a href="overview.html">Overview of NSS</a>. For detailed information |
---|
154 | on the open-source NSS project, see <a href="index.html">NSS Project Page</a>. |
---|
155 | |
---|
156 | <br> |
---|
157 | <a NAME="Q1.2"></a><H4>What can I do with NSS? Is NSS appropriate for |
---|
158 | my application?</h4> |
---|
159 | <P>If you want add support for SSL, S/MIME, or other Internet security standards |
---|
160 | to your application, you can use Network Security Services (NSS) to do so. Because |
---|
161 | NSS provides complete support for all versions of SSL and TLS, it is particularly well-suited |
---|
162 | for applications that need to communicate with the many clients and servers |
---|
163 | that already support the SSL protocol. |
---|
164 | <p>The PKCS #11 interface included in NSS means that your application can |
---|
165 | use <a href="#q2.1">hardware accelerators</a> on the server and <a href="#q2.2">smart |
---|
166 | cards</a> for two-factor authentication. |
---|
167 | <br> |
---|
168 | |
---|
169 | <a NAME="q1.2a"></a><H4>How does NSS compare to OpenSSL?</h4> |
---|
170 | |
---|
171 | <a href="http://www.openssl.org/">OpenSSL</a> is an open source project that implements server-side SSL, |
---|
172 | TLS, and a general-purpose cryptography library. It does not support PKCS #11. It is based on |
---|
173 | the SSLeay library developed by Eric A. Young and Tim J. Hudson. OpenSSL is widely used in |
---|
174 | Apache servers and is licensed under an Apache-style licence. |
---|
175 | |
---|
176 | <p>NSS supports both server and client applications as well as PKCS #11 and S/MIME. To permit its use |
---|
177 | in as many contexts as possible, |
---|
178 | NSS is triple-licensed under the <a href="../../../../MPL/">Mozilla Public License</a>, the |
---|
179 | <a href="http://www.gnu.org/copyleft/gpl.html">GNU General Public License</a>, |
---|
180 | and the <a href="http://www.gnu.org/copyleft/lesser.html">GNU Lesser General Public License</a>. |
---|
181 | You may choose to use the code either under the terms of the MPL or the GPL or the LGPL. |
---|
182 | |
---|
183 | <a NAME="q1.3"></a><H4>How does NSS compare to SSLRef?</h4> |
---|
184 | SSLRef was an early reference implementation of the SSL protocol. It contains |
---|
185 | bugs that were never fixed, doesn't support TLS or or the |
---|
186 | new 56-bit export cipher suites, and does not contain the fix to the |
---|
187 | Bleichenbacher attack on PKCS#1. |
---|
188 | |
---|
189 | <p>Netscape no longer maintains SSLRef or makes it available. It was built as |
---|
190 | an example of an SSL implementation, not for creating production applications. |
---|
191 | |
---|
192 | <p>NSS was designed from the ground up for use by commercial developers. |
---|
193 | It provides a complete software development kit |
---|
194 | that uses the same architecture used to support security features in many client |
---|
195 | and server products from Netscape and other companies. |
---|
196 | |
---|
197 | <a NAME="q1.4"></a><H4>What platforms and development environments are supported?</h4> |
---|
198 | <P>iPlanet E-Commerce Solutions has certified NSS 3.1 on 18 platforms, including AIX 4.3, HP-UX 11.0, |
---|
199 | Red Hat Linux 6.0, Solaris (2.6 or later), Windows NT (4.0 or later), and |
---|
200 | Windows 2000. Other contributors are in the process of certifying additional platforms. |
---|
201 | The NSS 3.1 API requires C or C++ development environments. |
---|
202 | |
---|
203 | <p>For the latest NSS release notes and detailed platform information, see |
---|
204 | <a href="release_notes_31.html">NSS 3.1 Release Notes</a>. |
---|
205 | |
---|
206 | <a NAME="q1.5"></a><H4>What cryptography standards does NSS support?</h4> |
---|
207 | <P>NSS supports <a HREF="../../../docs/jargon.html#SSL">SSL v2 and v3</a>, |
---|
208 | <a HREF="../../../../docs/jargon.html#TLS">TLS</a>, |
---|
209 | <a HREF="../../../../docs/jargon.html#PKCS5">PKCS #5</a>, |
---|
210 | <a HREF="../../../../docs/jargon.html#PKCS7">PKCS #7</a>, |
---|
211 | <a HREF="../../../../docs/jargon.html#PKCS11">PKCS #11</a>, |
---|
212 | <a HREF="../../../../docs/jargon.html#PKCS12">PKCS #12</a>, |
---|
213 | <a HREF="../../../../docs/jargon.html#SMIME">S/MIME</a>, and |
---|
214 | <a HREF="../../../../docs/jargon.html#X.509">X.509 v3</a> certificates. |
---|
215 | For complete details, |
---|
216 | see <a href="nss-3.11/nss-3.11-algorithms.html"> |
---|
217 | Encryption Technologies</a>. |
---|
218 | |
---|
219 | <a NAME="q1.6"></a><H4>What is the relationship between NSS and PSM?</H4> |
---|
220 | |
---|
221 | Personal Security Manager (PSM) is built on top of NSS. It consists of libraries |
---|
222 | and a daemon designed to support cross-platform development of security-enabled |
---|
223 | client applications. The PSM binary provides a client module |
---|
224 | that performs cryptographic operations on behalf of applications. |
---|
225 | Netscape Personal Security Manager ships with Netscape 6 and the Gateway Connected Touch Pad with Instant AOL, |
---|
226 | and is also available for use with Communicagotr 4.7x. |
---|
227 | |
---|
228 | <p>For more information about the PSM open-source project, see <a href="../psm">Personal Security Manager</a>. |
---|
229 | |
---|
230 | <a NAME="q1.7"></a><H4>Where can I get the source code?</H4> |
---|
231 | |
---|
232 | For instructions on how to check out and build the NSS 3.1 source code, see |
---|
233 | <a href="buildnss_31.html">Build Instructions for NSS 3.1.</a> The source code may also |
---|
234 | be downloaded as a tar file from |
---|
235 | <a href="ftp://ftp.mozilla.org/pub/mozilla.org/security/">ftp://ftp.mozilla.org/pub/mozilla.org/security/</a>. |
---|
236 | |
---|
237 | <a NAME="q1.8"></a><H4>How much does it cost?</H4> |
---|
238 | |
---|
239 | NSS source code and binaries (when they become available) are completely free. No license fees, |
---|
240 | no royalty fees, no subscription fees. |
---|
241 | |
---|
242 | |
---|
243 | <a NAME="Q2"><h2> |
---|
244 | <hr WIDTH="100%"></a>Developer Questions</h2> |
---|
245 | |
---|
246 | <a NAME="q2.1"></a><H4>What hardware accelerators are supported?</h4> |
---|
247 | <P>NSS supports the PKCS #11 interface for hardware acceleration. Since leading accelerator vendors such as |
---|
248 | Chrysalis-IT, nCipher, and Rainbow Technologies also support this interface, NSS-enabled applications |
---|
249 | can support a wide variety of hardware accelerators. |
---|
250 | <a NAME="q2.2"></a><H4>How do I integrate smart cards into my application using |
---|
251 | NSS?</h4> |
---|
252 | <P>NSS supports the PKCS #11 interface for smart card integration. Applications that use the PKCS #11 |
---|
253 | interface provided by NSS will therefore support smart cards from leading vendors such as |
---|
254 | ActiveCard, Litronic, and SecureID Technologies that also support the PKCS #11 interface. |
---|
255 | |
---|
256 | <a NAME="q2.3"></a><H4>How is NSS compatible with other Netscape products?</h4> |
---|
257 | <P>NSS provides tight integration with other Netscape products in two ways. |
---|
258 | First, by using NSS to implement SSL and TLS, you can support SSL communications |
---|
259 | with all products from Netscape and all other vendors |
---|
260 | that support SSL<FONT color="#CC0000"> and TLS.</FONT> Second, NSS makes it easy |
---|
261 | to share certificates between Netscape client and server products |
---|
262 | and your application. |
---|
263 | |
---|
264 | <a NAME="q2.4"></a><H4>Does NSS require Netscape Portable Runtime (NSPR)?</h4> |
---|
265 | <P>To provide cross-platform support, NSS utilizes Netscape Portable Runtime |
---|
266 | (NSPR) libraries as a portability interface and implementation that |
---|
267 | provides consistent cross-platform semantics for network I/O and threading |
---|
268 | models. You can use NSPR throughout your application or |
---|
269 | only in the portion that calls into NSS. Netscape strongly recommends that |
---|
270 | multithreaded applications use the NSPR or native OS threading model. (In |
---|
271 | recent NSPR releases, the NSPR threading model is compatible with the native |
---|
272 | threading model if the OS has native threads.) Alternatively, you can adapt |
---|
273 | the open-source NSPR implementation to be compatible with your existing |
---|
274 | application's threading models. More information about NSPR may be found at |
---|
275 | <a href="http://www.mozilla.org/projects/nspr/">Netscape Portable Runtime</a>. |
---|
276 | <br> |
---|
277 | |
---|
278 | <a NAME="q2.5"></a><H4>Can I use NSS even if my application protocol isn't |
---|
279 | HTTP?</h4> |
---|
280 | <P>Yes, SSL independent of application protocols. It works with common |
---|
281 | Internet standard application protocols (HTTP, POP3, FTP, SMTP, etc.) as |
---|
282 | well as custom application protocols using TCP/IP. |
---|
283 | |
---|
284 | <br> |
---|
285 | <a NAME="q2.6"></a><H4>How long does it take to integrate NSS into my application?</h4> |
---|
286 | <P>The integration effort depends on an number of factors, such as developer |
---|
287 | skill set, application complexity, and the level of security required for |
---|
288 | your application. NSS includes detailed documentation of the SSL API and |
---|
289 | sample code that demonstrates basic SSL functionality (setting up an encrypted |
---|
290 | session, server authentication, and client authentication) to help jump start the |
---|
291 | integration process. However, there is little or no documentation currently |
---|
292 | available for the rest of the NSS API. If your application requires sophisticated |
---|
293 | certificate management, smart card support, or hardware acceleration, your |
---|
294 | integration effort will be more extensive. |
---|
295 | |
---|
296 | <a NAME="q2.7"></a><H4> Where can I download the NSS tools?</h4> |
---|
297 | |
---|
298 | Currently, you must download the NSS source and build it to create binary files for the NSS tools. |
---|
299 | For more information, see <A HREF="tools/">NSS Tools</A>. |
---|
300 | |
---|
301 | |
---|
302 | <a NAME="q2.8"></a><H4>How can I learn more about SSL?</h4> |
---|
303 | |
---|
304 | NSS provides extensive documentation related to SSL, including high-level introductions, |
---|
305 | detailed API documentation, sample code for simple client and server |
---|
306 | applications, the original SSL 3.0 specification, and |
---|
307 | information on debugging SSL applications. For details, see the |
---|
308 | <a href="ssl/">SSL/TLS Project Page</a>. For information about the NSS tools, including those used |
---|
309 | for debugging SSL applications, see <a href="http://www.mozilla.org/projects/security/pki/nss/tools/"> |
---|
310 | NSS Security Tools</a>. |
---|
311 | |
---|
312 | <a NAME="Q3"><h2> |
---|
313 | <hr WIDTH="100%"></a>Licensing Questions</h2> |
---|
314 | <H4><a NAME="q3.1"></a>How is NSS licensed?</h4> |
---|
315 | <P>NSS is triple-licensed under the <a href="../../../../MPL/">Mozilla Public License</a>, the |
---|
316 | <a href="http://www.gnu.org/copyleft/gpl.html">GNU General Public License</a>, |
---|
317 | and the <a href="http://www.gnu.org/copyleft/lesser.html">GNU Lesser General Public License</a>. |
---|
318 | For more details, see the <a href="http://www.mozilla.org/crypto-faq.html#1-3">Mozilla Crypto FAQ</a>. |
---|
319 | |
---|
320 | <a NAME="q3.2"></a><H4>Is NSS available outside the United States?</h4> |
---|
321 | <P>Yes; see |
---|
322 | <a href="buildnss_31.html">Build Instructions for NSS 3.1.</a> and |
---|
323 | <a href="ftp://ftp.mozilla.org/pub/mozilla.org/security/">ftp://ftp.mozilla.org/pub/mozilla.org/security/</a>. |
---|
324 | However, NSS source code is subject to the U.S. Export |
---|
325 | Administration Regulations and other U.S. law, and may not be exported or |
---|
326 | re-exported to certain |
---|
327 | countries (currently Cuba, Iran, Libya, North Korea, Sudan and Syria) or |
---|
328 | to persons or entities prohibited from receiving U.S. exports (including |
---|
329 | those (a) on the Bureau of Industry and Security Denied Parties List or |
---|
330 | Entity List, (b) on the Office of Foreign Assets Control list of Specially |
---|
331 | Designated Nationals and Blocked Persons, and (c) involved with missile |
---|
332 | technology or nuclear, chemical or biological weapons). |
---|
333 | |
---|
334 | <p>For more information about U.S. export controls on encryption software, |
---|
335 | see the <a href="http://www.mozilla.org/crypto-faq.html">Mozilla Crypto FAQ</a>. |
---|
336 | |
---|
337 | |
---|
338 | |
---|
339 | |
---|
340 | |
---|
341 | <hr class="hide"> |
---|
342 | </div> |
---|
343 | </div> |
---|
344 | <div id="footer"> |
---|
345 | <ul> |
---|
346 | <li><a href="../../../../support/">Support Options</a></li> |
---|
347 | <li><a href="../../../../security/">Security Center</a></li> |
---|
348 | <li><a href="../../../../privacy-policy.html">Privacy Policy</a></li> |
---|
349 | <li><a href="../../../../contact/">Contact Us</a></li> |
---|
350 | </ul> |
---|
351 | <p class="affiliates">International Affiliates: <a href="http://www.mozilla-europe.org/">Mozilla Europe</a> - <a |
---|
352 | href="http://mozilla.jp/">Mozilla Japan</a> - <a href="http://www.mozillaonline.com/">Mozilla China</a></p> |
---|
353 | <p class="copyright"> |
---|
354 | Portions of this content are © 1998–2009 by individual mozilla.org contributors<br> |
---|
355 | Content available under a Creative Commons <a href="http://www.mozilla.org/foundation/licensing/website-content.html">license</a></p> |
---|
356 | <p> |
---|
357 | <span>Last modified July 12, 2007</span> |
---|
358 | <span><a href="http://bonsai-www.mozilla.org/cvslog.cgi?file=mozilla-org/html/projects/security/pki/nss/faq.html&rev=&root=/www/">Document History</a></span> |
---|
359 | <span><a href="https://doctor.mozilla.org/?action=edit&file=mozilla-org/html/projects/security/pki/nss/faq.html">Edit this Page</a></span> <span>(or <a href="/contribute/writing/cvs">via CVS</a>)</span> |
---|
360 | </p> |
---|
361 | </div> |
---|
362 | </div> |
---|
363 | </body> |
---|
364 | </html> |
---|