当前位置: 首页 > news >正文

走出象牙塔:李郓梁的区块链实践之路丨对话MVP

如何从科研走向实践?李郓梁在社区找到了答案。

作为西安工业大学的硕士研究生,李郓梁从学校的实验室接触区块链技术。通过研读大量论文,李郓梁为区块链多中心化、不可篡改等前沿理论深深着迷,并选择将区块链作为主要研究方向,参与到由导师主导的区块链科研工作中。

2021年,李郓梁在行业专家的介绍下接触到FISCO BCOS,从此迈出了走向实践的第一步。在社区的技术文档、社群互动和应用案例的帮助下,李郓梁将科研课题成功转换为一系列实践成果。其中,“BCIM-区块链数字身份管理系统”和“区块链医疗信息管理系统”,分别荣获陕西省科技工作者创新创业大赛三等奖、入围全国大学生“互联网+”创新创业大赛全国总决赛,并申请两项软件著作权。

如今,李郓梁已被福州大学博士录取,并选择继续在区块链领域深耕。对于李郓梁而言,科研与实践的关系是“相辅相成”。“科研更有前瞻性,但也要立足于应用之上。” 李郓梁说道。

应用价值是科研项目重要的评判标准之一

1、您为什么选择区块链技术作为主要研究方向?

2020年,我通过学校实验室团队开始接触区块链技术。在区块链领域,我第一次接触到了多中心化、不可篡改等概念,这与传统计算机理论有很大不同。另外,区块链技术凭借在隐私保护、信息共享等方面的优势,能链接更多参与者,成为计算机领域的重要思想和工具。因此,我对区块链越来越着迷,并作为主要研究方向。

2、您参与了“BCIM-区块链数字身份管理系统”和“区块链医疗信息管理系统”的研发,能否展开谈谈?

研发“BCIM-区块链身份管理信息系统”(下称“BCIM系统”)的起因是参加陕西省科技工作者创新创业大赛,并最终荣获了三等奖。这个应用基于导师科研项目的技术成果,以FISCO BCOS为底层链打造,也是我第一次将区块链学术研究落地到实际应用场景中。

BCIM系统采用由用户控制身份信息的区块链数字身份管理技术,系统能够有效解决数字身份管理中的安全性问题,防范系统所面临的身份伪造、假冒、消息篡改、越权访问等信息安全风险,保护用户隐私。通过联盟链,用户仅需要注册一次数字身份,就可以在所有运行本系统的服务器上实现身份的识别与认证,实现了数字身份的“通用性”,可以应用于电力系统、政务等场景中。

在BCIM系统的基础上,我们落地了“区块链医疗信息管理系统”(下称“医链系统”)。在就医场景中,患者医疗信息敏感,隐私保护要求高,且存在纸质病例或就诊卡易丢失、医务人员处方或化验单易篡改、跨医院流转认可度低、纸质档案不宜存储等问题,科研机构间也往往面临医疗数据无法共享、项目数据匮乏的问题。系统为患者创建分布式身份标识符 DID,患者凭 DID 就诊。病历、处方单和检查报告等电子医疗凭证全部在区块链上加密存储,不可篡改和删除,具备权限的人员才可解密查看。系统内操作均通过公私钥执行,所有记录均可追溯查询,为监管、追责提供便利。

医链系统参加了全国大学生“互联网+”创新创业大赛,并入围全国总决赛。区块链技术在这种比较偏商业的赛事中备受关注,在决赛中,大赛评委对区块链如何发挥价值很感兴趣。

两个系统都选择了FISCO BCOS,是因为性能高、支持国密,同时清晰的文档让我很快上手。

3、谈谈您如何看待科研和应用之间的关系?

我认为科研和应用相辅相成。一方面,科研更具前瞻性。应用可以根据科研内容发展出新技术和新模式。大部分应用,尤其是计算机领域的应用,往前追溯往往都是一些科研项目和论文。

另外一方面,科研要立足于应用上。科研项目重要的评判标准之一就是应用的价值。因此撰写学术论文除了天马行空,还要脚踏实地。

遇到问题,可以说是“一方有难,八方支援”

4、您如何与社区结缘?加入社区后,有没有令您印象深刻的人和事?

与社区结缘是因为前面提到的BCIM系统。值得一提的是,此前我参与的国家级科研项目需要搭建区块链平台,因为几位区块链工程师的推荐,最终也使用了FISCO BCOS。总之,多重因素共同促成了我对FISCO BCOS探索。

之前我就很想加入一个区块链圈子交流学习,正好社区集合了区块链领域的各类专家、爱好者。加入社区后,我发现社区氛围很开放,大家相互交流很自由轻松。小伙伴们也都很热心,遇到问题可以说是“一方有难,八方支援”。平时一些摸索很久都解决不了的问题,通过社区及时的解答,能让我瞬间豁然开朗。

印象最深的一次,因为我不理解WeIdentity的DID Document的构建原理,小助手特意把社区开发者杨刚拉进群解答,我内心很感激。

5、您多次为社区提交PR,请谈谈您对开源的理解、参与开源共建的感受。

我非常喜欢开源的平台,因为能够按照自己的需求更改使用,还可以把自己的代码开源贡献出来让更多人使用,对我来说是一件很有成就感的事。

在社区,我真正体会到开源的乐趣。记得第一次提交PR是修订文档,提交后社区很快反馈并采纳。想到自己能为社区做一些贡献,修订的文档又是大家学习过程中肯定会看的,感觉很有意义。

6、对于和您一样关注区块链领域的高校学子们,您有什么心得分享?

我推荐在学习过程中阅读清晰的技术文档,与社区大牛多进行交流,并且积极地参与社区开源共建。

我之前在区块链的探索主要在理论阶段,接触到社区后,通过技术文档动手实操,做出了前面提到的两个系统,也对区块链应用有了深入理解。此外,通过社区公众号,还让我了解到更多区块链的落地场景,对如何将学术研究转化成应用成果很有启发。

7、您如何看待MVP的作用?未来在开源共建方面还有哪些计划?您对社区未来发展还有哪些期待或建议?

看到其他MVP获得者都是前辈,作为一个学生,MVP对我来说可能不是认可,而是激励,鼓励我继续探索区块链技术,更积极地参与开源社区共建。

在共建方面,我希望继续研究底层代码,进一步参与共建,同时利用闲暇时间在CSDN等平台建立专栏,撰写FISCO BCOS的教程文档。

在建议方面,我希望未来FISCO BCOS可以加强布道。很多像我一样的学生开发者,在使用FISCO BCOS遇到问题时,首先想到的就是在网上搜索。通过加强相关内容建设,可以方便同学们快速找到解决办法。

另外,我也希望可以建立一套对高校学子更加友好的区块链课程体系。刚接触区块链的学生理解技术文档会比较吃力,在教程中增加介绍区块链技术理论的内容,不仅能帮同学们打好理论基础、激发学习兴趣,也能吸引同学们了解FISCO BCOS,进而参与开源共建。

最近,我们学校也开设了区块链课程,并将FISCO BCOS引入实验课程。这个课程由我们实验室团队负责,我也参与了课程内容的设置。因为我们团队过往使用FISCO BCOS体验良好,所以一致推荐运用FISCO BCOS进行实训练习。

图片

FISCO BCOS的代码完全开源且免费

下载地址↓↓↓

https://github.com/FISCO-BCOS/FISCO-BCOS

相关文章:

走出象牙塔:李郓梁的区块链实践之路丨对话MVP

如何从科研走向实践?李郓梁在社区找到了答案。 作为西安工业大学的硕士研究生,李郓梁从学校的实验室接触区块链技术。通过研读大量论文,李郓梁为区块链多中心化、不可篡改等前沿理论深深着迷,并选择将区块链作为主要研究方向&…...

【hive】hive分桶表的学习

hive分桶表的学习 前言: 每一个表或者分区,hive都可以进一步组织成桶,桶是更细粒度的数据划分,他本质不会改变表或分区的目录组织方式,他会改变数据在文件中的分布方式。 分桶规则: 对分桶字段值进行哈…...

ReactDOM模块react-dom/client没有默认导出报错解决办法

import ReactDOM 模块“"E:/Dpandata/Shbank/rt-pro/node_modules/.pnpm/registry.npmmirror.comtypesreact-dom18.2.7/node_modules/types/react-dom/client"”没有默认导出。 解决办法 只需要在tsconfig.json里面添加配置 "esModuleInterop": true 即…...

TiDB数据库的安装配置

一、 TiDB 软件和硬件环境建议配置 Linux 操作系统版本要求 Linux 操作系统 版本 Red Hat Enterprise Linux 7.3 及以上的 7.x 版本 CentOS 7.3 及以上的 7.x 版本 Oracle Enterprise Linux 7.3 及以上的 7.x 版本 Amazon Linux 2 Ubuntu LTS 16.04 及以上的版本 …...

Unity智慧园区夜景制作

