文献阅读笔记 # 区块链在软件供应链管理中的应用探索

news2025/2/25 0:29:37
  • 崔宝江, 宋绪言. 区块链在软件供应链管理中的应用探索[J]. 保密科学技术, 2019(5): 41-44.
  • 主要作者来自北京邮电大学网络空间安全学院 移动互联网安全技术国家工程实验室;

摘要

探索用区块链技术保障软件供应链安全

1 引言

略。

2 软件供应链面临的安全风险

  • 一个完整的软件产品的生命周期包括功能设计开发集成软件分发运行维护等环节;
  • 软件供应链的攻击按照受害者分类:
    • 针对开发者的攻击:将后门或木马植入软件供应链的下游【比如IDE】,开发者使用这些带有恶意代码的软件后,新开发出来的软件也会带有后门或木马。
    • 针对软件分发渠道的攻击:者通过某些方式向软件分发渠道商的服务器中注入恶意软件,所有通过该渠道获得软件的用户都会受到威胁。

3 造成软件供应链安全风险的原因分析

  1. 软件的复杂性
  2. 开源软件的飞速发展
  3. 供应链安全事故的责任不明确

4 区块链应用于软件供应链管理的探索

区块链相关特性:
1)一是不可篡改,区块链分布式账本的各方使用同步协调机制,并且只支持“增查”操作,防止数据库内容被篡改;【这个特性起到了防止黑客攻击后引起的数据篡改问题】
2)二是从单方面维护变为多方面维护,分布式账本是一种多方共同维护、不存在单点故障的分布式系统,数据的写入和同步不仅仅局限在一个主体内。【防止单点故障】

  • (不可篡改->抗抵赖、溯源->责任)利用不可篡改的特性,通过区块链对开发者使用的第三方库或开源软件进行管理和跟踪,利用区块链进行溯源,当发生供应链安全事故时及时确认事故影响的范围,同时明确事故责任人;
    【防止中心化信任,当中央仓库不可信时还有分布式账本中的历史记录(因为篡改区块链代价非常高,需要控制超过一半的节点),另外如果某组件是导致故障发生的原因,在链上的记录可以溯源引入该组件的开发人员或者是提供该组件的供应商】

  • 合约层:使用区块链存储第三方库的“指纹”以及安全性评估信息。当开发者打算使用软件供应链中某个库时,他们首先访问区块链网络,查询该软件的安全评估信息,若安全性符合要求再去中央仓库或开源网站获取数据。
  • 身份准入层:要对参与者的真实身份进行确认,参与者第一次加入网络时需要申请独有的密钥。
  • 用户层:按角色可以分为国家主管部门、软件用户单位、软件安全专业团队和软件集成商。

当成员行使职能时,网络上的其他节点将会对该成员的行为进行确认和记录,这从根本上消除了成员主观作恶的可能性。

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

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

相关文章

网络协议(一)应用层(自定制协议、HTTP协议)

目录 应用层:负责应用程序之间的数据沟通 一、自定制协议(私有协议) 二、HTTP协议 1)、请求行解析:GET /index.html HTTP/1.1 第一部分:请求方法:多种多样,描述不同的请求目的 …

吐血整理的网络工程师必懂的26个技术名词,自查一下看看自己知道多少 ?

在做网络工程师的工作时候,虽说那些晦涩难懂的英语以及技术名词很难记 比如我这个英语从不及格的小乐色,但是你会发现很多都会用到,所以多多少少还是要储备一些在脑子里,有点印象就OK了。查起来也方便不是!那么今天咱…

基于龙芯 2K1000 的嵌入式 Linux 系统移植和驱动程序设计(二)

第 3 章 嵌入式软件系统移植本课题中嵌入式系统正常工作的前提是嵌入式软件系统完整且能正常工作, 以便为之后的软件开发提供一个能够正常工作的平台。引导程序 PMON 需要完成 内核引导,嵌入式 Linux 内核需要具有完备的功能且能够正常使用,根…

2023年 Android Studio Unable to find bundled Java version 解决方法

学习flutter过程中发现 Unable to find bundled Java version 错误搜索网上的解决方案都不对最后在 b站 https://www.bilibili.com/video/BV1S4411E7LY?p17&vd_sourced7cf0e2cd70b3cc57314d2efcb598c3d 教程的课件中找到了解决方哦 我的flutter版本 C:\Users\Ken>flu…

MQTT传输JSON数据实例

想跑一个用MQTT传输JSON的实例,上网找了一下开源代码,找到一个比较合适的:https://blog.csdn.net/ktigerhero3/article/details/107178252,程序源码直接用这个就可以,然后过程中需要进行一下环境的配置,本篇…

本地事务详解

1、事务的基本性质 数据库事务的几个特性:原子性(Atomicity )、一致性( Consistency )、隔离性或独立性( Isolation) 和持久性(Durabilily),简称就是 ACID;  原子性:一系列的操作整体不可拆分,要么同时成功&#x…

