170 похожих чатов

Всем привет! Вопрос к web3 разработчикам. Контекст примерно таков, что

есть seed phrase, которая используется для HD Wallet. В процессе разработки хранили её в env, и особо не парились. В рамках деплоя в production встала проблема, что девопс не готов брать на себя ответственность за знание seed phrase. Какие варианты в целом есть, чтобы только овнер знал seed phrase, но при этом код мог откуда-то тянуть её и пользоваться ей?

Вариант с поднятием сервиса для подписи транзакций на машине овнера не подходит.

12 ответов

28 просмотров

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

Anatoly- Автор вопроса

Так он же не машина, дешифровать её глазами не сможет, так что просто накиньте на неё какое-либо шифрование и киньте в env. А в код имплементируйте дешифровалку. Но, конечно есть проблема в том, что он может узнать шифрование и дешифровать, но тогда советую создать кошелек, новый, чистый и перевести туда деньгу, которая нужна для работы программы.

Secrets as a service загуглить пробовал?

Anatoly
Останутся же торчать в докере в env, не?

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

Anatoly- Автор вопроса

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

Anatoly
Вопрос не безопасности, а именно сокрытия от разра...

Не ну сокрытие от и является одной из основных тем)

Anatoly- Автор вопроса
Артём Курбанов
В теории можно вообще заморочиться, добавлять чере...

Сеттер по расхэшированию не вариант, так как расхэшить - тоже нужны «ключики», которые надо указать.

Anatoly- Автор вопроса

Так а в чем собственно проблема использовать секреты?

Anatoly- Автор вопроса
Lev Netisanov
Так а в чем собственно проблема использовать секре...

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

Anatoly
Если я все правильно понял, зашифрованный секрет т...

Ты можешь сам секрет вшить в переменные. Там значение не отобразается

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

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта