<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" type="topic" id="tech-secret" xml:lang="uk">

  <info>
    <link type="guide" xref="tech" group="secret"/>
    <revision pkgversion="3.0" date="2011-04-05" status="candidate"/>

    <credit type="author copyright">
      <name>Shaun McCance</name>
      <email its:translate="no">shaunm@gnome.org</email>
      <years>2011</years>
    </credit>

    <include xmlns="http://www.w3.org/2001/XInclude" href="cc-by-sa-3-0.xml"/>

    <desc>Захищене сховище для паролів та інших даних</desc>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Максим Дзюманенко</mal:name>
      <mal:email>dziumanenko@gmail.com</mal:email>
      <mal:years>2010</mal:years>
    </mal:credit>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Юрій Чорноіван</mal:name>
      <mal:email>yurchor@ukr.net</mal:email>
      <mal:years>2020</mal:years>
    </mal:credit>
  </info>

<title>Захист</title>

<p>У GNOME для безпечного зберігання паролів та інших конфіденційних даних використано libsecret. Програми можуть використовувати бібліотеку для керування сховищем ключів для зберігання паролів і доступу до них, а користувачі можуть керувати своїми паролями за допомогою програми GNOME <app>Seahorse</app>.</p>

<p>У засобах керування сховищем паролів передбачено можливість роботи із декількома сховищами ключів, де кожне сховище ключів може містити довільну кількість записів. Записи у сховищі ключів є певними фрагментами даних, часто паролями. Кожне сховище ключів замикається окремо. Для доступу до сховища користувачам доведеться вводити пароль. Після розблокування сховища користувач отримує доступ до усіх записів у відповідному сховищі.</p>

<p>Засіб керування сховищем ключів надає доступ до списків керування для кожного запису сховища ключів, визначаючи, яким програмам буде надано доступ до відповідного запису. Якщо доступ до запису сховища ключів спробує отримати невідома програма, засіб керування сховищем ключів попросить користувача дозволити або заборонити доступ до програми. Це запобігає доступу програм зловмисників або погано написаних програм до конфіденційних даних користувача.</p>

<p>Дані сховища ключів, які зберігаються у файловій системі, шифруються за допомогою блокового шифру AES, а для хешування атрибутів запису використовується SHA1. За допомогою хешування атрибутів засіб керування сховищем ключів зможе шукати записи, які потрібні програмам без розблоковування сховища ключів. Сховище ключів має бути розблоковано, якщо буде знайдено відповідний запис і буде отримано до нього доступ.</p>

<p>У засобі керування сховищами ключів також передбачено сховище ключів сеансу. Записи у сховищі ключів сеансу ніколи не зберігаються на диску і втрачаються, щойно завершується сеанс користувача. Сховищем ключів сеансу можна скористатися для зберігання паролів, які слід використовувати лише у поточному сеансу.</p>

  <p>Якщо ви користуєтеся <link xref="tech-gio">GIO</link> для доступу до віддалених серверів, ви автоматично отримаєте усі переваги засобу керування сховищем ключів. Кожного разу, коли GIO потребує розпізнавання користувача, програма пропонує зберегти пароль, або у типовому сховищі ключів, або у сховищі ключів сеансу.</p>

<p>Вам слід використовувати засіб для керування сховищем ключів усюди, де ваша програма має зберігати паролі або інші конфіденційні дані користувачів. Використання засобу керування сховищем ключів робить користування програмою зручнішим, одночасно підтримуючи безпеку і захист даних.</p>

  <note>
    <p>У GNOME до версії 3.6 було використано бібліотеку із назвою gnome-keyring. Починаючи з версії 3.6, замість неї використано libsecret. Нова бібліотека уможливила спільне використання служби сховища ключів у GNOME та інших стільничних середовищах та програмах.</p>
  </note>

<list style="compact">
  <item><p><link href="http://developer.gnome.org/libsecret/unstable/">Довідник-підручник з Libsecret</link></p></item>
</list>

</page>
