基于区块链的毕业设计Final project for the ConsenSys Developer Program 2018-2019 – ConsenSys开发商计划2018-2019最终项目

本文提供基于区块链的毕业设计国外最新区块链项目源码下载,包括solidity,eth,fabric等blockchain区块链,基于区块链的毕业设计Final project for the ConsenSys Developer Program 2018-2019 – ConsenSys开发商计划2018-2019最终项目 是一篇很好的国外资料

Final project for the ConsenSys Developer Program 2018-2019

What does this project do?

This is a decentralized application where a visitor using a broswer with the MetaMask extension can purchase songs for sale with Ethereum cryptocurrency. The songs are listed for sale by the band manager who manages the artist/songs. The app admin is the only one that can that add band managers via their Ethereum account address. Once added, the band managers can then add songs for sale to the site. Visitors can visit the site and purchase songs in Ether which is sent directly to the band manager who subitted the song.

Note: This project was developed using Truffle v4.1.14 (core: 4.1.14) Solidity v0.4.24 (solc-js)

truffle.js is specified to use solc version 0.4.24

(but if needed, try running:)

$ npm uninstall truffle  $ npm install -g [email protected] 

Accounts:

Admin – Adds band managers by account address, can see a list of current band managers

Band manager – Can add songs for sale

Visitor – Anyone with an ethereum account can purchase listed songs for sale

(future functionality): a song list will be created and linked to the visitor account to view songs that they purchased, band managers will be able to also add band members and they will have a say in how sales profits are divided

Libraries used:

SafeMath library from OpenZeppelin was used and imported in BandApp.sol

How to set up

Clone the repository

To install lite-server and other dependencies, run

$ npm install 

Run a local blockchain

$ ganache-cli 

Next, copy the seed phrase from the terminal you ran ganache.

Open a browser (Chrome preferred) with the Metamask extension installed (be sure Metamask is connecting to localhost on port 8545)

And import using the seed phrase generated by ganache-cli

In the project directory, run in a separate terminal window:

$ truffle compile 

then

$ truffle migrate 

next, to run the app in the browser that has Metamask, type

$ npm run dev 

The app should now be running in the browser. The first account is set as the admin account, and you will be able to add a band manager from here. For testing, we will use Account 2 to copy the address and input it as a band manager. After submitting the address, the list of band managers will be updated in the Admin panel. And if you switch to Account 2 in Metamask, you will now see a Band Manager panel. Next add a song by inputting a name and price in ether. (Ex: Thriller, 0.07) Now switch to Account 3 (this will be used as a visitor account with no special priviliges). You will now see the song for sale and you can purchase it by clicking the BUY button. Notice the account balances of Account 2 and 3 before and after purchasing the song. Screenshots on how to setup the app are available at the end.

Testing

step 1. Make sure local blockchain is running,

$ ganche-cli 

step 2. In the project directory, run in a new terminal window:

$ truffle test 

Circuit breaker (emergency stop) pattern

On the Admin panel of the app, there is an ‘Emergency Stop’ button. Once this is pressed, songs can no longer be purchased. The first account in MetaMask is set as the admin.

Design patterns

design_pattern_desicions.md

Common attacks

avoiding_common_attacks.md

Screenshots on how to use the app

Open browser Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目 Click on Metamask, click on Import… Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目 A new tab may open, scroll down and click Import… Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目 Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目 Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目 Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目 Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目 Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目 Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目 Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目 Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目 Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目 Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目 Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目 Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目

Future implementations:

Implement an upgradable design pattern

Write a smart contract in LLL or Vyper

IPFS – Users can dynamically upload documents to IPFS that are referenced via their smart contract

uPort

Ethereum Name Service – A name registered on the ENS resolves to the contract, verifiable on rinkeby.etherscan.io/contract_name

Oracle

Use UjoMusic API for sample songs for sale https://api.ujomusic.com/api/musicreleases

implement e-commerce https://www.youtube.com/watch?v=wPQ1-33teR4

implement multi sig wallet for payments (all or majority of band members agree on profit split?)

update solidity contract 0.6.0 – done

update tests

update front end to react


ConsenSys开发者计划2018-2019的最终项目

该项目做什么

这是一个去中心化的应用程序,使用带有MetaMask扩展的broswer的访问者可以购买以太坊eth加密货币销售的歌曲。歌曲由管理艺术家/歌曲的乐队经理列出出售。应用程序管理员是唯一一个可以通过以太坊eth帐户地址添加波段管理器的管理员。一旦添加,乐队经理就可以在网站上添加歌曲出售。访问者可以访问网站和购买以太这是直接发送给乐队经理谁代写歌曲的歌曲

注:本项目是使用Truffle v4.1.14(核心:4.1.14)Solidity v0.4.24(solc js)开发的

指定Truffle.js使用solc版本0.4.24

(但如果需要,尝试运行:)

$ npm uninstall truffle  $ npm install -g [email protected] 

帐户:

管理-按帐户地址添加带管理器,可以查看当前乐队经理的列表

乐队经理-可以添加歌曲出售

访客-任何拥有以太坊eth帐户的人都可以购买列出的歌曲出售

(未来功能):将创建歌曲列表并链接到访客帐户以查看他们购买的歌曲,乐队经理还可以添加乐队成员,他们将对销售利润如何分配有发言权。

使用的库:

