<?xml version="1.0" encoding="UTF-8"?>
<helpdocument version="1.0">
	
<!--***********************************************************
 * 
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 * 
 *   http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 * 
 ***********************************************************-->


 
	
<meta>
      <topic id="textsharedguidedigitalsign_sendxhp" indexer="include" status="PUBLISH">
         <title xml-lang="en-US" id="tit">Applying Digital Signatures</title>
         <filename>/text/shared/guide/digitalsign_send.xhp</filename>
      </topic>
   </meta>
   <body>
<bookmark xml-lang="en-US" branch="index" id="bm_id7430951"><bookmark_value>signing documents with digital signatures</bookmark_value>
      <bookmark_value>digital signatures;getting/managing/applying</bookmark_value>
</bookmark><comment>mw transferred one entry from digital_signatures.xhp and added a new entry</comment>
<paragraph xml-lang="en-US" id="hd_id344248" role="heading" level="1" l10n="NEW"><variable id="digitalsign_send"><link href="text/shared/guide/digitalsign_send.xhp">Applying Digital Signatures</link>
</variable></paragraph><comment>MW created this file by splitting shared/guide/digital_signatures.xhp</comment>
<paragraph xml-lang="en-US" id="par_idN1063C" role="heading" level="2" l10n="NEW">Getting a Certificate</paragraph>
      <paragraph xml-lang="en-US" id="par_idN10640" role="paragraph" l10n="NEW">You can get a certificate from a certification authority, which may be a private company or a governmental institution. Some certification authorities want money for their service, for example when they certify your identity. Other certificates are free of costs, for example those offered by some e-mail providers, which certify your e-mail address. A few of the companies that offer certificates to private persons are listed in the following, in alphabetical order: <link href="http://www.globalsign.net">GlobalSign</link>, <link href="http://www.verisign.com">Verisign</link>.</paragraph>
      <paragraph xml-lang="en-US" id="par_idN106F6" role="heading" level="2" l10n="NEW">Managing your Certificates</paragraph>
<switch select="sys">
<case select="WIN">
<paragraph xml-lang="en-US" id="par_idN1070A" role="paragraph" l10n="NEW">If you are using Microsoft Windows, you can manage your certificates from the Control Panel applet "Internet Options" on the "Contents" tab page.</paragraph>
      <paragraph xml-lang="en-US" id="par_id8311410" role="paragraph" l10n="NEW">Import your new root certificate into the Trusted Root Certification Authorities list.</paragraph>
</case>
<default>
<paragraph xml-lang="en-US" id="par_idN1071D" role="paragraph" l10n="NEW">If you are using Solaris or Linux, you must install a recent version of Thunderbird, Mozilla Suite, or Firefox software to install some system files that are needed for encryption.<comment>how about Mac OS X?</comment></paragraph>
      <paragraph xml-lang="en-US" id="par_idN10720" role="tip" l10n="NEW">If you have created different profiles in Thunderbird, Mozilla, or Firefox, and you want %PRODUCTNAME to use one specified profile for certificates, then you can set the environment variable MOZILLA_CERTIFICATE_FOLDER to point to the folder of that specified profile.</paragraph>
      <list type="ordered">
         <listitem>
            <paragraph xml-lang="en-US" id="par_id944242" role="paragraph" l10n="NEW">Open your Web browser's preferences dialog, select the Privacy &amp; Security tab page, click on Certificates - Manage Certificates. </paragraph>
         </listitem>
         <listitem>
            <paragraph xml-lang="en-US" id="par_id6452223" role="paragraph" l10n="NEW">Import your new root certificate, then select and edit the certificate. Enable the root certificate to be trusted at least for web and email access. This ensures that the certificate can sign your documents. You may edit any intermediate certificate in the same way, but it is not mandatory for signing documents.</paragraph>
         </listitem>
         <listitem>
            <paragraph xml-lang="en-US" id="par_id6486098" role="paragraph" l10n="NEW">When you have edited the new certificates, restart %PRODUCTNAME.</paragraph>
         </listitem>
      </list>
