Когда подрядчик сдаёт этап, он прикладывает 10–30 фотографий выполненных работ. Это рутина, но и одна из главных точек, где у спора начинается отсчёт. Если фото подменяют — рушится весь смысл фотоотчёта. Поэтому мы строим целую цепочку проверок.
Только через приложение
Загрузить фотоотчёт можно только из мобильного приложения BuildCore. Загрузка фото с компьютера через веб — заблокирована для критических точек приёмки. Это первая линия защиты: приложение сразу при съёмке записывает EXIF, координаты, время и хеш файла.
EXIF и время съёмки
Мы проверяем, что время съёмки в EXIF соответствует времени загрузки (с разницей не больше нескольких часов — на случай съёмки в офлайне). Если на фото 15 марта, а загрузка 20 марта без перерыва интернета — это подозрительно.
Геопозиция
Координаты съёмки сравниваются с адресом объекта. Если фото сделано в 5 километрах от объекта — флаг подмены. Допуск — 200 метров (на случай, если объект большой или смартфон неточно определил позицию).
Хеш и блокчейн
Sha256-хеш каждой фотографии записывается в неизменяемый журнал. Если кто-то попытается подменить файл позже — хеш не совпадёт. Для особо чувствительных проектов мы интегрируемся с блокчейн-нотариусами, и хеши уходят туда раз в день.
Что видит заказчик
В карточке этапа рядом с каждой фотографией есть бейдж «Верифицировано» (зелёный) или «Проверка не пройдена» (красный) с указанием причины: смещение геопозиции, разрыв во времени, ручная загрузка. Это даёт заказчику честную картину происходящего на объекте.
«Технологии не отменяют человеческий контроль, но они переводят разговор из «вы обманули — нет, мы не обманули» в плоскость фактов.»
