Как сделать чтобы сообщение удалилось после прочтения. Самоудаляющиеся сообщения

Как сделать чтобы сообщение удалилось после прочтения. Самоудаляющиеся сообщения

11.08.2023

Одноразовые ссылки можно использовать в самых разных ситуациях: для того, чтобы предоставить временный доступ к файлу или странице, или для подтверждения регистрации. В этом уроке мы покажем, как сгенерировать и внедрить одноразовые URL адреса.

Создание URL

Предположим, что у нас на сайте есть система аутентификации пользователей. После регистрации мы просим пользователя пройти процедуру верификации email-а. Для создания подобных ссылок можем воспользоваться специальным параметром token. Пример подобной ссылки:

Http://example.com/activate?token=ee97780...

Без базы данных тут нам не обойтись, поэтому давайте посмотрим на таблицу, с которой будем работать.

CREATE TABLE pending_users (token CHAR(40) NOT NULL, username VARCHAR(45) NOT NULL, tstamp INTEGER UNSIGNED NOT NULL, PRIMARY KEY(token));

В таблице будем хранить 3 поля: токен, имя пользователя и время. Для генерации токена мы воспользуемся функцией sha1(), которая выдаёт строку из 40 символов. Поле tstamp будет хранить время генерации токена для того, чтобы мы могли отследить ссылки с истёкшим сроком.

Существует множество способов генерации токена, однако в этом уроке мы воспользуемся функциями uniqid() и sha1(). Независимо от способа генерации токена, убедитесь что генерируемые значения будут разными и вероятность появления дубликатов минимальна.

$token = sha1(uniqid($username, true));

В качестве параметра функция uniqid() принимает строку, а на выходе даёт уникальный идентификатор, основанный на переданном аргументе и текущем времени. Также, в качестве второго аргумента, данная функция принимает булево значение, которое даст сигнал uniqid прибавить несколько дополнительных символов для увеличения вероятности уникальности значения. Функция sha1 принимает уникальный идентификатор и создаёт хэш.

После работы данных двух функций, у нас будет уникальный токен, который можем использовать для генерации url адресов. Теперь нам нужно занести его в базу:

$query = $db->prepare("INSERT INTO pending_users (username, token, tstamp) VALUES (?, ?, ?)"); $query->execute(array($username, $token, $_SERVER["REQUEST_TIME"]));

Для того чтобы мы знали, какого пользователя следует активировать, в таблицу будем записывать и логин пользователя. В примере, более адаптированном для реального сайта, можете воспользоваться ID пользователя.

Теперь, когда у нас есть вся необходимая информация, можем создать временный url адрес:

$url = "http://example.com/activate.php?token=$token";

$message = <<

Проверка

Теперь нам нужен скрипт, благодаря которому мы будем осуществлять проверку. Всё что нам нужно сделать, это сравнить токен из url адреса и токен из базы. Если такой имеется, и время его жизни не истекло, то всё ОК.

// получаем токен if (isset($_GET["token"]) && preg_match("/^{40}$/i", $_GET["token"])) { $token = $_GET["token"]; } else { throw new Exception("токен не валиден."); } // проверяем токен $query = $db->prepare("SELECT username, tstamp FROM pending_users WHERE token = ?"); $query->execute(array($token)); $row = $query->fetch(PDO::FETCH_ASSOC); $query->closeCursor(); if ($row) { extract($row); } else { throw new Exception("токен не валиден."); } // активируем пользовательский аккаунт // ... // удаляем токен из базы $query = $db->prepare("DELETE FROM pending_users WHERE username = ? AND token = ? AND tstamp = ?",); $query->execute(array($username, $token, $tstamp));

Также нам нужно предусмотреть проверку токенов, время жизни которых истекло:

// 1 день в секундах = 60 секунд * 60 минут * 24 часа $delta = 86400; // проверка if ($_SERVER["REQUEST_TIME"] - $tstamp > $delta) { throw new Exception("время жизни токена истекло."); } // активируем пользовательский аккаунт // ...

Таким образом, у нас будут осуществляться две проверки: одна на валидность токена, другая на время его существования.

Итог

Данный метод можно применить не только для активации учётных записей пользователей, но и в других нуждах: к примеру, для предоставления однократного или временного доступа к какому-то ресурсу или услуге.

