How to compile Ethereum project
just like bitcoin, Ethereum is neither controlled nor owned by anyone - it is an open source project created by many people around the world. Different from bitcoin protocol, Ethereum's design is very flexible and adaptable. It is very easy to create new applications on the Ethereum platform. With the release of homestead, anyone can use the applications on this platform safely
Ethereum is a programmable blockchain. It does not give users a series of preset operations, but allows users to create complex operations according to their own wishes. In this way, it can be used as a platform for many types of decentralized blockchain applications
in a narrow sense, Ethereum refers to a series of protocols that define a decentralized application platform. The core of Ethereum is Ethereum virtual machine (EVM), which can encode any complex algorithm. In computer science terminology, Ethereum is "Turing complete.". Developers can use the existing JavaScript and python as the model of other friendly programming languages to create applications running on the Ethereum simulator.
At present, there are many channels for domestic users to buy Ethereum. Here are some common channels:
< H2 > 1. Coincola is an over-the-counter trading platform for indivials to trade bitcoincoy Cola is affiliated to Hong Kong coincola limited, which is developed and operated by a professional international team, focusing on providing convenient and reliable blockchain services for global users. Coincola gathers global users and is committed to building a world-class blockchain asset platform
in coy cola, people from different countries can buy bitcoin with their own currency. The seller of the website publishes the advertisement of selling bitcoin, and explains the payment method and exchange rate. You can choose to trade directly online according to the content of the advertisement. Bitcoin is stored in Ke Ying Cola's Internet wallet. You can transfer bitcoin directly
2. How to buy eth
register the coincola account, and then click "buy" in the top menu of the home page to enter the advertisement list page
select the appropriate advertisement from the advertisement list and click "buy eth" to enter the transaction page
enter the amount of money to be purchased or the number of digital currency (please understand the message information of the other party, payment method, and transaction instructions of the platform before entering), click buy now, and the order confirmation pop up. After checking and confirming the information, click confirm purchase to enter the order page
in the chat box of the platform, you can inquire whether the other party is online according to the template statement, and make offline payment according to the collection information and collection method provided by the other party
after the completion of offline payment, click the mark that the payment has been completed at the first time (please complete this operation within 15 minutes at the beginning of placing an order, so as to avoid the payment cannot be recovered e to the cancellation of the order e to overtime), and then customize the input information in the chat box to confirm the payment and ask the seller to confirm the collection and release the digital currency
the progress bar in the top column shows that the goods have been received, indicating that the digital currency has arrived in the wallet. Make comments according to the seller's behavior, and click submit to complete the transaction
with the rapid increase in the number of trading platforms and competitive pressure, many trading platforms will have their own C2C trading. Here we take the relatively large ZB trading platform as an example to illustrate
What is C2C
C2C transaction is a customer to customer transaction, which is guaranteed by the transaction platform. There are many such platforms, such as: Fire coin, otcbtc, bitpai OTC, etc., which are guaranteed by the platform and traded between users. We can simply understand it as: our shopping situation on Taobao is the same as that. In case of dispute, the platform will arbitrate. As long as the transaction is carried out according to the normal process, the security of the transaction is guaranteed
2. ZB's C2C business
ZB platform has two choices: QC and usdt. The basic logic is the same. There are many usdt platforms. QC is the feature of ZB, EXX and other platforms. Here we focus on QC
< H2 > about QCQC is a token. At present, you may know more about usdt and bitcny. At present, there is a special area for QC transaction on ZB. Simply put, QC can buy all other digital currencies (BTC, ETH, EOS, etc.) on ZB. Therefore, after purchasing QC with RMB recharge, you can conct currency transaction on ZB station
The advantage of the < H2 > QC token is that the exchange ratio between the < H2 > < UL >and RMB is 1:1, which is easier to convert
purchasing other tokens with QC can be directly understood as purchasing RMB, and has an intuitive understanding of the currency price
it takes about half an hour to get to the account. It will take about two hours to get to the account in congestion
ZB platform is relatively reliable, and the reputation of ZB is still very good in the past
How to operate C2C of ZB < UL >log in to ZB trading platform and click "C2C trading" on the page
to get to the QC transaction page, you need to first bind your bank card. Then, in the buy QC interface, enter the quantity of QC you want to buy. At present, the ratio of QC to RMB is 1:1. Enter the purchase quantity and click "buy now"
after clicking "buy now", you will be prompted to complete the payment within 30 minutes. At the same time, payment information is generated. Please note that the payment must be made according to the prompt
business processing time 9:00-21:00. Non processing time orders will be processed at 9:00 the next day, and the payment will be completed within 24 hours after receiving the order
this means that the merchant you paid will transfer QC coin to your account within 24 hours. According to my experience, you can get to the account in 2 hours ring the day
< H2 > the following points should be paid attention to:1) make sure to use the newly bound bank card for transfer and payment P>
2) note information (that 6 digit) must fill in
3) do not use Alipay, WeChat and other transfers. p>
4) do not fill in the opposite account incorrectly
< UL >about 1-2 hours, you can check whether your QC has arrived in the financial center
after the account is received, you can trade in the "QC" zone of the "spot trading". You can choose the transaction you want to buy and buy the order
although the pow mining mechanism is adopted, the block out mechanism of Ethereum is different from that of bitcoin. Due to the short block time of Ethereum, Ethereum is easy to form isolated blocks. Isolated blocks refer to the blocks that are not on the longest chain. Bitcoin's isolated blocks have no block rewards, but in Ethereum, isolated blocks can be referenced. The referenced isolated blocks are called "Uncle blocks", and their packaged data will also be recorded in the blockchain. Unlike bitcoin, Ethereum's TERT block has a reward, and each TERT block can get a reward of 4.375 Ethernet coins at most
Ethereum is a programmable and Turing complete blockchain development platform, which is equivalent to a decentralized global computer. In a programming system, there are usually some virtual machines to compile and execute. Java has JVM. In Ethereum, there is also Ethereum's virtual machine EVM, which can execute any complex algorithm code. Developers can use existing programming languages such as JavaScript or Python to create their own applications on Ethereum. Through Ethereum's virtual machine, you can easily issue digital assets, write smart contracts, set up and run decentralized applications, and set up decentralized autonomous organizations
eth is also known as the internal fuel of Ethereum. Unlike currency digital assets, Ethereum is not only used for transfer, but also for payment of smart contracts
in order to prevent the Ethereum blockchain from being full of junk contracts and junk applications, and to establish and run smart contracts on Ethereum, you must use eth to pay for smart contracts. For example, when you transfer your newly created digital assets on the Ethereum blockchain, you need to use eth to pay the handling fee instead of your newly created digital assets.
2. Project clone to local, project address:
3. Execute submole updata -- init
4. Install script in the directory_ Deps.bat is copied to the root directory and executed. This step will download hunter, boost, libjson, etc. to Disk C, which takes a long time. Please wait patiently
5. Go to the directory of the project and create the build subdirectory,
Why develop digital currency? From the perspective of the central bank, there are six advantages:
first, to improve the convenience and transparency of economic transactions; second, to rece the high cost of the issuance and circulation of traditional paper money; third, to better support economic and social development; fourth, to help the comprehensive realization of Inclusive Finance; fifth, to rece money laundering, to promote the development of the economy and society Sixth, improve the central bank's control over money supply and circulation
steps of digital currency development:
the first step,
first, we need to download the source code of a blockchain system from git, such as choosing the backbone code of bitcoin to download the relevant source code
At the same time, prepare the corresponding compiling environment (c + + is recommended in Linux) and install the corresponding development environment and toolsthe second step and
code all need to be compiled, so you need to prepare the compilation environment and tools, download the environment compilation tools, configure
system environment variables, QT environment and other files, and compile commands are described in detail in the files in ITC source code
however, the construction of the system and development environment, program compilation and other processes are cumbersome, so it is not recommended for ordinary users to make their own. For developers, it may take 2-3 days to install and configure for the first time
the third step,
take bitcoin development as an example, it is the development environment of Q. after downloading the source code and configuring the environment, open the source code of the bitcoin core in qtcreator, configure relevant files and compilers, and start to try to compile the client of the bitcoin core
Step 4,
transform into your own digital currency, open each source file, find the corresponding local adjustment parameters, such as adjusting
the number of coins in each block, the total output, the adjustment difficulty, and so on. Then the most critical point is to change the name to your own currency
name as you want, and don't forget to replace the related icons in the resource folder. If all goes well, after re compiling, your new coin will be invented successfully
for the development of this digital currency, the technology is relatively professional, so it is better to have a professional team to assist
framework for digital currency development:
1. Build Ethereum private chain test environment and public chain node environment configuration
2. Ethereum transaction and confirmation principle
3. Ethereum JSON RPC interface
4. Ethereum transfer and withdrawal principle
5. The server connects Ethereum public chain interface, and its own server stores business data, Public chain storage transaction anonymous data
6, private key security processing
the following is the development code example:
for example, the common digital currency wallets in the market are:
app class: kcash Imtokenweb: myethereumwallet Google browser plug-in: metamask
one of the most commonly used is imtoken
blockchain transaction technology concept:
let's take a look at how blockchain transaction is handled with bitcoin as an example. In order to send a certain amount of bitcoin to another wallet, you need the following information: the address to send the funds to your wallet, the amount of cryptocurrency you want to send
the ID of the recipient's wallet
each transaction is signed with a unique confidential private key. Once the payment is signed by the sender, it becomes publicly available. The transaction still needs to be confirmed so that the payee can get the money. In order to confirm the transaction, it is necessary to generate a new chain block
these blocks are generated by complex mathematical calculation to find the unique key. It takes 10 minutes to create a new block, and the person who finds the key gets a certain amount of coins as a reward. Once a new block of the chain is created, it is not possible to remove it from the database or change the information in some way. Therefore, blockchain transaction is final and irreversible
three core advantages of digital currency:
first, digital currency is a fair currency
digital currency has no specific issuing institution, is not issued by a country, only depends on a specific algorithm, which means that digital currency can not be manipulated by manipulating the number of issues, so digital currency is a free, non-state currency
we can see that there are many countries that directly recognize the virtual currency, so if there is a demand, it needs a trading platform
many investors who want to build a virtual currency trading platform now, why can't they go to these areas to build a trading platform? Building a virtual currency trading platform is a good business opportunity, isn't it
Second, the security factor of digital currency is higher.
although the emergence of paper money facilitates the transactions in our daily life, there are risks of being stolen and received. Although e-money can avoid these risks, there will be new problems such as theft and swiping
digital currency can avoid the above problems. And broadcast every transaction record on the network. Yes, all nodes save all the currency circulation information, so that any node can easily find the currency circulation before the transaction
Thirdly, the transaction of digital currency can realize anonymous transaction. Although you can query the flow information of each account according to the local complete transaction recordsbut we can't know who the owner of this account is, and no one has the ability to manipulate the digital currency on other people's accounts, which protects the privacy of users
if you also hold trading digital currency, foreign exchange gold, crude oil, contract Futures:

like many other languages, when accessing state variables, it is not necessary to add a prefix such as this
this contract can't do a lot (limited by Ethereum's infrastructure), it just allows anyone to store a number. And anyone in the world can access this number. There is no reliable way to protect the number you publish. Anyone can call the set method to set a different number to cover your published number. But your numbers will remain in the history of blockchain. Later we'll learn how to add an access limit so that only you can change the number
token example
the next contract will implement a cryptocurrency in the simplest form. Taking money in the air is no longer a magic trick. Of course, only the person who creates the contract can do it (it's also very easy to use other currency issuance modes, just to realize the differences in details). And anyone can send money to others, without registering a user name and password, as long as there is a pair of Ethereum public and private keys
note
this is not a good example for online solidness environments. If you use the online solidity environment to try this example. The address of from cannot be changed when the function is called. So you can only play the role of a coiner, you can cast money and send it to others, but you can't play the role of others. This online solidity environment will be improved in the future.
