Bitcoin Forum
April 25, 2024, 12:41:17 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: BtcIO - Опенсорсный, холодный, BTC-кошелёк  (Read 355 times)
This is a self-moderated topic. If you do not want to be moderated by the person who started this topic, create a new topic.
avadhuta (OP)
Newbie
*
Offline Offline

Activity: 19
Merit: 11


View Profile
January 29, 2021, 02:38:32 PM
Last edit: March 27, 2021, 03:55:32 PM by avadhuta
Merited by xandry (2), klarki (1)
 #1

Десктопная апка(консольная и GUI) для виндовс и линукс на .NET CORE для того что бы быстро генерировать приваты и адреса по сиду, смотреть балансы и слать транзакции, со своих приватов и кошельков.

Гитхаб https://github.com/avadhuta/BtcIO/releases

Пример использования с тестовой сетью(с майновой работает аналогично):

Для консоли https://youtu.be/Mnm2dWqRP8g

Для варианта с GUI https://youtu.be/JiTr551-veE


Используются библиотека NBitcoin, а также API blockcypher.com.

screenshots:
https://i.imgur.com/ZxuXYuV.jpeg
https://i.imgur.com/6evZ7YW.jpeg
https://i.imgur.com/M8tslVi.jpg
https://i.imgur.com/kjvhsnS.jpg
1714048877
Hero Member
*
Offline Offline

Posts: 1714048877

View Profile Personal Message (Offline)

Ignore
1714048877
Reply with quote  #2

1714048877
Report to moderator
1714048877
Hero Member
*
Offline Offline

Posts: 1714048877

View Profile Personal Message (Offline)

Ignore
1714048877
Reply with quote  #2

1714048877
Report to moderator
Unlike traditional banking where clients have only a few account numbers, with Bitcoin people can create an unlimited number of accounts (addresses). This can be used to easily track payments, and it improves anonymity.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714048877
Hero Member
*
Offline Offline

Posts: 1714048877

View Profile Personal Message (Offline)

Ignore
1714048877
Reply with quote  #2

1714048877
Report to moderator
1714048877
Hero Member
*
Offline Offline

Posts: 1714048877

View Profile Personal Message (Offline)

Ignore
1714048877
Reply with quote  #2

1714048877
Report to moderator
1714048877
Hero Member
*
Offline Offline

Posts: 1714048877

View Profile Personal Message (Offline)

Ignore
1714048877
Reply with quote  #2

1714048877
Report to moderator
~DefaultTrust
Copper Member
Sr. Member
****
Offline Offline

Activity: 1540
Merit: 487

Stop the war!


View Profile
January 29, 2021, 02:48:48 PM
 #2

используются библиотеки NBitcoin и QbitNinja, а также API blockcypher.com.

обычно АПИ сторонних сервисов имеют ограничения для количества запросов и могут меняться всяко разно без уведомлений.
Все таки RPC родного кошелька надежней будет. Синхронизироваться можно в prune mode если "винт не резиновый". Хотя, если серьезно к делу подходить, то лучше не пожалеть 15 тыщь на гигабайтный ssd который закриптовать трукриптом и целиком пустить под блокчейн проекты.

Do not trust bitcointalk fascists: leonello; Snork1979; ivan1975
avadhuta (OP)
Newbie
*
Offline Offline

Activity: 19
Merit: 11


View Profile
January 29, 2021, 05:19:23 PM
 #3

используются библиотеки NBitcoin и QbitNinja, а также API blockcypher.com.

обычно АПИ сторонних сервисов имеют ограничения для количества запросов и могут меняться всяко разно без уведомлений.
Все таки RPC родного кошелька надежней будет. Синхронизироваться можно в prune mode если "винт не резиновый". Хотя, если серьезно к делу подходить, то лучше не пожалеть 15 тыщь на гигабайтный ssd который закриптовать трукриптом и целиком пустить под блокчейн проекты.
Согласен, RPC конечно надежнее, у кого блокчейн битка постоянно в сети или хотя бы каждый день обновляться и в коре синхронизация\доступ к средствам за 5 мин происходит. Если какая нить биржа, обменник, или сервис некий, то разумеется RPC.

Ну а если с ноута или планшета, отправить, посмотреть баланс, раз в месяц, то уж простите это перебор, а веб-кошельки даже такие уважаемые как blockchain.com/wallet могут тоже в любой момент учудить КИС или что то подобное, страшно. Помнится я как то 2fa потерял пароль к веб кошельку, не очень весело было. Приваты доверять кому то стрёмно.

Я вообще эту утилитку сделал когда разбирался как транзакции формировать и с битком в .net работать, по началу тоже и не думал гонять раельный биток собственной поделкой, только тестовый. А потом попробовал и оказалось достаточно удобно, по сравнению с кором, из за ожидания загрузки, так как я редко гоняю биток с биржи- на биржу, может раз в пол года, обычно когда движуха сильная на рынке, как недавно была и приходится долго ждать когда десятки гигов зальются.
Ar4ibass
Newbie
*
Offline Offline

Activity: 7
Merit: 2


View Profile WWW
February 08, 2021, 09:12:12 AM
 #4

В общем написал я пару лет назад для собственного пользования, утилитку на .NET для того что бы быстро генерировать приваты и адреса, смотреть балансы, а главное слать битковые транзакции, со своих приватов.

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

Ещё поиграться можно с тест-неттом битковым, для тех кто хочет познакомиться с битковым болкчейном но не хочет за это платить.

Вот пример её работы:

https://d.radikal.ru/d41/2101/98/869d6d46bfbf.jpg

Если возникнет интерес, выложу на гитхаб код и бинарники для винды и линукса, код очень простой, без ООП-излишеств и GUI в отличии от аналогов, можно проверить за 10 минут, что там нет никаких подлянок в виде пересылок wif мне на почту и тп.,

Понятно что такие апки без исходников не имеют смысла, хотя "профессиональные" опенсорс проекты за 50к строк кода тоже могут таить подводные камни, проверять такое творчество придётся месяцами, а у меня функция отправки транзакции несколько десятков строк, используются библиотеки NBitcoin и QbitNinja, а также API blockcypher.com.
может из этого отдельный кейс сделать? или вообще мобильную апку?
gov
Member
**
Offline Offline

Activity: 196
Merit: 40


View Profile
February 10, 2021, 10:18:53 AM
 #5

В общем написал я пару лет назад для собственного пользования, утилитку на .NET для того что бы быстро генерировать приваты и адреса, смотреть балансы, а главное слать битковые транзакции, со своих приватов.

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

Ещё поиграться можно с тест-неттом битковым, для тех кто хочет познакомиться с битковым болкчейном но не хочет за это платить.

Вот пример её работы:



Если возникнет интерес, выложу на гитхаб код и бинарники для винды и линукса, код очень простой, без ООП-излишеств и GUI в отличии от аналогов, можно проверить за 10 минут, что там нет никаких подлянок в виде пересылок wif мне на почту и тп.,

Понятно что такие апки без исходников не имеют смысла, хотя "профессиональные" опенсорс проекты за 50к строк кода тоже могут таить подводные камни, проверять такое творчество придётся месяцами, а у меня функция отправки транзакции несколько десятков строк, используются библиотеки NBitcoin и QbitNinja, а также API blockcypher.com.
Картинка на первый взгляд выглядит устрашающе, как хардовое сисадминство.

Если хотите что бы программа была интересной другим, а не только вам лично, сделайте её предельно простой, без JSON и бинарного кода в ответах, вы что издеваетесь?

Кроме того ИМХО десктоп уже не в тренде, 90% пипла всё делают на смартфонах и вебе на крайняк, процесс "скачивания" или "инсталяции" остался в 20м веке, всё в браузере должно быть, никакого напряга, общее настроение такое: "пипил кайф ловит, а между делом на тусовке с депутатами и фотомоделями, одним касанием пальчика по экрану, миллионы баксов делает на битке", такова новая парадигма, никакого напряга, всё в кайф, без мышек, клавиатур и консолей, это ключ к юзеру 21го века.
neiros
Legendary
*
Offline Offline

Activity: 3500
Merit: 1100



View Profile WWW
February 11, 2021, 02:49:09 AM
 #6


...общее настроение такое: "пипил кайф ловит, а между делом на тусовке с депутатами и фотомоделями, одним касанием пальчика по экрану, миллионы баксов делает на битке", такова новая парадигма, никакого напряга, всё в кайф, без мышек, клавиатур и консолей, это ключ к юзеру 21го века.

Это характеристика очень гнилых и безответственный юзеров.
Когда одно касание пальчика стоит очень большое количество человекочасов реально проделанной работы, юзер должен понимать, что произойдет в последствии и как скоро.

gov
Member
**
Offline Offline

Activity: 196
Merit: 40


View Profile
February 11, 2021, 01:23:05 PM
 #7


...общее настроение такое: "пипил кайф ловит, а между делом на тусовке с депутатами и фотомоделями, одним касанием пальчика по экрану, миллионы баксов делает на битке", такова новая парадигма, никакого напряга, всё в кайф, без мышек, клавиатур и консолей, это ключ к юзеру 21го века.

Это характеристика очень гнилых и безответственный юзеров.
Когда одно касание пальчика стоит очень большое количество человекочасов реально проделанной работы, юзер должен понимать, что произойдет в последствии и как скоро.
Не согласен с вами. Юзер как раз не должен понимать потроха вещей которыми пользуется, юзеру не нужно понимать как работает двигатель его машины что бы ездить, веб-разработчику как устроен процессор и память его планшета, а бабуле каким образом на её пенсионную карточку приходит пенсия каждый месяц.

Успех нового софта напрямую зависит от удобства использования юзером, это важнее всего прочего, рекламы, команды и тд. Причем юзер предполагается совсем наивный, ребёнок 10 лет со смартфоном или чуток диментная бабуля совецкого воспитания, все они должны быть в состоянии разораться с софтом, максимум за пол часа, тогда это будет бомба.

На картинке же топик-стартера бинарный код в консоли. Shocked Shocked Shocked
Excimer
Sr. Member
****
Offline Offline

Activity: 1064
Merit: 332


View Profile
February 23, 2021, 12:57:15 PM
 #8

может из этого отдельный кейс сделать? или вообще мобильную апку?
Тебе зачем? Им виднее, они кодеры. Ты лучше передай лудоману Дмитрию Васильеву чтобы деньги вернул
avadhuta (OP)
Newbie
*
Offline Offline

Activity: 19
Merit: 11


View Profile
February 25, 2021, 11:25:52 AM
Last edit: February 25, 2021, 02:47:50 PM by avadhuta
Merited by neiros (5), Symmetrick (2), klarki (1)
 #9

может из этого отдельный кейс сделать? или вообще мобильную апку?

Картинка на первый взгляд выглядит устрашающе, как хардовое сисадминство.

Если хотите что бы программа была интересной другим, а не только вам лично, сделайте её предельно простой, без JSON и бинарного кода в ответах, вы что издеваетесь?

Кроме того ИМХО десктоп уже не в тренде, 90% пипла всё делают на смартфонах и вебе на крайняк, процесс "скачивания" или "инсталяции" остался в 20м веке, всё в браузере должно быть, никакого напряга, общее настроение такое: "пипил кайф ловит, а между делом на тусовке с депутатами и фотомоделями, одним касанием пальчика по экрану, миллионы баксов делает на битке", такова новая парадигма, никакого напряга, всё в кайф, без мышек, клавиатур и консолей, это ключ к юзеру 21го века.

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

На счет консоли и "сисадминства" Вы от части правы, я сделал вариант с GUI а из консольного варианта убрал код транзакции, это действительно лишнее, суть была в том что хекс можно было самостоятельно запушить через ТОР для параноиков, но нужно просто прикрутить такую логику в апке.

В общем я сподобился выложить бетку на гитхаб https://github.com/avadhuta/BtcIO/releases

И пример использования с тестовой сетью на ютуб(с майновой работает аналогично):

Для консоли https://youtu.be/Mnm2dWqRP8g

Для варианта с GUI https://youtu.be/JiTr551-veE

screenshots:
https://i.imgur.com/ZxuXYuV.jpeg
https://i.imgur.com/6evZ7YW.jpeg
https://i.imgur.com/M8tslVi.jpg
https://i.imgur.com/kjvhsnS.jpg


Прошу заценить  и прокоментить, кому не лень.  Smiley
gov
Member
**
Offline Offline

Activity: 196
Merit: 40


View Profile
March 05, 2021, 11:47:56 AM
Last edit: March 05, 2021, 11:58:29 AM by gov
 #10

может из этого отдельный кейс сделать? или вообще мобильную апку?

Картинка на первый взгляд выглядит устрашающе, как хардовое сисадминство.

Если хотите что бы программа была интересной другим, а не только вам лично, сделайте её предельно простой, без JSON и бинарного кода в ответах, вы что издеваетесь?

Кроме того ИМХО десктоп уже не в тренде, 90% пипла всё делают на смартфонах и вебе на крайняк, процесс "скачивания" или "инсталяции" остался в 20м веке, всё в браузере должно быть, никакого напряга, общее настроение такое: "пипил кайф ловит, а между делом на тусовке с депутатами и фотомоделями, одним касанием пальчика по экрану, миллионы баксов делает на битке", такова новая парадигма, никакого напряга, всё в кайф, без мышек, клавиатур и консолей, это ключ к юзеру 21го века.

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

На счет консоли и "сисадминства" Вы от части правы, я сделал вариант с GUI а из консольного варианта убрал код транзакции, это действительно лишнее, суть была в том что хекс можно было самостоятельно запушить через ТОР для параноиков, но нужно просто прикрутить такую логику в апке.

В общем я сподобился выложить бетку на гитхаб https://github.com/avadhuta/BtcIO/releases

И пример использования с тестовой сетью на ютуб(с майновой работает аналогично):

Для консоли https://youtu.be/Mnm2dWqRP8g

Для варианта с GUI https://youtu.be/JiTr551-veE

screenshots:





Прошу заценить  и прокоментить, кому не лень.  Smiley
Ну вот, немного получше стало, не так пугающе, гуи рулит верно ведь?

Но всё равно пока сырая поделка, если комментировать по взрослому, то сложно с чего начать, всё пока на уровне поделки, на уровне "самоудовлетворения"(сам написал сам юзаю), до продакшина очень далеко.

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

Второе, у вас в коде простым ГСЧ создаётся сид-фраза, это фэйспалм, такие приваты хакаются на раз-два. Почитайте про "энтропию" и как это делается в серьёзных приложениях.

https://github.com/avadhuta/BtcIO/blob/master/BtcWalletTools/Tech.cs
Code:
        private static string[] words = ReadResource("words.txt").Split('\n');

        public static string RandomSeed()
        {
            var r = new Random();
            string res = "";
            for (int i = 0; i < 12; i++) res += words[r.Next(0, words.Length - 1)].ToLower() + (i < 11 ? " " : "");

            return res;
        }

 Shocked Shocked Shocked
avadhuta (OP)
Newbie
*
Offline Offline

Activity: 19
Merit: 11


View Profile
March 15, 2021, 12:04:16 PM
 #11

Ну вот, немного получше стало, не так пугающе, гуи рулит верно ведь?

Но всё равно пока сырая поделка, если комментировать по взрослому, то сложно с чего начать, всё пока на уровне поделки, на уровне "самоудовлетворения"(сам написал сам юзаю), до продакшина очень далеко.

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

Второе, у вас в коде простым ГСЧ создаётся сид-фраза, это фэйспалм, такие приваты хакаются на раз-два. Почитайте про "энтропию" и как это делается в серьёзных приложениях.

ГСЧ  поменял на более "сильный", позже добавлю юзерскую энтропию.

ИМХО копипаст ключей не более опасен чем ввод паролей от кошелька, если устройство атаковано(есть доступ к дискам и все действия пользователя доступны злоумышленнику)

Но возможно Вы правы, я подумаю над этим.
avadhuta (OP)
Newbie
*
Offline Offline

Activity: 19
Merit: 11


View Profile
March 27, 2021, 03:53:40 PM
 #12

Добавил пользовательскую энтропию, функционал открытия и сохранения кошельков, анонимные транзакции через TOR, скрыл WIF и seed.

https://www.youtube.com/watch?v=Oytmq7KVDPE
gov
Member
**
Offline Offline

Activity: 196
Merit: 40


View Profile
April 04, 2021, 10:34:49 AM
 #13

Добавил пользовательскую энтропию, функционал открытия и сохранения кошельков, анонимные транзакции через TOR, скрыл WIF и seed.

https://www.youtube.com/watch?v=Oytmq7KVDPE
Нафиг нужны поля с сидом и приватом, если они скрыты и есть кошелёк? Достаточно одного адреса и баланс туда же поместить, зачем разделять.




PS А где можно тестовых битков получить в большем количестве чем 0.01 ? Они же я так понимаю бесплатные, где их люди изначально берут?  Я слышал что битки тестовой сети прошлой версии уже продаются за деньги.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!