X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Приём и отправка Bitcoin на сайте
k0ttee
k0ttee
Topic Starter сообщение 10.1.2020, 14:52; Ответить: k0ttee
Сообщение #1


Приём и отправка Bitcoin на сайте. Самый легковесный, самый дешёвый, самый безопасный, самый экономичный. Во всём, кроме сложности прикручивания - самый сусамый способ.

Большинство русскоязычных статей на эту тему предлагают подключать онлайн-сервисы, типа блокчейн-ком или криптонатор. По сложности это самое лёгкое - минимум программирования, возможно готовый плагин для CMS.

Чем не устраивают онлайн-сервисы:
1.) приватные ключи у них (вы не владете биткоинами) и они могут быть взломаны / соскамиться
2.) высокий минимум к пополнению (порядка 50 000 сатоши) не годится для микроплатежей
3.) высокий минимум к выводу (порядка 100 000 сатоши) не годится

Самый крутой вариант, чтобы вообще всё своё, пришлось отбросить. Демон (фоновая служба) полного узла на холостом ходу ест много оперативки, требует почти 500 гигов места под базу блоков. :(

Прикрепленное изображение


Приём и отправка Bitcoin на сайте

Из русскоязычной литературы по теме, на хабре есть аналог из 2018 года. Там понадобится VDS за $15 в месяц. Это уже бюджет, это $180 в год.
Я сделяль чтобы работало на днищенском VDS за 45 рублей (около 75 центов). Это 540р в год ($9), это даже не бюджет, это один раз в магазин сходить.

Напомню, что проценты за обслуживание никаким сервисам платить не нужно. Даже комиссию при отправке платежей, если с сайта нужно выплачивать, можно контролировать. Минимум издержек, максимум прибыли.

Прикрепленное изображение


Сделать всё своё, кроме тяжёлой и неповоротливой базы блоков, сможет детерминистический кошелёк (он же HD Wallet) запущенный на сервере фоновой службой (демоном).

Выбор типа адресов

legacy - он же P2PKH (Pay To Public Key Hash) префикс 1 (классические адреса, могут принимать с Segwit).
P2SH - он же p2sh-segwit (Pay to script hash) префикс 3 (меньше комиссия, совместим и с Segwit и с классическими).
Bech32 - он же Segwit (он же Native Segwit) префикс bc1 (ещё чуть меньше комиссия, не гарантирован приём на такой с классического).

Золотая середина - P2SH он же p2sh-segwit (Pay to script hash) префикс 3.

Выбор кошелька

Как писалось выше, детерминистический кошелёк (он же HD Wallet) запущенный на сервере фоновой службой (демоном). Можно привычный для многих Electrum.

Если дизайн платёжного интерфейса не важен - можно подключить Electrum Merchant, добавляющий готовый простенький интерфейс для покупателей.
В моём случае придётся писать интерфейс самостоятельно, чтобы отчитывалось о работе как заказчик решил и выглядело как дизайнер сваял.

С установкой никаких сложностей...
Примечание: вместо "user@email.ru" имя создаваемого файла-кошелька.
#зависимости
sudo apt install python3-setuptools python3-pip python3-pyqt5
#накатывание
sudo -H pip3 install https://download.electrum.org/3.3.8/Electrum-3.3.8.tar.gz#egg=electrum[fast]

#скачивание костыля для адресов на тройку
wget https://raw.githubusercontent.com/k0ttee/electrum-xprv/master/xprv.py
#использование костыля для адресов на тройку
python3 xprv.py -g p2wpkh-p2sh -d "m/" -p|electrum -w user@email.ru restore -


Насчёт костыля, скажу, что в нём не много кода и он легко поддаётся чтению. ;)

Для каждого покупателя/пользователя нужно будет создавать новый адрес...
#клепать P2-SH адреса (на 3 начинаются) выполнением.
electrum createnewaddress -w user@email.ru


Фоновую службу (демона) настраиваем под свой проект... Порт, логин, пароль, файл кошелька.
#настраиваю RPC демона
electrum daemon start
#порт
electrum setconfig rpcport 9999
#логин
electrum setconfig rpcuser fuckit
#пароль
electrum setconfig rpcpassword 1234567890
#файл-кошелёк
electrum daemon load_wallet -w user@email.ru


Посмотреть настройки можно почти так же...
#смотрю как настроилось
electrum getconfig rpcport
electrum getconfig rpcuser
electrum getconfig rpcpassword


Статус работы демона можно посмотреть командой...
electrum daemon status


Прикрепленное изображение


Ну вот. Теперь можно командовать демоном через методы. Методы это те же терминальные команды, как у обычного Electrum.

Прикрепленное изображение


Много оперативки не хавает. В дешёвый сервер влезет. После пересадки будет сразу готов к работе. Для безопасности нужно только шифрование файла-кошелька и резервные копии.

Прикрепленное изображение


--------------------
Задонь кибер-коту на крипто-вискас
btc: 3Hq7X9CosVftRFPqWis1Dkk5MdtM1u6jj9
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
k0ttee
k0ttee
Topic Starter сообщение 13.1.2020, 11:22; Ответить: k0ttee
Сообщение #2


Чтобы не тратиться на проведение тестирования в ходе разработки, выручит тестовая сеть. Нельзя вылезать за бюджет тестового сервера в 45 рублей. :D

В основной сети адреса P2SH - они же p2sh-segwit (Pay to script hash) начинаются на тройку, в тестовой - на двойку.
Не запутаться поможет таблица с типами адресов.
https://en.bitcoin.it/wiki/List_of_address_prefixes


