- Криптовалюта — как её создавать?
- Итак, начнём:
- Настройка генерации валюты
- Как создать собственную криптовалюту с нуля: все способы и пошаговая инструкция
- Как создать криптовалюту с нуля
- Чтобы создать собственную криптовалюту :
- Сколько стоит сделать криптовалюту
- Как создать новую криптовалюту на готовых платформах
- Ethereum
- Как сделать криптовалюту самому на Ethereum
- Плюсы системы:
- Минусы системы:
- Ripple
- Waves
- NEO
- Как самому создать криптовалюту на NEO
- Плюсы системы:
- Минусы системы:
- Можно ли создать свою криптовалюту бесплатно
- Рекомендации
Криптовалюта — как её создавать?
Я уверен, все знают, что такое криптовалюта, и возможно вы даже знаете, с чем её едят, и сами пользовались. В 2009 году благодаря Satoshi Nakamoto была создана всем известная Bitcoin, благодаря которой её автор заработал приличное состояние.
Конечно, сразу же после появления успешной инновации на рынке появляются другие похожие продукты. Так и произошло, тут же как грибы начали появляться новые криптовалюты, какие-то просто копировали идею Bitcoin и были бесполезной альтернативой (с технической точки зрения), какие-то привносили что-то своё. Но как ни странно, ажиотаж криптовалюты не стих. До сих пор в сети Интернет появляются всё новые и новые ресурсы, которые предлагают купить/пользоваться их валютой.
И следует логичный вопрос: если первая криптовалюта появилась в 2008 году, то ведь давно уже в сети Интернет должны существовать ресурсы с гайдами, уроками и примерами создания таких вещей.
Действительно, такое есть, но, к сожалению, все уроки сводятся к: “Придумай, купи на сайте, внедри” или “Придумай, скачай, пользуйся с друзьями” и так далее. И никогда не рассматривается подробный процесс создания. В общем-то, данной статьёй я и хотел бы исправить настоящее положение вещей и всё-таки привнести в русскоговорящее комьюнити такую информацию и рассказать людям, как же всё-таки можно создать свою валюту.
Причин создания криптовалюты может быть море:
1. Например, у вас есть свой игровой сервер, и, вы хотите таким образом создать реальную игровую валюту;
2. Вы действительно хотите на этом заработать;
3. Вас подогревает интерес и вы хотите просто знать нутро цифровой валюты;
Это первые причины, которые пришли мне в голову, если у вас есть и другие причины — пишите их в комментарии.
Признаюсь честно, всё же одна страничка с гайдом по созданию виртуальной валюты в Интернете мною была найдена. И, грубо говоря, эту статью можно назвать очень вольным переводом, только с дополнениями и тому подобное, так как в оригинальной статье много недочётов и пробелов.
По ходу написания статьи я также буду создавать криптовалюту для пущей наглядности, да и чтобы самому не сбиться. Ссылка на репозиторий.
Итак, начнём:
Скачивание базового кода
“First things first”, как написано в оригинальной статье, мы должны подготовить окружение для разработки. Если найти на github-е любую криптовалюту, то вы можете увидеть, какое огромное количество кода там храниться. Конечно же, мы не будем писать всё с нуля, не нужно изобретать велосипед, тем более мы и не сможем, пока сами хотя бы не попробуем сделать для него руль.
И пример криптовалюты мы легко можем найти на просторах того же github. Конечно же, такой код я нашёл и скопировал в свой репозиторий, и вам нужно склонировать его к себе. Кто умеет, те пропускают этот раздел, а кто не умеет, те читают спойлер:
Есть много способов получить исходный код с github, но я расскажу про самый понятный и простой:
Переходите по ссылке и находите кнопку “Download ZIP”. У вас скачивается ZIP-архив, внутри которого находится весь исходный код.
Если же вы всё-таки хотите научиться использовать все возможности github и git, то в помощь вам вот эта книга, но предупреждаю, что это затратно по времени.
Установка библиотек и зависимостей
Об этом говорить мне проще всего, так как сам работаю на Ubuntu. Установить зависимости не составляет труда:
1. Открываете терминал нажатием Ctrl+Alt+T;
2. Вводите следующее:
3. Жмёте Enter;
4. По ходу установки пакетов разрешаете установку и прочее-прочее.
Честно говоря, на Mac OS поработать возможности не было, так что я приведу вам ровно то, что было написано в оригинальной статье:
Чтобы установить библиотеки, от которых зависит базовый код, вам нужно воспользваться MacPorts или Homebrew. Сам автор статьи предпочитает MacPorts, объясняя это тем, что он проще, сразу устанавливает в /opt и потому что он устанавливает универсальные сборки по умолчанию. Если же вы выберите Homebrew, то автор советует установить флаг напортив 32-bit. Но пример по установке всё же приведён через MacPorts.
Вот список того, что нужно:
- boost (C++ libraries)
- db48 (Berkeley DB 4.8)
- qt4-mac (Open Source QT 4.8.4, includes qmake)
- openssl (ssl dev libraries)
- git (to move source back and forth to the repository)
- miniupnpc (UPNP dev libraries, optional–honestly I say skip this crap)
После установки автор рекомендует выполнить в консоли следующую команду:
Этот раздел будет чуть позже. В общем-то, все библиотеки и зависимости пригодятся нам позже — при сборке готового продукта, так что с этим я повременю, дабы не путать вас и себя.
Теперь, когда подготовка закончена, подойдём к самому главному — к редактированию кода.
Замена названия
Сейчас вы должны задуматься, как бы вы хотели, чтобы ваша криптовалюта называлась. Придумали? Отлично.
Базовый код, который вы скачали, является готовой, но ещё не скомпилированной криптовалютой, и эта криптовалюта называется FooCoin. Всё, что вам нужно сделать: это заменить везде в базовом коде названия FooCoin, Foo и т.д. на название вашей криптовалюты. Конечно, делать это вручную в 10 000 строках кода – дело долгое и бессмысленное.
Хорошо, что добрые люди давно облегчили нам задачу и сделали программы, которые позволяют массово заменять строки в файлах на другие.
Моя криптовалюта называется PuffCoin. Вот список тех слов, которые я буду заменять на свои:
Советую и вам составить подобный список.
Для замены есть множество программ, я сейчас перечислю некоторые.
Для Linux есть Regexxer (бесплатно). Для Mac OS — TextWrangler (её предлагает автор оригинальной статьи, бесплатно). Для Windows нашёл много, например: Search and Replace, Actual Search & Replace, HandyFile Find and Replace, NHRPLC. Надеюсь, проблем с их использованием не будет.
Также стоит переименовать файл foocoin-qt.pro на ***coin-qt.pro, написав название нижним регистром.
Выбор и настройка сетевых портов
Отлично, теперь перейдём к самому важному и интересному — технической стороне кода. Надеюсь, что сейчас перед вами открыта папка с базовым кодом.
Так как любые операции с цифровой валютой так или иначе происходят через какую-либо сеть, то для нашего приложения нужно указать сетевые порты, через которые все операции будут происходить.
Вам нужно выбрать 4 порта: два для P2P и RPC, и два для тестовых P2P и RPC (testnet) соединений. Конечно, порты нужно выбрать такие, чтобы они точно не использовались каким-нибудь другим приложением. Для этого можете перейти по ссылке и посмотреть, какие порты свободны. Лично я сделаю так же, как и автор оригинальной статьи, и для RPC выберу 55883 порт, для P2P выберу 55884 порт, а для testnet: RPC — 45883, P2P — 45884.
Для указания того, что нужно использовать именно эти порты, нужно заменить несколько строчек в некоторых файлах по примеру, приведённому ниже:
Файл src/bitcoinrpc.cpp: (RPC порт)
В следующей строке вы можете указать любой первоначальный адрес, по которому вы можете проверить дополнительные адреса. Если честно, то я не понял, для чего это, но у меня работало всё и без этого, так что это не обязательный параметр. Если кто может объяснить, то отпишитесь в комментариях. Заранее спасибо!
Файл src/net.cpp:
Строка 1000:
Настройка генерации валюты
Теперь перейдём к настройкам самой генерации вашей валюты. Каждая валюта генерируется в блоках, а в каждом блоке находится какое-то количество валюты.
В следующей строке вы можете изменить количество валюты, которое выдаётся за генерацию одного блока. Для этого вам просто нужно изменить:
Файл src/main.cpp:
Так как наша валюта является “крипто-”, значит, все транзакции происходят закрыто и только с использованием ключей. У каждого пользователя валюты есть публичный и приватный ключи. В коде у нас есть возможность самим установить, какой первый байт публичного ключа у нас будет. Это может быть символ или цифра. Выбрать цифру или символ можно из таблицы. Слева от символов “Character” стоят их числовые значения “Value”. Выберите символ и запомните его числовое значение. Так как моя криптовалюта называется PuffCoin, то я выбрал себе символ P, а его значение — 22.
Теперь нужно заменить на ваше значение следующую строку:
Файл src/base58.h:
Замена иконок и изображений
На выходе у нас будет готовое GUI приложение для пользователя и консольное приложение, используемое как для сервера, так и для клиента.
Для GUI тоже есть ресурсы, которые находятся в папке src/qt/res. Там хранятся иконки для приложения. Вы можете заменить какие-нибудь иконки своими, главное – это такое же имя и разрешение.
Также автор оригинальной статьи предлагает воспользоваться специальной утилитой для конвертирования иконок.
На этом первая часть гайда закончена. Надеюсь, что вскоре появится и вторая. Постараюсь сделать это побыстрее.
Источник
Как создать собственную криптовалюту с нуля: все способы и пошаговая инструкция
Создание криптовалюты — это комплекс операций, включающий написание кода, создание инфраструктуры и вывод монеты на рынок. Новую монету запускают для:
- Проведения ICO;
- Применения во внутренней деятельности предприятия;
- Внедрения нового технического решения в код;
- Удачной маркетинговой кампании с последующим заработком.
Кто-то воспринимают запуск частного токена как новый опыт в программировании или маркетинге и делают это для прокачки навыков. Кто-то вообще создает монеты фана ради — как было с Dogecoin.
Как создать криптовалюту с нуля
Чтобы создать собственную криптовалюту :
- Определимся, для чего она нужна.
- Выберем способ создания криптовалюты.
- Получим уникальный код.
- Продумаем маркетинговую кампанию.
- Организуем листинг на биржах и платформах, если нужно.
Каждый из этих этапов мы подробнее разберем, чтобы облегчить креативному и предприимчивому читателю извилистый и тернистый путь автора криптовалюты.
Сколько стоит сделать криптовалюту
Перед тем как создать свою крипту , необходимо рассчитать, что для этого нужно приобрести из технического обеспечения, а что у вас уже есть, что будет оптимально для выполнения вашей задачи. От этих расчетов зависит, сколько стоит сделать криптовалюту .
Кроме технического обеспечения, стоимость создания криптовалюты зависит от затрат на электроэнергию, которая будет тратиться в процессе работы.
Курс цифровых денег не зависит от внешних экономических факторов, государств, скачков доллара, и ничем реальным (тем же золотом) цифровые деньги не обеспечиваются. До того как создать свою монету криптовалюты , вы должны быть готовы к тому, что ее курс зависит от спекуляций и человеческого фактора: есть интерес, ажиотаж, интрига – курс растет, нет интереса – падает.
Как создать новую криптовалюту на готовых платформах
Чтобы добавить на ваш сервис внутреннюю монету, или собрать средства на реализацию через ICO, можно использовать специальные платформы.
Например, монеты TRON и EOS не были сначала классическими цифровыми валютами. Эти токены были разработаны для проведения взаиморасчетов между участниками проектов.
Популярные площадки для разработки:
Ethereum
Этот блокчейн разработал канадско-российский программист Виталик Бутерин. Он предложил технологию смарт-контрактов — самоисполняющихся алгоритмов, предназначенных для заключения и поддержания коммерческих контрактов в технологии блокчейн. Благодаря этой разработке сеть Ethereum стала второй по популярности платформой на крипторынке не только среди стартапов, желающих провести ICO, но и среди крупнейших разработчиков ПО, как Microsoft, IBM и Acronis.
Как сделать криптовалюту самому на Ethereum
Создать криптовалюту на Ethereum нетрудно, желательно знать язык программирования Solidity и придерживаться стандартов ERC. Популярный ERC-20 поддерживает многие функции.
- Сначала нужно придумать название валюты и выбрать тикер — три или четыре буквы, которые будут кратко обозначать монету.
- Затем нужно установить максимальное значение токенов: сколько их будет существовать в природе.
- Определить, будет ли у монеты деление на мелкие части, как рубль делится на копейки или доллар — на центы. Если да, то на сколько частей можно поделить одну единицу.
- Готовые данные нужно перенести в смарт-контракт на GitHub. Для этого необходимо скачать два документа, которые заканчиваются на .sol. Вставляем данные шести публичных переменных:
- name — имя токена;
- symbol — символ, сокращённое название;
- decimals — количество символов после запятой;
- totalSupply — общее количество единиц токена;
- balanceOf — маппинг (процесс составления схемы того, какими данными нужно обмениваться, как они будут использоваться), который содержит балансы адресов;
- allowance — маппинг, который содержит данные о разрешениях на трату средств с чужих адресов.
- Затем нужно задеплоить данные, то есть развернуть их на платформе. На выпуск монеты уйдет около 15–20 минут.
Плюсы системы:
Преимущества сети Ethereum лежат на поверхности: популярный блокчейн — самый надежный для создания криптовалюты.
Минусы системы:
- Из-за возросшей на 700% популярности сеть испытывает большие перегрузки. Все транзакции совершаются медленно — от 15 минут и более, они становятся невыгодными из-за постоянно возрастающей комиссии за переводы. Поэтому многие проекты закрываются на этапе создания и отказываются от идеи выпуска токенов.
- Сеть требует знаний, поэтому создание монет на Ethereum нельзя назвать процессом «в один клик».
Ripple
Платформа Ripple основана на доверии (trust). Реестр площадки (XRP Ledger) представляет собой «кредитную сеть». Он предназначен для выпуска «кредитов» для токенов, созданных на основе его платформы.
Своя криптовалюта нужна для услуг, товаров и другое. «Кредиты» представляют собой электронные долговые обязательства. Эмитент гарантирует выплатить держателю токена оговоренную ценность.
В Ripple вы не сможете сразу раздавать токены. Пользователь, выпустивший собственную валюту, должен создать «линию доверия» (trustline). При формировании последней получатель должен указать в настройках своего кошелька адрес «портмоне» эмитента.
Waves
Платформа отличается высокой скоростью транзакций и настолько удобными инструментами, что создать криптовалютный токен на ней может даже новичок. На этом ее плюсы заканчиваются.
Waves не выпускает токены стандарта ERC-20, как Эфириум. Значит, торговать ими можно только на внутренней бирже платформы DEX, аудитория которой не так многочисленна и платежеспособна, как аудитория Ethereum. Токены вы создадите, но с их реализацией возникнут трудности.
NEO
Другой альтернативной площадкой для создания криптовалюты является NEO. Её называют китайским Ethereum за схожую функциональность систем и предназначение.
Как самому создать криптовалюту на NEO
Создания собственных криптомонет не отличается от Ethereum. Единственное, для выпуска монет на NEO необходимо соблюдать стандарт NEP-5.
- Зайдите на сайт NEO, нажмите на вкладку Client.
- Скачайте документы из раздела NEO-GUE и NEO-CLI.
- Заполните данные о монете и поместите их на GitHub.
Плюсы системы:
В отличие от главного конкурента — Ethereum, китайская платформа NEO поддерживает несколько языков программирования: Java, F#, C#, Kotlin, VB.Net, Microsoft.net, Go и Python. Это выгодно компаниям, которые хотят выпустить свои монеты. NEO поддерживает 1 000 транзакций в секунду и не берёт транзакционные сборы.
Минусы системы:
- Чтобы запустить токен на NEO, нужно заплатить около 500 монет GAS — токен сети, с помощью которого взимается комиссия (в зависимости от курса). Создание собственных активов на этой платформе занимает много времени.
- Пользователи сомневаются в децентрализованности платформы, так как все монеты проекта принадлежат компании OnChain. Значит, выпущенную монету на NEO будет контролировать закрытое комьюнити компании, а это противоречит принципу криптовалюты.
Можно ли создать свою криптовалюту бесплатно
Без вложений возможен запуск форка криптовалюты или разработка полностью оригинального собственного блокчейна . Чтобы создать крипту, требуются углубленные знания в программировании, много времени и усилий.
Оптимально для новичков без крупного капитала — использование базы Ethereum.
Рекомендации
- Проекту требуется «фишка», которая позволит клиентам найти что-то новое.
- Создать идею помогут обсуждения на тематических форумах, где можно узнать основные нужды держателей цифровых монет.
- Со способом разработки необходимо определиться заранее.
- Подбирать команду нужно тщательно.
- До запуска нужно найти майнеров, чтобы сеть могла стабильно работать.
- Для привлечения инвесторов можно использовать краудфандинговые площадки.
Глядя на курсы криптовалют и прогнозы на биржах, у многих возникает желание создать собственную криптовалюту. В реальности процесс не сложен. Есть много инструментов и сервисов, которые позволяют без знаний и с минимальными вложениями запустить новую цифровую валюту.
Источник