使用OpenZeppelin的SafeMath库并导入BandApp.sol中

如何设置

克隆存储库

要安装lite服务器和其他依赖项,请运行本地区块链blockchain

$ npm install 

接下来,从运行ganache的终端复制种子短语

$ ganache-cli 

打开安装了Metamask扩展的浏览器(首选Chrome)(确保Metamask连接到端口8545上的本地主机)

并使用ganache cli生成的种子短语导入项目目录,在单独的终端窗口中运行:

然后

下一步,要在具有元掩码的浏览器中运行应用程序,请键入

$ truffle compile 

该应用程序现在应在浏览器中运行。第一个帐户被设置为管理员帐户,您可以从这里添加一个乐队管理器。对于测试,我们将使用帐户2来复制地址,并将其作为频带管理器输入。提交地址后,将在管理面板中更新乐队经理列表。如果您切换到Metamask中的account2,您现在将看到一个Band Manager面板。接下来,通过在ether中输入歌曲名称和价格来添加歌曲(示例:Thriller,0.07)现在切换到帐户3(这将用作没有特殊特权的访客帐户)。现在您将看到出售的歌曲,您可以通过单击“购买”按钮购买它。注意购买歌曲前后帐户2和3的帐户余额。如何设置应用程序的屏幕截图在最后提供

$ truffle migrate 

第1步。确保本地区块链blockchain正在运行,

$ npm run dev 

步骤2。在项目目录中,在新的终端窗口中运行:

测试

在应用程序的管理面板上,有一个“紧急停止”按钮。一旦按下此键,就不能再购买歌曲。MetaMask中的第一个帐户被设置为admin

$ ganche-cli 

设计模式设计.md

$ truffle test 

断路器(紧急停止)模式

避免常见攻击.md

设计模式

打开浏览器Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目单击元掩码,单击导入Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目可能会打开一个新选项卡,向下滚动并单击导入Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目<Final project for the ConsenSys Developer Program 2018-2019>Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目<Final project for the ConsenSys Developer Program 2018-2019><Final project for the ConsenSys Developer Program 2018-2019><Final project for the ConsenSys Developer Program 2018-2019>Final project for the ConsenSys Developer Program 2018-2019 - ConsenSys开发商计划2018-2019最终项目<Final project for the ConsenSys Developer Program 2018-2019><Final project for the ConsenSys Developer Program 2018-2019><Final project for the ConsenSys Developer Program 2018-2019><Final project for the ConsenSys Developer Program 2018-2019>

实现可升级的设计模式

使用LLL或Vyper编写智能合约

IPFS-用户可以动态地将文档上载到IPFS,这些文档通过智能合约引用

uPort

以太坊eth名称服务-在ENS上注册的名称解析为合约,可在rinkeby.etherscan.io/contractu name上验证Oracle使用UjoMusic API销售示例歌曲https://api.ujomusic.com/api/musicreleases

实施电子商务https://www.youtube.com/watch?v=wPQ1-33teR4

实施多sig钱包支付(所有或大多数乐队成员同意利润分成?

更新solidity contract 0.6.0-完成

更新测试

更新前端以做出反应

ConsenSys开发者计划2018-2019的最终项目

该项目做什么

帐户:

管理-按帐户地址添加带管理器,可以查看当前乐队经理的列表

乐队经理-可以添加歌曲出售

访客-任何拥有以太坊eth帐户的人都可以购买列出的歌曲出售

(未来功能):将创建歌曲列表并链接到访客帐户以查看他们购买的歌曲,乐队经理还可以添加乐队成员,他们将对销售利润如何分配有发言权。

使用的库:

如何设置

测试

断路器(紧急停止)模式

设计模式

常见攻击

如何使用应用程序的屏幕截图

未来实施:

常见攻击

实现可升级的设计模式

如何使用应用程序的屏幕截图

使用LLL或Vyper编写智能合约

未来实施:

IPFS-用户可以动态地将文档上载到IPFS,这些文档通过智能合约引用

uPort

以太坊eth名称服务-在ENS上注册的名称解析为合约,可在rinkeby.etherscan.io/contractu name上验证Oracle使用UjoMusic API销售示例歌曲https://api.ujomusic.com/api/musicreleases

实施电子商务https://www.youtube.com/watch?v=wPQ1-33teR4

实施多sig钱包支付(所有或大多数乐队成员同意利润分成?

更新solidity contract 0.6.0-完成

更新测试

更新前端以做出反应

implement multi sig wallet for payments (all or majority of band members agree on profit split?)

update solidity contract 0.6.0 – done

update tests

update front end to react

部分转自网络,侵权联系删除区块链源码网

www.interchains.cc

https://www.interchains.cc/22438.html

区块链毕设网(www.interchains.cc)全网最靠谱的原创区块链毕设代做网站 部分资料来自网络,侵权联系删除! 最全最大的区块链源码站 ! QQ3039046426
区块链知识分享网, 以太坊dapp资源网, 区块链教程, fabric教程下载, 区块链书籍下载, 区块链资料下载, 区块链视频教程下载, 区块链基础教程, 区块链入门教程, 区块链资源 » 基于区块链的毕业设计Final project for the ConsenSys Developer Program 2018-2019 – ConsenSys开发商计划2018-2019最终项目

提供最优质的资源集合

立即查看 了解详情