Перейти до вмісту
Аудиторія: DPO / Compliance

Шифрування та резидентність даних

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

Останній перегляд:

Базу даних і файли шифрує у стані спокою постачальник інфраструктури. Понад це Heltio самостійно шифрує чотири найчутливіші поля, щоб самого лише читання бази не вистачило для їх відновлення.

Що отримує додатковий шар

ЩоДе
PESEL пацієнта (польський ідентифікаційний номер)картка пацієнта
Зміст клінічної нотаткиклінічна нотатка
Транскрипція запису візитусесія ШІ-асистента
Чернетка нотатки, згенерована із записусесія ШІ-асистента

Поза цим переліком шифруються також сертифікати закладу для інтеграції з P1 — вони зберігаються в окремих стовпцях, а відбиток і дата завершення строку видно в майстрі налаштування.

Не охоплені цим додатковим шаром: номери документів іноземців, номери банківських рахунків, метадані вкладень, адреси пацієнтів. Попередня версія цієї сторінки перелічувала їх як охоплені.

Як це працює

Кожне значення отримує власний одноразовий ключ. Цим ключем зміст шифрується алгоритмом AES-256-GCM, який заразом виявляє підміну даних. Одноразовий ключ далі шифрується головним ключем і подорожує разом із шифротекстом в одному рядку — окремої таблиці ключів немає.

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

Шифрування та розшифрування відбуваються у шарі доступу до бази, а не в окремих місцях коду. Наслідок подвійний: жоден новий екран не забуде зашифрувати, але будь-який скрипт, написаний повз цей шар, запише дані відкритим текстом. Скрипти, які пишуть у ці поля, перелічені в коді поіменно й контролюються окремим тестом.

Зашифрований PESEL неможливо шукати порівнянням. Тому поруч зберігається його односторонній відбиток, обчислений з додатковим секретом застосунку — цього достатньо для пошуку та зіставлення карток і недостатньо, щоб відновити сам номер.

Де лежать дані

База даних і файли: Франкфурт. Ключі: змінна середовища застосунку, що працює в ЄС. Пошта: постачальник у ЄС. SMS: постачальник у Польщі. Офлайн-робота в мобільному застосунку: постачальник у ЄС. Переклади: Німеччина. Повний перелік разом із розбіжностями: Обробники та угоди про доручення обробки.

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

Як розділено заклади

Розділення даних закладів забезпечується на рівні застосунку, а не бази: у міграціях немає правил безпеки на рівні рядка. Натомість кожен запит щодо даних пацієнта мусить містити ідентифікатор закладу, членство перевіряється перед процедурою, а над усім стоїть правило лінтера і набір храповиків, що запускаються на кожну зміну коду — кількість місць без фільтра може лише зменшуватися.

Резервні копії

Резервні копії робить окрема незалежна служба. За її станом стежить вартовий, що працює в головному процесі застосунку — навмисно поза службою копіювання, бо мертва служба не повідомить про власну смерть. Сигнал тривоги йде, коли копії ніколи не було, коли останній запуск завершився помилкою або коли остання справна копія старша за тридцять годин.

Чого немає

  • Зовнішнього тесту на проникнення з опублікованим резюме. Попередня версія цієї сторінки посилалася на такий звіт і на виконавця; документа не існує.
  • PDF-вкладень до цієї сторінки. Усі посилання на файли в каталозі /legal/ вели в нікуди — жоден із цих файлів ніколи не був доданий.

Пов'язані

Чи була ця стаття корисною?