Кстати, если полностью синхронизировать и основную и тестовую сети в полном узле Bitcoin Core... Получится почти "терабайт денег". :friends: :rjunimagu:
Полная синхронизация для создания адресов не нужна, запускаться с флагом -testnet, пользователи Windows могут вписать флаг в ярлык, яблочники и красноглазы в терминалах...
/Applications/Bitcoin-Qt.app/Contents/MacOS/Bitcoin-Qt -testnet


Внешность в режиме Testnet будет отличаться. Биткоин будет зелёненький.
Прикрепленное изображение


Раздобыть баланса в тестовой сети можно на кранах для тестнета (погуглите). На них нет треш-рекламы, простенькая капча, получить достаточный для тестирования объём тестовых битков не трудно.

Добавлено спустя 20 минут 48 секунд:
При экспорте из Bitcoin Core в Electrum не забываем про префикс p2wpkh-p2sh: чтобы появился адрес на 3 в основной сети и на 2 в тестовой.

Сам процесс тестирования может вызвать вот это вот ощущение "а ведь несколько лет назад с кранов можно было собрать копейку настоящих". :laugh:

Прикрепленное изображение


И всё-таки, в тестовой сети я гораздо богаче. :rjunimagu: Ладно, копейки мне хватит натестировать вдоль и поперёк, остатки отправлю обратно на кран.

Прикрепленное изображение


Добавлено спустя 19 часов 14 минут 47 секунд:
Раскопал на гите заготовку интернет-магазина принимающего биткоины. Отостой в том, что заготовка на питоне. Может кому пригодится.
https://github.com/goatpig/BitcoinArmory/tree/master/webshop


--------------------
Задонь кибер-коту на крипто-вискас
btc: 3Hq7X9CosVftRFPqWis1Dkk5MdtM1u6jj9
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
k0ttee
k0ttee
Topic Starter сообщение 14.1.2020, 12:03; Ответить: k0ttee
Сообщение #3


У меня всё работает, но это не точно... Нужно тестить, чтоб снаружи были закрыты порты и самое стрёмное - дыры в базах данных.

Прикрепленное изображение


--------------------
Задонь кибер-коту на крипто-вискас
btc: 3Hq7X9CosVftRFPqWis1Dkk5MdtM1u6jj9
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
k0ttee
k0ttee
Topic Starter сообщение 16.1.2020, 16:56; Ответить: k0ttee
Сообщение #4


Нашёл VDS/VPS за 30 рублей в месяц. :D Но там все распроданы (возможно подлое маркетинговое налюбилово).


--------------------
Задонь кибер-коту на крипто-вискас
btc: 3Hq7X9CosVftRFPqWis1Dkk5MdtM1u6jj9
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
k0ttee
k0ttee
Topic Starter сообщение 11.3.2020, 13:11; Ответить: k0ttee
Сообщение #5


Адреса можно генерировать для каждого пользователя на этапе регистрации, а можно заранее наклепать на домашнем компе и раздавать приготовленные.

Достоинства приготовленных очевидны:
- приватные ключи не покинут домашнего компа, а значит - с сервера нечего будет красть хакерам
- серверу не нужно тратить ресурсы на генерацию, всё будет работать не отвлекаясь от главного - обслуживания клиентов
- наверняка в домашнем компе и ядер и памяти больше, так что заготовить можно хоть миллион адресов на дальнюю перспективу

За 10 минут работы, у меня получился JSON-файл с десятью тысячами пар "адрес+ключ". Вес файла - полтора мегабайта. Масштабируя на перспективу, для миллиона кошельков получится в сто раз больше - то есть примерно 150 мегабайт будут генерироваться примерно 16 часов. Не так уж и много.

Прикрепленное изображение


--------------------
Задонь кибер-коту на крипто-вискас
btc: 3Hq7X9CosVftRFPqWis1Dkk5MdtM1u6jj9
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
k0ttee
k0ttee
Topic Starter сообщение 16.8.2020, 6:39; Ответить: k0ttee
Сообщение #6


На дальней дистанции даже Electrum показывает себя не очень хорошо. Странно, что не начав использовать swap под продление Let's Encrypt не хватает оперативки.
Если раз в месяц перезапускать кошель - полёт нормальный... Но память подтекает.

Прикрепленное изображение


Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


--------------------
Задонь кибер-коту на крипто-вискас
btc: 3Hq7X9CosVftRFPqWis1Dkk5MdtM1u6jj9
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Мегамаркет. Скидка 1000 рублей при покупке от 5000 рублей на все, на первый заказ.
Мегамаркет. Скидка 1000 рублей при покупке от 5000 рублей на все, на п
6 stu999 1552 21.3.2024, 20:45
автор: stu999
Горячая тема (нет новых ответов) CryptoCloud — прием USDT, BTC, ETH, LTC на любом сайте
34 CryptoCLoud 10079 18.3.2024, 16:56
автор: CryptoCLoud
Открытая тема (нет новых ответов) Странный трафик на сайте длительное время
26 TABAK 7542 16.3.2024, 17:31
автор: Boymaster
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыБыстрый и качественный обмен на сайте Baksman.org
Обмен Bitcoin, BTC-e, PM, Qiwi, Yandex money, Карты банк
51 Baksman 33209 15.3.2024, 21:14
автор: Baksman
Открытая тема (нет новых ответов) Алтуально ли заработок на сайте?
Оцение пожалуйста идею
10 hitman20 1780 1.2.2024, 5:37
автор: Liudmila


 



RSS Текстовая версия Сейчас: 29.3.2024, 16:22
Дизайн