区块链安全正当时|《Hyperledger Fabric2.0架构安全报告》解读

news2024/11/25 2:24:44

2021年,《中华人民共和国国民经济和社会发展第十四个五年规划和2035年远景目标纲要》将区块链纳入数字产业,对其发展作出了重要部署。同年6月中央网信办和工信部联合印发了《关于加快推动区块链技术应用和产业发展的指导意见》,提出加快区块链技术应用规模化,实现跨越式发展

 

国际云安全联盟CSA发布报告《Hyperledger Fabric2.0架构安全报告》(以下称报告),本报告聚焦贸易金融工作流程在Fabric中的落地实现,分析了Fabric体系架构在贸易金融工作流程运行时所面临的安全威胁,阐述了在云计算环境下,针对运行Hyperledger Fabric 2.0的许可链网络,如何通过“六步走”的策略,精准、有效地开展安全风险评估,最后从实战经验出发,提出了威胁缓解、安全事件响应准备的相关对策建议。

微信搜索“国际云安全联盟”公众号,回复关键词“区块链”即可获取报告完整版

 

如何评估

Hyperledger Fabric 2.0架构安全风险

识别Fabric 2.0许可链网络的子系统

在IaaS云环境中,典型的Hyperledger Fabric 2.0架构由三个不同层面组成。

 

分解/标识Fabric 2.0许可链的网络信任边界

1、物理网络信任边界

在IaaS云环境下,Hyperledger Fabric可信任的物理网络边界由以下几部分组成:

  • 可信任边界-Fabric客户端

  • 可信任边界-云服务提供商

  • 可信任边界-共识服务

  • 可信任边界-账户服务

  • 可信任边界-同一组织的对等节点

2、逻辑网络信任边界

Fabric的逻辑网络主要功能是为应用构建通信的渠道,包括对等节点之间、对等节点与身份认证服务之间、对等节点与会员服务之间等逻辑网络。

详细分析运行在Fabric 2.0 许可链网络上的

贸易金融工作流程

Fabric 2.0中的私人贸易融资交易流程解构

在Fabic2.0网络中,含有个人身份信息(PII)的交易从开始到结束的流程如上图所示,进口商组织客户调用智能合约(步骤1)到被确认的结果通过智能合约提示给进口商组织客户(步骤8),包括了从工作请求开始到工作请求结束的全部网络过程。

基于STRIDE威胁模型识别贸易金融工作

流程中的漏洞

STRIDE威胁模型是由微软提出的⼀种威胁建模⽅法,该⽅法将威胁类型分为Spoofing(仿冒)、Tampering(篡改)、Repudiation(抵赖)、Information Disclosure(信息泄漏)、Denial of Service(拒绝服务)和 Elevation of Privilege(权限提升)。STRIDE威胁建模的流程:1、绘制数据流图;2、识别威胁;3、提出缓解措施;4、安全验证。

示例:STRIDE威胁模型的应用-从进口商组织传输交易协议到对等节

 

通过评估漏洞的可能性和影响范围来确定

风险程度

对使用 STRIDE 识别的漏洞可能性和影响进行评级,并确定 Fabric 2.0 网络的风险程度。

示例:风险列表以及其对应的风险等级

根据网络安全功能域对漏洞进行分组、分类

为了使“控制措施清单”可交付给企业以帮助企业准备就绪,需要将Fabric网络中已识别的漏洞按网络安全功能区域进行分组、分类,这些功能区域可以与企业现有的网络安全能力无缝集成,从而明确角色、责任和问责的界限,从而可以更轻松地跟踪、管理和报告关键漏洞。

总结

当前,Hyperledger Fabric架构广泛应用于国内金融领域的区块链项目,如中国银行、民生银行、邮储银行、工商银行、建设银行等均曾推出过使用Hyperledger Fabric架构的金融区块链项目。

在当前区块链广泛创新应用阶段,报告值得金融行业安全从业者、风险控制管理者和金融行业监管机构参考。国际云安全联盟大中华区(CSA GCR)给出以下两点建议:

