# Формати файлів

Якщо ви не накажете програмі використовувати реляційну базу даних, &kmymoney; зберігатиме ваші дані у файлі, назва якого завершуватиметься суфіксом `.kmy`. Крім того, якщо ви не використовуєте параметр командного рядка, за допомогою якого можна вказати програмі файл, який слід завантажити, програма відкриє останній з файлів, з якими ви працювали. Важливо пам’ятати, що &kmymoney; може зберігати ваші фінансові дані у файлах декількох типів.

У цій главі описано формати, у яких &kmymoney; зберігає дані на постійній основі на пристроях зберігання користувача. Типово, &kmymoney; зберігає свої дані у формі документа XML. Залежно від формату, цей документ XML буде записано

- як звичайний текстовий файл у кодуванні UTF-8,

- як стиснутий файл з використанням стискання GZIP,

- як шифрований файл з використанням шифрування GPG або

- як анонімний звичайний текстовий файл, закодований у UTF-8, але з вилученням всіх ваших особистих даних.

## Звичайний текстовий файл

Розміри файлів, збережених у цьому форматі, є найбільшими, оскільки не виконується ніякого стискання. Цей формат не призначено для звичайного користування, його передбачено лише з метою усування вад у програмі та забезпечення можливості зміни файлів вручну. Якщо ви завершите назву файла суфіксом `.xml`, файл буде збережено саме у цьому форматі.

Ми не рекомендуємо звичайним користувачам змінювати файл вручну. Подібні зміни слід вносити, лише якщо ви повністю розумієте внутрішню роботу &kmymoney; або отримали настанови від розробників щодо подібних змін. Будь ласка, не звинувачуйте розробників &kmymoney;, якщо ви самі вручну пошкодите свої дані: ми вас попереджали!

## Стиснутий GZIP файл

Це звичайний формат, який використовується &kmymoney; для збереження даних у файлах з суфіксом назви `.kmy`.

Якщо було вказано шифрування, файл буде збережено у зашифрованому вигляді.

Якщо ви бажаєте зазирнути всередину стиснутого GZIP файла, перейменуйте його так, щоб назва завершувалася суфіксом `.gz` (наприклад, `myfinances.kmy` слід перейменувати на `myfinances.kmy.gz`), потім скористайтеся програмою `gunzip` для розпакування файла і перегляньте його вміст. Вам не потрібно знову стискати ці дані для того, щоб завантажити їх до &kmymoney;, оскільки &kmymoney; може читати і нестиснуті дані. Якщо ж ви знову збережете ці дані, їх знову буде стиснуто. Скористайтеся суфіксом назви .xml, щоб наказати програмі зберегти дані у нестиснутому форматі.

## Зашифрований GPG файл

Використання формату файлів, зашифрованого GPG, є дуже безпечним методом зберігання ваших особистих фінансових даних на вашому пристрої зберігання. Якщо наказати &kmymoney; за допомогою діалогового вікна параметрів зберегти ваші дані зашифрованими, програма зашифрує дані за допомогою GPG і попередньо наданого вами ключа для зберігання. Під час відкриття зашифрованого файла вам слід вказати пароль, потрібний для відкриття вашого сховища ключів. Сам зашифрований файл буде збережено у форматі захищеного GPG ASCII.

Під час шифрування за допомогою GPG відбувається стискання файла, отже додаткове стискання стає непотрібним.

### Ключі GPG

Якщо ви ще не робили цього для шифрування вашої електронної пошти, вам слід створити пару ключів для того, щоб скористатися можливістю шифрування &kmymoney; за допомогою GPG. Крім того, у вашій системі має бути встановлено GPG.

Докладні настанови щодо способів створення пари ключів та роботи з нею не є предметом цього підручника. Короткі настанови з цього питання можна знайти за адресою https://www.gnupg.org/documentation/howtos.en.html.

### Встановлення ключів у &kmymoney;

На сторінці шифрування діалогового вікна параметрів передбачено спадний список, за допомогою якого ви зможете обрати ключ для шифрування та розшифрування. Крім того, буде показано поле для введення тексту, у яке ви можете ввести ідентифікатор ключа, якого немає у спадному списку. У цьому полі ви можете вказати ідентифікатор ключа, адресу електронної пошти, пов’язану з цим ключем, або будь-який інший чинний ідентифікатор ключа GPG. Після введення вами ідентифікатора ключа &kmymoney; перевірить його чинність і покаже зелену позначку, якщо відповідний ключ буде знайдено.

Переконайтеся, що у вас є обидва ключі: відкритий і закритий для цього ідентифікатора. Якщо у вас не буде закритого ключа для введеного ідентифікатора, згодом ви не зможете відкрити збережений файл.

### Ключ відновлення &kmymoney;

Крім того, на цій сторінці діалогового вікна параметрів ви можете вказати програмі, що слід використовувати додаткове шифрування за допомогою ключа відновлення &kmymoney;. Ви зможете скористатися цим пунктом, якщо відповідний ключ зберігається у вашому сховищі ключів GPG. Позначення цього пункту надасть вам змогу відновити ваші дані, навіть якщо ви втратите ваш закритий ключ. Це можна буде зробити, оскільки дані буде зашифровано не лише вашим власним ключем, але і ключем відновлення &kmymoney;. Цей ключ доступний лише обраним розробникам &kmymoney; (на час написання цього підручника лише авторові програми). Термін дії ключа &kmymoney; версії 4.7 збігає 3 січня 2015 року.

За звичайних умов ви відкриватимете/зберігатимете/закриватимете ваші файли у звичайному режимі. У критичному випадку втрати вашого ключа ви зможете зв’язатися з одним з розробників, який має доступ до ключа відновлення &kmymoney; і попросити допомоги у відновленні ваших даних. Зв’язатися з розробниками можна за допомогою надсилання повідомлення електронної пошти до списку листування розробників &kmymoney; за адресою &devlist;.

## Анонімний файл

Цей формат не призначено для звичайного зберігання даних. Він підтримується для того, щоб у разі виникнення проблем ви могли надіслати команді розробників &kmymoney; ваш файл без відкриття жодних ваших фінансових конфіденційних даних. Наприклад, при збереженні буде змінено назву установи, назву рахунку, платника і назви категорій на рядки у форматі «I000001» або «A000001». Подібну операцію буде виконано над усіма даними, зокрема номерами рахунків. Крім того, суми операцій буде змінено на випадкові.

Якщо вас про це попросять розробники, скористайтеся пунктом меню Зберегти як... для збереження даних у анонімному форматі (виберіть фільтр `Анонімні файли`). Суфікс назви файла буде автоматично змінено на `.anon.xml`.

Щоб переконатися, що після заміни даних на анонімні проблеми не зникли, спробуйте завантажити до програми анонімний файл і відтворити проблему. Якщо проблема відтворюється, надішліть файл до списку листування розробників за адресою &devlist; для подальшого вивчення. Якщо проблема зникає після завантаження анонімного файла… що ж доведеться шукати її причину у якийсь інший спосіб.