/*
 * crypt32 dll resources
 *
 * Copyright (C) 2006 Juan Lang
 *
 * Ukrainian language support
 * Copyright (C) 2010 igor Paliychuk
 *
 * 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"

/* UTF-8 */
#pragma code_page(65001)

LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT

STRINGTABLE DISCARDABLE
{
    IDS_AUTHORITY_KEY_ID "Ідентифікатор ключа органу"
    IDS_KEY_ATTRIBUTES "Властивості Ключа"
    IDS_KEY_USAGE_RESTRICTION "Обмеження використання ключа"
    IDS_SUBJECT_ALT_NAME "Альтернативна назва предмету"
    IDS_ISSUER_ALT_NAME "Альтернативна назва видавця"
    IDS_BASIC_CONSTRAINTS "Основні Обмеження"
    IDS_KEY_USAGE "Використання Ключа"
    IDS_CERT_POLICIES "Політика Сертифікатів"
    IDS_SUBJECT_KEY_IDENTIFIER "Ідентифікатор ключа предмету"
    IDS_CRL_REASON_CODE "Код причини CRL"
    IDS_CRL_DIST_POINTS "Точки розповсюдження CRL"
    IDS_ENHANCED_KEY_USAGE "Розширене Використання Ключа"
    IDS_AUTHORITY_INFO_ACCESS "Інформаційний доступ органу"
    IDS_CERT_EXTENSIONS "Розширення Сертифікатів"
    IDS_NEXT_UPDATE_LOCATION "Наступне розташування оновлення"
    IDS_YES_OR_NO_TRUST "Довіряти чи Не довіряти"
    IDS_EMAIL_ADDRESS "Адреса Ел. Пошти"
    IDS_UNSTRUCTURED_NAME "Неструктурована назва"
    IDS_CONTENT_TYPE "Тип Вмісту"
    IDS_MESSAGE_DIGEST "Збірник повідомлень"
    IDS_SIGNING_TIME "Час Входу"
    IDS_COUNTER_SIGN "Контрольний підпис"
    IDS_CHALLENGE_PASSWORD "Запит паролю"
    IDS_UNSTRUCTURED_ADDRESS "Неструктурована адреса"
    IDS_SMIME_CAPABILITIES "Можливості SMIME"
    IDS_PREFER_SIGNED_DATA "Віддати перевагу підписаним даним"
    IDS_CPS "CPS"
    IDS_USER_NOTICE "Повідомлення користувача"
    IDS_OCSP "Онлайн протокол стану сертифікату"
    IDS_CA_ISSUER "Видавець органу сертифікації"
    IDS_CERT_TEMPLATE_NAME "Назва шаблону сертифікації"
    IDS_CERT_TYPE "Тип Сертифікату"
    IDS_CERT_MANIFOLD "Розмноження сертифікатів"
    IDS_NETSCAPE_CERT_TYPE "Тип сертифікату Netscape"
    IDS_NETSCAPE_BASE_URL "Базовий URL Netscape"
    IDS_NETSCAPE_REVOCATION_URL "URL анулювання Netscape"
    IDS_NETSCAPE_CA_REVOCATION_URL "URL анулювання Netscape CA"
    IDS_NETSCAPE_CERT_RENEWAL_URL "URL поновлення сертифікату Netscape"
    IDS_NETSCAPE_CA_POLICY_URL "URL політики Netscape CA"
    IDS_NETSCAPE_SSL_SERVER_NAME "Назва сервера SSL Netscape"
    IDS_NETSCAPE_COMMENT "Коментар Netscape"
    IDS_SPC_SP_AGENCY_INFO "SpcSpAgencyInfo"
    IDS_SPC_FINANCIAL_CRITERIA "SpcFinancialCriteria"
    IDS_SPC_MINIMAL_CRITERIA "SpcMinimalCriteria"
    IDS_COUNTRY "Країна/Регіон"
    IDS_ORGANIZATION "Організація"
    IDS_ORGANIZATIONAL_UNIT "Організаційна одиниця"
    IDS_COMMON_NAME "Загальна назва"
    IDS_LOCALITY "Місце"
    IDS_STATE_OR_PROVINCE "Штат або область"
    IDS_TITLE "Заголовок"
    IDS_GIVEN_NAME "Ім'я"
    IDS_INITIALS "Ініціали"
    IDS_SUR_NAME "Прізвище"
    IDS_DOMAIN_COMPONENT "Компонент домену"
    IDS_STREET_ADDRESS "Вулиця"
    IDS_SERIAL_NUMBER "Серійний номер"
    IDS_CA_VERSION "Версія CA"
    IDS_CROSS_CA_VERSION "Перехресна версія CA"
    IDS_SERIALIZED_SIG_SERIAL_NUMBER "Серійний номер серійного підпису"
    IDS_PRINCIPAL_NAME "Основна назва"
    IDS_WINDOWS_PRODUCT_UPDATE "Оновлення продукту Windows"
    IDS_ENROLLMENT_NAME_VALUE_PAIR "Enrollment Name Value Pair"
    IDS_OS_VERSION "Версія OS"
    IDS_ENROLLMENT_CSP "Реєстраційний CSP"
    IDS_CRL_NUMBER "Номер CRL"
    IDS_DELTA_CRL_INDICATOR "Індикатор Delta CRL"
    IDS_ISSUING_DIST_POINT "Точки розповсюдження видачі"
    IDS_FRESHEST_CRL "Найсвіжіший CRL"
    IDS_NAME_CONSTRAINTS "Обмеження назви"
    IDS_POLICY_MAPPINGS "Відображення політики"
    IDS_POLICY_CONSTRAINTS "Обмеження політики"
    IDS_CROSS_CERT_DIST_POINTS "Точки розповсюдження крос-сертифікатів"
    IDS_APPLICATION_POLICIES "Політика додатку"
    IDS_APPLICATION_POLICY_MAPPINGS "Відображення політики додатку"
    IDS_APPLICATION_POLICY_CONSTRAINTS "Обмеження політики додатку"
    IDS_CMC_DATA "Дані CMC"
    IDS_CMC_RESPONSE "Відповідь CMC"
    IDS_UNSIGNED_CMC_REQUEST "Не підписаний запит CMC"
    IDS_CMC_STATUS_INFO "Інформація про стан CMC"
    IDS_CMC_EXTENSIONS "Розширення CMC"
    IDS_CMC_ATTRIBUTES "Властивості CMC"
    IDS_PKCS_7_DATA "PKCS 7 Дані"
    IDS_PKCS_7_SIGNED "PKCS 7 підписаний"
    IDS_PKCS_7_ENVELOPED "PKCS 7 загорнутий"
    IDS_PKCS_7_SIGNED_ENVELOPED "PKCS 7 підписаний і загорнутий"
    IDS_PKCS_7_DIGESTED "PKCS 7 Digested"
    IDS_PKCS_7_ENCRYPTED "PKCS 7 зашифрований"
    IDS_PREVIOUS_CA_CERT_HASH "Попередній Хеш сертифікату CA"
    IDS_CRL_VIRTUAL_BASE "Віртуальний базовий CRL номер"
    IDS_CRL_NEXT_PUBLISH "Наступна публікація CRL"
    IDS_CA_EXCHANGE "Сертифікат шифрування CA"
    IDS_KEY_RECOVERY_AGENT "Агент відновлення ключів"
    IDS_CERTIFICATE_TEMPLATE "Інформація шаблону сертифікату"
    IDS_ENTERPRISE_ROOT_OID "Підприємство кореневого OID"
    IDS_RDN_DUMMY_SIGNER "Фіктивна особа, що піписалась"
    IDS_ARCHIVED_KEY_ATTR "Зашифрований приватний ключ"
    IDS_CRL_SELF_CDP "Опубліковані розташування CRL"
    IDS_REQUIRE_CERT_CHAIN_POLICY "Enforce Certificate Chain Policy"
    IDS_TRANSACTION_ID "Id угоди"
    IDS_SENDER_NONCE "Sender Nonce"
    IDS_RECIPIENT_NONCE "Recipient Nonce"
    IDS_REG_INFO "Реєстраційні дані"
    IDS_GET_CERTIFICATE "Отримати сертифікат"
    IDS_GET_CRL "Отримати CRL"
    IDS_REVOKE_REQUEST "Відхилити запит"
    IDS_QUERY_PENDING "Очікування запиту"
    IDS_SORTED_CTL "Список довірених сертифікатів"
    IDS_ARCHIVED_KEY_CERT_HASH "Заархівований Хеш ключа сертифікату"
    IDS_PRIVATE_KEY_USAGE_PERIOD "Період використання приватного ключа"
    IDS_CLIENT_INFORMATION "Клієнські Дані"
    IDS_SERVER_AUTHENTICATION "Ідентифікація сервера"
    IDS_CLIENT_AUTHENTICATION "Ідентифікація клієнта"
    IDS_CODE_SIGNING "Підписання коду"
    IDS_SECURE_EMAIL "Безпечний Email"
    IDS_TIME_STAMPING "Часове штампування"
    IDS_MICROSOFT_TRUST_LIST_SIGNING "Підписання довіреного списку Microsoft"
    IDS_MICROSOFT_TIME_STAMPING "Часове штампування Microsoft"
    IDS_IPSEC_END_SYSTEM "IP security end system"
    IDS_IPSEC_TUNNEL "IP security tunnel termination"
    IDS_IPSEC_USER "IP security user"
    IDS_EFS "Encrypting File System"
    IDS_WHQL_CRYPTO "Перевірка драйверів обладнання Windows"
    IDS_NT5_CRYPTO "Перевірка системних компонентів Windows"
    IDS_OEM_WHQL_CRYPTO "Перевірка системних компонентів OEM Windows"
    IDS_EMBEDDED_NT_CRYPTO "Перевірка системних компонентів Embedded Windows"
    IDS_KEY_PACK_LICENSES "Ліцензії пакету ключів"
    IDS_LICENSE_SERVER "Перевірка сервера ліцензії"
    IDS_SMART_CARD_LOGON "Вхід для смарт-карт"
    IDS_DIGITAL_RIGHTS "Цифрові права"
    IDS_QUALIFIED_SUBORDINATION "Кваліфікована субординація"
    IDS_KEY_RECOVERY "Відновлення ключів"
    IDS_DOCUMENT_SIGNING "Підписання документу"
    IDS_IPSEC_IKE_INTERMEDIATE "IP security IKE intermediate"
    IDS_FILE_RECOVERY "Відновлення файлів"
    IDS_ROOT_LIST_SIGNER "Особа, що підписала кореневий список"
    IDS_ANY_APPLICATION_POLICIES "Політика всіх додатків"
    IDS_DS_EMAIL_REPLICATION "Тиражування Email служби каталогів"
    IDS_ENROLLMENT_AGENT "Агент запиту сертифікату"
    IDS_LIFETIME_SIGNING "Підписання на час життя"
    IDS_ANY_CERT_POLICY "Політика всіх видань"
}

