Bitcoin Forum
July 04, 2024, 04:56:12 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 [23] 24 25 26 27 28 29 30 31 32 »
441  Alternate cryptocurrencies / Altcoin Discussion / Re: *** Complete Guide on How to Create a New Alt Coin *** on: June 26, 2019, 04:52:24 AM
What version of Bitcoin are you forking?
442  Local / Développement et technique / Re: Comment faire une attaque à 51% on: June 25, 2019, 03:12:02 AM
Combien de full nodes tu as attaqué, et donc combien d'instances ont été nécessaire pour obtenir les 51%
443  Alternate cryptocurrencies / Announcements (Altcoins) / Re: [ANN][KYF] Kryptofranc, the "popular" is released (BOUNTY) on: June 24, 2019, 08:10:34 AM
 Shocked Shocked Shocked

Wrong, please do not assume. We are individuals with a name, an address, and we have a reputation. Search our names on the Internet.

We have funded this project with our own money, and we need more funds to continue. We could do an ICO but the French authority are asking to wait after September 2019.
So we come with this solution. KYF will be in exchanges soon, and the ones who do not believe in us will think "if I knew".
Because that's the time to join and support us... in 2 years, you will not make that much profit.

 It is just starting, I know that there are a lot of scam out there, but give us the benefit of doubt  Roll Eyes

And Btw we have a game... if you give me a KYF address, I will send you 1000 KYF.
If you send me the 1000 KYF back, I will send you 2000 KYF.
And if you send me the 2000 KYF, I will send you 5000 KYF back.

It is fun, and shows that everything is working. Pool, Wallets on 3 platforms... enjoy the game!

444  Alternate cryptocurrencies / Altcoin Discussion / Libra, quick analysis and opinion on: June 23, 2019, 05:10:47 PM


This analysis is based on this https://developers.libra.org/docs/welcome-to-libra
And this https://github.com/libra/libra

This is my opinion, in 10 minutes after looking at the code and the documentation. Feel free to criticize or correct me.

Libra is not real peer to peer.
The nodes are communicating with the validators. Validators are controlling the network and the execution of the Move scripts smart contract bytecode. Who controls the Validators? Facebook and a limited number of authorized nodes. Who authorize these nodes?

Also there is no POW (proof of work) and no mining. So what makes the blocks safe to hacking and decryption? Nothing apparently. Bitcoin is safe because the miners are doing a work that would be necessary to reproduce to modify a transaction.
Libra has no POW, so anyone having the private key can cancel, rewrite or modify a transaction. You can bet that the US gov will have the private keys and Facebook too.

The Move language is what Solidity is at Ethereum. Centralized smart contracts that are open doors to scammers. Practically a smart contract owner can execute whatever he wants. It is centralized banking. Move is compiled in bytecode.

Under the illusion of a blockchain, peer to peer, with a shared consensus and blah blah blah... the reality is a centralized validators system, peer to peer is limited to local storage of the database, no proof of work only a private key can edit any transaction...
They use mempool like Bitcoin, but the whole Libra package is written in RUST... it is fast about the same speed than C++. They have written a blockchain in Rust... that's the interesting part.


I don't feel that we have progressed much since 2008.
I think that the Bitcoin Core team will check what Libra does and if something has to be improved, they will do it in the versions to come.

It is a quick opinion.
445  Alternate cryptocurrencies / Announcements (Altcoins) / Re: [ANN][KYF] Kryptofranc, the "popular" is released. on: June 23, 2019, 03:45:42 PM
Hi, I am new here, and I like the idea, how could I mine this coin?

Mining is private until the block 52000, after it will be open bar for anyone. Contact me in private or in Discord for more info. Entry for the private mining ticket is 1 BTC. See it like an investment that helps us to fund the project.
We are doing 5177 blocks every 2.5 minutes. Do the maths, with a goal at 0.1789 KYF for 1 BTC. It may sounds expensive now that BTC is > 10k, but by our calculation you might change 1 BTC into 10 M+ KYF  in 1 month of mining with us if we reach our goal value do the maths!
446  Local / Annonces / [ANN][KYF] Kryptofranc, le "populaire" est sorti. on: June 23, 2019, 08:19:03 AM

 https://kryptofranc.com

  Caractéristiques principales:

