草庐IT

区块链如何改变能源行业

Chenglin Pua 2023-03-28 原文
​能源行业是一个极具规模且复杂的行业。能源行业是所有行业的血液,人类社会的快速发展都是建立在一个健康的能源行业之上。能源行业存在着许多的利益相关者,例如石油产业就涉及开采、勘探、运输、炼油、分销等环节。电力行业亦是如此。能源行业的规模大以及复杂化也带来了一些问题,例如数据的不透明等,区块链技术的应用则为能源行业解决了部分问题。

区块链+电力行业

透明化能源市场。区块链技术可以为参与者提供更加透明的数据,帮助参与者了解能源市场走势。各种类型的能源数据包括市场价格、边际成本、能源法合规性和燃料价格。2018 年 4 月,智利国家能源委员会(CNE)宣布启动了一个专注于能源的区块链项目 。政府部门将使用以太坊区块链来记录、存储和跟踪能源数据。目前能源市场的一个问题在于其数据非常不透明,人们难以得到有效的数据,获取相关数据的时间成本非常大。而区块链技术能够降低人们获取相关数据的时间成本。

此外,相关能源数据经常被有意操纵或被误报和遗漏。故意造假和相关文书错误的财务成本可能对企业和政府造成不利影响。本着透明化的愿景,CNE 将允许公众访问交易和价格记录。公共区块链的透明度进一步降低了能源数据被利用的机会。

点对点电力交易。我们可以通过智能合约将多余的可再生能源出售给其他网络参与者,即实现点对点电力交易。目前世界上比较知名的项目有Power Ledger、Greeneum 和 Rowan Energy 。2020 年 9 月,Power Ledger 和 OP Properties 宣布了一个可持续项目,该项目将在澳大利亚弗里曼特尔建造一个拥有 39 套公寓的综合体(即公寓+区块链平台)。该综合体将配备太阳能屋顶光伏和本地电池存储,公寓业主将能够使用该平台将他们产生的多余太阳能出售回电网。

Energy Web Foundation 利用以太坊、Truffle 开发者工具和 Gnosis 多重签名钱包来构建他们的平台。该组织希望能够创建一个平台,让人们可以将自己多余的能源上传到区块链平台进行买卖,价格由市场以及卖家自行决定。到时候,每个人都有能力参与能源买卖。

Grid+是一家专注于批发能源分销的区块链能源公司。Grid+拥有很少的电网基础设施,相反他们只管理能源分销的服务,例如计费和计量使用。根据Grid+的数据显示,利用他们基于区块链的平台买卖能源可以帮助消费者减少40%的成本。通过将用户直接连接到电网,区块链允许用户以他们想要的成本从电网购买能源。这造就了一个更加公平和稳定的能源市场,用户能获取更低的电力成本。

可再生能源的证书管理。2019 年 12 月,可再生能源领域的全球领导者 EDP 集团和西班牙百货公司 El Corte Inglés 启动了一个基于区块链的项目,为可再生能源的来源提供实时验证(即验证能源来自可再生能源而非传统能源)。该项目将使 El Corte Inglés 实现其减少碳排放的目标。该系统实时自动记录和授予可再生能源证书。

电网管理。英国商业、能源和工业战略部门已向区块链技术开发商 Electron 提供资金,用于将可再生能源发电机与当地电网连接起来,以建立一个实时的分销级市场。由于可再生能源产生时间有着非常大的限制(例如太阳能只能在日间提供能源),因此可再生能源参与电网对于电网管理来说是一个挑战。而区块链能够很好的帮助电网管理进行升级。基于智能合约,可以很好的自动化管理可再生能源在电网整体中的利用比例。

石油与天然气行业

在石油和天然气交易中实施区块链技术可以降低维护各种交易系统相关的成本。此外,区块链还可以降低与劳动力、数据管理、数据可见性、结算延迟和系统间通信相关的成本。区块链公司 BTL Group 2020年与ENI、BP完成了一个试点项目。该试点表明,使用区块链技术促进和跟踪天然气交易,可将总成本降低 30-40%。基于此试点项目,BTL Group计划用天然气以外的其他资源测试该平台。

ENI是一家总部位于罗马的意大利跨国石油和天然气公司,被认为是世界七大“超级”石油公司之一。截至 2022 年 4 月 11 日,它在 69 个国家拥有业务,市值为 540.8 亿美元。意大利政府持有该公司 30.33% 的股份,该公司是 Euro Stoxx 50 股票市场指数的组成部分。ENI在许多领域开展业务,包括承包、核电、能源、采矿、化工和塑料、炼油/提取和分销机械、酒店业,甚至纺织业和新闻业。

