Author

Topic: Тех вопрос по биржам (Read 122 times)

newbie
Activity: 2
Merit: 0
February 14, 2018, 01:46:34 AM
#5
Спасибо за ответы, теперь все складывается.
newbie
Activity: 98
Merit: 0
February 13, 2018, 02:35:33 PM
#4
Дублирую вопрос из "Новичков"

Всем привет! Нужен технический эксперт.
Описание ситуации:
- предположим мы делаем некоторый сервис, на подобие обменника криптовалюты между различными крипто и фиатными валютами
- каждый пользователь регистрируется в Сервисе, где ему создаются необходимое кошельки из тех что мы сбираемся поддерживать, допустим Bitcoin, Eth, Ripple, USD
- т.е. у каждого пользователя есть ID его кошелька (Кошелек пользователя) на который он сможет перевести часть своих криптосредств
- понятно что Кошелек пользователя принадлежит Системе и Система предоставляет GUI интерфейс для работы с ними
- Система предоставляет возможность мгновенно обменять пару по заданному курсу, например Bitcoin на USD или ETH на Ripple

Теперь вопрос:
- как технически правильно должны проводиться данные операции обмена?
- например Пользователь меняет 1 ETH на 800 Ripple:
-- Система уменьшает ETH кошелек пользователя на 1 ETH
-- Система увеличивает Ripple кошелек пользователя на 800 Ripple
-- Пользователь должен иметь возможность сразу вывести 800 Ripple, например на какую-то биржу
-- Если проводить транзакции через сеть Eth и Ripple - это займет определенное время, как биржи делают это мгновенно?
-- Предполагаю, что так как все кошельки фактически принадлежат системе вероятно фактического, классического перевода через blockchain не происходит, а весь учет на внутренних балансах Системы?

Т.е. вопрос по сути о том как устроены биржи, как они работают с балансами, ведут внутренние операции, обеспечивая при этом корректное взаимодействие с blockchain сетью?

Заранее спасибо.

Вы выделяете адреса только для приема средств! После поступления средств на адрес закрепленный за пользователем вы заносите информацию о поступлении в бд сайта!
И работаете не с балансом кошелька, а с балансом аккаунта на сайте!

уточнение: бд- база данных

Пример 1:   Пользователь купил за фиат 1 ETH  у Вас на бирже и обменял на 800 Ripple и вывел:

1) API обменника стучится к вам на сайте и говорит о поступлении нужной суммы (800$)
2) система зачисляет на баланс 1 ETH , не на адрес ETH кошелька пользователя, а на баланс аккаунта в системе(вносит в бд).
3) Пользователь дает сигнал на обмен.
4) Система отнимает баланс в бд ETH у аккаунта и прибавляет Ripple
5) Пользователь вывел рипл
6) Система проверяет кошельки которые имеются в её распоряджении, находит кошелек с балансом.
7) Дает команду на вывод средств, при удачной операции , вычитает 800 Риплов с баланса бд аккаунта.

Пример 2:  Пользователь вносит депозит в ETH
1) Пользователь берет у Вас на сайте личный адресс кошелька
2) Пополняет его)
3) Система проверяет пополнение, видит зачисление
4) Добавляет зачисленную сумму к балансу аккаунта в бд.

Пример 3:   Пользователь  имеет на счету ETH и хочет вывести в фиат допустим на киви :
1) Заправшивает вывод у системы
2) Система проверяет курс
3) Система отправляет запрос в платежку(мерчант)  на вывод
4) ПРоисходит вывод средств и вы вычитаете с баланса пользователя в бд сумму вывода в ETH!
Можно предварительно конвертировать все в фиат и иметь баланс пользователя еще в фиат деньгах.

И только так! Ни каких переводом между кошельками внутри системы! Все переводы внутри системы это изменения балансов пользователя в бд сайта!

full member
Activity: 411
Merit: 139
February 13, 2018, 04:55:56 AM
#3
- предположим мы делаем некоторый сервис, на подобие обменника криптовалюты между различными крипто и фиатными валютами

...

Т.е. вопрос по сути о том как устроены биржи, как они работают с балансами, ведут внутренние операции, обеспечивая при этом корректное взаимодействие с blockchain сетью?

Какое-то несоответствие у вас. Делаете обменник, а спрашиваете о бирже.