- Kryptofranc est une véritable blockchain originale, avec ses propres certificats, genèse et fonctionnalités.
- Kryptofranc a miné 1/4 de la valeur totale (si on compare avec le nombre de pièces extraites dans 10 ans) qui sera remise à de nombreuses ONG sur une période de 10 ans. Cela se fera de manière transparente via un système de vote en ligne et la gestion du KYF prédéfini sera confiée à une fondation dotée d'une représentation légale en France.
- Kryptofranc mine à l'infini, notre simulation montre qu'il continuera de miner et de récompenser les mineurs dans 10 000 ans. Pas de changement de POW à POS, pas de risque existentiel a l'horizon.
- Kryptofranc extrait un bloc toutes les 2,5 minutes. Nous minons actuellement 5177 blocs toutes les 2,5 minutes.
- Le prix cible de Kryptofranc, en supposant que nous aurons environ 1 milliard de KYF en circulation dans un an et que nous serons dans le top 100 des crypto-monnaies est de 0,1789 KYF pour 1 BTC.
- Kryptofranc a la garantie d'être une pièce populaire, en raison de la presse et des millions de personnes concernées par les dons, les ONG sont invitées à envoyer un courrier électronique à leurs utilisateurs et à communiquer à propos du KYF pour obtenir leur don gratuit.
- Kryotofranc ajuste sa difficulté toutes les 20 minutes.
- Kryptofranc est basé sur Bitcoin Core 0.18 et sa mise à jour est assurée suivant les nouvelles versions de Bitcoin Core grâce à la "moulinette" qui peut patcher Bitcoin dans Kryptofranc et refaire toutes nos +140 000 modifications de manière quasi automatique.

Qu'est-ce que Kryptofranc?

Description officielle:
" Kryptofranc (KYF) est un nouvel altcoin basé sur la dernière version du Bitcoin.
Coeur. La moitié de l’offre potentielle de KYF au cours d’une année sera pré-minée et sera donnée sur plus de 10
années à des œuvres de bienfaisance dédiées aux droits de l’homme et à la préservation de la Terre.
Kryptofranc sera mis à jour pour assurer une compatibilité permanente avec Bitcoin Core. Les dons seront
décidé par la communauté de KYF appelée à voter sur les causes qu’elle entend défendre.
Kryptofranc deviendra de l’argent en tant que réseau social et exploitera ses
appel spéculatif à disperser la richesse soutenant de bonnes actions.
"

En résumé
Kryptofranc permet aux ONG d’avoir accès au monde de la crypto à travers le travail des mineurs. Personne ne dépense dans le processus, c'est la magie de KYF, mais tout le monde peut gagner beaucoup.
Nous donnons gratuitement les KYF aux ONG (comme la Croix-Rouge, ou le Téléthon, etc.) et tous les investisseurs font un don à ces ONG sans dépenser d’argent, simplement parce que le KYF prend plus de valeur quand ils investissent.
Le KYF est une solution gagnant / gagnant qui est unique. Les ONG s'acquittent de leur tâche en envoyant un courrier à leurs utilisateurs et en suscitant le buzz social nécessaire. Les donateurs peuvent également devenir des investisseurs.
Le KYF suscitera certainement beaucoup d'attention (pendant 10 ans), la télévision, la presse et les relations publiques le rendront plus populaire que la plupart des autres crypto et de manière positive!
Si nous atteignons le top 100 crypto, nous aurons atteint notre objectif d'environ 0,1789 KYF pour 1 BTC. Les premiers investisseurs auront un énorme benefice… et les ONG obtiendront des dons record.

Pourquoi faire une fork de Bitcoin Core 0.18 et utiliser POW?
Bitcoin Core est la crypto la plus financée, qu’on le veuille ou non, elle mène de loin. Bitcoin Core représente environ 60% de la capitalisation cryptographique et l’équipe centrale s’est révélée capable de surmonter tous les obstacles et les critiques.
Kryptofranc prend Bitcoin Core comme base et modifie plusieurs choses pour le rendre meilleur, comme la façon dont les mineurs sont récompensés, par exemple.
L'équipe de Bitcoin Core ne peut pas modifier les paramètres de base de sa blockchain, contrairement à Kryptofranc car la Blockchain existe depuis 2008.
Kryptofranc suivra le chemin de l'équipe de Bitcoin Core, mais avec ces améliorations spécifiques.
POW (Proof of Work) est un excellent moyen d'ajouter le travail nécessaire à la blockchain qui la rend résistante au piratage.
La plupart des outils conçus pour Bitcoin sont compatibles avec Kryptofranc, les divers systèmes de paiement ne nécessiteraient pratiquement aucun travail pour devenir compatibles.
Kryptofranc prend en charge SEGWIT, le réseau Lightning, etc.

Que fournissons-nous à la communauté?
Je travaille sur ce projet depuis septembre 2018, à temps plein et financé par Jean Martial Lefranc, le "producteur" du projet.
Jean Martial est un homme d’affaires qui est actuellement dans la presse et l’édition, mais était le PDG de Cryo Interactive, coté à la Bourse de Paris et d’une valeur de 500 millions d’euros. Il a beaucoup de contacts et d’expériences en France et à l’international.


Courte Introducton?

Regardez cette vidéo en Anglais: https://youtu.be/5fWga3NxrQc
ou notre site web: https://kryptofranc.com/

En bourse?

Nous sommes listé à CREX24 pour 3 marchés
https://crex24.com/exchange/KYF-BTC
https://crex24.com/exchange/KYF-ETH
https://crex24.com/exchange/KYF-USDT

