Author

Topic: Приватные ключи на смартфоне - возможно ли? (Read 220 times)

newbie
Activity: 297
Merit: 0
Есть мультивалютные кошельки (например, Jaxx), которые не хранят у себя приватные ключи пользователей.
По данным Jaxx, все приватные ключи находятся непосредственно на устройствах пользователей.

Возможно ли это технически, с учетом количества поддерживаемых валют? (В том же Джаксе их штук 30).

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



Абсолютно все кошельки хранят приватные ключи на устройствах пользователей. Более того, можно сказать, что если ваш приватный ключ хранится не у вас, то это уже не ваш кошелек. Для создания пары публичный/приватный ключ используется алгоритм эллиптической криптографии, а публичный ключ потом хэшируется хэш-функцией, которая присуща данной криптовалюте(поэтому адреса разных валют внешне не похожи), разворачивание ноды для этого не нужно.
MyEtherWallet вообще ничего не хранит, поэтому и такой надежный. При создании кошелька(пары приватный/публичный ключ) он предлагает хранить его либо буквально, либо в виде пароля+JSON файл, либо в дружественных кошельках типа Метамаска, что считается самым надежным и удобным.
sr. member
Activity: 377
Merit: 282
Finis coronat opus
Возможно ли это технически, с учетом количества поддерживаемых валют? (В том же Джаксе их штук 30).

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


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

Это заложено в коде самого кошелька. Процесс создания может отличаться, но по сути он заложен в коде самого кошелька. Где первый адрес может создаваться при запуске приложения первый раз (для каждой валюты). Где-то - по запросу клиента (чаще встречается такой вариант). Используя ГСЧ телефона или встроенный в кошелек (что реже) создается приватный ключ. По нему публичный, а по нему уже адрес. Ничего сложного.


legendary
Activity: 2128
Merit: 1019
Может знаете кошельки, которые поддерживают все из ТОП-10 криптовалют по капитализации (коинмаркеткеп)?

Тоже любопытно, услышать отзывы о различных кошельках.
newbie
Activity: 13
Merit: 0
Может знаете кошельки, которые поддерживают все из ТОП-10 криптовалют по капитализации (коинмаркеткеп)?
full member
Activity: 256
Merit: 102
Есть мультивалютные кошельки (например, Jaxx), которые не хранят у себя приватные ключи пользователей.
По данным Jaxx, все приватные ключи находятся непосредственно на устройствах пользователей.

Возможно ли это технически, с учетом количества поддерживаемых валют? (В том же Джаксе их штук 30).

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


Все современные кошельки для мобильных телефонов обладают всеми характеристиками которые вы запрашиваете:
1. Не хранят всю историю транзакций у себя, потому что тупо места не хватит даже для биткоина не говоря уже о 30 валютах. То есть работают по принципу лайт кошельков.
2. Приватные ключи хранятся на устройстве, все транзакции подписываются устройством. Потом транзакции посылаются прямо в сеть, либо через прокси сервер.
3. Кошельки поддерживают много валют. Большинство мобильных кошельков создают мнемонику(12 слов на английском языке). Потом из этой мнемоники они могут создать любое кол-во кошельков для разных валют.
jr. member
Activity: 106
Merit: 2
Вопрос в том, как приватный ключ оказался на устройстве, если не «прилетел» с какого-то сервера? Должен же он откуда-то взяться.
В этом вся красота и гениальность систем с публичными и приватными ключами.
Если сильно упрости до простого понимания, это выглядит примерно так:
Запускаете  и проверяется есть ли приватный ключ - нет, запускается его создание.
Генерируется пара публичный+приватный ключ (локально).
Отправляется в сеть уведомление о том, что вы создали.
При этом возможность, что кто-то другой создаст точно такой же приватный ключ, считается около нулевой.
Таким образом, ничего не получая с сервера или из распределенной сети можно доверять такому шифрованию при достаточной длине ключа (сейчас это 32 байта).
jr. member
Activity: 87
Merit: 1
Если ищите разработчиков, можете со мной пообщаться Smiley У меня своя команда блокчейн разрабов.

Как связаться? ЛС не отправляется.
Телеграм t.me/Vkapicyn
newbie
Activity: 13
Merit: 0
Если ищите разработчиков, можете со мной пообщаться Smiley У меня своя команда блокчейн разрабов.