1、Fabric系统和证书颁发机构的分散管理,再加上缺乏强有力的治理政策来保护管理渠道和凭证免受入侵,可能会扩大攻击面。建议在云环境中选择单个服务提供商(最好是中立方)与联合证书颁发机构一起管理Fabric网络,将有助于减少由于去中心化Fabric管理而造成的攻击面。

2、与任何区块链一样,Hyperledger Fabric 2.0 的运行以密码学原理为核心。建议在Fabric中加入对于国密算法的支持,以便切实有效地限制漏洞。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/383440.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Babel-好文

ES6的很多语法在浏览器甚至node环境中无法执行,babel就是一个广泛使用的转码器,可以将ES6代码转化成ES5代码定义一个文件夹,cmd进入到其中,运行npm install -g babel-cli安装,然后可以通过babel --version查看是否安装…

odoo15 登录界面的标题自定义

odoo15 登录界面的标题自定义 原代码中查询:<title>Odoo<title> <html> <head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><title>Odoo</title><link rel="shortcut icon…

Jvm调优实战笔记

一、基础命令jps 查看所有java进程jinfo 进程号 查看该线程相关信息3、jstat 统计信息&#xff08;数据跟踪信息&#xff09;jstat -gc 进程号 查看该线程在内存中每一块占用的大小jstat -gc 进程号 时间&#xff08;毫秒&#xff09; 更新频率4、jstack 跟踪线程jstack 进程号…

Ethercat系列(10)用QT实现SOEM主站

首先将SOEM编译成静态Lib库可以参考前面的博文(83条消息) VS2017下编译SOEM(Simle Open EtherCAT Master)_soem vs_CoderIsArt的博客-CSDN博客make_libsoem_lib.bat "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build" x86用QT创建…

【C++】多态虚表

多态——多种形态多态的分类&#xff1a;1.静态多态&#xff1a;函数重载和运算符重载&#xff08;复用函数名&#xff09;2.动态多态&#xff1a;派生类和虚函数实现运行时多态静态多态和动态多态的区别&#xff1a;静态多态的函数地址早绑定——编译阶段确定函数地址动态多态…

页面访问升级出错怎么解决

相信大家在访问网站的时候时常会遇到页面访问界面升级&#xff0c;暂时不可能进行访问操作&#xff0c;可能遇到这种情况很多小伙伴们都不知道怎么版&#xff0c;其实互联网网页在正常使用过程中是不会出现这种问题的。那么如果遇到页面访问界面升级怎么办?页面访问界面升级通…

TryHackMe-Binex

Binex 枚举计算机并获取交互式 shell。利用 SUID 位文件&#xff0c;使用 GNU 调试器利用缓冲区溢出并通过 PATH 操作获得根访问权限。 端口扫描 循例 nmap SMB枚举 题目给了提示&#xff1a;Hint 1: RID range 1000-1003 Hint 2: The longest username has the unsecure pa…

面试中问你查看日志的命令,可不能只说tail,cat,more

首选&#xff0c;如何查看日志&#xff1a; 很多初级测试人员&#xff0c;在进行执行测试用例这个步骤时&#xff0c;发现bug&#xff0c;不能更加的准确去定位bug&#xff0c;在这样的情况下就可以打开Linux服务器&#xff0c;敲命令查看操作进行中的实时日志&#xff0c;当系…

用arthas轻松排查线上问题

你是否在项目中会碰到以下一些问题&#xff1a; 在代码中打印各种日志来排查&#xff0c;比如方法的入参&#xff0c;出参&#xff0c;及在方法体中打印日志判断走哪行代码还有你觉得代码没问题&#xff0c;可是运行出现却是以前的bug&#xff0c;感觉代码没修改&#xff0c;或…

120.(leaflet篇)区域下钻,区域钻取

听老人家说:多看美女会长寿 地图之家总目录(订阅之前建议先查看该博客) 文章末尾处提供保证可运行完整代码包,运行如有问题,可“私信”博主。 效果如下所示: 下面献上完整代码,代码重要位置会做相应解释 <!DOCTYPE html> <html>

【RocksDB】Ubuntu20.04下编译rocksdb

前言&#xff1a; 我在刚学rocksdb的时候是在2022年&#xff0c;但是网上的资源很少&#xff0c;查了好久才把rocksdb安装成功&#xff0c;在这里向大家分享一下我的经历&#xff0c;安装过程中也报了很多错误&#xff0c;希望大家不要迷路 首先 在虚拟机里面安装依赖的包以…

python List和常用的方法

List&#xff1a;列表中包含多个数据&#xff0c;数据之间使用逗号分隔&#xff0c;索引从0开始。 空列表&#xff1a; dir&#xff1a;查看列表的所有方法 List常用方法&#xff1a;insert、append&#xff0c;extend、del、remove、pop、clear、count、index 增加insert(索引…

健身房戴耳机的人都喜欢戴哪款耳机健身、最好用健身耳机推荐

对于喜欢健身和运动人群来说&#xff0c;耳机可谓是重中之重了&#xff0c;带上耳机 听着喜欢的音乐&#xff0c;沉浸在自己的世界中&#xff0c;训练状态直接拉满…但是能适合运动佩戴的耳机真的不多&#xff0c;这类耳机要同时具备舒适度、防水性、稳固性、高续航等等性能&am…

coreldraw2023安装包下载及新功能介绍

对于广告标识业来说 coreldraw这个软件&#xff0c;对我们来说绝对不陌生&#xff0c;我从2008年开始接触到广告制作&#xff0c;到现在已经13多年了&#xff0c;从一开始的coreldraw 9红色的热气球开始。就被这个强大的软件所吸引&#xff0c;他有强大的排榜功能已经对位图的处…

zigbee 抓包软件Ubiqua使用详解

zigbee抓包软件使用&#xff08;Ubiqua Protocol Analyzer&#xff09; 添加Zigbee sniffer Dongle设备 add Device>vendor选择Texas Instruments>选择Texas Instruments CC2531>add Device 设置信道 右键设置需要抓包的信道 设置秘钥 单击主菜单Tools>Opt…

arm64虚拟化学习笔记

各种虚拟化对比 虚拟化种类优缺点实现硬件加速虚拟化性能最好&#xff0c;最贵1.vcpu 2.内存stage2 3.虚拟中断 4.arch time全虚拟化纯软件实现&#xff0c;性能差1.qemu串口 2.qemu磁盘半虚拟化软件实现复杂1.Virtio block 设备 2.Virtio net 设备io虚拟化加速移植性差1.PCI设…

java是编译型语言还是解释型语言?

基本概念 什么是编译型语言&#xff1f;编译型语言的首先将源代码编译生成机器语言&#xff0c;再由机器运行机器码&#xff08;二进制&#xff09;&#xff0c;比如C和C. 编译型语言&#xff1a;程序在执行之前需要一个专门的编译过程&#xff0c;把程序编译成 为机器语言的文…

mysql一explain结果分析

1. EXPLAIN简介 使用EXPLAIN关键字可以模拟优化器执行SQL查询语句&#xff0c;从而知道MySQL是如何处理你的SQL语句的。分析你的查询语句或是表结构的性能瓶颈。 ➤ 通过EXPLAIN&#xff0c;我们可以分析出以下结果&#xff1a; 表的读取顺序数据读取操作的操作类型哪些索引可…

【LeetCode】背包问题总结

文章目录一、背包能否装满&#xff1f;416. 分割等和子集1049. 最后一块石头的重量 II二、装满背包有几种方法&#xff1f;494. 目标和518.零钱兑换II377. 组合总和 Ⅳ70. 爬楼梯三、背包装满的最大价值474.一和零四、装满背包最小物品数322. 零钱兑换279.完全平方数一、背包能…

win10+python3.6+cuda9+pytorch1.1.0安装

为了让torch可以使用显卡GPU加速&#xff0c;需要安装对应版本的cudatoolkit和pytorch。这里我的nvidia显卡驱动是9.1版本&#xff0c;只能安装cudatoolkit9。 一般支持gpu加速的显卡大部分都是英伟达nvidia系列&#xff0c;都自带了nvidia驱动&#xff0c;所以不需要安装nvidi…