Le minage
Nous proposons le minage a notre pool de minage expérimental: http://pool.kryptofranc.net/
RPlan pool est conseillé pour les professionnels: https://pool.rplant.xyz/#kryptofranc


Primes
Proposez vos services et soyez payé en KYF. Contactez nous a travers Discord App.

Contactez-nous

Bien sûr, vous pouvez me contacter en privé ici sur le forums Bitcointalk.
Discord: [url = https: //discord.gg/7qscn6S] https://discord.gg/7qscn6S [/url]
Facebook: [url = https: //fb.com/kryptofranc] https://fb.com/kryptofranc [/url]
Twitter: [url = https: //twitter.com/kryptofranc] https://twitter.com/kryptofranc [/url]
Télégramme: https://t.me/KryptoFranc
Code source Github: https://github.com/NicolasChoukroun/Kryptofranc

Souhaitez-nous bonne chance! Des questions?
447  Alternate cryptocurrencies / Announcements (Altcoins) / Re: [ANN][KYF] Kryptofranc, the "popular" is released. on: June 22, 2019, 06:20:50 PM
Thanks for having read in details. But not really. Everything depends on when. If you check our projections, it is 1/4 of in 100 years, 50% in 1 years.
https://kryptofranc.com/kyf-20y.php

We pre-mined 2 Billions for the ONG

In 1 year it is 50% of the mined coins (about 4 Billions total). The circulating supply will be less than that because not all the coins will be available for trading.
In 4 years it is 1/3 of the mined coins (about 6 Billions)
In 100 years is it 1/4 of the mined coins (about 8 Billions)
The max is around 10 Billions but no one here will be alive to verify it, it is far far away in time  Shocked
Etc...

So both are true, it depends on when in the future you do the math. I will clarify in the post so that people do not get confused.



- Kryptofranc has pre-mined 1/4th of its coin that will be given to many ONG within a 10 years period



Picture says that half, not 1/4 is premined, and message conflicts with it. You need to make it consistent across different sources.

And paying 1 BTC for mining your coin kind of ridiculous, I don't know if anyone willing to buy it.
448  Alternate cryptocurrencies / Announcements (Altcoins) / Re: [ANN][KYF] Kryptofranc, the "popular" is released. on: June 22, 2019, 05:52:48 PM
Correction, it will be free to use in September without paying a fee.
Until September we are using the pool to finance the coin, see it as a different kind of ICO, the ticket to mine is 1 BTC

In the discord, the developer wrote that there is a pool, but he will not give anyone to mine until September : - \
449  Alternate cryptocurrencies / Announcements (Altcoins) / [ANN][FRANC][KYF]Franc and WOK (was Kryptofranc) on: June 22, 2019, 04:01:08 PM



Project history.

2017: Nicolas Choukroun (a developer) proposed to Jean Martial Lefranc (an investor) the project to reincarnate the French Franc currency as a crypto.

8 November 2018: Jean Martial Lefranc redesign the project to change its name to Kryptofranc and add the voting platform for the NGO as the main utility of the blockchain.
https://medium.com/@jm_438/why-did-we-decide-to-create-the-kryptofranc-kyf-90b9017bd1e2
For one year the project will stay private and private investor were having access to CPU mining in exchange of cash to fund the developement.

4 July 2019: Kryptofranc is officially announced and the mining is released, big mining websites start to mine (Rplan, Zplan etc...), difficulty raises from 5 to 100 Millions+
https://kryptofranc.com/press_kryptofranc.php

22 May 2020:  Kryptofranc is listed at Crex24 on 3 markets (USDT, BTC and ETH)
https://www.facebook.com/kryptofranc/posts/1606141946229368

24 February 2021: the NGO platform is stopped.
https://kryptofranc.com/press_kryptofranc_endofngo.php

After a fierce battle between the 2 co-authors of Kryptofranc, it is decided that Nicolas Choukroun will continue alone to develop the new project WOK and the FRANC, while Jean Martial Lefranc will stay the top 1 investor in the project FRANC.

25 February 2021: the FRANC smart Contract is created on the TRX blockchain. TRX is chosen due to the high fees on the Ethereum blockchain.
https://kryptofranc.com/press_franc_update.php

30 March 2021: FRANC is officially listed at CREX24 and swapped. KYF is delisted.
https://twitter.com/Crex_24/status/1376885687912390658?s=20


------------------------------------------------------------------------
Resume of the current project.

The author of Kryptofranc (KYF) a blockchain based on Bitcoin Core is announcing a new project named Franc (FRANC).

The Franc is the rebirth of the French Franc, but as a cryptocurrency. It will empower several projects like for example W.O.K a virtual world and social networking platform in 3D.

This new altcoin is a smart contract programmed on the Tron Chain (a TRC20 contract)


Franc is here: https://franc.eu.com
WOK is here: https://wolfonlinekingdom.com
Kryptofranc is here: https://kryptofranc.com

Exchanges

We are listed at CREX24 for 3 markets
https://crex24.com/exchange/FRANC-BTC
https://crex24.com/exchange/FRANC-ETH
https://crex24.com/exchange/FRANC-USDT


------------------------------------------------------------------------
What was the Kryptofranc exactly?

Everything started with Kryptofranc in 2017.

https://kryptofranc.com

Main Characteristics:

- Kryptofranc is a true original blockchain, with its own certificates, genesis and features.
- Kryptofranc has pre-mined 1/4th of its coin (if we compare with number of mined coins in 10 years) that will be given to many ONG within a 10 years period. This will be done transparently through an online voting system and the management of the pre-mined KYF is given to a Foundation that has a complete transparency, and a legal representation in France.
- Kryptofranc is mining at infinity, our simulation shows that it will be still mining in +10,000 years. No POW to POS change, no existential thread.
- Kryptofranc is mining a block every 2.5 minutes. Currently we are mining 5177 blocks every 2.5 minutes.
- The target price of Kryptofranc, assuming that we will have about 1 Billions KYF in circulation in one year and be in the top 100 Cryptocurrencies is 0.1789 KYF for 1 BTC.
- Kryptofranc is guaranteed to be a popular coin, because of the press, and the millions of people concerned by the donations, the ONG are required to email their users and communicate about the KYF to get their free donation.
- Kryotofranc is adjusting its difficulty every 20 minutes.
- Kryptofranc is based on Bitcoin core 0.18 and is guaranteed to be updated following the new Bitcoin Core releases thanks to the "moulinette" that can patch Bitcoin into Kryptofranc and re-do all our +140,000 changes in a quasi automatic way.


Short introduction?

Look at this video: https://youtu.be/5fWga3NxrQc
or our website: https://kryptofranc.com/









450  Alternate cryptocurrencies / Altcoin Discussion / Re: Altcoin: transactions stuck in pending state on: June 05, 2019, 05:36:46 PM
It is not stratum who add the transactions to a block, it is the coin itself. I am not familiar with Litecoin, but with latest Bitcoin, it is located in 2 places, validation.cpp where the block is validated, and mining.cpp where the block are deciding what to add to a block or not and take save the final product to the blockchain.
There are several problems, the blockchain is complex.
- when a transaction is created, be sure that the fees are enough and not too much. Transactions generated by the pool for example will by default have a wrong fee.
- be sure that the Stale is not too large or the blocks cannot be included
- check IsTrusted
- remove the Witness checks since it cannot work with a new blockchain.
etc...

You have not lost your 300 tx, if they are not confirmed for a while (3000 seconds I think) they will be cancelled. If they are in mempool, they are not in the blockchain yet, so your blockchain is clean.

Also be sure that all your nodes have the same proof of work algorithm, the same GetSubsidary functions, so that they can confirm the transaction, if one is different it will reject the transaction and the tx will stay in mempool until cancelled.

Also all the tx generated by yiimp have a wrong fee at starting so enable the fallbackfees.
451  Alternate cryptocurrencies / Altcoin Discussion / Re: Altcoin: transactions stuck in pending state on: June 05, 2019, 05:13:56 PM
Stratum should mine if your coin is working correctly.
Check that your coin has "auto ready" checkbox on. Stratum disabled it if the coin was not mining correctly.
452  Alternate cryptocurrencies / Altcoin Discussion / Re: Altcoin: transactions stuck in pending state on: June 05, 2019, 02:31:00 PM
I think I'm having the same problem. My Yiimp pool is only mining new blocks.
I have 159 transactions on the mempool. The pool hashrate is good.

But no matter what I can't mine transactions in blocks. Only new blocks with regular reward.

The last mined transactions are from 5 days ago.

Can anyone help me?


It is related to an incorrect fee or difficulty. Bitcoin does not check the old transactions to avoid these kind of problems but altcoins cannot avoid them.

Check in mining.cpp the TestPackage and TestPackageTransactions functions. Add a printf to know what is the false condition that is blocking the tx to be accepted. Comment the one that poses a problem -> your coins are saved and spendable.
453  Alternate cryptocurrencies / Altcoin Discussion / Re: Altcoin: transactions stuck in pending state on: May 07, 2019, 12:36:47 PM
What coin do you fork? Bitcoin is not using solo mining. You need to use Stratum.
Generate is deprecated for a couple of years now.

About being stuck in the memory pool that means that you do not have enough confirmations. You need to mine 6 block or more (depending on your settings) to get the transaction confirmed and available (saved in the blockchain).
Proof of work not met error can block a transaction too. This can happen if you changed the Subsidy code in validation.cpp, this is a hard fork of the blockchain and will block your coin.
454  Alternate cryptocurrencies / Altcoin Discussion / Re: Altcoin: transactions stuck in pending state on: May 06, 2019, 10:00:03 AM
my miner is generating coins and not mining transaction they keep stuck in memory pool and when I generate the coin in the console then these transaction reaches to confirmed state can you please guide me on this. Please help me out I will be very grateful of you.

check my post here: https://bitcointalk.org/index.php?topic=5134256.0

It is a problem with SEGWIT.
455  Alternate cryptocurrencies / Altcoin Discussion / Re: *** Complete Guide on How to Create a New Alt Coin – Update 2018 *** on: May 02, 2019, 11:47:57 AM
A  different thread about the same subject, but updated for 2019 and Bitcoin 0.17/0.18 has been posted here: https://bitcointalk.org/index.php?topic=5134256.0
456  Alternate cryptocurrencies / Altcoin Discussion / Re: *** Complete Guide on How to Create a New Alt Coin *** on: May 02, 2019, 11:46:37 AM
Just so you know, a different thread about the same subject, but updated for 2019 and Bitcoin 0.17/0.18 has been posted here: https://bitcointalk.org/index.php?topic=5134256.0
457  Alternate cryptocurrencies / Altcoin Discussion / Re: Altcoin: transactions stuck in pending state on: May 02, 2019, 08:36:32 AM
You need be sure that Yiimp is setup using an address from the wallet installed on the same server.
Of course you must have stratum running.
And you need to run your coin with in command line yourcoin-qt -deprecatedrpc=accounts

If it is still not working, edit the stratum source code and remove the test that is shooting the error and see what happen.
Also to check if your coin is correctly configured, go in the backend of Yiimp click on the symbol of your coin and you will see an Option to open the CONSOLE.
Do it and type getblocktemplate.

If it does not get you an xml like answer, then you have not fixed the problem.

I was having the same issue and then I followed up your advice and things worked for me. Now when I am mining the coining it is showing that the address is not mine. Please help me out with it. I have tried YIIMP POOL.
458  Alternate cryptocurrencies / Altcoin Discussion / Re: Binance is Becoming a Crypto Monopoly on: April 24, 2019, 10:04:44 AM
The main issue with Binance is that they have a coin BNB. There is an obvious conflict of interest here. Everyone knows that most volume is faked, so that they can push their own coin and manipulate it.
It is just a matter of time until Binance goes under the radar of some government and its CEO end up in jail.
They are making too much money, they are shady, sure they will get in trouble.
459  Alternate cryptocurrencies / Altcoin Discussion / Re: *** Complete Guide on How to Create a New Alt Coin – Update 2019 *** on: April 21, 2019, 05:49:55 AM
I am not related to the 2018 tutorial at all.
Bitcoin has changed with version 0.17 and a lot of problems are not published anywhere.
Making a coin ask some programming knowledge. Even if you are using a tutorial, you cannot do a functionnal coin without understanding what you are doing.
It is like an IQ test of some sort.
But I have been blocked by stupid issues that I would have loved to find a solution online. Debuging peer to peer is really complex, and some bugs do not give you any clue about where they are coming from.
For example when a transaction is flagged by a peer, but not by another peer!

So I guess this tutorial removes the obvious mistakes, but you have to be sharp to get to the final line. Smiley

How are you related to this thread? https://bitcointalk.org/index.php?topic=3345808.0 . Same topic title and same template and by the way i do appreciate your effort on posting it up
on creating a new altcoin but im not really fully agree that these tutorials would be post up yet there are people who would just tend to make use of this tut and create his own shitcoins piling up on
the entire market.
460  Alternate cryptocurrencies / Altcoin Discussion / *** Complete Guide on How to Create a New Alt Coin – Update 2019 *** on: April 21, 2019, 05:33:17 AM
Introduction

I am the author of the Kryptofranc ... you will hear about them very soon. https://kryptofranc.com
I have spent the time to adapt the latest Bitcoin Core development to my own fully functional blockchain and on the way of doing it, I have found that a LOT of things in the previous guides posted on the net were lacking of update or were totally obsolete.
Therefore, I have decided to update these guides to my own sauce, and I hope it will save time for the newbies, and update the legendary programmers to the latest roadblocks the Bitcoin core team have left for us recently.


1) Choice of Bitcoin Core 0.18 (mostly still works with 0.20)
This is the most updated and dynamic development out there. Almost all the good ideas from other coins are ending up in the Bitcoin core source one day or another, and usually with a better implementation.
Take Sigwit, pruning, HD address, privacy, lightning network; Bitcoin Core does it all.
However, the Bitcoin core team seems to try to make it impossible to create an alt coin from their core, by removing the solo mining first, then the RPC mining, and by adding plethora of tests for “security” but that are blocking new coins to mine when they are at the genesis state.
This guide will sort out all these problems.
2) Do not expect it to be easy.
Many people around are offering alt coin based on templates. First, be careful as a Trojan can be hidden very easily and you might lose all your work if you deal with the wrong people. Then most of the time they are using outdated versions of Bitcoin core, Litecoin that is based on outdated Bitcoin core, Dash that is based on outdated Bitcoin core etc… basically, they are using a version with solo-mining or RPC mining enabled, avoiding the real problems. If you are doing that, you are going to get an obsolete coin that will never be trusted, and it is just a matter of time until investors realize that, and sell.
3) Do not blame me for errors
If you find an error, tell me and I will fix it. Let us collaborate. I am writing this guide quickly, it is a complex subject so, be kind and complete the missing points if you find some.
4) Give credit to this page with a link if you copy this post to your blog.