【Optional】告别丑陋判空,使用Optional类

一、概述 当项目中充斥着大量的、丑陋的判空语句,如下: if (user ! null) {Address address user.getAddress();if (address ! null) {Country country address.getCountry();if (country ! null) {String isocode country.getIsocode();if (isocod…

ksycopg2连接人大金仓数据库报错ksycopg2._ksycopg问题解决

一句话解决 ksycopg2目前仅支持python2.7/3.5,若版本不同,则会发生报错: 替换ksycopg2为psycopg2即可: pip install psycopg2 测试: import psycopg2conn psycopg2.connect(host"xxx.xxx.xxx.xxx", por…

average_precision_score()函数----计算过程与原理详解

最近在复现论文时发现作者使用了 sklearn.metrics 库中的 average_precision_score() 函数用来对分类模型进行评价。 看了很多博文都未明白其原理与作用,看了sklean官方文档也未明白,直至在google上找到这篇文章Evaluating Object Detection Models Usi…

【SpringBoot 自动配置】-EnableAutoConfiguration 注解

【SpringBoot 自动配置】-EnableAutoConfiguration 注解 续接上回 【Spring Boot 原理分析】- 自动配置 与【SpringBoot 自动配置】- Enable*注解 ,在前面笔者分析了在 SpringBoot 自动装配中的最重要的两个注解类, Condition 与 EnableAutoConfiguration 哎~说到…

从0到1搭建大数据平台之监控

大家好,我是脚丫先生 (o^^o) 大数据平台设计中,监控系统尤为重要。 它时刻关乎大数据开发人员的幸福感。 试想如果半夜三更,被电话吵醒解决集群故障问题,那是多么的痛苦!!! 但是不加班是不可…

shiro总结

0x00 前言 此篇作为shiro总结篇,用于查漏补缺。 利用工具推荐:https://github.com/j1anFen/shiro_attack 0x01 反序列化 1.shiro 124 shiro 124,因为AES加密秘钥硬编码导致反序列化漏洞,124修复 Java 代码审计——shiro 1.2…

React 虚拟DOM的前世今生

引文 通过本文你将了解到 什么是虚拟DOM?虚拟DOM有什么优势?React的虚拟Dom是如何实现的?React是如何将虚拟Dom转变为真实Dom? 一、前言 要了解虚拟DOM,我们先明确一下DOM的概念。 根据MDN的说法: 文档…

Win10关闭自动更新

Win10关闭自动更新第一步:修改电脑系统时间第二步,设置自动更新时间第三步:再次修改系统时间为正确时间因为国内使用的操作系统,很多‍是非正版的系统,如果更新了系统,很容易造成电脑蓝屏,系统运…

90%的合同麻烦都源于签约“漏洞”,君子签电子签章闭坑指南来了!

业务签约中,有哪些合同麻烦呢?文字套路、印章造假、假冒代签、乱签漏签、信息泄露…事实上,这些签约“漏洞”都是源于签约风险排查不到位,管控不力而导致的,以至于后期履约中纠纷也不断。 君子签针对业务签约中的各类…

小黑子的python入门到入土:第二章

python零基础入门到入土2.0python系列第二章1. 三目运算符2. 运算符优先级3. if 语句3.1 简单的if语句3.2 if-else 语句3.3 if-elif-else 语句3.4 if 语句注意点4. pass 关键字5. 猜拳游戏案例6. while 循环语句7. while 练习8. range9. for...in 循环的使用10. break 和contin…

小林coding

一、图解网络 问大家,为什么要有TCP/Ip网络模型? 对于同一台设备上的进程通信,有很多种方式,比如有管道、消息队列、共享内存、信号等方式,对于不同设备上的进程通信,就需要有网络通信,而设备是…

约束优化:PHR-ALM 增广拉格朗日函数法

文章目录约束优化:PHR-ALM 增广拉格朗日函数法等式约束非凸优化问题的PHR-ALM不等式约束非凸优化问题的PHR-ALM对于一般非凸优化问题的PHR-ALM参考文献约束优化:PHR-ALM 增广拉格朗日函数法 基础预备: 约束优化:约束优化的三种序…

【MyBatis】逆向工程与分页插件

11、MyBatis的逆向工程 11.1、创建逆向工程的步骤 正向工程:先创建Java实体类,由框架负责根据实体类生成数据库表。 Hibernate是支持正向工程的。 逆向工程:先创建数据库表,由框架负责根据数据库表,反向生成如下资源…

公司技术团队为什么选择使用 YApi 作为 Api 管理平台?

在 2021 年 12 月份的时候我就推荐过一款软件程序员软件推荐:Apifox,当时体验了一下里面的功能确实很实用,但是当时公司有一套自己的 API 管理方案,所有 Apifox 暂时就没在内部使用。 直到最近要使用其他的 API 管理方案的时候才…