Когда это риск для безопасности, чтобы опубликовать структуру базы данных? - PullRequest
3 голосов
/ 02 марта 2011

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

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

Для конфиденциальной информации, такой как IP-адреса и пароли, я планирую хранить этот хэш (с солью). Информация о возрасте не имеет значения, может быть, я просто храню «взрослый да / нет». Что-то, что мне не хватает?

1 Ответ

1 голос
/ 02 марта 2011

Инъекция не является проблемой, если вы правильно обращаетесь с данными.Вы не беспокоитесь о сохранении вашей модели в собственности, поэтому никаких проблем нет.У вас есть зеленый свет, чтобы раскрыть модель.

Конфиденциальность не является проблемой, если вы сообщите пользователю, что данные общедоступны.Люди предоставляют личную информацию и фотографии на Facebook, так почему бы не ваша система?Зеленый свет.

Теоретически хешированные данные со случайной солью безопасны для загрузки.SHA512 со случайным хешем, вероятно, никогда не будет взломан.Но кто знает?Когда-то MD5 был «правильным путем» для хэширования, и теперь вы обнаружите столкновение менее чем за 1 час.

Единственная проблема - это личные данные, которые должны быть зашифрованы, а не хешированы.Вы не можете хешировать IP, потому что вы захотите использовать его в будущем.Вы не можете хэшировать номера кредитных карт, потому что в какой-то момент вам понадобится реальный номер кредитной карты.Вы будете вынуждены использовать закрытый ключ и иметь дело со слабостью его хранения.Предоставляя данные, вы полностью удаляете уровень физической безопасности.Шифрование + физическое лучше, чем одно шифрование.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...