BP是一家总部位于伦敦的英国石油和天然气公司,是世界七大油气“超级巨头”之一。它的业务遍及石油和天然气行业的所有领域,包括勘探和开采、炼油、分销和营销、发电和贸易。该公司在全球拥有 18,700 个服务站。在俄罗斯,BP 拥有俄罗斯石油公司 19.75% 的股份,俄罗斯石油公司是全球油气储量和产量最大的上市石油和天然气公司。

天然气和石油等能源大宗商品的交易可能是另一个会被区块链技术重塑的领域。许多公司都投资大量资金来建立一个专门为能源大宗商品交易的平台。当中,维护、更新和保护这些系统需要大量成本。商品交易需要维护一个庞大的分类账,记录特定时刻的交易和商品价格。将区块链技术应用于商品交易将比现有的专有系统更便宜、更高效。不可篡改性、安全性和即时性都可以在区块链中进行编程,从而消除大规模专有系统的缓慢适应性。

石油和天然气行业由数千家公司组成。基本上可以大致分为三类 :上游、中游和下游。上游企业是指与资源勘探和开采有关的企业。中游企业是指一旦提取资源,就涉及存储和运输资源的企业。下游企业是指将资源提炼成多种最终产品或将产品出售给最终用户(即加油站)的公司。

上游由四个主要利益相关者主导:大型企业、NOC(国家石油公司)、独立企业和油田服务。专业公司是管理或拥有油田和油井活动的大型石油和天然气公司。上游需要数十个利益相关者的参与,他们都依赖于其他公司提供的数据。而基于区块链技术的平台能够成为上述公司提供一个获取可靠数据的来源。

除了储存以及运输之外,中游企业还包括管理庞大的交通网络和大量监管。严格的监管和资产密集度要求石油和天然气公司要专注于降低风险。因此,这些公司可以受益于与业内其他机构共享信息。区块链技术擅长提供多方利益相关者信息共享,尤其是相关资产的跟踪。

下游包括数十种不同产品的管理。这些产品针对不同的客户,有不同的环境法规(例如飞机油就有不同的法规、要求等等),需要不同的运输方式。基于区块链技术的供应链可以优化石油和天然气以及相关产品之间的协调,让资源调度能够及时且透明。此外,区块链技术平台记录和跟踪供应链的能力可以阻止石油与天然气供应链中的大量浪费。

区块链与能源行业结合的挑战

虽然区块链可以很好的帮助能源行业提高效率以及降低运营上的成本,但在2者的结合上仍然有困难,例如可扩展性和功耗。由于区块链的特性,公共区块链(公链)通常需要每笔交易的高能耗,并且在确认交易之前可能会出现长时间的延迟。虽然相关问题在不断改善当中,但仍需要改进。

公链所需要耗费的时间和电力需求对比可以从Visa和比特币得到横向对比。Visa 交易需要 0.001 千瓦时的电力,而比特币交易每笔交易估计需要 740 千瓦时。此外,Visa 的平台每秒能够处理多达 65,000 笔交易,而比特币交易可能需要几分钟到几小时才能得到确认。

再来则是区块链缺乏明确和一致的监管。尽管在日本和欧洲等不同地区已经开始制定法规,但缺乏有效且严谨的区块链全球法规是能源领域采用区块链的主要障碍。需要制定法规来管理未来的分散式能源系统,规范电价,并解决可能的纠纷和交易逆转。

最后则是51% 攻击。对于某些区块链,拥有网络多数控制权的攻击者可以中断新区块的记录并阻碍交易的完成。这种类型的攻击对区块链小型网络具有更高的风险,因为接管 51% 以上的大型区块链黑客所需的计算能力将是非常巨大的。​

