案例实践 | 招商局集团以长安链构建“基于DID的航运贸易数据资产目录链”
概览
案例名称
基于DID的航运贸易数据资产目录链
业主单位
招商局集团
上线时间
2024年10月
用户群体
供数用数企业和个人
用户规模
集团内20+企业
案例背景
招商局集团深入落实“促进数据高效流通使用、赋能实体经济”精神,深化集团数字化水平,为业务的数字化转型提供可靠的数据管理和交换平台,提升集团数据资产的市场化配置能力,推动集团业务的创新和发展,提升竞争力和可持续发展能力,谋划搭建数据要素流通关键能力。
2024年4月,招商局数字化中心启动搭建基于DID的航运贸易数据资产目录链,依托集团在构建大数据体系和区块链能力方面取得的一系列成果,通过区块链和分布式身份、跨链等数字信任技术,搭建航运贸易数据要素可信流通能力,支持航运贸易行业的数字化发展。
方案创新
招商局航运贸易数据资产目录链是招商局以集团区块链基础设施为底座,响应国家数据要素×战略的创新实践。项目以招商云和集团区块链基础设施为底层能力支持,融合使用分布式身份DID、跨链等区块链技术,构建数据要素流转可信机制,促进数据融合互联互通。
图1 业务流程
在目录链业务流程中,参与角色包括供数侧、用数侧、目录链平台、区块链网络。供数侧通过目录链平台发布和审批数据,用数侧通过目录链平台查看申请和获取数据,区块链网络进行数据要素信息的可信流转和申请、审批、共享等核心信息的可信存证。
图2 功能架构
功能方面,目录链设计了用户认证、数据源管理、数据目录、数据市场、申请审批、数据流通等核心模块。用户认证模块提供了目录链用户的准入与可信认证,并为每一个用户颁发分布式身份DID,作为后续数据申请授权的依据;数据管理模块提供共享数据的管理能力,支持多种数据源格式,如数据库、接口、文件等;数据目录模块规范了上链共享的数据格式,主要包括数据的元信息,如数据大小、数据字段、所属人、使用领域、分级分类等;数据市场模块提供展示各方数据资产的面板。用数方可以在数据市场中查找所需的数据并发起数据申请;申请审批模块是目录链最核心的数据管控机制。用数方在申请数据授权时携带身份标识,以便供数方验证用数方身份并进行用数审批,申请和审批结果都会上链,进行可信存证;数据流通模块在数据使用授权后,进行数据的可信流转。所有流通数据都进行加密,传输过程都将上链存储。
架构方面,目录链采用了微服务架构设计,支持各个模块的快速搭建和迭代;运行环境方面,目录链采用了招商云的PAAS平台,提供模块化的高效部署、业务的全面监测、服务的稳定运行。
核心技术方面,依托集团区块链基础设施,使用招商局区块链管理平台CMBAAS快速搭建目录链底层区块链,通过区块链的不可篡改性实现数据确权和流通全流程可追溯;通过招商局分布式身份管理平台CMDID为用数方、供数方、数据要素等颁发分布式身份DID,进行供数方、用数方的身份管理和数据要素的确权登记;使用招商局跨链服务平台CMBIS作为跨链网关,实现数据要素在多条链上可信流转,支持目录链中的数据资产跨链发布与使用申请。
目录链区块链引擎为最新版本的长安链,确保了系统的稳定性和可扩展性。长安链通过采用TBFT共识机制,实现了快速且可靠的网络共识,确保交易的一致性与不可篡改性。智能合约方面,使用Solidity语言编写。
价值成效
招商局集团发挥在区块链领域的技术优势,创新构建数据资产流通新模式,响应国家数据要素战略。通过DID技术构建数据资产目录化和确权流通体系,为数据要素流通和交易提供底层公共服务,实现了多源数据资产的有机整合,推动集团各业务板块开展行业业务创新。
目前,平台通过联动集团数据资产平台,首批完成了文创、物联网、供应链金融等多类业务数据的注入,对接二级企业数据部门,落地多个供数用数实例。平台通过“链上确权-穿透追踪”机制,构建数据要素跨企业、跨领域可信流转通道,支撑数据要素市场化;通过设备可信硬件和分布式身份创新结合,实现传感器到可信设备的价值跃升,通过平台进行物联网数据目录化,构建可信跨域物联数据网络,搭建航运贸易数字化底座。
相关文章:
案例实践 | 招商局集团以长安链构建“基于DID的航运贸易数据资产目录链”
概览 案例名称 基于DID的航运贸易数据资产目录链 业主单位 招商局集团 上线时间 2024年10月 用户群体 供数用数企业和个人 用户规模 集团内20企业 案例背景 招商局集团深入落实“促进数据高效流通使用、赋能实体经济”精神,深化集团数字化水平,…...
计算机网络入门:物理层与数据链路层详解
🌐 (专业解析 中学生也能懂!) 📖 前言 计算机网络就像数字世界的“高速公路系统”,而物理层和数据链路层是这条公路的基石。本文用 专业视角 和 生活化比喻 ,带你轻松理解这两层的核心原理&a…...
使用 Docker 部署 RabbitMQ 的详细指南
使用 Docker 部署 RabbitMQ 的详细指南 在现代应用程序开发中,消息队列系统是不可或缺的一部分。RabbitMQ 是一个流行的开源消息代理软件,它实现了高级消息队列协议(AMQP)。本文将详细介绍如何使用 Docker 部署 RabbitMQ…...
数据结构之基本队列-顺序结构实现-初始化-判断队列是否为空(front=rear)-出队-入队-队尾满了,调整队列-获取队头元素
数据结构之基本队列-顺序结构实现-初始化-判断队列是否为空(frontrear)-出队-入队-队尾满了,调整队列-获取队头元素——完整可运行代码 #include <stdio.h>#define MAXSIZE 100 typedef int ElemType;typedef struct {ElemType data[MAXSIZE];int front;int…...
如何用 Postman 发送 POST 请求?
POST 请求是 HTTP 协议中用于提交数据的一种方法,Postman 提供了丰富的功能来支持用户发送包含各种信息的 POST 请求,如文本数据、JSON 或 XML 数据结构、文件等。 Postman 发送 post 请求教程...
基于Spring Boot的网上商城系统的设计与实现(LW+源码+讲解)
专注于大学生项目实战开发,讲解,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌。 技术范围:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:…...
mysql中的聚簇索引,什么是聚簇索引和非聚簇索引
文章目录 1. 什么是聚簇索引2. 非聚簇索引3. 聚簇索引的优缺点4. 聚簇索引的使用场景5. 聚簇索引和主键索引的异同前言: 在继续讲解专栏内容之前,先学习几个概念,以便更好了解: 什么是聚簇索引什么是回表这篇文章详细分析 聚簇索引。回表的理解可以进入这篇文章:什么是回表…...
涨薪技术|使用Dockerfile创建镜像
上次的推文内容中介绍了如何使用docker commit的方法来构建镜像,相反推荐使用被称为Dockerfile的定义文件和docker build命令来构建镜像。Dockerfile使用基本的基于DSL语法的指令来构建一个Docker镜像,之后使用docker build命令基于该Dockerfile中的指令…...
OpenFeign在微服务中的远程服务调用工作流程
OpenFeign作为声明式的HTTP客户端,在微服务架构中的远程调用工作流程可分为以下标准步骤: 一、初始化阶段 1. 接口定义(声明式API) @FeignClient(name = "user-service", path = "/api/users") public interface UserServiceClient {@GetMapping(&q…...
力扣14. 最长公共前缀:Java四种解法详解
力扣14. 最长公共前缀:Java四种解法详解 题目描述 编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。 示例: 输入:strs ["flower","flow","flight&quo…...
关于deepin上WPS读取windows上的docx文件
最近在尝试着用deepin替代windows,在deepin上安装了wps读取在windows上编辑的docx和xlsx文件,遇到类似如下的错误: 系统缺失字体:Symbol、Wingdings、Wingdings2、Wingdings3、Webdings、MT Extra WPS无法正确的显示某些符号&…...
利用python调接口获取物流标签,并转成PDF保存在指定的文件夹。
需求 调用get label 接口将接口返回的base64文件转换成pdf文件命名用接口返回值的单号命名保存再指定的文件夹重 实现代码 # -*- coding: utf-8 -*- import requests import base64 import os import json # 新增json模块导入url "http://releasud.com/api/label/Lab…...
31天Python入门——第15天:日志记录
你好,我是安然无虞。 文章目录 日志记录python的日志记录模块创建日志处理程序并配置输出格式将日志内容输出到控制台将日志写入到文件 logging更简单的一种使用方式 日志记录 日志记录是一种重要的应用程序开发和维护技术, 它用于记录应用程序运行时的关键信息和…...
“自动驾驶背后的数学” 专栏导读
专栏链接: 自动驾驶背后的数学 专栏以“自动驾驶背后的数学”为主题,从基础到深入,再到实际应用和未来展望,全面解析自动驾驶技术中的数学原理。开篇用基础数学工具搭建自动驾驶的整体框架,吸引儿童培养兴趣࿰…...
Redis中的数据类型与适用场景
目录 前言1. 字符串 (String)1.1 特点1.2 适用场景 2. 哈希 (Hash)2.1 特点2.2 适用场景 3. 列表 (List)3.1 特点3.2 适用场景 4. 集合 (Set)4.1 特点4.2 适用场景 5. 有序集合 (Sorted Set)5.1 特点5.2 适用场景 6. Redis 数据类型的选型建议结语 前言 Redis 作为一款高性能的…...
python并发爬虫
爬虫多线程方法生成 from threading import Threaddef func(name):for i in range(100):print(f"{name}完成了{i}项任务")if __name__ __main__:t1 Thread(targetfunc, args(老杨,))t2 Thread(targetfunc, args(老李,))t3 Thread(targetfunc, args(老孙,))t1.st…...
react-create-app整合windicss
引用:https://blog.csdn.net/gitblog_00339/article/details/142544145 package.json: "react": "^19.0.0","react-dom": "^19.0.0","react-scripts": "5.0.1","typescript": "^4.9.5…...
fircrawl本地部署
企业内部的网站作为知识库给dify使用,使用fircrawl来爬虫并且转换为markdown。 git clone https://github.com/mendableai/firecrawl.gitcd ./firecrawl/apps/api/ cp .env.example .env cd ~/firecrawl docker compose up -d 官方: https://githu…...
Linux 设备分类详解:字符设备、块设备与网络设备解析
引言 在嵌入式 Linux 领域,设备驱动程序是操作系统与硬件之间的桥梁。Linux 设备按照不同的访问方式和特性可以划分为字符设备、块设备和网络设备。理解它们的分类及特性,对于开发 Linux 设备驱动和操作底层硬件至关重要。本文将深入解析这三大类设备的…...
抽象的算法0.1.3.2版本
前言: 公式:(基础 基础 基础 ...更多的基础) 维度(影响因素) 问题 将问题分解成一个个基础和变量,便可轻松解决问题 ————不知名的作者 因为实在是写不出来了,所以直…...
JSON简介及C++中的JSON使用指南
1. 什么是JSON? JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用文本格式存储和传输数据。它易于人阅读和编写,同时也易于机器解析和生成。JSON广泛应用于Web API、配置文件、数据存储等领域。 JS…...
责任链模式-java
1、spring依赖注入模式 @Configuration public class ChainConfig {@Beanpublic ChainSpringFactory chainSpringFactory(List<IHandler<DemoOne,Boolean>> handlerList){return new ChainSpringFactory(handlerList);}} public class DemoOne { }public abstract…...
精华贴分享|从不同的交易理论来理解头肩形态,殊途同归
本文来源于量化小论坛策略分享会板块精华帖,作者为孙小迪,发布于2025年2月17日。 以下为精华帖正文: 01 前言 学习了一段时间交易后,我发现在几百年的历史中,不同门派的交易理论对同一种市场特征的称呼不一样&#x…...
Oracle归档配置及检查
配置归档位置到 USE_DB_RECOVERY_FILE_DEST,并设置存储大小 startup mount; !mkdir /db/archivelog ALTER SYSTEM SET db_recovery_file_dest_size100G SCOPEBOTH; ALTER SYSTEM SET db_recovery_file_dest/db/archivelog SCOPEBOTH; ALTER SYSTEM SET log_archive…...
Apache HttpClient使用
一、Apache HttpClient 基础版 HttpClients 是 Apache HttpClient 库中的一个工具类,用于创建和管理 HTTP 客户端实例。Apache HttpClient 是一个强大的 Java HTTP 客户端库,用于发送 HTTP 请求并处理 HTTP 响应。HttpClients 提供了多种方法来创建和配…...
STM32C011 进入停止模式和待机模式
对于STM32C011J4M3微控制器,你可以使用HAL库来实现进入停止模式(Stop Mode)和待机模式(Standby Mode)。下面是进入停止模式和待机模式的示例代码: 进入停止模式代码示例: #include "stm3…...
2. 初识go-zero
介绍 go-zero 是一个集成了各种工程实践的 web 和 rpc 框架。通过弹性设计保障了大并发服务端的稳定性,经受了充分的实战检验。 go-zero 中的 api,rpc,数据库等涉及的代码,都可以给我们一键生成,无需耗费我们什么精力…...
【身份安全】零信任安全框架梳理(一)
目录 零信任网络安全防护理念一、定义零信任原则 二、零信任实现方式三、零信任的核心机制和思想1. 持续验证(Continuous Verification)2. 多因素认证(MFA)与强身份验证3. 细粒度权限控制(最小权限原则)4. …...
Ansys Zemax | 联合Speos实现供应商与OEM交换黑盒光学系统
附件下载 联系工作人员获取附件 本文展示了供应商和OEM如何交换加密光学模型(也称为黑匣子模型),从Ansys Zemax OpticStudio中的光学元件设计到Ansys Speos中的系统分析。 概述 在供应商和OEM之间,有两种类型的黑盒模型可以从…...
简历含金量的描述和注意事项!
背景 最近,在公司负责后端相关面试,简历看了不下 50 份,面试 10,纯手码 2000 多字,说说我对简历的看法,希望给大家一点启发。 教育经历 在众多求职面试中,我发现多数求职者容易忽视教育背景的…...
GPT Researcher 的win docker安装攻略
github网址是:https://github.com/assafelovic/gpt-researcher 因为docker安装方法不够清晰,因此写一个使用方法 以下是针对 Windows 系统 使用 Docker 运行 AI-Researcher 项目的 详细分步指南: 步骤 1:安装 Docker 下载 Docke…...
语言模型理论基础-持续更新-思路清晰
1.预训练 相似的任务A、B,任务A已经用大数据完成了训练,得到模型A。 我们利用-特征提取模型的-“浅层参数通用”的特性,使用模型A的浅层参数,其他参数再通过任务B去训练(微调)。 2.统计语言模型 通过条件…...
【C++指针】搭建起程序与内存深度交互的桥梁(下)
🔥🔥 个人主页 点击🔥🔥 每文一诗 💪🏼 往者不可谏,来者犹可追——《论语微子篇》 译文:过去的事情已经无法挽回,未来的岁月还可以迎头赶上。 目录 C内存模型 new与…...
ElasticSearch常用优化点
关闭交换分区:因为Linux采用了三级页表虚存管理,关闭交换分区可以减少系统IO,页面换入唤出时所耗费的总线时间以及减少系统中断次数;swap的使用会显著增加延迟和降低吞吐量。文件描述符配置:任何网络应用都需要增加文件…...
数据结构每日一题day3(顺序表)★★★★★
题目描述:顺序表L的元素递增有序排列,设计一个算法在插入元素x后保持该顺序表仍然递增有序排列,插入成功后返回插入元素所在位置,不成功返回-1 算法思想:在递增有序的顺序表中插入元素 x 并保持有序性,步骤如下: 合法…...
VS Code 中 .history`文件的来源与 .gitignore`的正确使用
引言 在使用 VS Code 进行 Git 版本控制时,有时会发现项目中多出一个 .history 目录,并被 Git 识别为未跟踪文件。本文将解释 .history 的来源,并提供 .gitignore 的正确配置方法,确保开发环境的整洁性。 1. .history 文件的来源…...
2025-03-26 学习记录--C/C++-PTA 6-3 求链式表的表长
合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。💪🏻 一、题目描述 ⭐️ 6-3 求链式表的表长 本题要求实现一个函数,求链式表的表长。 函数接口定义: &…...
element-plus中Cascader级联选择器组件的使用
目录 一.基本使用 二.进阶使用 1.如何获取最后一级选项的值? 2.如何让级联选择器的输入框只展示最后一级? 三.实战 1.场景描述 2.实现步骤 ①设计后端返回值Vo ②编写controller ③编写service ④编写mapper层 ⑤在前端,通过发送…...
性能测试、负载测试、压力测试的全面解析
在软件测试领域,性能测试、负载测试和压力测试是评估系统稳定性和可靠性的关键手段。它们各自关注不同的测试目标和应用场景,理解这些差异对于制定有效的测试策略至关重要。 本文对性能测试、负载测试和压力测试进行深入分析,探讨其定义、…...
阶段一:Java基础语法
目标:掌握Java的基本语法,理解变量、数据类型、运算符、控制结构等。 1. Java开发环境搭建 安装JDK配置环境变量编写第一个Java程序 代码示例: // HelloWorld.java public class HelloWorld { // 定义类名为 HelloWorldpublic static vo…...
信息安全的数学本质与工程实践
信息安全的本质是数学理论与工程实践的高度统一。在这个数字空间与物理世界深度融合的时代,信息安全已从简单的数据保护演变为维系数字社会正常运转的基础设施。对于计算机专业学习者而言,理解信息安全需要超越工具化认知,深入其数学内核与系…...
GPU架构与通信互联技术介绍
文章目录 GPU架构介绍SM 和 Warp Scheduler GPU通信互联技术介绍1、GPUDirectGPUDirect Shared AccessGPUDirect P2PGPUDirect for VideoGPUDirect for RDMARDMAGPUDirect RDMA GPUDirect Storage 2、NVLink & NVSwitchNVLinkNVSwitch 3、应用场景总结 GPU架构介绍 SM 和 …...
解决Centos使用yum命令报错“Cannot find a valid baseurl for repo: base/7/x86_64”问题
一、问题描述 我们在使用Centos7.9使用【sudo yum install influxdb2】命令安装influxDB数据库的时候提示“Loading mirror speeds from cached hostfile Could not retrieve mirrorlist http://mirrorlist.centos.org/release=7&arch=x86_64&repo=os&infra=stock …...
CosyVoice2在Windows系统上本地部署的详细步骤
CosyVoice2在Windows系统上本地部署的详细步骤: 下载源码并初始化: 确保你的设备上安装了Git。打开命令提示符(cmd),执行以下命令来克隆仓库:git clone --recursive https://github.com/FunAudioLLM/CosyVo…...
【拒绝算法PUA】LeetCode 2255. 统计是给定字符串前缀的字符串数目
目录 系列文章目录 专题总结: C刷题技巧总结: 题目 2116. 判断一个括号字符串是否有效 难度 描述 解题方法1 系列文章目录 专题总结: 【拒绝算法PUA】0x00-位运算【拒绝算法PUA】0x01- 区间比较技巧【拒绝算法PUA】0x02- 区间合并技…...
华为HCIE鸿蒙应用开发认证靠谱吗?
在万物互联时代,智能终端设备的多样性与协同需求催生了操作系统的革新。华为HarmonyOS(鸿蒙系统)凭借其分布式架构与全场景能力,正成为打破设备边界、重塑用户体验的核心技术底座。HCIE鸿蒙应用开发认证作为华为认证体系的顶级资质…...
AWE 2025:当AI科技遇见智能家居
3月20日,以“AI科技、AI生活”为主题的AWE2025(中国家电及消费电子博览会)在上海新国际博览中心开幕。作为全球家电行业风向标,本届展会最大的亮点莫过于健康理念在家电领域的全面渗透。从食材保鲜到空气净化,从衣物清…...
CSS选择器
文章目录 基本选择器复合选择器交集选择器并集选择器后代选择器子代选择器兄弟选择器相邻兄弟选择器通用兄弟选择器 属性选择器伪类选择器动态伪类结构伪类:first-child:last-child:nth-child:nth-last-child:first-of-type:last-of-type:nth-of-type:nth-last-of-type:only-ch…...
吐血整理:Air8201如何使用LuatOS进行电源管理功能!
在物联网应用场景中,设备续航能力直接影响其部署成本与运维效率。LuatOS操作系统通过软件层面的精细化控制,为Air8201提供了灵活且高效的电源管理策略。本文将从系统架构、API接口、实战配置三个维度,解析如何利用LuatOS实现Air8201的智能电源…...
C++11QT复习 (四)
Day6-1 输入输出流运算符重载(2025.03.25) 1. 拷贝构造函数的调用时机 2. 友元2.1 友元函数 3. 输入输出流运算符重载3.1 关键知识点3.2 代码3.3 关键问题3.4 完整代码 4. 下标访问运算符 operator[]4.1 关键知识点4.2 代码 5. 函数调用运算符 operator…...