Setting Up

a)   You will need two Unix instances to create a functional coin that will also mine.
Server 1: Mining wallet and development server.
Server 2: Second node and receiving wallet.
I suggest purchasing a dedicated server at Hetzner. Their auctions have the best value for the price (I am not related to them, you can use any ISP) : https://www.hetzner.com/sb
For 21 Eur you can get a 9000 Benchmark server. Don’t take an Atom that will take forever to compile. Get 2 instances for about 42 Eur.

b)   Get an account at Github, and fork the latest Bitcoin core version (0.18 here).

c)   Install the latest Ubuntu on both servers. Install Mate to have a graphic interface that is fast. Do that on both servers.
Code:
sudo apt install ubuntu-mate-desktop

and XRDP
Code:
sudo apt install xrdp
sudo systemctl enable xrdp
Now you can login with Remote Desktop from your local windows.
Install Clion to edit your C++ code with ease. You get 1 month free, enough for your development. This development tool is worth every penny, specially for its search that will save you a lot of time.
   
Code:
https://www.jetbrains.com/clion/download/#section=windows

d)   On server 1 install Yiimp by using this script: https://github.com/xavatar/yiimp_install_scrypt_ubuntu18.04 or use my backup on my repository, it is working and clean https://github.com/NicolasChoukroun/yiimp_install_scrypt_ubuntu18.04
Also be cautious, some people are offering to install Yiimp for you but they also install a backdoor and get a fee from every mining, I got this problem and I had to do everything myself to get rid of it. So beware the “services”. Do it yourself!
Now you are ready to modify Bitcoin Core to your flavor, do it on server 1. Server 2 will compile the result and run a second node when you have finished.
Yiimp will be used to mine the coin, do your premine and also as a block explorer.


