首页 > 其他分享 >区块链原理与技术

区块链原理与技术

时间:2023-04-30 11:05:51浏览次数:37  
标签:企业 应收 核心 技术 账款 供应链 单据 原理 区块

访问【WRITE-BUG数字空间】_[内附完整源码和文档]

一、项目背景

1.1 供应链+金融场景

供应链(Supply Chain)是指生产及流通过程中,涉及将产品或服务提供给最终用户活动的上游与下游企业所形成的网链结构。 金融机构对不同企业的的信用评级不同,核心企业有很大的风险承担的能力,故信用评级会高于一般企业。在供应链场景中,核心企业由于资金暂时短缺向下流普通公司签订了应收账款单据,约定某个时间后还款,这个过程可以由金融机构来作见证,从而确认这笔交易的真实性。在这段时间内,若掌握核心企业"欠条"的普通企业资金短缺需要融资,它可以凭借跟核心企业签订的应收账款单据向金融结构借款,但这样的信任关系并不会往下游传递。 这种不信任关系一直沿着下游的普通企业传播,需要金融机构不断往上验证真实性,导致这个过程增加很多经济成本。导致这个问题的根本原因是核心企业的信用无法在整个供应链中传递以及交易信息不透明化所导致的。   如果我们结合区块链技术,将供应链上的每一笔交易和应收账款单据上链,同时引入第三方可信机构来确认这些信息的交易,例如银行,物流公司等,确保交易和单据的真实性,同时支持应收账款的转让,融资,清算等,就可以让核心企业的信用可以传递到供应链的下游企业,减小中小企业的融资难度。   本项目针对这样一个应用场景,基于已有的开源区块链系统FISCO-BCOS,以联盟链为主,开发基于区块链或区块链智能合约的供应链金融平台, 实现供应链应收账款资产的溯源、流转。

1.2 功能需求分析

  • 基本功能:
  • 核心企业、普通企业、金融企业的注册。
  • 通过账户查询余额、查询收款单据和欠款单据和查看历史交易记录。
  • 核心功能:
  1. 实现采购商品—签发应收账款交易上链。例如车企从轮胎公司购买一批轮胎并签订应收账款单据。

  2. 实现应收账款的转让上链,轮胎公司从轮毂公司购买一笔轮毂,便将于车企的应收账款单据部分转让给轮毂公司。轮毂公司可以利用这个新的单据去融资或者要求车企到期时归还钱款。

  3. 利用应收账款向银行融资上链,供应链上所有可以利用应收账款单据向银行申请融资。

  4. 应收账款支付结算上链,应收账款单据到期时核心企业向下游企业支付相应的欠款。

二、方案设计

2.1 存储设计

  • 企业账户的数据结构

struct Company{    string companyName; // 企业名称    int balance;         // 账户余额    int companyType;    // 企业类型    bool isRegistered; // 验证企业是否存在}

  • 企业类型由一个整形表示:分别对应金融机构、核心企业和下游普通企业。
  • 在智能合约中,我们以企业账户的地址作为键值,用一个哈希表保存企业,这样就可以直接通过地址访问企业的数据。

mapping(address => Company) private companyMap;

  • 债权凭证的数据结构

struct Receipt {    address from;       // 发起方地址    address to;         // 接收方地址    int amount;         // 债权凭证金额    bool isSettled;     // 账单状态: 已结算 / 待结算 }

  • 我们使用一个列表来保存所有的债权凭证

Receipt[] private receiptList;

区块链原理与技术_区块链

区块链原理与技术_数据结构_02

区块链原理与技术_数据结构_03

区块链原理与技术_智能合约_04

标签:企业,应收,核心,技术,账款,供应链,单据,原理,区块
From: https://blog.51cto.com/u_16075443/6237784

相关文章

  • js常见混淆加密技术
    下面,我将通过一个案例来演示如何使用JavaScript混淆加密技术来保护你的网站。假设你有一个网站,其中包含一个登录页面,该页面的JavaScript代码如下所示:functionlogin(username,password){if(username==="admin"&&password==="123456"){alert("登录成功!");}els......
  • 大话AI绘画技术原理与算法优化
    引子博主很长一段时间都没有发文,确实是在忙一些技术研究。如标题所示,本篇博文主要把近段时间的研究工作做一个review。看过各种相关技术的公关文章,林林总总,水分很多。也确实没有多少人能把一些技术细节用一些比较通俗的语言阐述清楚。故此,再一次冠以大话为题,对AI绘画主要是st......
  • vue3源码-一、响应式原理reactive的实现
    reactive的实现使用:使用reactive()函数创建一个响应式对象。import{reactive}from'vue'exportdefault{//`setup`是一个专门用于组合式API的特殊钩子函数setup(){conststate=reactive({count:0})//暴露state到模板return{......
  • Service Worker 实践与原理
    ServiceWorker在2014年,W3C公布了serviceworker的草案,serviceworker提供了很多新的能力,使得webapp拥有与nativeapp相同的离线体验、消息推送体验。serviceworker是一段脚本,与webworker一样,也是在后台运行。作为一个独立的线程,运行环境与普通脚本不同,所以不能直接参与web交......
  • Python 希尔排序(Shell Sort)原理以及应用
    希尔排序的原理:希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。希尔排序的原理是将待排序的序列按照一定间隔分成若干个子序列,对每个子序列使用插入排序进......
  • 一文带你了解区块链中15种共识算法
    所有主要的区块链共识算法解释区块链技术席卷全球,提供了一种去中心化且安全的信息存储和传输方式。它还彻底改变了交易的执行方式,随之而来的是广泛的共识算法。在这里,共识算法在确保区块链网络的完整性方面发挥着关键作用。在本文中,我们将探讨所有主要类型的区块链共识算法、它们......
  • 毕业设计 医学图像阅读器 DICOM CT MRI 阅读器 三维重建 可视化编程技术及应用
    一、概述     此系统实现了常见VTK四视图,实现了很好的DICOM图像显示,可用于DICOM超声X线CTMR三维重建拾取像素值窗宽窗位像素,距离测量,角度测量,提供源码;并且通过三维重建实现可视化。使用了第三方库VTK,ITK实现分割和生不重建。窗口分为(横断面)、冠状面、矢状......
  • SPFA 算法:实现原理及其应用
    一、前言SPFA算法,全称为ShortestPathFasterAlgorithm,是求解单源最短路径问题的一种常用算法,它可以处理有向图或者无向图,边权可以是正数、负数,但是不能有负环。二、SPFA算法1、SPFA算法的基本流程1.初始化首先我们需要起点s到其他顶点的距离初始化为一个很大的值(比如99......
  • 三维重建原理和算法
    原理采集深度图像:使用深度相机采集场景深度信息,并将其转换为深度图像。点云生成:根据深度图像,将场景中的点云数据进行生成。点云滤波:对于采集到的点云数据进行滤波处理,去除无效数据点。点云配准:如果需要将多个点云数据融合为一个完整的点云模型,需要进行点云配准操作,使得各个点......
  • 火山引擎云原生数据仓库 ByteHouse 技术白皮书 V1.0 (Ⅵ)
     更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群近日,《火山引擎云原生数据仓库ByteHouse技术白皮书》正式发布。白皮书简述了ByteHouse基于ClickHouse引擎的发展历程,首次详细展现ByteHouse的整体架构设计及自研核心技术,为云原生数据......