Пароль пользователя как ключ шифрования

Discussion in 'Криптография, расшифровка хешей' started by herfleisch, 18 Oct 2014.

  1. herfleisch

    herfleisch Elder - Старейшина

    Joined:
    7 Jan 2009
    Messages:
    579
    Likes Received:
    203
    Reputations:
    13
    Всем привет, давно не виделись.

    В общем, открыли с приятелем в Омане (это страна такая на Ближнем Востоке) небольшую фирму. Занимаемся разработкой ПО, иншаАллах.

    Сейчас у нас идет активная дискуссия и мне нужна ваша посильная помощь.

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

    Вопрос в том, что пользователь не хочет запоминать отдельно логин-пароль от своего аккаунта, и ключ шифрования. Первое что приходит в голову - использовать пароль от аккаунта и для авторизации, и для шифрования данных.

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

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

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

    VY_CMa Green member

    Joined:
    6 Jan 2012
    Messages:
    917
    Likes Received:
    492
    Reputations:
    724
    Использовать СМС + авторизацию минимум 2 соц.сетей?
     
    _________________________
  3. Steam[777]

    Steam[777] Elder - Старейшина

    Joined:
    27 Sep 2010
    Messages:
    296
    Likes Received:
    43
    Reputations:
    25
    Ключ на флешку, и шифровать его при помощи пользовательского пароля.
    Ввел юзер пароль, при помощи его пароля дешифровался ключ на флешине, а при помощи ключа дешифровалась информация.

    Обычно реализуют на Java, прописывая его в требованиях к клиентской системе.
    Ключи можете генерировать сами, их копии хранить в надежном месте(для восстановления).
    Флешку с ключом клиенту передавать по защищенному каналу (своим курьером, либо лично клиенту).
     
    #3 Steam[777], 18 Oct 2014
    Last edited: 18 Oct 2014
  4. KukMan

    KukMan New Member

    Joined:
    22 Feb 2010
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Здесь нужно понимать, что если Вы можете восстановить пользователю забытый пароль/ключ, значит можете восстановить и кому-то другому (спец. службам). Если же убрать теоретическую возможность восстановления - пользователь тогда надеется только на себя.
    И то, и то достичь невозможно, нужно выбирать.
     
  5. Karabasovich

    Karabasovich Member

    Joined:
    7 May 2010
    Messages:
    0
    Likes Received:
    43
    Reputations:
    37
    Как пример, можно взять систему безопасности Webmoney...
    E-Num, файл ключей, контрольный вопрос - который забыть невозможно...
     
  6. -=Cerberus=-

    -=Cerberus=- κρυπτός γράφω

    Joined:
    29 Apr 2012
    Messages:
    1,321
    Likes Received:
    930
    Reputations:
    391
    Почитайте мою статью http://forum.antichat.ru/thread399146.html может быть пригодится, а про забытые пароли просто восстановление пароля по смс или мылу.
     
  7. herfleisch

    herfleisch Elder - Старейшина

    Joined:
    7 Jan 2009
    Messages:
    579
    Likes Received:
    203
    Reputations:
    13
    Пароль не планируется хранить в открытом виде. Только его SHA2-хэш. Отсюда такие вопросы.

    Я думаю, может быть сделать на отдельном сервере некий черный ящик, на котором все порты и все доступы будут напроч закрыты, но будет только 1 внешний API-метод, который позволяет только записать пароль и все. А прочитать данные можно только при физическом доступе к этому серверу. По-моему, достаточно логичный вариант.
     
    #7 herfleisch, 30 Oct 2014
    Last edited: 30 Oct 2014
  8. M_script

    M_script Members of Antichat

    Joined:
    4 Nov 2004
    Messages:
    2,581
    Likes Received:
    1,317
    Reputations:
    1,557
    Сам пароль хранить не надо, для расшифровки он не обязателен, поскольку является пасфразой, а не ключом. Храни сам ключ шифрования данных, зашифрованный секретным вопросом.
     
  9. ovalchik

    ovalchik Member

    Joined:
    10 Oct 2015
    Messages:
    38
    Likes Received:
    5
    Reputations:
    2
    Нужно автоматическое восстановления пароля или ручное? Просто для шифрование, по любому для генерации ключа 100кратно хеширование с солью. а для проверки авторизации на сайт достаточно и SHA2.