Вдобавок ко всему этому, вы можете создать скрипт, который будет удалять токены, которыми ни разу не пользовались. Данный скрипт можно запускать самим время от времени или применить для этого cron.

С их помощью можно безопасно общаться по Email, в аське, Скайпе или даже Вконтакте.

Принцип работы сервисов секретных заметок прост: при создании сообщения вы получаете специальную ссылку, которую затем нужно передать вашему собеседнику. При открытии ссылки сообщение уничтожается, таким образом, сообщение можно прочитать лишь один раз (по аналогии "после прочтения - сжечь"). В случае, если посторонние люди перейдут по ссылке на сообщение, которое предназначалось вам, то вы уже будете знать, что информация попала в чужие руки. На сервере сообщения хранятся в зашифрованном виде (как правило, с помощью PGP) - это мера безопасности на случай взлома сервера.

Так ли это безопасно? Это скорее вопрос доверия к администрации сервиса: действительно ли они удаляют сообщения после прочтения и не ведут ли логов. С помощью сервиса секретных заметок может передаваться весьма ценная информация (пароли к электронным счетам, данные карт, место где зарыт клад и т.д.), а значит велик соблазн ее сохранить. Существует также риск, что такие сервисы могут сотрудничать со спецслужбами. Чтобы снизить риски, можно часть информации передавать через один сервис секретных заметок, а часть через другой. Или даже можно создать свой собственный сервис с PGP шифрованием сообщений - инструкцию по созданию собственного сервиса секретных заметок мы выложим на форуме.

Вот как это работает на практике.

Популярные сервисы секретных заметок.

privnote.com

Популярный и простой в использовании сервис. К сожалению, сервис не поддерживает русский язык, но последовательность действий интуитивно понятна: пишем в поле ввода сообщение, затем нажимаем кнопку Create Note , копируем полученную ссылку и отправляем собеседнику (только не заходите по ссылке сами, а то сообщение уничтожится). Вы можете также отметить галочку "Notify me when this note gets read ", если хотите быть уведомлены по факту прочтения сообщения.

tmwsd.ws

Сайт на первый взгляд может показаться навороченным относительно других подобных сервисов, но он также прост в использовании: пишем сообщение, нажимаем кнопку SAVE THIS MESSAGE , затем копируем ссылку вида https://⌫.ws/2wGoOvYt и передаем собеседнику. На сайте есть возможность задать пароль для сообщения - это обезопасит сообщение от случайного открытия или от прочтения посторонними людьми (если пароль и ссылку передавать разными источниками).
У сервиса есть важная особенность - ссылки на сообщения генерируются со спецсимволом и не все мобильные браузеры их понимают. В таком случае, ссылку вида https://⌫.ws/2wGoOvYt можно заменить на https://tmwsd.ws/2wGoOvYt . Ссылки со спецсимволами не распознаются как гиперссылки в почтовиках или социальных сетях, что, с одной стороны исключает их случайное нажатие, а с другой усложняет открытие (нужно скопировать и вставить в адресную строку).

onetimesecret.com

Новый интересный сервис секретных заметок. Важной особенностью данного сервиса является то, что при переходе по ссылке нужно еще нажать на кнопку, чтобы прочитать сообщение, а значит, случайно открыть секретное сообщение не получится.

Есть еще странная особенность - сервис не дает скопировать текст секретного сообщения. Я сначала подумал, что текст выводится в виде картинки, что служит дополнительной мерой безопасности от перехвата сообщения. Открыв исходный код, я увидел, что запрет на копирование задан стилями. Зачем нужно запрещать копирование текста, в таком случае, не понятно, ведь посредством сервиса могут передаваться данные, которые необходимо сохранить на компьютере, а человек, если он не догадается заглянуть в исходный код, вынужден будет перепечатать текст или сохранить его как скриншот.

— это новая функция которая позволяет отправлять самоудоляющиеся сообщения. И вот сегодня наткнулся еще на один интересный, но на этот раз уже онлайн-сервис, который называется Privnote. Данный сайт позволяет бесплатно и без регистрации посылать самоудаляющиеся записки.

Кому это может понадобится?

Мы живем в цифровую эпоху. Со временем в сети оседает большой объем нашей информации. Это и поисковые запросы и личная информация в социальных сетях, наши сообщения на форумах и сайтах, ну и конечно сообщения сохраняющиеся в электронной почте. Ведь мало кто удаляет сообщения в Gmail, который предлагает пользователю гигабайты за бесплатно.

