Безпека
Останнє оновлення 14 September 2026. Перелічені лише заходи, які існують. Те, чого немає, вказано як відсутнє.

Чому ця сторінка пряма. Самотня людина розповідає співрозмовнику те, чого не розповідає нікому: що болить, чого вона боїться, хто перестав дзвонити. Якщо це витече, це буде не незручність, а приниження. Тому на цій сторінці вказано, що насправді зроблено, а наприкінці те, чого ще немає.
Поточний стан
Виділена машина в ЄС, не спільний хостинг. Провайдер: Hetzner Online GmbH.
Мова обробляється наживо. Не існує запису, який можна було б злити, отримати за запитом або втратити.
Сертифікати від Let's Encrypt, поновлюються автоматично.
Довгий випадковий токен на людину. Немає спільних акаунтів, немає паролів, які можна повторно використати або втратити.
Вхід на сервер за паролем повністю вимкнений.
Зазначений на ім'я в privacy policy. Більше ніщо не отримує дані.
Як пам’ять однієї людини залишається її
Це ризик, який має найбільше значення в такому сервісі: хтось відкриває розмову і чує про життя незнайомої людини, або гірше, його власне життя читає хтось інший.
Кожен запит має власний токен людини. Кожен пошук у памʼяті обмежений цим токеном на рівні бази даних, тому немає запиту, який може повернути епізоди іншої людини. Токени довгі й випадкові, не послідовні, тому їх не можна вгадати або перебрати, просто збільшуючи число.
Ми перевіряємо це при кожній зміні коду. Створюються два співрозмовники, одному дають памʼять, і тест намагається дістатися до неї через токен іншого. Якщо це колись вдається, зміна не випускається. Це не політика на сторінці, це тест, який має бути пройдений.
Що залишає наш сервер, а що ні
Зберігається тільки на нашій машині: текст розмов, памʼять, профілі, імена членів родини, дати, нотатки про здоровʼя й настрій.
Залишає нашу машину: жива мова і текст розмови, до постачальника мовної моделі, зазначеного в політика конфіденційності, для розпізнавання і відповіді. За умовами їхнього API цей вміст не використовується для навчання моделей. Це єдина частина розмови, яка йде кудись ще, і ми краще скажемо про це прямо, ніж дамо вам дізнатися самостійно.
Нікуди не надсилається: нічого не продається, нічого не передається рекламодавцям, і на цьому сайті взагалі немає аналітики чи скриптів відстеження. Немає банера про файли cookie, тому що немає нічого, на що треба давати згоду.
Пошук без витоку даних
Коли James знаходить клініку, книжку або рецепт, він звертається до відкритих публічних сервісів: OpenStreetMap, Open Library, Wikisource, TheMealDB. Вони отримують пошуковий запит і приблизний регіон, ніколи не імʼя й ніколи нічого іншого з розмови.
Ми навмисно використовуємо реальні джерела, а не дозволяємо мовній моделі відповідати з памʼяті. Упевнено вигадана адреса клініки, дана людині, якій потрібен лікар, це збій безпеки, а не косметична дрібниця.
Екстрені повідомлення
До провайдера повідомлень надсилаються тільки саме повідомлення і ідентифікатор отримувача. Розмова не надсилається. Кожна спроба реєструється разом з її результатом, і збій озвучується людині вголос а не тихо зникає. Вважати, що допомога надходить, коли це не так, це найгірший результат, який може дати ця система, тому це вважається властивістю безпеки, а не зручністю.
Як ми тримаємо програму чесною
- Перед кожним розгортанням запускаються автоматизовані тести, які перевіряють ізоляцію памʼяті, відмову вигадувати минулу розмову, чесне повідомлення про невдалі повідомлення та правила на випадок кризи.
- Кожен файл, змінений на бойовому сервері, спершу резервується з позначкою часу, щоб невдалу зміну можна було негайно відкотити.
- Секрети зберігаються у файлах, які може читати тільки обліковий запис сервісу, ніколи не на сторінці, ніколи в репозиторії.
- Системний промпт забороняє вигадувати спогади. Пакет тестів перевіряє поведінку, тому що правило в промпті це прохання, а тест це доказ.
Чого ще немає
Перелік цього і є мета сторінки. Добрі частини може заявити будь-хто.
- Кожна база даних зашифрована у стані спокою. SQLCipher, AES-256, на нашому власному сервері у Фінляндії. Файл ключа доступний тільки root, а незашифровані копії, зроблені під час міграції, були знищені, а не видалені. Аудіо взагалі ніколи не записується на диск.
- Немає незалежного аудиту безпеки. Жодна зовнішня компанія не перевіряла цю систему. Ми напишемо про це на цій сторінці, коли така перевірка буде, із датою.
- Немає сертифікації ISO 27001 або SOC 2. У нас немає ні того, ні іншого і ми не стверджуємо протилежне.
- Сам диск не зашифрований. Бази даних зашифровані (див. вище), але повнодискове шифрування вимкнене, що нормально для машини, яка має перезавантажуватися без нагляду. Тому фізичний доступ до хоста лишається реальною межею ризику, і для цього ми покладаємося на засоби контролю у дата-центрі провайдера.
- Ключ бази даних зберігається на тому самому сервері. Так потрібно, щоб James відповідав о третій годині ночі без людини, яка щось розблоковує. Тому шифрування захищає вкрадений диск або злитий файл резервної копії. Воно не захищає від зловмисника, який уже має адміністративний доступ до працюючого сервера. Хто стверджує інше про подібний сервіс, той його перехвалює.
- Немає двофакторної автентифікації для облікових записів. тому що немає паролів: доступ це приватне посилання. Так простіше для 80-річної людини, і це також означає, що злиття посилання це злиття облікового запису. Скажіть нам, і ми одразу видаємо нове.
- Немає формальної програми винагород за вразливості. Але дивіться нижче, і ми відповідаємо.
Якщо ви знаходите проблему
Напишіть на security@hellojames.io або legal@hellojames.io. Розкажіть нам, що ви знайшли і як це відтворити. Ми відповідаємо протягом 72 годин, ми не будемо вам погрожувати і зазначимо вас, якщо ви цього хочете.
Якщо ви вважаєте, що дані були розкриті, напишіть про це в темі листа, і ми одразу розглядаємо це як інцидент: компетентний орган повідомляється протягом 72 годин, якщо це потрібно, а постраждалим людям ми говоримо прямо простими словами.