STRINGTABLE DISCARDABLE
{
    IDS_LOCALIZEDNAME_ROOT "Довірені органи кореневої сертифікайії"
    IDS_LOCALIZEDNAME_MY "Особистий"
    IDS_LOCALIZEDNAME_CA "Посередницькі органи сертифікації"
    IDS_LOCALIZEDNAME_ADDRESSBOOK "Інші люди"
    IDS_LOCALIZEDNAME_TRUSTEDPUBLISHER "Довірені видавці"
    IDS_LOCALIZEDNAME_DISALLOWED "Ненадійні сертифікати"
}

STRINGTABLE DISCARDABLE
{
    IDS_KEY_ID "ID Ключа="
    IDS_CERT_ISSUER "Видавець сертифікату"
    IDS_CERT_SERIAL_NUMBER "Серійний номер сертифікату="
    IDS_ALT_NAME_OTHER_NAME "Інше Ім'я="
    IDS_ALT_NAME_RFC822_NAME "Адреса Ел. Пошти="
    IDS_ALT_NAME_DNS_NAME "Назва DNS="
    IDS_ALT_NAME_DIRECTORY_NAME "Адреса каталогу"
    IDS_ALT_NAME_URL "URL="
    IDS_ALT_NAME_IP_ADDRESS "IP Адреса="
    IDS_ALT_NAME_MASK "Маска="
    IDS_ALT_NAME_REGISTERED_ID "Зареєстрований ID="
    IDS_USAGE_UNKNOWN "Невідоме використання ключа"
    IDS_SUBJECT_TYPE "Тип предмету="
    IDS_SUBJECT_TYPE_CA "CA"
    IDS_SUBJECT_TYPE_END_CERT "Кінцевий блок"
    IDS_PATH_LENGTH "Обмеження довжини шляху="
    IDS_PATH_LENGTH_NONE "Немає"
    IDS_INFO_NOT_AVAILABLE "Інформація не доступна"
    IDS_AIA "Інформаційний доступ органу"
    IDS_ACCESS_METHOD "Метод доступу="
    IDS_ACCESS_METHOD_OCSP "OCSP"
    IDS_ACCESS_METHOD_CA_ISSUERS "Видавці CA"
    IDS_ACCESS_METHOD_UNKNOWN "Невідомий метод доступу"
    IDS_ACCESS_LOCATION "Альтернативна назва"
    IDS_CRL_DIST_POINT "Точка розповсюдження CRL"
    IDS_CRL_DIST_POINT_NAME "Назва точки розповсюдження"
    IDS_CRL_DIST_POINT_FULL_NAME "Повна назва"
    IDS_CRL_DIST_POINT_RDN_NAME "Назва RDN"
    IDS_CRL_DIST_POINT_REASON "Причина CRL="
    IDS_CRL_DIST_POINT_ISSUER "Видавець CRL"
    IDS_REASON_KEY_COMPROMISE "Компроміс ключа"
    IDS_REASON_CA_COMPROMISE "Компроміс CA"
    IDS_REASON_AFFILIATION_CHANGED "Приналежність змінена"
    IDS_REASON_SUPERSEDED "Замінено"
    IDS_REASON_CESSATION_OF_OPERATION "Операція зупинена"
    IDS_REASON_CERTIFICATE_HOLD "Призупинення сертифікату"
    IDS_FINANCIAL_CRITERIA "Фінансові Дані="
    IDS_FINANCIAL_CRITERIA_AVAILABLE "Доступно"
    IDS_FINANCIAL_CRITERIA_NOT_AVAILABLE "Недоступно"
    IDS_FINANCIAL_CRITERIA_MEETS_CRITERIA "Відповідає критеріям="
    IDS_YES "Так"
    IDS_NO "Ні"
    IDS_DIGITAL_SIGNATURE "Цифровий Підпис"
    IDS_NON_REPUDIATION "Без відмови"
    IDS_KEY_ENCIPHERMENT "Шифрування ключа"
    IDS_DATA_ENCIPHERMENT "Шифрування даних"
    IDS_KEY_AGREEMENT "Ключова угода"
    IDS_CERT_SIGN "Підписання сертифікату"
    IDS_OFFLINE_CRL_SIGN "Офлайн підписання CRL"
    IDS_CRL_SIGN "Підписання CRL"
    IDS_ENCIPHER_ONLY "Лише зашифр."
    IDS_DECIPHER_ONLY "Лише розшифр."
    IDS_NETSCAPE_SSL_CLIENT "Ідентифікація клієнта SSL"
    IDS_NETSCAPE_SSL_SERVER "Ідентифікація сервера SSL"
    IDS_NETSCAPE_SMIME "S/MIME"
    IDS_NETSCAPE_SIGN "Підпис"
    IDS_NETSCAPE_SSL_CA "SSL CA"
    IDS_NETSCAPE_SMIME_CA "S/MIME CA"
    IDS_NETSCAPE_SIGN_CA "Підпис CA"
}