Сервис Privnote позволяет бесследно уничтожить передаваемую информацию. Это может быть и обезличенный пароль, который вы хотите кому-то передать, или какую-то другую информацию, которая, как говорил ранее, не будет связанна с вашими почтовыми ящиками и социальными сетями и не осядет в закромах вашей электронной почты.

А что если разработчики могут просмотреть сообщение?

Я не думаю, что они это делают. Вы поймите, у каждого сайта в сети есть своя цель, у 99% процентов сайтов — это в том или ином в виде заработок. Privnote зарабатывает на рекламе Google Adsense, им не нужны ваши анонимные записки.

А если записки обезличить, тогда вообще нет никакой опасности.

Что значит обезличить?

Если вы посылаете пароль от вашей почты вашему партнеру, то не следует указывать саму почту, или сделать это уже с использование другого сервиса, той же электронной почты например.

Как работает сайт Privnote?

Все предельно просто, но лучше один раз увидеть чем 100 раз услышать. Вот подробная инструкция для наглядности.

Как отправить самоудаляющиеся сообщения

Интерфейс сайта Privnote переведен на разные языки, среди них есть и Русский. Как правило сайт автоматически определяет язык. Если это не произошло, измените язык самостоятельно. Для этого в правом нижнем углу в выпадающем меню выберите пункт «Русский язык».

1. Зайдите на сайт Privnote и в поле «Новая записка» наберите сообщение.

2. Нажмите на кнопку «Показать параметры». Здесь вы можете указать пароль для дешифрования сообщение, установить срок действия самоудаляющегося сообщения и ввести адрес почты на которую можно получить уведомление о прочтении, когда сообщение будет уничтожено.

3. После заполнения всех необходимых полей нажмите на кнопку «Создать записку». Скопируйте ссылку и отправьте получателю.

5. Прочитать самоудаляющееся письмо можно после нажатия на кнопку «Да, покажите мне записку».

6. После открытия записки, вы получите на почту уведомление от Privnote. Таким образом вы узнаете когда именно была открыта и прочитана записка.

Privnote довольно неплохой сервис — при попытке повторно зайти на ссылку и прочитать, сообщение уже не отображается, так что обойти это никак нельзя.

Использование при дефолтных настройках браузера гарантирует, что страница не будет кэширована браузером или какими-то промежуточными прокси-серверами.

Если вы хотите отправить самоудаляющиеся сообщения анонимно, тогда при входе на сайт используйте

Одной из самых востребованных возможностей современных цифровых технологий является их способность вечного хранения информации. Но, одновременно, это является и большой проблемой, особенно в тех случаях, когда это касается живых людей.

Далеко не всем пользователям нравится, что любая их фотка, твит, статус в социальной сети или сообщение электронной почты могут десятки лет отлеживаться в какой-либо базе данных, а затем появятся на свет божий в самое неподходящее время. Поэтому, в последнее время все более растет спрос на сервисы, позволяющие работать с «одноразовой» информацией, то есть с такими данными, которые бесследно исчезают после указанного вами времени или события. О некоторых из таких сервисов пойдет речь в этой статье.

Фото и видео

Snapchat

Это специальное мобильное приложение (iOS, Android), которое служит для обмена фотографиями и видео. Вы можете четко указать круг получателей своего снимка или клипа, а также задать время их доступности от одной до десяти секунд. После этого отправленное вами сообщение удаляется как с устройства получателя, так и с серверов Snapchat.

Secret.li

Secret.li — удобное приложение для iOS, которое дает вам больший контроль над вашими фотографиями в Facebook. Приложение позволяет указать, кто может просматривать фотографии. Вы также можете установить время самоуничтожения снимков. Разработчики обещают в скором времени представить версию и для Android.

Твиты

Это бесплатный веб-сервис, который позволяет отправлять самоуничтожающиеся, после указанного времени, твиты. Вы должны дать доступ к вашей учетной записи Twitter, после чего сервис сможет контролировать ваши твиты с помощью специальных хэштегов. Хэштэг вида #20m обозначает, что данный твит будет удален через 20 минут. Точно так же можно задавать и другие временные промежутки, используя букву d для дней, а h — для часов.

Мгновенные сообщения

Wickr