有关区块链如何改变能源行业的更多相关文章

  1. ruby - 如何使用 Nokogiri 的 xpath 和 at_xpath 方法 - 2

    我正在学习如何使用Nokogiri,根据这段代码我遇到了一些问题:require'rubygems'require'mechanize'post_agent=WWW::Mechanize.newpost_page=post_agent.get('http://www.vbulletin.org/forum/showthread.php?t=230708')puts"\nabsolutepathwithtbodygivesnil"putspost_page.parser.xpath('/html/body/div/div/div/div/div/table/tbody/tr/td/div

  2. ruby - 如何从 ruby​​ 中的字符串运行任意对象方法? - 2

    总的来说,我对ruby​​还比较陌生,我正在为我正在创建的对象编写一些rspec测试用例。许多测试用例都非常基础,我只是想确保正确填充和返回值。我想知道是否有办法使用循环结构来执行此操作。不必为我要测试的每个方法都设置一个assertEquals。例如:describeitem,"TestingtheItem"doit"willhaveanullvaluetostart"doitem=Item.new#HereIcoulddotheitem.name.shouldbe_nil#thenIcoulddoitem.category.shouldbe_nilendend但我想要一些方法来使用

  3. python - 如何使用 Ruby 或 Python 创建一系列高音调和低音调的蜂鸣声? - 2

    关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。

  4. ruby-on-rails - 如何验证 update_all 是否实际在 Rails 中更新 - 2

    给定这段代码defcreate@upgrades=User.update_all(["role=?","upgraded"],:id=>params[:upgrade])redirect_toadmin_upgrades_path,:notice=>"Successfullyupgradeduser."end我如何在该操作中实际验证它们是否已保存或未重定向到适当的页面和消息? 最佳答案 在Rails3中,update_all不返回任何有意义的信息,除了已更新的记录数(这可能取决于您的DBMS是否返回该信息)。http://ar.ru

  5. ruby-on-rails - 'compass watch' 是如何工作的/它是如何与 rails 一起使用的 - 2

    我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t

  6. ruby - 如何将脚本文件的末尾读取为数据文件(Perl 或任何其他语言) - 2

    我正在寻找执行以下操作的正确语法(在Perl、Shell或Ruby中):#variabletoaccessthedatalinesappendedasafileEND_OF_SCRIPT_MARKERrawdatastartshereanditcontinues. 最佳答案 Perl用__DATA__做这个:#!/usr/bin/perlusestrict;usewarnings;while(){print;}__DATA__Texttoprintgoeshere 关于ruby-如何将脚

  7. ruby - 如何指定 Rack 处理程序 - 2

    Rackup通过Rack的默认处理程序成功运行任何Rack应用程序。例如:classRackAppdefcall(environment)['200',{'Content-Type'=>'text/html'},["Helloworld"]]endendrunRackApp.new但是当最后一行更改为使用Rack的内置CGI处理程序时,rackup给出“NoMethodErrorat/undefinedmethod`call'fornil:NilClass”:Rack::Handler::CGI.runRackApp.newRack的其他内置处理程序也提出了同样的反对意见。例如Rack

  8. ruby - 如何每月在 Heroku 运行一次 Scheduler 插件? - 2

    在选择我想要运行操作的频率时,唯一的选项是“每天”、“每小时”和“每10分钟”。谢谢!我想为我的Rails3.1应用程序运行调度程序。 最佳答案 这不是一个优雅的解决方案,但您可以安排它每天运行,并在实际开始工作之前检查日期是否为当月的第一天。 关于ruby-如何每月在Heroku运行一次Scheduler插件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8692687/

  9. ruby-on-rails - 如何从 format.xml 中删除 <hash></hash> - 2

    我有一个对象has_many应呈现为xml的子对象。这不是问题。我的问题是我创建了一个Hash包含此数据,就像解析器需要它一样。但是rails自动将整个文件包含在.........我需要摆脱type="array"和我该如何处理?我没有在文档中找到任何内容。 最佳答案 我遇到了同样的问题;这是我的XML:我在用这个:entries.to_xml将散列数据转换为XML,但这会将条目的数据包装到中所以我修改了:entries.to_xml(root:"Contacts")但这仍然将转换后的XML包装在“联系人”中,将我的XML代码修改为

  10. ruby - 如何使用文字标量样式在 YAML 中转储字符串? - 2

    我有一大串格式化数据(例如JSON),我想使用Psychinruby​​同时保留格式转储到YAML。基本上,我希望JSON使用literalstyle出现在YAML中:---json:|{"page":1,"results":["item","another"],"total_pages":0}但是,当我使用YAML.dump时,它不使用文字样式。我得到这样的东西:---json:!"{\n\"page\":1,\n\"results\":[\n\"item\",\"another\"\n],\n\"total_pages\":0\n}\n"我如何告诉Psych以想要的样式转储标量?解

随机推荐