Как связаться? ЛС не отправляется.
jr. member
Activity: 87
Merit: 1
MyEtherWallet - отличный пример.
Вопрос в том, как приватный ключ оказался на устройстве, если не «прилетел» с какого-то сервера? Должен же он откуда-то взяться.

И если это смогли сделать MyEtherWallet, то можно также сделать и мультивалютный кошелек с 20-30 монетами?

Приватный ключ может сгенерить и само устройство. Надо учить мат.часть)
Сложно порекомендовать источники, я все через документацию изучал

Не с точки зрения программного кода, а «азы». Чтобы потом более предметно общаться с разработчиками.

Если ищите разработчиков, можете со мной пообщаться Smiley У меня своя команда блокчейн разрабов.
newbie
Activity: 13
Merit: 0
Не знаю как именно у Jaxx, но есть как минимум 2 способа хранить ключи у Вас. Вы отправляете им на сервер уже подписанную на клиенте вашу транзакцию, либо все транзакции отправляются с клиента. Например MyEtherWallet все действия совершает на стороне клиента, на сервер к ним ничего не уходит. (рекомендую прочесть про принцип работы клиент-серверных приложений).

P.s. А публичный ключ на то и публичный, что не существенно, попадет ли он к третим лицам или нет


MyEtherWallet - отличный пример.
Вопрос в том, как приватный ключ оказался на устройстве, если не «прилетел» с какого-то сервера? Должен же он откуда-то взяться.

И если это смогли сделать MyEtherWallet, то можно также сделать и мультивалютный кошелек с 20-30 монетами?
Можно.
Но за мультивалютность, скорее всего, придется заплатить быстродействием.


Где можно более детально почитать, как это сделать?

Не с точки зрения программного кода, а «азы». Чтобы потом более предметно общаться с разработчиками.
newbie
Activity: 140
Merit: 0
Не знаю как именно у Jaxx, но есть как минимум 2 способа хранить ключи у Вас. Вы отправляете им на сервер уже подписанную на клиенте вашу транзакцию, либо все транзакции отправляются с клиента. Например MyEtherWallet все действия совершает на стороне клиента, на сервер к ним ничего не уходит. (рекомендую прочесть про принцип работы клиент-серверных приложений).

P.s. А публичный ключ на то и публичный, что не существенно, попадет ли он к третим лицам или нет


MyEtherWallet - отличный пример.
Вопрос в том, как приватный ключ оказался на устройстве, если не «прилетел» с какого-то сервера? Должен же он откуда-то взяться.

И если это смогли сделать MyEtherWallet, то можно также сделать и мультивалютный кошелек с 20-30 монетами?
Можно.
Но за мультивалютность, скорее всего, придется заплатить быстродействием.
newbie
Activity: 13
Merit: 0
Не знаю как именно у Jaxx, но есть как минимум 2 способа хранить ключи у Вас. Вы отправляете им на сервер уже подписанную на клиенте вашу транзакцию, либо все транзакции отправляются с клиента. Например MyEtherWallet все действия совершает на стороне клиента, на сервер к ним ничего не уходит. (рекомендую прочесть про принцип работы клиент-серверных приложений).

P.s. А публичный ключ на то и публичный, что не существенно, попадет ли он к третим лицам или нет


MyEtherWallet - отличный пример.
Вопрос в том, как приватный ключ оказался на устройстве, если не «прилетел» с какого-то сервера? Должен же он откуда-то взяться.

И если это смогли сделать MyEtherWallet, то можно также сделать и мультивалютный кошелек с 20-30 монетами?
jr. member
Activity: 87
Merit: 1
Не знаю как именно у Jaxx, но есть как минимум 2 способа хранить ключи у Вас. Вы отправляете им на сервер уже подписанную на клиенте вашу транзакцию, либо все транзакции отправляются с клиента. Например MyEtherWallet все действия совершает на стороне клиента, на сервер к ним ничего не уходит. (рекомендую прочесть про принцип работы клиент-серверных приложений).

P.s. А публичный ключ на то и публичный, что не существенно, попадет ли он к третим лицам или нет
newbie
Activity: 13
Merit: 0
Есть мультивалютные кошельки (например, Jaxx), которые не хранят у себя приватные ключи пользователей.
По данным Jaxx, все приватные ключи находятся непосредственно на устройствах пользователей.

Возможно ли это технически, с учетом количества поддерживаемых валют? (В том же Джаксе их штук 30).

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

Jump to: