русский
Germany.ruForen → Архив Досок→ Programmierung

Как лучше хранить "секретную" инфу в базе

03.06.23 17:32
Re: Как лучше хранить "секретную" инфу в базе
 
Бесконечный цикл завсегдатай
in Antwort AlexNek 03.06.23 15:44
А вопрос был в том, как удобнее всего шифровать инфу. Пока есть всего два решения: каждый пользователь имеет публик ключ на сервере и приватный ключ у себя на компе. Используем ассиметричное шифрованиесервер имеет два ключа, используем симметричное шифрование

Для начала двумя ключами никто сами данные не шифрует, поскольку это неэффективно (очень долго) да и не нужно. Двумя ключами шифруют ключи для эффективных (симметричных) алгоритмов. А два ключа используют для совершенно других целей. Поэтому первый подход с асимметричным шифрованием фактически использует два ключа для двух разных целей: аутентификацию и шифрование. Это не запрещено конечно, но если вы понимаете, что творите. А вы видимо не понимаете, поэтому я с самомго начала и потом несколько раз повторял: где здесь аутентификация, где авторизация, и где шифрование. Ну чтобы было более понятно: пара <public key, private key> аналогична паре <user name, passowrd>. Если вы вводите асимметричное шифрование, то неявно вводите просттранство юзеров - каждый открытый ключ это один юзер. Например, в биткойне столько юзеров, сколько было сгенерировано открытых ключей (очень много), и каждый может зарегить нового юзера путем генерации пары ключей (и выполним транзакцию, чтобы этот открытый ключ попал в блок-чейн). Так что использовать асимметричное шифрование это изначально не очень хорошая идея.


А теперь главное: почему асиметричное шифрование "удобнее" в данном случае, и какую проблему мы решаем?


Есть еще варианты?

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

 

Sprung zu