</default>
</switch>
<paragraph xml-lang="en-US" id="par_idN10681" role="heading" level="2" l10n="NEW">Signing a document</paragraph>
      <list type="ordered">
         <listitem>
            <paragraph xml-lang="en-US" id="par_idN10688" role="paragraph" l10n="NEW">Choose <emph>File - Digital Signatures</emph>.</paragraph>
         </listitem>
         <listitem>
            <paragraph xml-lang="en-US" id="par_idN10690" role="paragraph" l10n="NEW">A message box advises you to save the document. Click <emph>Yes</emph> to save the file.</paragraph>
         </listitem>
         <listitem>
            <paragraph xml-lang="en-US" id="par_idN10698" role="paragraph" l10n="NEW">After saving, you see the <link href="text/shared/01/digitalsignatures.xhp">Digital Signatures</link> dialog. Click <emph>Add</emph> to add a public key to the document.</paragraph>
         </listitem>
         <listitem>
            <paragraph xml-lang="en-US" id="par_idN106AE" role="paragraph" l10n="NEW">In the <link href="text/shared/01/selectcertificate.xhp">Select Certificate</link> dialog, select your certificate and click OK. </paragraph>
         </listitem>
         <listitem>
            <paragraph xml-lang="en-US" id="par_idN106C0" role="paragraph" l10n="NEW">You see again the Digital Signatures dialog, where you can add more certificates if you want. Click OK to add the public key to the saved file.</paragraph>
         </listitem>
      </list>
      <paragraph xml-lang="en-US" id="par_idN106C3" role="paragraph" l10n="NEW">A signed document shows an icon 
<image id="img_id262764" src="xmlsecurity/res/certificate_16.png" width="0.2228in" height="0.2228in"><alt xml-lang="en-US" id="alt_id262764">Icon</alt>
	</image> in the status bar. You can double-click the icon in the status bar to view the certificate.</paragraph>
      <paragraph xml-lang="en-US" id="par_id2008200911381426" role="paragraph" l10n="NEW">The result of the signature validation is displayed in the status bar and within the Digital Signature dialog. Several documents and macro signatures can exist inside an ODF document. If there is a problem with one signature, then the validation result of that one signature is assumed for all signatures. That is, if there are ten valid signatures and one invalid signature, then the status bar and the status field in the dialog will flag the signature as invalid.</paragraph>
      <paragraph xml-lang="en-US" id="par_idN106E0" role="heading" level="2" l10n="NEW">Signing the macros inside a document</paragraph>
      <paragraph xml-lang="en-US" id="par_idN106E4" role="paragraph" l10n="NEW">Normally, macros are part of a document. If you sign a document, the macros inside the document are signed automatically. If you want to sign only the macros, but not the document, proceed as follows:</paragraph>
      <list type="ordered">
         <listitem>
            <paragraph xml-lang="en-US" id="par_idN106EA" role="paragraph" l10n="NEW">Choose <emph>Tools - Macros - Digital Signature</emph>.</paragraph>
         </listitem>
         <listitem>
            <paragraph xml-lang="en-US" id="par_idN106F2" role="paragraph" l10n="NEW">Apply the signature as described above for documents.</paragraph>
         </listitem>
      </list>
      <paragraph xml-lang="en-US" id="par_idN106F5" role="paragraph" l10n="NEW">When you open the Basic IDE that contains signed macros, you see an icon 
<image id="img_id9252296" src="xmlsecurity/res/certificate_16.png" width="0.2228in" height="0.2228in"><alt xml-lang="en-US" id="alt_id9252296">Icon</alt>
	</image> in the status bar. You can double-click the icon in the status bar to view the certificate.</paragraph><comment>WebDAV see issue 32935</comment><comment>main dialog IDs are here to lead the user initially to this help page</comment><comment>Examine certificate button</comment>
<!-- removed HID 1311740419 -->
<paragraph xml-lang="en-US" id="par_id5734733" role="paragraph" l10n="NEW"><ahelp hid="." visibility="hidden">Click to open the View Certificate dialog.</ahelp></paragraph><comment>Accept this certificate temporarily for this session radio button</comment>
<!-- removed HID 1311736321 -->
<paragraph xml-lang="en-US" id="par_id561540" role="paragraph" l10n="NEW"><ahelp hid="." visibility="hidden">Choose this setting to accept the certificate until you exit %PRODUCTNAME.</ahelp></paragraph><comment>Do not accept this certificate and do not connect to this Web site radio button</comment>
<!-- removed HID 1311736326 -->
<paragraph xml-lang="en-US" id="par_id7705618" role="paragraph" l10n="NEW"><ahelp hid="." visibility="hidden">Choose this setting to cancel the connection.</ahelp></paragraph>
      <section id="relatedtopics">
         <paragraph xml-lang="en-US" id="par_id3204443" role="paragraph" l10n="NEW"><link href="https://wiki.openoffice.org/wiki/How_to_use_digital_Signatures">English Wiki page on digital signatures</link></paragraph>
         <paragraph xml-lang="en-US" id="par_id5166173" role="paragraph" l10n="NEW"><link href="text/shared/guide/digital_signatures.xhp">About digital signatures</link></paragraph>
      </section>
   </body>
</helpdocument>