Задать вопрос

Хранение номеров телефонов?

Друзья, хотел бы посоветоваться с вами по вопросу хранения в базе номеров телефонов пользователей. На вопрос: с юридической стороны являются ли телефоны (без ФИО, только обычный аккаунт на сайте) персональными данными или нет, четкого ответа я получить так и не смог.

Соответственно, неясно, как лучше хранить эти номера в базе — в открытом виде или шифровать. Если шифровать, то каким алгоритмом? Обычный md5(), полагаю, прекрасно брутится. Как поступить правильней?
  • Вопрос задан
  • 6088 просмотров
Подписаться 6 Оценить 2 комментария
Пригласить эксперта
Ответы на вопрос 4
Noospheratu
@Noospheratu
ИБ-аудитор, консультант
Можно использовать следующую схему:
1) хранить в открытом виде до подтверждения через SMS.
2) После подтверждения задача борьбы с фейковыми аккаунтами выполнена и открытый номер телефона уже не нужен. Теперь вычисляете хэш стойкой на текущий момент функцией и храните только её.
3) А если нужно будет восстановить пароль от аккаунта, прислав его на SMS, то для это предлагаете ввести номер телефона, вычисляете его хэш, сравниваете с хранимым и, если совпадает — отсылаете информацию для восстановления пароля в SMS на введённый номер.
4) По завершении восстановления пароля — введённый открытый номер уже не нужен и его можно удалить (хэш продолжаем хранить).
Ответ написан
Комментировать
@korvindest
Если вы действительно собираетесь хранить номера телефонов, без какой либо привязки к персональным данным, которые деанонимизируют пользователя, то думаю это вы можете делать спокойно, поскольку с таким же успехом я могу обзвонить номера и выяснить какие из них живые. В противном случае, при наличии любой дополнительной информации о владельце вы уже скорее всего нарушаете закон о персональных данных.

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

Обычная кодировка в md5 или sha1 Вам точно не подойдет, т.к. там просто цифры их легко расшифруют. Я обычно в таких случаях прибегаю к простейшей криптографии типа

md5(substr($user_phone, 0, 4).$user_phone.substr($user_phone, 4).'myword');

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

Конечно эта система не подойдет если это база данных пентагона, но данная схема достаточно безопасна для средненьких проектов :)
Ответ написан
Комментировать
Alexx_ps
@Alexx_ps
ФИО+номер телефона не являются персональными данными, т.к. не позволяют однозначно идентифицировать личность. А вот ФИО+адрес уже позволяют.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы