Bitcoin Forum
June 25, 2024, 10:00:19 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 [3] 4 5 6 7 8 9 10 »  All
  Print  
Author Topic: 📢 ⒶAtom - пишу свою крипту ⛏️⛏️⛏️  (Read 23876 times)
lapitsky (OP)
Member
**
Offline Offline

Activity: 202
Merit: 27

Atom foundation


View Profile
May 04, 2018, 08:54:38 PM
 #41

5. Сокеты, сокеты, они такие сокеты

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

Что оказалось полезно, для цельного понимания
http://micromind.me/posts/writing-python-web-server-part-1
https://www.youtube.com/watch?v=_vAjHdh92YU

По итогу, в сухом остатке, код на питоне выглядит так:
Code:
#!/user/env python3
# -*- coding: utf-8 -*-

import socket
import time
import threading

#
# Ждем сообщения от ноды 1264
#
def server():
    # слушаем и отправляем данные
    s = socket.socket(socket.AF_INET,      # задамем семейство протоколов 'Интернет' (INET)
                          socket.SOCK_STREAM,  # задаем тип передачи данных 'потоковый' (TCP)
                          proto=0)
    host = socket.gethostname()
    print(host)
    port = 1264
    s.bind((host, port))

    s.listen(5)


    while True:
        c, addr = s.accept()
        c.send(b'Answer from node 1, adr: ' + str(addr).encode())
        while True:
            # Пока клиент не отключился, читаем передаваемые
            # им данные и отправляем их обратно
            data = c.recv(1024)
            if not data:
                # Клиент отключился
                break
            else:
                print(data.decode())

#
# Отправляем сообщения ноде на 1265 порту
#
def client():
    while True:
        s_get = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        host = socket.gethostname()
        port = 1265
        while True:
            try:
                s_get.connect((host, port))
                break
            except ConnectionRefusedError:
                time.sleep(10)
                print ('Try connect')

        s_get.sendall(b'Msg from node 1')
        data = s_get.recv(1024)
        s_get.close()
        print('Received', repr(data.decode()))
        time.sleep(10)


if __name__ == '__main__':
    my_thread_server = threading.Thread(target=server, args=())
    my_thread_client = threading.Thread(target=client, args=())
    my_thread_server.start()
    my_thread_client.start()

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

⚡⚡⚡
Atom - пишу свою крипту, присоединяйся в ополчение - https://bitcointalk.org/index.php?topic=3428149.0
⚡⚡⚡
BelarusToken
Jr. Member
*
Offline Offline

Activity: 280
Merit: 3


View Profile
May 04, 2018, 09:09:04 PM
 #42

с возвращением, бро! Пожалуй самая интересная тема на БТТ, лично для меня. Продолжай в том же духе, успехов!
lapitsky (OP)
Member
**
Offline Offline

Activity: 202
Merit: 27

Atom foundation


View Profile
May 05, 2018, 10:14:56 AM
 #43

6. Консенсус

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

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

Пока займусь первым и вторым пунктом, а именно достижения консенсуса в номере следующей транзакции


с возвращением, бро! Пожалуй самая интересная тема на БТТ, лично для меня. Продолжай в том же духе, успехов!

Спасибо, бро


⚡⚡⚡
Atom - пишу свою крипту, присоединяйся в ополчение - https://bitcointalk.org/index.php?topic=3428149.0
⚡⚡⚡
lapitsky (OP)
Member
**
Offline Offline

Activity: 202
Merit: 27

Atom foundation


View Profile
May 11, 2018, 08:05:37 PM
Last edit: May 11, 2018, 09:34:16 PM by lapitsky
 #44

7. ZeroMQ или сокеты на стероидах
1. Вобщем до сих пор не написал и кусочка кода, так как не могу понять, как лучше заставить общаться ноды p2p. Изучив тонны решений, пришел к выводу, что стоит использовать ZeroMQ, так как он имеет готовое решение для python в виде модуля pyZMQ.
http://zguide.zeromq.org/py:all - Параллельно стал переводить эту статью, так как руководства по zeromq на русском нет, по крайней мере толкового. Юмор создателей этого сокета на стероидах , зашкаливает, так что проект мне по духу и я рад что он станет частью атома.
2. параллельно разрабатываю свой алгоритм консенсуса, который уже вырисовывается в что-то похожее на правду, чуть позже опишу принцип его работы, так как сейчас он сырой.
3. к проекту Атом, присоединился дизайнер и у нас теперь есть логотип, пока все по фану, так и логотип будет по фану https://psv4.userapi.com/c848016/u63431/docs/d3/880bd34f7d0b/asdasdasd.png
первый кто углядит смысл логотипа, получит потом атомов  Cheesy







⚡⚡⚡
Atom - пишу свою крипту, присоединяйся в ополчение - https://bitcointalk.org/index.php?topic=3428149.0
⚡⚡⚡
imhoneer
Legendary
*
Offline Offline

Activity: 2604
Merit: 1516



View Profile
May 12, 2018, 11:16:27 AM
 #45

Ссылка на логотип не рабочая.



         ▄▀▀▀▀▀▀▀▀▀▀▀▀▀▄      
        █  █▀▀▀▀▀▀▀█  █        
       ▄▀▀▀▀▄     ▄▀▀▀▀▄      
▄▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▄
█ ▄▀▀▀▀▀▀▀▀▀ ▄▄▄▄▄ ▀▀▀▀▀▀▀▀▀▀ █
█ ▀        ▄▀ ▄ ▄ ▀▄          █
█▄▄▄      █   █▀█   █      ▄▄▄█
 █  ▀▀▀▄▄▄█   █▀▀▄  █▄▄▄▀▀▀  █
 █        █   █▄▄█  █        █
 █         ▀▄ ▀ ▀ ▄▀         █
 █           ▀▀▀▀▀         █ █
 █ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀ █
 ▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀
    ▀▀                   ▀▀  



Arbitrum Balance
/



             ▄▄████▄▄
         ▄▄████████████▄▄
      ▄██████████ █████████▄
█▀█▄▄▄███████████ █▀█▀██████
▀▀▀         ▀████      ▀████
▀▀▀▀▀▀▀▀█▀▀▄    █ ████  ████
     ▄▄▄ ▀▄ ▀▀▀▀█        ███
     █▄█   ▀▀▀▀▀█ █████  ███
▄▄▄▄▄▄▄▄█▄▄▄▄▄▄▄█       ▄██
   ▄▄▄     ▄█████ █▄█▄████
   █▄█▀▀▀▀███████ ██████▀
            ▀████████▀▀
              ▀▀██▀▀

           


imhoneer investment fund
/


   ▄▄███████████████▄▄
 ▄█████████████████████▄
▄██████████████▀▀███████▄
████████████▀▀    ███████
█████████▀▀   ▄   ███████
██████▀▀     █    ███████
████▀       █     ███████
█████▄▄   ▄█      ███████
████████ ██▄      ███████
▀████████ ▀▄███▄▄███████▀
 ▀█████████████████████▀
   ▀▀███████████████▀▀


Telegram-канал @imho_idea
rumkin
Jr. Member
*
Offline Offline

Activity: 54
Merit: 1


View Profile WWW
May 12, 2018, 02:07:13 PM
 #46

Используйте веб-сокеты. Это позволит обеспечить совместимость с наибольшим количеством программ/устройств. В отличие от ZeroMQ WebSocket уже встроен в браузеры, что позволит создать коммуникацию между нодами и кошельками без посредников. Это сильно облегчит задачу разработчикам по интеграции вашего продукта: много кто знает как работать с ws, а с zeromq - работали несколько тысяч разработчиков.

Для Python есть библиотека websockets. Она поддерживается в актуальном состоянии. Если не можете разобраться – stackoverflow в помощь.

Удачи.

Blockchain Developer | https://rumk.in
swetkalukashova
Newbie
*
Offline Offline

Activity: 238
Merit: 0


View Profile
May 12, 2018, 06:04:49 PM
 #47

Полезный топик, хоть идеи и нету но можно паралельно вашим описаниемлюдям которые вообще ничего не понимают начать развиваться, так сказать краткий курс для начинающих)
lapitsky (OP)
Member
**
Offline Offline

Activity: 202
Merit: 27

Atom foundation


View Profile
May 12, 2018, 08:11:52 PM
 #48

Ссылка на логотип не рабочая.

починил, должно работать

Используйте веб-сокеты. Это позволит обеспечить совместимость с наибольшим количеством программ/устройств. В отличие от ZeroMQ WebSocket уже встроен в браузеры, что позволит создать коммуникацию между нодами и кошельками без посредников. Это сильно облегчит задачу разработчикам по интеграции вашего продукта: много кто знает как работать с ws, а с zeromq - работали несколько тысяч разработчиков.

Для Python есть библиотека websockets. Она поддерживается в актуальном состоянии. Если не можете разобраться – stackoverflow в помощь.

Удачи.
Да, я смотрел в сторону websocket и как я понял, zeroMQ решает сразу много проблем без сложного кода. очереди, потоки итд
SockJS позволяет принимать сообщения от ZeroMQ сервера. Я буду использовать его, в таком случае не будет проблем с websocket?

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

в целом да, именно так) идея пока потихоньку вырисовывается, додумываю консенсус, некий гебрид POW для малых групп нод.

⚡⚡⚡
Atom - пишу свою крипту, присоединяйся в ополчение - https://bitcointalk.org/index.php?topic=3428149.0
⚡⚡⚡
rumkin
Jr. Member
*
Offline Offline

Activity: 54
Merit: 1


View Profile WWW
May 12, 2018, 08:40:51 PM
 #49

Да, я смотрел в сторону websocket и как я понял, zeroMQ решает сразу много проблем без сложного кода. очереди, потоки итд
SockJS позволяет принимать сообщения от ZeroMQ сервера. Я буду использовать его, в таком случае не будет проблем с websocket?

Не должно. В принципе ZMQ надежная и проверенная в работе технология, поэтому с ней проблем не должно возникнуть. 

Blockchain Developer | https://rumk.in
d1ma199696
Newbie
*
Offline Offline

Activity: 24
Merit: 0


View Profile WWW
May 14, 2018, 05:09:31 AM
 #50

Что ж, желаю успехов в твоём начинании.
kirillkurak
Jr. Member
*
Offline Offline

Activity: 182
Merit: 1


View Profile
May 14, 2018, 08:33:46 AM
 #51

воу.успехов тебе друг.буду следить за этой веткой
lapitsky (OP)
Member
**
Offline Offline

Activity: 202
Merit: 27

Atom foundation


View Profile
May 15, 2018, 11:06:51 PM
 #52

Да, я смотрел в сторону websocket и как я понял, zeroMQ решает сразу много проблем без сложного кода. очереди, потоки итд
SockJS позволяет принимать сообщения от ZeroMQ сервера. Я буду использовать его, в таком случае не будет проблем с websocket?

Не должно. В принципе ZMQ надежная и проверенная в работе технология, поэтому с ней проблем не должно возникнуть. 

Ок, изучаю эту тему, не просто разобраться, на русском очень мало информации, точнее практически нет.

Что ж, желаю успехов в твоём начинании.

воу.успехов тебе друг.буду следить за этой веткой

 Wink спасибо

⚡⚡⚡
Atom - пишу свою крипту, присоединяйся в ополчение - https://bitcointalk.org/index.php?topic=3428149.0
⚡⚡⚡
krasik
Newbie
*
Offline Offline

Activity: 90
Merit: 0


View Profile
May 16, 2018, 03:08:38 PM
 #53

Хорошая идея,я вас поддерживаю.Сам пишу крипту,как по мне,здесь самое главное разобраться что к чему.
lapitsky (OP)
Member
**
Offline Offline

Activity: 202
Merit: 27

Atom foundation


View Profile
May 16, 2018, 03:10:27 PM
 #54

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

На чем пишите? Какие инновации собираетесь вносить в свою крипту?

⚡⚡⚡
Atom - пишу свою крипту, присоединяйся в ополчение - https://bitcointalk.org/index.php?topic=3428149.0
⚡⚡⚡
Mafik777
Newbie
*
Offline Offline

Activity: 117
Merit: 0


View Profile WWW
May 16, 2018, 05:07:27 PM
 #55

Интересный топик, будут следить за твоими успехами, молодец и удачи тебе.
bugor3113
Newbie
*
Offline Offline

Activity: 56
Merit: 0


View Profile
May 16, 2018, 05:57:25 PM
 #56

КрасавчеГГГ Wink Wink Wink Больше половины не понимаю из того что пишешь, но уверен что у тебя все получится))) Про идею не парься, не думаю что Сатоши занимаясь битком ставил себе какие то конкретные цели, да и много прорывов делалось сначала на коленке для себя... Т.ч. к хорошему продукту идея сама прикрутится по дороге)))

Кстати как тебе идея прям тут в топике устроить конкурс на лучшую идею, а автору потом монеток своих отсыпишь от души)))

И маленький советик - присмотрись к WAVES, точней его возможности на его базе создавать свои токены с обеспечением в твоих атомах. А если еще будет предусмотрена возможность выпуска пластиковых карт, да чтоб на одной карте и Атом Пятерочки и Атом Спортмастера и куча других атомов от крупных продавцев, так вообще бомба будет, а толопатник уже в карман не влазит, а по факту там только карты разных магазинов с бонусами...(кстати если будет конкурс идей, то эту тоже можешь считать)
nrgmanuk
Jr. Member
*
Offline Offline

Activity: 200
Merit: 1


View Profile
May 16, 2018, 06:28:45 PM
 #57

Вот это плюс,я тоже разрабатываю,но пока только на старте.Желаю удачи,буду следить за результатами.
lapitsky (OP)
Member
**
Offline Offline

Activity: 202
Merit: 27

Atom foundation


View Profile
May 16, 2018, 09:19:20 PM
 #58

Интересный топик, будут следить за твоими успехами, молодец и удачи тебе.

 Roll Eyes

КрасавчеГГГ Wink Wink Wink Больше половины не понимаю из того что пишешь, но уверен что у тебя все получится))) Про идею не парься, не думаю что Сатоши занимаясь битком ставил себе какие то конкретные цели, да и много прорывов делалось сначала на коленке для себя... Т.ч. к хорошему продукту идея сама прикрутится по дороге)))

Кстати как тебе идея прям тут в топике устроить конкурс на лучшую идею, а автору потом монеток своих отсыпишь от души)))

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

Привет, спасибо за поддержку!  Smiley
Создаю свою идею, без какой-либо цели, иллюзий не питаю. Поэтому waves пока не рассматриваю и если надумаю выпускать токены под краудфандинг (как вариант), то буду изучать waves, как один из способов.  Wink
А в целом, чем дальше в лес, тем больше становится понятна технология блокчейн, а это уже очень большой профит.

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

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

⚡⚡⚡
Atom - пишу свою крипту, присоединяйся в ополчение - https://bitcointalk.org/index.php?topic=3428149.0
⚡⚡⚡
lapitsky (OP)
Member
**
Offline Offline

Activity: 202
Merit: 27

Atom foundation


View Profile
May 16, 2018, 09:37:03 PM
 #59

Завел отдельную ветку по вопросу консенсуса
https://bitcointalk.org/index.php?topic=3867866.0

⚡⚡⚡
Atom - пишу свою крипту, присоединяйся в ополчение - https://bitcointalk.org/index.php?topic=3428149.0
⚡⚡⚡
Cora_ED
Jr. Member
*
Offline Offline

Activity: 140
Merit: 1


View Profile
May 17, 2018, 04:23:41 AM
 #60

Интересный топик, будут следить за твоими успехами, молодец и удачи тебе.
Присоединяюсь. Я тут теперь  Smiley
Pages: « 1 2 [3] 4 5 6 7 8 9 10 »  All
  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!