近期使用Unity做了一个智慧园区场景的demo,初步了解了3D开发的一些步骤和知识,以下为制作的步骤,比较简略,备忘: 1. 制作前的设计分析: 1. 分析日光角度,阴影长度,效果 2. 分析冷暖…...

Linux MQTT智能家居项目(LED界面的布局设置)

文章目录 前言一、LED界面布局准备工作二、LED界面布局三、逻辑实现总结 前言 上篇文章我们完成了主界面的布局设置那么这篇文章我们就来完成各个界面的布局设置吧。 一、LED界面布局准备工作 首先添加LED灯光控制的图标。 将选择好的LED图标添加进来: 图标可以…...

LeetCode 160.相交链表

文章目录 💡题目分析💡解题思路🚩步骤一:找尾节点🚩步骤二:判断尾节点是否相等🚩步骤三:找交点🍄思路1🍄思路2 🔔接口源码 题目链接👉…...

【深度学习_TensorFlow】调用keras高层API重写手写数字识别项目

写在前面 上一阶段我们完成了手写数字识别项目的构建,了解了网络构建、训练、测试的基本流程,但是对于一些常见的操作,因其使用过于频繁,实际上并无必要手动实现,而早已被封装为函数了。 这篇文章我们将了解keras高层…...

柔性数组(C语言)

也许你从来没有听说过柔性数组( flexible array )这个概念,但是它确实是存在的。 C99 中,结构中的最后一个元素允许是未知大小的数组,这就叫做柔性数组成员,但结 构中的柔性数组成员前面必须至少一个其他…...

判断推理 -- 图形推理 -- 属性规律

中心对称:取一个点,穿过中心能找到另一个对称点。把轴对称 中心对称标出来。五角星不是中心对称。 BD对称轴方向相同,但135自带对称轴,24没带,所以6应该不带对称轴。 百分号不是轴对称。 白色对称轴 平行 或者 夹角…...

【注解使用】使用@Autowired后提示:Field injection is not recommended(Spring团队不推荐使用Field注入)

问题发生场景: 在使用 IDEA 开发 SpringBoot 项目时,在 Controller 类中使用注解 Autowired 注入一个依赖出现了警告提示,查看其他使用该注解的地方同样出现了警告提示。这是怎么回事?由于先去使用了SpringBoot并没有对Spring进行…...

Rust语法: 枚举,泛型,trait

这是我学习Rust的笔记,本文适合于有一定高级语言基础的开发者看不适合刚入门编程的人,对于一些概念像枚举,泛型等,不会再做解释,只写在Rust中怎么用。 文章目录 枚举枚举的定义与赋值枚举绑定方法和函数match匹配枚举…...

hivesql-dayofweek 函数

返回日期或时间戳的星期几。 此函数是 extract(DAYOFWEEK FROM expr) 的同义函数。 语法 dayofweek(expr) 参数 expr:一个 DATE 或 TIMESTAMP 表达式。 返回 一个 INTEGER,其中 1 Sunday 和 7 Saturday。 示例 > SELECT dayofweek(2009-07-30)…...

DIP:《Deep Image Prior》经典文献阅读总结与实现

文章目录 Deep Image Prior1. 方法原理1.1 研究动机1.2 方法 2. 实验验证2.1 去噪2.2 超分辨率2.3 图像修复2.4 消融实验 3. 总结 Deep Image Prior 1. 方法原理 1.1 研究动机 动机 深度神经网络在图像复原和生成领域有非常好的表现一般归功于神经网络学习到了图像的先验信息…...

LAXCUS如何通过技术创新管理数千台服务器

随着互联网技术的不断发展,服务器已经成为企业和个人获取信息、进行计算和存储的重要工具。然而,随着服务器数量的不断增加,传统的服务器管理和运维方式已经无法满足现代企业的需求。LAXCUS做为专注服务器集群的【数存算管】一体化平台&#…...

【Java】BF算法(串模式匹配算法)

☀️ 什么是BF算法 BF算法,即暴力算法,是普通的模式匹配算法,BF算法的思想就是将目标串S的第一个与模式串T的第一个字符串进行匹配,若相等,则继续比较S的第二个字符和T的第二个字符;若不相等,则…...

Vue:使用Promise.all()方法并行执行多个请求

在Vue中,可以使用Promise.all()方法来并行执行多个请求。当需要同时执行多个异步请求时,可以将这些请求封装为Promise对象并使用Promise.all()方法来执行它们。 示例1: 以下是一个示例代码,展示了如何通过Promise.all()方法并行…...

21.0 CSS 介绍

1. CSS层叠样式表 1.1 CSS简介 CSS(层叠样式表): 是一种用于描述网页上元素外观和布局的样式标记语言. 它可以与HTML结合使用, 通过为HTML元素添加样式来改变其外观. CSS使用选择器来选择需要应用样式的元素, 并使用属性-值对来定义这些样式.1.2 CSS版本 CSS有多个版本, 每个…...

下一代计算:嵌入AI的云/雾/边缘/量子计算

计算系统在过去几十年中推动了计算机科学的发展,现在已成为企业世界的核心,提供基于云计算、雾计算、边缘计算、无服务器计算和量子计算的服务。现代计算系统解决了现实世界中许多需要低延迟和低响应时间的问题。这有助于全球各地的青年才俊创办初创企业…...

Gitlab-第四天-CD到k8s集群的坑

一、.gitlab-ci.yml #CD到k8s集群的 stages: - deploy-test build-image-deploy-test: stage: deploy-test image: bitnami/kubectl:latest # 使用一个包含 kubectl 工具的镜像 tags: - k8s script: - ls -al - kubectl apply -f deployment.yaml # 根据实际情况替换…...

【Java基础】Java对象的生命周期

【Java基础】Java对象的生命周期 一、概述 一个类通过编译器将一个Java文件编译为Class字节码文件,然后通过JVM中的解释器编译成不同操作系统的机器码。虽然操作系统不同,但是基于解释器的虚拟机是相同的。java类的生命周期就是指一个class文件加载到类…...

【每日一题】88. 合并两个有序数组

【每日一题】88. 合并两个有序数组 88. 合并两个有序数组题目描述解题思路 88. 合并两个有序数组 题目描述 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 …...

Navicat Premium连接sqlserve数据库失败?你需要注意这几点看看配置对了么?

新建数据库连接的时候这么填的信息 报错 原因1:sqlserver数据库的端口和IP地址之间不是:连接而是用,连接 改成如下样式用逗号连接端口和IP地址就好了 原因2:在Navicat Premium中需要安装一个sqlserver的插件 找到安装路径的根目…...

207、仿真-51单片机脉搏心率与血氧报警Proteus仿真设计(程序+Proteus仿真+配套资料等)

毕设帮助、开题指导、技术解答(有偿)见文未 目录 一、硬件设计 二、设计功能 三、Proteus仿真图 四、程序源码 资料包括: 需要完整的资料可以点击下面的名片加下我,找我要资源压缩包的百度网盘下载地址及提取码。 方案选择 单片机的选择 方案一&a…...

flutter 初识(开发体验,优缺点)

前言 最近有个跨平台桌面应用的需求,需要支持 windows/linux/mac 系统,要做个更新应用的小界面,主要功能就是下载更新文件并在本地进行替换,很简单的小功能。 花了几分钟构建没做 UI 优化的示例界面: 由于我们的客…...

校验vue prop的几种方式

校验vue prop的几种方式 vue 要求将传递给组件的任何数据显式声明为 props。此外,它还提供了强大的内置机制来验证该数据。这充当组件和父级组件之间的约定,并确保组件能按预期使用。 让我们看看怎么对props进行校验。它可以帮助我们在开发和调试过程中…...

vue+springboot 前后端分离 上传文件处理后再下载,并且传递参数

vue代码 <template><div><input type"file" ref"fileInput" accept".json"/><el-button click"upload">上传</el-button></div> </template><script> export default {name: "…...

【Linux操作系统】举例解释Linux系统编程中文件io常用的函数

在Linux系统编程中&#xff0c;文件IO操作是非常常见和重要的操作之一。通过文件IO操作&#xff0c;我们可以打开、读取、写入和关闭文件&#xff0c;对文件进行定位、复制、删除和重命名等操作。本篇博客将介绍一些常用的文件IO操作函数。 文章目录 1. open()1.1 原型、参数及…...

Ubuntu和centos版本有哪些区别

Ubuntu和CentOS是两个非常流行的Linux发行版&#xff0c;它们在一些方面有一些区别&#xff0c;如下所示&#xff1a; CentOS的版本发布周期相对较长&#xff0c;主要是因为它是基于RedHatEnterpriseLinux(RHEL)的。这意味着在RHEL发布后才能推出对应的CentOS版本。而Ubuntu则在…...

Netty:ChannelHandler抛出异常,对应的channel被关闭

说明 使用Netty框架构建的socket服务端在处理客户端请求时&#xff0c;每接到一个客户端的连接请求&#xff0c;服务端会分配一个channel处理跟该客户端的交互。如果处理该channel数据的ChannelHandler抛出异常没有捕获&#xff0c;那么该channel会关闭。但服务端和其它客户端…...