1. Если делаете обменник, то не нужно создавать кошелек пользователю - у пользователя он должен быть (вы конечно можете помочь создать ему, но тут большой вопрос доверия пользователя вашей системе...)
2. Если делаете биржу: то создаете для него расчетные счета, для каждой валюты свои. Когда пользователь хочет вывести эти средства, то вы в блокчейн создаете транзакцию и выводите на его кошелек (для этого в личном кабинете пользователь должен заранее указать адрес такого кошелька для каждой валюты). Аналогичным образом он вводит криптовалюты (переводит на ваш кошелек, а ввы по адресу источника понимаете от кого пришли средства и кому их соответственно зачислить на расчетный счет).
member
Activity: 294
Merit: 38
February 13, 2018, 03:39:12 AM
#2
Если нужен именно сам код или сервис процесса, то тут к сожалению ничем не могу помочь, думаю более опытные форумчане раскроют этот вопрос куда лучше и правильнее.

Если речь идет о сути, работы системы с внутренним обменом крипты между пользователями при первоначальном вливании средств на саму биржу, тут несколько проще.
1 - при вливании средств на биржу, пользователь получает на счет не физические средства, а своего рода векселя, говорящие о том, что пользователь дал бирже на хранение собственные средства и может по желанию потребовать их обратно. Биржа в свою очередь гарантирует, что каждый такой вексель подкреплен физической валютой, находящейся у нее на хранении и в случае предъявления готова обменять его на валюту, которая присвоена этому векселю.
2 - при обмене внутри системы, происходит обмен, не самой валюты, а векселей ранее полученных от биржи в свое распоряжение. Учет производится автоматизированной системой которая подтверждает наличие необходимой суммы, выставляемой и запрашиваемой на обмен, в случае совпадения система переносит или изменяет данные пользователей и сделка считается завершенной. Таким образом пользователи обмениваются не монетой, а долговыми обязательствами системы, учет которых происходит внутри самой системы, без использования внешних сетей, что позволяет мгновенно увидеть изменения баланса на "кошельке"
3 - после получения в свое распоряжение новых векселей, пользователь считается их полноправным владельцем и в праве потребовать у биржи исполнение долговых обязательств по имеющимся у него в распоряжении векселям. То есть при выводе средств со своего "кошелька" или "счета" внутри системы на внешний кошелек, пользователь предъявляет системе вексель, сообщая о том, что хочет забрать ранее принятые биржей на хранение средства и отправить их в другое место. После проверки обоснованности запроса системой (т.е. проверки "векселя" на подлинность), система дает добро, биржа забирает вексель, и отправляет соответствующую сумму из своего хранилища на указанный пользователем адрес.

Возможно где то был не точен или ошибся, но в целом, в системе где средства пользователей находятся на хранении у какого либо сервиса, все происходит примерно так.
newbie
Activity: 2
Merit: 0
February 13, 2018, 02:08:55 AM
#1
Дублирую вопрос из "Новичков"

Всем привет! Нужен технический эксперт.
Описание ситуации:
- предположим мы делаем некоторый сервис, на подобие обменника криптовалюты между различными крипто и фиатными валютами
- каждый пользователь регистрируется в Сервисе, где ему создаются необходимое кошельки из тех что мы сбираемся поддерживать, допустим Bitcoin, Eth, Ripple, USD
- т.е. у каждого пользователя есть ID его кошелька (Кошелек пользователя) на который он сможет перевести часть своих криптосредств
- понятно что Кошелек пользователя принадлежит Системе и Система предоставляет GUI интерфейс для работы с ними
- Система предоставляет возможность мгновенно обменять пару по заданному курсу, например Bitcoin на USD или ETH на Ripple

Теперь вопрос:
- как технически правильно должны проводиться данные операции обмена?
- например Пользователь меняет 1 ETH на 800 Ripple:
-- Система уменьшает ETH кошелек пользователя на 1 ETH
-- Система увеличивает Ripple кошелек пользователя на 800 Ripple
-- Пользователь должен иметь возможность сразу вывести 800 Ripple, например на какую-то биржу
-- Если проводить транзакции через сеть Eth и Ripple - это займет определенное время, как биржи делают это мгновенно?
-- Предполагаю, что так как все кошельки фактически принадлежат системе вероятно фактического, классического перевода через blockchain не происходит, а весь учет на внутренних балансах Системы?

Т.е. вопрос по сути о том как устроены биржи, как они работают с балансами, ведут внутренние операции, обеспечивая при этом корректное взаимодействие с blockchain сетью?

Заранее спасибо.
Jump to: