4.3Kпросмотров
26 августа 2024 г.
Score: 4.7K
Дорогие друзья,
если вы очень не хотите, чтобы кто-то чужой прочитал вашу переписку в какой-то популярной соцсети или другом средстве общения, и хотите её навсегда и надежно удалить, не пользуйтесь встроенной функцией "удалить". Жмите "отредактировать", заменяйте содержимое чем-то бессмысленным (например, одним символом) и жмите "сохранить". Почему?
Во многих соцсетях и средствах общения встроенная функция "удалить" просто помечает единицу контента как удаленную. При этом её текст останется на серверах, и его сможет прочитать кто угодно, имеющий к ним полный доступ. А в некоторых соцсетях даже доступ к серверам не нужен (см., например). В то же время функция "отредактировать" именно заменяет текст, и старая версия с высокой вероятностью исчезнет из реальности насовсем. А точно поможет?
Точно не повредит. Не зная в точности, как устроен код данной конкретной соцсети или мессенджера, дать какие-то гарантии нельзя. Но и в тех двух (не особенно популярных) соцсетях, код которых я видел, и на очень популярном Реддите всё устроено именно так. Но почему?
Почему встроенная функция "удалить" не удаляет единицу контента, а помечает её как удаленную? Потому что между разными единицами контента и другими объектами, хранящимися на серверах, как правило, есть какие-то взаимосвязи, например, цитирование, ответы, статистики, учёт в антиспаме и т.п. При удалении единицы контента нужно либо пройтись по всем объектам, которые могли бы на неё ссылаться, и удалить все потенциальные ссылки, не нарушив общую целостность. Это сложная и хрупкая логика. Или можно сделать один бинарный флажок. Программисты любят решения попроще. А почему функция "отредактировать" именно меняет запись, почему бы не хранить и все старые версии тоже? Ну потому что а как бы зачем и нафига заморачиваться. Работающая система версионирования это сложно, это дополнительная логика, делать её просто для того, чтобы зачем-то было, никто не станет. Программисты любят решения попроще.