Bitcoin Core modifications.

a)   Directory structure.
Use this structure.
Yourcoin/Yourcoincore/
In /Yourcoin/ put everything that needs to be out of the Bitcoin Core source code, your scripts, assets, pictures, translation scripts etc…
In /Yourcoin/Yourcoincore/ dump the Bitcoin source code that you have forked
Save that result to your own GitHub so that when you make a mess, you can clone and start again.
You can also use this script to automatically compile your coin and the dependencies. Note that this script solves some compilation issues for windows that many seems to be unaware of.
https://github.com/NicolasChoukroun/BitcoinMaker
Usage is included in the script just run ./maker.sh and see.
At this point, you need to compile Bitcoin: https://github.com/bitcoin/bitcoin/blob/master/doc/build-unix.md
Or
Code:
./maker.sh unix install
./maker.sh unix all

Don’t go further until Bitcoin is launching on your machine.

b)   Creation of the certificates (optional)
You can keep the Bitcoin certificates, but it is better to have your own for the strength of your blockchain.
Code:
openssl ecparam -genkey -name secp256k1 -text -noout -outform DER | xxd -p -c 1000 | sed 's/41534e31204f49443a20736563703235366b310a30740201010420/PrivKey: /' | sed 's/a00706052b8104000aa144034200/\'$'\nPubKey: /'


