区块链在线实验环境
- 随时随地在线实验
-
基于希冀云桌面实验平台,为学生提供了“开箱即用”的区块链在线实验环境。实验页面分左右两栏,左栏为实验指导手册,右栏为云桌面实验环境。学生可根据左栏的实验指导手册,在右栏的云桌面实验环境中开展区块链实验。
- 内置丰富的区块链实验环境
-
希冀区块链在线实验环境为区块链工程专业的每门课程都提供了云桌面实验环境镜像。在实验环境镜像内安装了该课程各实验所需的软件环境,集成了各实验的支撑材料。通过希冀云桌面实验平台,提供的区块链实验环境包括:
Geth,轻量级以太坊客户端 | Mist,带有图形界面的以太坊客户端 |
Go,Go语言编译器及开发环境 | SoLC,Solidity编译器 |
Solc-js,Solidity编译器 | Web3.js,基于以太坊的JavaScript API |
Marbles Demo,模拟区块链交易的弹珠游戏 | IPFS,去中心化的文件系统 |
MetaMask,轻量级以太坊钱包 | Remix IDE,Solidity集成开发环境 |
HyperLedger Fabric,Linux 基金会创建的开源区块链分布式账本 | blockchain-explorer,区块链浏览器 |
Truffle,以太坊开发框架 | Ganache,以太坊私有链 |
Ganache-cli,Ganache命令行版本 | OpenZeppelin,智能合约代码库 |
Embark,以太坊DAPP框架 | Tierion,区块链数据验证平台 |
Solium,Solidity代码漏洞检查 | VIBES,大规模区块链网络仿真器 |
SimBlock,事件驱动的区块链仿真器 | Bitcoin Simulator,命令行比特币网络仿真器 |
BLOCKBENCH,私有区块链仿真与性能评测框架 | WebPack,模块打包器 |
JDK,Java开发环境 | VSCode,多语言集成开发环境 |
Node.js,运行在服务端的 JavaScript | Python,Python语言运行环境 |
PyCharm,Python语言集成开发环境 | ... |
- 支持开展多种类型区块链实验
-
希冀区块链在线实验环境针对公有链、联盟链、私有链等不同类型的区块链,分别提供了对应的实验环境。在公有链实验环境中,学生实验机可作为独立节点加入到部署在全球互联网上的知名公有链中,参与公有链的分布式记账;在联盟链实验环境中,使用本地集群搭建了联盟链,学生实验机可作为独立节点加入到联盟链中;在私有链实验环境中,学生可在自己的实验环境中创建和实现私有链,并为其构建应用场景。
- 提供程序自动评判实验环境
-
区块链工程专业要求学生具备扎实的编程能力,基于希冀的程序自动评判实验环境可发布程序设计相关的实验、作业与考试。针对要解决的工程问题,学生需要自己动脑思考问题解决方案、动手编写程序,并向系统提交代码直到通过评测。通过该训练过程,可有效提高学生面对区块链领域问题的编程能力。程序自动评判实验环境可作为区块链原理、区块链系统、密码学基础、Go语言程序设计、Python语言程序设计、Java语言程序设计等课程的作业、实验以及考试的实验环境。
分布式区块链系统实验环境
- 提供基于容器的分布式实验环境
-
希冀区块链在线实验环境提供了基于云桌面的Docker容器实验环境,包含多种区块链相关的Docker镜像。学生可在云桌面实验环境中,基于Docker容器云快速编排和构建面向集群的分布式区块链系统。基于容器云实验环境,支持学生采用开源区块链项目代码构建多节点的公有链系统、联盟链系统以及私有链系统,学生对所构建的区块链系统拥有完全的掌控权,可创建、销毁、停用、重启该区块链系统,可修改源代码重新编译和构建区块链。
提供基于虚机的分布式实验环境-
希冀区块链在线实验环境提供了基于云桌面的虚拟机实验环境,包含多种区块链相关的虚机模板。学生可在云桌面实验环境中,基于多台虚机快速构建面向集群的分布式区块链系统。基于由虚机组成的集群实验环境,支持学生采用开源区块链项目代码构建多节点的公有链系统、联盟链系统以及私有链系统,学生对所构建的区块链系统拥有完全的掌控权,可创建、销毁、停用、重启该区块链系统,可修改源代码重新编译和构建区块链。
支持区块链专业其他课程实验的开展-
基于所提供的容器实验环境和虚机实验环境,可支撑学生开展分布式系统、分布式计算、分布式存储、P2P网络、信息安全、网络安全、数字身份认证等相关课程的实验。学生可以用多个容器或虚机构建同构或异构的集群计算环境,也可以用多个容器或虚机构建多节点的分布式系统。由于在实验环境内提供了已封装好实验软件和实验材料的Docker镜像或虚机模板,学生启动集群或分布系统后,可立即得到一个完整的、可用的、可靠的课程实验环境。
区块链挖矿算法性能优化
- 提供GPU并行计算环境
-
希冀区块链在线实验环境支持接入GPU,学生可基于GPU优化挖矿算法,提升挖矿算法的执行效率。在GPU云桌面实验环境中,提供了CUDA C编程开发环境,学生可使用Nsight可视化开发和优化GPU并行挖矿算法。根据GPU的总数量,学生可分配到1块或多块GPU设备进行实验。
支持FPGA硬件加速环境-
希冀区块链在线实验环境支持一键申请FPGA计算设备,学生在云桌面实验环境中双击“FPGA Cloud”图标,即可从云端一键申请到一台FPGA计算设备。基于Python语言,采用Jupyter Notebook交互式方式,可直接和云端的FPGA计算设备交互。在实验环境中提供了Vivado可视化硬件电路描述语言开发环境,学生可使用Verilog硬件电路描述语言或HLS高级硬件描述语言重写挖矿算法,在综合仿真通过后,可直接部署于FPGA计算设备上运行。在FPGA计算设备上运行基于硬件电路描述语言实现的挖矿算法时,学生可以进一步验证算法逻辑功能的正确性,也可以观察算法的性能提升倍数。
提供MPI并行计算集群环境-
希冀区块链在线实验环境支持MPI并行计算集群环境,学生可在实验环境中配置和启动MPI并行计算集群,通过MPI编写可运行于大规模高性能集群的并行挖矿算法,可有效提升挖矿算法的性能。学生可使用Eclipse CDT开发环境,基于提供的Makefile编写和优化MPI并行挖矿算法。
实验体系
-
面向提升学生区块链工程实践能力的实验体系,提供16门实验课程,部分课程如下:
课程列表 点击课程名称,可以查看对应的实验列表 Go语言程序设计 密码学基础原理 分布式系统 区块链原理 区块链系统开发 Solidity程序设计 智能合约 区块链案例实践 ... ...