Приложение для Android и iOS, позволяющее передавать текстовые сообщения, картинки, аудио- и видеофайлы с использованием шифрования. Кроме этого, все передаваемые вами данные могут обладать функцией самоуничтожения, которая позволяет бесследно удалить их после нескольких секунд, часов или даже дней. Существует даже защита от скриншотов, чтобы чересчур хитрые знакомые не пытались сохранить ваши сообщения в виде картинок.

Электронная почта

mxHero Toolbox

mxHero является расширением для Chrome, которое улучшает функциональность Gmail. С целью защиты вашей переписки, оно умеет преобразовывать письма в картинки, которые исчезают через заданное вами время. Мы писали про это расширение в .

Это еще один способ отправить человеку одноразовое сообщение. Только в этом случае текст сообщения будет опубликован на странице сервиса, а вы отправите адресату только ссылку на эту страницу. После прочтения сообщения, оно уничтожается и ссылка автоматически становится недействительной.

Подводя итог, можно сказать, что в свете все усиливающегося давления на приватность пользователей, будет закономерно расти и ответная реакция. А значит многие разработки, из описанных в статье, вполне могут рассчитывать на популярность и дальнейшее развитие.

А вам нравится вечная жизнь генерируемого вами контента в цифровой вселенной?

Одной из самых востребованных возможностей современных цифровых технологий является их способность вечного хранения информации. Но, одновременно, это является и большой проблемой, особенно в тех случаях, когда это касается живых людей.

Далеко не всем пользователям нравится, что любая их фотка, твит, статус в социальной сети или сообщение электронной почты могут десятки лет отлеживаться в какой-либо базе данных, а затем появятся на свет божий в самое неподходящее время. Поэтому, в последнее время все более растет спрос на сервисы, позволяющие работать с «одноразовой» информацией, то есть с такими данными, которые бесследно исчезают после указанного вами времени или события. О некоторых из таких сервисов пойдет речь в этой статье.

Фото и видео

Snapchat

Это специальное мобильное приложение (iOS, Android), которое служит для обмена фотографиями и видео. Вы можете четко указать круг получателей своего снимка или клипа, а также задать время их доступности от одной до десяти секунд. После этого отправленное вами сообщение удаляется как с устройства получателя, так и с серверов Snapchat.

Secret.li

Secret.li — удобное приложение для iOS, которое дает вам больший контроль над вашими фотографиями в Facebook. Приложение позволяет указать, кто может просматривать фотографии. Вы также можете установить время самоуничтожения снимков. Разработчики обещают в скором времени представить версию и для Android.

Твиты

Это бесплатный веб-сервис, который позволяет отправлять самоуничтожающиеся, после указанного времени, твиты. Вы должны дать доступ к вашей учетной записи Twitter, после чего сервис сможет контролировать ваши твиты с помощью специальных хэштегов. Хэштэг вида #20m обозначает, что данный твит будет удален через 20 минут. Точно так же можно задавать и другие временные промежутки, используя букву d для дней, а h — для часов.

Мгновенные сообщения

Wickr

Приложение для Android и iOS, позволяющее передавать текстовые сообщения, картинки, аудио- и видеофайлы с использованием шифрования. Кроме этого, все передаваемые вами данные могут обладать функцией самоуничтожения, которая позволяет бесследно удалить их после нескольких секунд, часов или даже дней. Существует даже защита от скриншотов, чтобы чересчур хитрые знакомые не пытались сохранить ваши сообщения в виде картинок.

Электронная почта

mxHero Toolbox

mxHero является расширением для Chrome, которое улучшает функциональность Gmail. С целью защиты вашей переписки, оно умеет преобразовывать письма в картинки, которые исчезают через заданное вами время. Мы писали про это расширение в .

Это еще один способ отправить человеку одноразовое сообщение. Только в этом случае текст сообщения будет опубликован на странице сервиса, а вы отправите адресату только ссылку на эту страницу. После прочтения сообщения, оно уничтожается и ссылка автоматически становится недействительной.

Подводя итог, можно сказать, что в свете все усиливающегося давления на приватность пользователей, будет закономерно расти и ответная реакция. А значит многие разработки, из описанных в статье, вполне могут рассчитывать на популярность и дальнейшее развитие.

А вам нравится вечная жизнь генерируемого вами контента в цифровой вселенной?

© 2024 soundpad-voice.ru - Компьютер. Ноутбуки. ОС. Программы