Replace the result in chainparams.cpp here:
Code:
const CScript genesisOutputScript = CScript() << ParseHex("04678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5f") << OP_CHECKSIG;

And change your passphrase here with what you want:

Code:
const char* pszTimestamp = "The Times 03/Jan/2009 Chancellor on brink of second bailout for banks";
Remember to keep it short, I think that the length is limited to 150 characters, so do not write a book or you will get an error.

c)   Creation of the genesis.
In order to have your own blockchain, you need to have your own genesis. This step is explained in many tutorials; it should not be a problem.

I have made my own function based on what I have found in another altcoin, you can get the code here:
https://github.com/NicolasChoukroun/altcoin-genesis

You need to copy the code as explained in the readme and you will get the nTime, nNone, nBits, Hash and Merkle Root (inverted).

You can now replace these in chainparams.cpp, in 3 places, in “main”, “testnet” and “regnet”.

Code:
	genesis = CreateGenesisBlock(nTime, nNonce, 0x1d00ffff, 1, 50 * COIN);

Also change the asserts with the Hash and Merkle Root you got from the genesis. Do it 3 times for main, testnet and regnet.

Code:
assert(consensus.hashGenesisBlock == uint256S("0x000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f"));
        assert(genesis.hashMerkleRoot == uint256S("0x4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b"));

Compile and run the wallet, see if you get an assert error. If you have, you made a typo.

