/*
 * crypt32 dll French resources
 *
 * Copyright 2006-2009 Jonathan Ernst
 * Copyright 2009 Frédéric Delanoy
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
 */

#include "cryptres.h"

#pragma code_page(65001)

LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL

STRINGTABLE DISCARDABLE
{
    IDS_AUTHORITY_KEY_ID "Identifiant de l'autorité de la clé"
    IDS_KEY_ATTRIBUTES "Attributs de la clé"
    IDS_KEY_USAGE_RESTRICTION "Restrictions de l'utilisation de la clé"
    IDS_SUBJECT_ALT_NAME "Nom alternatif du sujet"
    IDS_ISSUER_ALT_NAME "Nom alternatif de l'émetteur"
    IDS_BASIC_CONSTRAINTS "Contraintes de base"
    IDS_KEY_USAGE "Utilisation de la clé"
    IDS_CERT_POLICIES "Politiques de certificats"
    IDS_SUBJECT_KEY_IDENTIFIER "Identifiant de clé du sujet"
    IDS_CRL_REASON_CODE "Code de raison pour la LRC"
    IDS_CRL_DIST_POINTS "Points de distribution de LRC"
    IDS_ENHANCED_KEY_USAGE "Utilisation complémentaire de la clé"
    IDS_AUTHORITY_INFO_ACCESS "Accès aux informations de l'autorité"
    IDS_CERT_EXTENSIONS "Extensions de certificats"
    IDS_NEXT_UPDATE_LOCATION "Emplacement de la mise à jour suivante"
    IDS_YES_OR_NO_TRUST "Confiance Oui ou Non"
    IDS_EMAIL_ADDRESS "Adresse électronique"
    IDS_UNSTRUCTURED_NAME "Nom non structuré"
    IDS_CONTENT_TYPE "Type de contenu"
    IDS_MESSAGE_DIGEST "Empreinte du message"
    IDS_SIGNING_TIME "Heure de la signature"
    IDS_COUNTER_SIGN "Contresignature"
    IDS_CHALLENGE_PASSWORD "Mot de passe défi"
    IDS_UNSTRUCTURED_ADDRESS "Adresse non structurée"
    IDS_SMIME_CAPABILITIES "Aptitudes SMIME"
    IDS_PREFER_SIGNED_DATA "Préférer les données signées"
    IDS_CPS "Énoncé des pratiques de certification (CPS)"
    IDS_USER_NOTICE "Notice utilisateur"
    IDS_OCSP "Protocole de vérification en ligne de certificat"
    IDS_CA_ISSUER "Émetteur de l'autorité de certification"
    IDS_CERT_TEMPLATE_NAME "Nom de modèle de certification"
    IDS_CERT_TYPE "Type de certificat"
    IDS_CERT_MANIFOLD "Certificate Manifold"
    IDS_NETSCAPE_CERT_TYPE "Type de certificat Netscape"
    IDS_NETSCAPE_BASE_URL "URL Netscape de base"
    IDS_NETSCAPE_REVOCATION_URL "URL Netscape de révocation"
    IDS_NETSCAPE_CA_REVOCATION_URL "URL Netscape de révocation de l'AC"
    IDS_NETSCAPE_CERT_RENEWAL_URL "URL Netscape de renouvellement du certificat"
    IDS_NETSCAPE_CA_POLICY_URL "URL Netscape des stratégies d'ACL"
    IDS_NETSCAPE_SSL_SERVER_NAME "Nom du serveur SSL de Netscape"
    IDS_NETSCAPE_COMMENT "Commentaire Netscape"
    IDS_SPC_SP_AGENCY_INFO "SpcSpAgencyInfo"
    IDS_SPC_FINANCIAL_CRITERIA "SpcFinancialCriteria"
    IDS_SPC_MINIMAL_CRITERIA "SpcMinimalCriteria"
    IDS_COUNTRY "Pays/Région"
    IDS_ORGANIZATION "Organisation"
    IDS_ORGANIZATIONAL_UNIT "Unité d'organisation"
    IDS_COMMON_NAME "Nom commun"
    IDS_LOCALITY "Localité"
    IDS_STATE_OR_PROVINCE "État ou province"
    IDS_TITLE "Titre"
    IDS_GIVEN_NAME "Nom donné"
    IDS_INITIALS "Initiales"
    IDS_SUR_NAME "Nom de famille"
    IDS_DOMAIN_COMPONENT "Composant de domaine"
    IDS_STREET_ADDRESS "Adresse"
    IDS_SERIAL_NUMBER "Numéro de série"
    IDS_CA_VERSION "Version du CA"
    IDS_CROSS_CA_VERSION "Version de certification croisées d'AC"
    IDS_SERIALIZED_SIG_SERIAL_NUMBER "Numéro de série de signature sérialisée"
    IDS_PRINCIPAL_NAME "Nom principal"
    IDS_WINDOWS_PRODUCT_UPDATE "Mise à jour de Windows"
    IDS_ENROLLMENT_NAME_VALUE_PAIR "Paire nom/value d'enrôlement"
    IDS_OS_VERSION "Version du système d'exploitation"
    IDS_ENROLLMENT_CSP "Fournisseur de service cryptographique (CSP) d'enrôlement"
    IDS_CRL_NUMBER "Numéro de la LRC"
    IDS_DELTA_CRL_INDICATOR "Indicateur de delta-LRC"
    IDS_ISSUING_DIST_POINT "Point de distribution d'émission"
    IDS_FRESHEST_CRL "LRC la plus récente"
    IDS_NAME_CONSTRAINTS "Contraintes de nom"
    IDS_POLICY_MAPPINGS "Mappings de politiques"
    IDS_POLICY_CONSTRAINTS "Contraintes de politiques"
    IDS_CROSS_CERT_DIST_POINTS "Points de distribution de certificats croisés"
    IDS_APPLICATION_POLICIES "Politiques applicatives"
    IDS_APPLICATION_POLICY_MAPPINGS "Mappings de politiques applicatives"
    IDS_APPLICATION_POLICY_CONSTRAINTS "Contraintes de politiques applicatives"
    IDS_CMC_DATA "Données CMC"
    IDS_CMC_RESPONSE "Réponse CMC"
    IDS_UNSIGNED_CMC_REQUEST "Requête CMC non signée"
    IDS_CMC_STATUS_INFO "Informations sur le statut CMC"
    IDS_CMC_EXTENSIONS "Extensions CMC"
    IDS_CMC_ATTRIBUTES "Attributs CMC"
    IDS_PKCS_7_DATA "Données PKCS 7"
    IDS_PKCS_7_SIGNED "Signé avec PKCS 7"
    IDS_PKCS_7_ENVELOPED "Enveloppé avec PKCS 7"
    IDS_PKCS_7_SIGNED_ENVELOPED "Enveloppé et signé avec PKCS 7"
    IDS_PKCS_7_DIGESTED "Haché avec PKCS 7"
    IDS_PKCS_7_ENCRYPTED "Chiffré avec PKCS 7"
    IDS_PREVIOUS_CA_CERT_HASH "Empreinte précédente du certificat de l'AC"
    IDS_CRL_VIRTUAL_BASE "Numéro de LRC de base virtuelle"
    IDS_CRL_NEXT_PUBLISH "Prochaine publication de LRC"
    IDS_CA_EXCHANGE "Certificat de chiffrement CA"
    IDS_KEY_RECOVERY_AGENT "Agent de recouvrement de clé"
    IDS_CERTIFICATE_TEMPLATE "Informations sur le modèle de certificats"
    IDS_ENTERPRISE_ROOT_OID "OID racine de l'entreprise"
    IDS_RDN_DUMMY_SIGNER "Signataire factice"
    IDS_ARCHIVED_KEY_ATTR "Clé de chiffrement privée"
    IDS_CRL_SELF_CDP "Emplacement des LRC publiées"
    IDS_REQUIRE_CERT_CHAIN_POLICY "Requérir une polique de chaîne de certification"
    IDS_TRANSACTION_ID "Identifiant de transaction"
    IDS_SENDER_NONCE "Nonce de l'émetteur"
    IDS_RECIPIENT_NONCE "Nonce du récepteur"
    IDS_REG_INFO "Informations d'enregistrement"
    IDS_GET_CERTIFICATE "Obtenir un certificat"
    IDS_GET_CRL "Obtenir une LRC"
    IDS_REVOKE_REQUEST "Révoquer une requête"
    IDS_QUERY_PENDING "Requête en attente"
    IDS_SORTED_CTL "Liste de certificats de confiance"
    IDS_ARCHIVED_KEY_CERT_HASH "Empreinte du certificat de clé archivée"
    IDS_PRIVATE_KEY_USAGE_PERIOD "Période d'utilisation de la clé privée"
    IDS_CLIENT_INFORMATION "Informations sur le client"
    IDS_SERVER_AUTHENTICATION "Authentification du serveur"
    IDS_CLIENT_AUTHENTICATION "Authentification du client"
    IDS_CODE_SIGNING "Signature de code"
    IDS_SECURE_EMAIL "Messagerie sécurisé"
    IDS_TIME_STAMPING "Horodatage"
    IDS_MICROSOFT_TRUST_LIST_SIGNING "Signature de la liste de confiance Microsoft"
    IDS_MICROSOFT_TIME_STAMPING "Horodatage Microsoft"
    IDS_IPSEC_END_SYSTEM "Système terminal IPsec"
    IDS_IPSEC_TUNNEL "Terminaison du tunnel IPsec"
    IDS_IPSEC_USER "Utilisateur IPsec"
    IDS_EFS "Système de fichiers chiffré (EFS)"
    IDS_WHQL_CRYPTO "Vérification des pilotes matériels de Windows"
    IDS_NT5_CRYPTO "Vérification des composants système de Windows"
    IDS_OEM_WHQL_CRYPTO "Vérification des composants système de Windows OEM"
    IDS_EMBEDDED_NT_CRYPTO "Vérification des composants système de Windows embarqué"
    IDS_KEY_PACK_LICENSES "Licences de jeux de clés"
    IDS_LICENSE_SERVER "Vérification du serveur de licence"
    IDS_SMART_CARD_LOGON "Connexion avec carte à puce"
    IDS_DIGITAL_RIGHTS "Droits numériques"
    IDS_QUALIFIED_SUBORDINATION "Subordination conditionnelle"
    IDS_KEY_RECOVERY "Recouvrement de clé"
    IDS_DOCUMENT_SIGNING "Signature de document"
    IDS_IPSEC_IKE_INTERMEDIATE "Intermédiaire IKE IPsec"
    IDS_FILE_RECOVERY "Restauration de fichier"
    IDS_ROOT_LIST_SIGNER "Signataires de la liste racine"
    IDS_ANY_APPLICATION_POLICIES "Toutes les politiques applicatives"
    IDS_DS_EMAIL_REPLICATION "Réplication de courriers électroniques du service d'annuaire"
    IDS_ENROLLMENT_AGENT "Agent de demande de certificat"
    IDS_LIFETIME_SIGNING "Signature à vie"
    IDS_ANY_CERT_POLICY "Toutes les politiques d'émission"
}