d)   Change all Bitcoin core mentions with your altcoin name.
This is tricky as Bitcoin is all over the place. I cannot help too much; I personally use PHP to do it. You need to scan all the files with conditions to avoid replacing code. Show your scripting skills here.

e)   Change the graphics
/src/qt/res/ there are icons and graphics, replace them with the one from yourcoin.

f)   Customize chainparams.cpp
This file has things to change to personalize your coin, so I will make a list to get this done quickly. Read the comments in the following code.

Code:
// change all the pchMessageStart with something else, so that your messages are unique.
pchMessageStart[0] = 0xf9;
pchMessageStart[1] = 0xbe;
pchMessageStart[2] = 0xb4;
pchMessageStart[3] = 0xd9;

// change the default port, choose one port that is not used by another popular prog like ftp, or emails. Choose a different port for main,testnet and regnet.
nDefaultPort = 8333;

// change this to this value so that the consensus will accept your low difficulty mining at starting.
consensus.nMinimumChainWork = uint256S("0000000000000000000000000000000000000000000000000000000100010001");

// start all the PIB from height 1, so change these to 1
consensus.BIP34Height = 1;
consensus.BIP65Height = 1;
consensus.BIP65Height = 1;

// change the hash of BIPs to your genesis hash (see the genesis section) ??? is your genesis hash
// do it for main, testnet and regnet.
consensus.BIP16Exception = uint256S("0x???");
consensus.BIP34Hash = uint256S("0x???");

// fix the checkpoint data with your genesis hash, do it for main,testnet and regnet
checkpointData = {{{0, uint256S("0x???")},}};

// empty ChainTxData like this
chainTxData = ChainTxData{};

// you can change how often the wallet will retarget the difficulty.
consensus.nPowTargetTimespan =   14 * 24 * 60 * 60; // two weeks

// you can change the target for coin generation; bitcoin is 10 minutes, litecoin 2.5 minutes. Short means quicker transactions, but also more risk of orphan and failed transactions due to network issues.
// Also the faster, the more inflation, take this in account when you calculate your max coin generation, and rates.
consensus.nPowTargetSpacing = 10*60;

// blockchain size: your blockchain is very small; change this parameter to 1 so that it will not ask too much space at starting.
m_assumed_blockchain_size = 1; // was 240

// comments all the vSeeds, and change that to your server 1 and server 2 address since they will run the wallet and need to be peer to each other to get your coin to be functional.
vSeeds.emplace_back("seed.bitcoin.sipa.be");
vSeeds.emplace_back("dnsseed.bluematt.me");

// change the prefixes to your coin. If your coin is named Yourcoin for example you want that prefix to be Y
// prefixes are not that obvious, check https://en.bitcoin.it/wiki/List_of_address_prefixes
// to understand how prefixes are calculated
base58Prefixes[PUBKEY_ADDRESS] = std::vector<unsigned char>(1,0);
base58Prefixes[SCRIPT_ADDRESS] = std::vector<unsigned char>(1,5);
base58Prefixes[SECRET_KEY] =     std::vector<unsigned char>(1,128);

// change this to something of your own
bech32_hrp = "bc"; // change to yc for yourcoin for example?

That’s it for chainparams.cpp. Remember to do these changes for all the networks, main, testnet and regnet

g)   Customize validation.cpp
Mostly validation deals with subsidy and validity checks. Subsidy defines how many coins are created when the proof of work submitted by a miner is accepted. This is the reward formula. This is where you will do your premine.
There are some traps not to fall into here. nSubsidy is a CAmount (int64_t), it is not a float. So be sure that with your calculation, you will not have a divide by zero!

Here is an example that is functioning. Note the +1 to avoid having 0 divides. I also add a debug to console so that the subsidy can be witnessed from the console.

In that code, you can see that we premine 120000 coins to 6 wallets. The method is as follow.
At height 10, 50, 70, 90, 110 and 130 we will mine 20000 coins. The blocks in between are here to allow the time to get the mined coins to maturity, then send the coins from server1 wallet to server2 wallet, then mine more to allow the transaction to be confirmed. Once this done you can encrypt the server2 wallet, backup it, remove the .yourcoin directory and restart the wallet with a fresh new address
This way you can premine and save in different wallet to distribute to your team, friends, investors.
Once the premine is done, the script will delivers 63/halfing coins every coin mined.
Note that this algorithm is not waiting 2 years to adjust like Bitcoin, it adjust every coin mined. You might change it to your liking.

Code:
CAmount GetBlockSubsidy(int nHeight, const Consensus::Params &consensusParams) {
    CAmount nSubsidy;
    if (nHeight == 10 || nHeight == 50 || nHeight == 70 || nHeight == 90 || nHeight == 110 || nHeight == 130)  {
        nSubsidy = 20000*COIN;   // premine 6x20000 coins
    } else {
        if (nHeight <= 150) {
            nSubsidy = 10 * COIN ;  // small mining to carry out the transactions
        } else {
            float year= (nHeight / 210240)+1; // avoid to get a negative nSubsidy
            float halfing =  year/ 1.618033988750;
            nSubsidy = (63 / halfing)*COIN;
        }
    }
    printf("GetBlockSubsidy: height: %i - nSubsidy: %ld \n",nHeight, nSubsidy);
    return nSubsidy;

}