STRINGTABLE DISCARDABLE
{
    IDS_LOCALIZEDNAME_ROOT "Autorités de certification de confiance"
    IDS_LOCALIZEDNAME_MY "Personnel"
    IDS_LOCALIZEDNAME_CA "Autorités intermédiaires"
    IDS_LOCALIZEDNAME_ADDRESSBOOK "Autres personnes"
    IDS_LOCALIZEDNAME_TRUSTEDPUBLISHER "Éditeurs de confiance"
}

STRINGTABLE DISCARDABLE
{
    IDS_KEY_ID "ID de clé ="
    IDS_CERT_ISSUER "Émetteur du certificat"
    IDS_CERT_SERIAL_NUMBER "Numéro de série du certificat ="
    IDS_ALT_NAME_OTHER_NAME "Autre nom ="
    IDS_ALT_NAME_RFC822_NAME "Adresse électronique ="
    IDS_ALT_NAME_DNS_NAME "Nom DNS ="
    IDS_ALT_NAME_DIRECTORY_NAME "Adresse du répertoire"
    IDS_ALT_NAME_URL "URL="
    IDS_ALT_NAME_IP_ADDRESS "Adresse IP ="
    IDS_ALT_NAME_MASK "Masque ="
    IDS_ALT_NAME_REGISTERED_ID "ID enregistré ="
    IDS_USAGE_UNKNOWN "Utilisation de la clé inconnue"
    IDS_SUBJECT_TYPE "Type de sujet ="
    IDS_SUBJECT_TYPE_CA "AC"
    IDS_SUBJECT_TYPE_END_CERT "Entité terminale"
    IDS_PATH_LENGTH "Contrainte de longueur de chemin ="
    IDS_PATH_LENGTH_NONE "Aucune"
    IDS_INFO_NOT_AVAILABLE "Informations non disponibles"
    IDS_AIA "Accès aux informations de l'autorité"
    IDS_ACCESS_METHOD "Méthode d'accès ="
    IDS_ACCESS_METHOD_OCSP "OCSP"
    IDS_ACCESS_METHOD_CA_ISSUERS "Émetteurs de l'AC"
    IDS_ACCESS_METHOD_UNKNOWN "Méthode d'accès inconnue"
    IDS_ACCESS_LOCATION "Nom alternatif"
    IDS_CRL_DIST_POINT "Point de distribution de LRC"
    IDS_CRL_DIST_POINT_NAME "Nom du point de distribution"
    IDS_CRL_DIST_POINT_FULL_NAME "Nom complet"
    IDS_CRL_DIST_POINT_RDN_NAME "Nom distingué relatif (RDN)"
    IDS_CRL_DIST_POINT_REASON "Raison de la LRC ="
    IDS_CRL_DIST_POINT_ISSUER "Émetteur de la LRC"
    IDS_REASON_KEY_COMPROMISE "Clé compromise"
    IDS_REASON_CA_COMPROMISE "AC compromise"
    IDS_REASON_AFFILIATION_CHANGED "Affiliation modifiée"
    IDS_REASON_SUPERSEDED "Supplanté"
    IDS_REASON_CESSATION_OF_OPERATION "Cessation de opérations"
    IDS_REASON_CERTIFICATE_HOLD "Certificat suspendu"
    IDS_FINANCIAL_CRITERIA "Informations financières ="
    IDS_FINANCIAL_CRITERIA_AVAILABLE "Disponible"
    IDS_FINANCIAL_CRITERIA_NOT_AVAILABLE "Non disponible"
    IDS_FINANCIAL_CRITERIA_MEETS_CRITERIA "Respecte les critères ="
    IDS_YES "Oui"
    IDS_NO "Non"
    IDS_DIGITAL_SIGNATURE "Signature numérique"
    IDS_NON_REPUDIATION "Non-répudiation"
    IDS_KEY_ENCIPHERMENT "Chiffrement de la clé"
    IDS_DATA_ENCIPHERMENT "Chiffrement de données"
    IDS_KEY_AGREEMENT "Accord sur la clé"
    IDS_CERT_SIGN "Signature de certificat"
    IDS_OFFLINE_CRL_SIGN "Signature de LRC hors-ligne"
    IDS_CRL_SIGN "Signature de LRC"
    IDS_ENCIPHER_ONLY "Chiffrement seul"
    IDS_DECIPHER_ONLY "Déchiffrement seul"
    IDS_NETSCAPE_SSL_CLIENT "Authentification de client SSL"
    IDS_NETSCAPE_SSL_SERVER "Authentification de serveur SSL"
    IDS_NETSCAPE_SMIME "S/MIME"
    IDS_NETSCAPE_SIGN "Signature"
    IDS_NETSCAPE_SSL_CA "AC SSL"
    IDS_NETSCAPE_SMIME_CA "AC S/MIME"
    IDS_NETSCAPE_SIGN_CA "Signature CA"
}