Validation.cpp is not finished yet. We have a problem with SEGWIT. It cannot work at height 1. So in the beginning, we need to disable some checks, that will have to be re-enabled when the blockchain has at least 2000 blocks mined. You have to experiment here; the goal of this tutorial is not to deal with the blockchain maintenance.

bool IsWitnessEnabled needs to return true in all cases. So just add return true; at the beginning of the function.

IsNullDummyEnabled has the same problem, do the same to that function.

Find this “return state.DoS(100, false, REJECT_INVALID, "bad-cb-height", false, "block height mismatch in coinbase");” and comment it.

End of the validation.cpp customization.

h)   Other code modifications.
There are more modifications, spread everywhere that needs to be fixed in order to get the coin to work correctly.

validation.h  :
-   you need to change the DEFAULT_MAX_TIP_AGE to something very large (60*60*24*365 for example). This is temporary. This is the interval when the blockchain is not mining. At starting you might have a genesis made long time ago, and not have mined for a while, so that this has to be changed or your Coin will not work.
-   DEFAULT_CHECKPOINTS_ENABLED = true; needs to be changed to false, or your coin will try to verify that you are on the Bitcoin blockchain, which you are not.

\rpc\mining.cpp :
Another SEGWIT test that needs to be removed:

Code:
throw JSONRPCError(RPC_INVALID_PARAMETER, "getblocktemplate must be called with the segwit rule set (call with {\"rules\": [\"segwit\"]})");
Comment this line.

net_processing.cpp :
-   STALE_CHECK_INTERVAL need to be changed to a large value to avoid having a STALE error, this is again temporary, once the blockchain is mined by many people, it can be back to the original values. (3600*24*365 for example)
-   STALE_RELAY_AGE_LIMIT same for this static variable.

\qt\bitcoingui.cpp
Get rid of the loading form set this variable to 0.

Code:
qint64 secs = blockDate.secsTo(currentDate);
becomes qint64 secs=0;

Now you should have a functional Coin. But you need to mine.


------------------------------------------------------------------------------------------------------------------------------------------

Mining with stratum and Yiimp


a)   Modification of stratum.
In order to mine your coin, you need to use Yiimp that you have installed previously.
But the latest version won’t work with a “virgin” coin at block zero so here is how to fix that.
First, you need to setup your coin by following this tutorial:
https://www.boostrend.com/2018/03/how-to-setup-new-coin-wallet-on-pool.html

The most important things are:
-   Run your coin wallets by using the code given in the coin settings of Yiimp, but don’t forget to change the path since the installation script install stratum in /var/stratum. blocknotify=/var/stratum/blocknotify pool.kryptofranc.net:3333 1455 %s
for example is what is working for me.
-   Run your coin by using the following command line: yourcoin-qt –deprecatedrpc=accounts -printtoconsole
-   Type getnewaddress in the console on server1: enter this address everywhere an address is asked in the coin definition of Yiimp backend.
-   Compile and run your coin on server2
-   Type getnewaddress in the console of server2 to get an address to send to from the mining wallet.
-   Download ccminer (version 230 is working for me) for windows and edit a config file to match your coin definition, for example: ccminer.exe -a bitcoin -o stratum+tcp://pool.yourcoin.com:3333 -u xxxyourserver2addressxxx -p c=KYF
replace xxxyourserver2addressxxx with the address you got from your server2.
-   Run stratum on server1 (/var/stratum/run.sh sha)
If ccminer cannot mine, then you can use my fixed version here: https://github.com/NicolasChoukroun/stratum
Use it at your own risk, it is working for me, but who knows?
What needs to be fixed in Stratum is in coind.cpp function coind_can_mine, there are several tests of (!coind->height) which are not working for us since we are at block 0. This needs to be changed to

Code:
If (!coind->height)
// change to
if (coind->height<0)

My version also adds a lot of real-time comments to help debug stratum.
The coin must be set to auto ready, enabled, and difficulty must be >0

Mission accomplished! Now you have a fully working coin, which can mine though stratum.

------------------------------------------------------------------------------------------------------------------------------------------

DISCLAIMER
This tutorial may contain technical or typographical errors.
I do not guarantee its accuracy, completeness, or suitability.
IN NO EVENT SHALL I BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES RELATING TO THIS TUTORIAL, FOR ANY USE OF THIS TUTORIAL.
I take no responsibility and makes no warranty whatsoever from the use of this tutorial linked to or from this tutorial.
IT IS DELIVERED ** AS IS **.
ANYONE USING THIS TUTORIAL IS DOING IT AT HIS/HER OWN RISKS.

Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 [23] 24 25 26 27 28 29 30 31 32 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!