• [技术干货] 【论文分享】基于区块链的分布式物联网设备身份认证机制研究
    基于区块链的分布式物联网设备身份认证机制研究谭琛, 陈美娟, Amuah Ebenezer Ackah南京邮电大学通信与信息工程学院,江苏 南京 210003摘要为了解决物联网集中式平台在设备身份认证过程中兼容性低、抗攻击能力弱等问题,提出了一种基于区块链的分布式物联网设备身份认证架构。将数字身份等信息存入新型区块数据结构中,并根据密码学相关知识提出了分布式物联网设备身份认证机制,设计了设备数字证书颁发和身份认证的详细流程。从各实体间的权力约束、设备隐私性保护、抵御攻击能力等方面对所提机制进行了安全性分析,并对比分析了安全属性、计算开销和存储开销3个方面的性能。结果表明,所提出的身份认证机制可以抵御多种恶意攻击,能够实现高度安全的分布式物联网身份认证,并且在性能方面具有一定优势。关键词: 区块链 ; 物联网 ; 分布式 ; 身份认证 ; 密码学1 引言近年来,物联网技术[1]的普及和迅速发展使得物联网应用[2]在日常生活中随处可见,并在各个领域发挥着重要作用。但是,物联网设备的局限性、复杂的网络环境以及当前基于集中式和层次化结构的接入控制系统,给物联网领域带来了新的挑战。首先,由于设备分布广、应用环境复杂、计算能力有限等问题,将会给中心化网络模式带来巨大的数据基础设施建设和成本投入。其次,目前的物联网集中式平台互不兼容,这使得不同平台下的物联网设备之间协同工作及信息共享难以实现。另外,集中式平台抵抗恶意攻击的能力差,隐私数据容易被泄露。物联网设备的数量未来将会快速增长,应用规模更庞大,安全性要求也更高,所以迫切需要实现物联网设备的分布式身份认证及可信接入。目前,物联网身份认证的常用方案主要有以下3 种:1) 在基于公钥基础设施(PKI,public key infrastructure)身份认证方案[8,9]实现强指定验证签名,即使在传输过程中消息被泄露,仍可以实现安全、唯一的身份验证。3) 在基于无证书签名(CLS,the certificateless signature)的认证方案[10]中,密钥生成中心(KGC,the key generation center)根据物联网设备身份标识号(ID,identity document)为其生成对应的部分私钥,设备使用秘密值和部分私钥生成实际的私钥。现阶段,将区块链和物联网结合[11,12]是一种发展趋势,区块链的分布式特性可以满足物联网设备在运动场景下的网络接入需求。另外,区块链数据存储的高度安全性为物联网设备接入后的数据共享和协同工作提供了良好保障。文献[13]提出了一种基于数字证书的认证方案,通过树状存储结构默克尔帕特里树(MPT,Merkle Patricia tree)来扩展区块链数据结构。将物联网设备及其数字证书以键值对形式存储在MPT叶子节点中,MPT随着节点的增加而更新,所有交易及对应更新的 MPT 根都按时间顺序存储在时序默克尔树(CMT,chronological Merkle tree)中,最终被打包上链。在物联网设备身份认证时,可通过数字证书在MPT中的存储路径查询其有效性。文献[14]将区块链与边缘计算结合,利用边缘计算来支持区块链系统中的边缘认证服务。建立了分布可信的接入机制,实现了双向认证,提高了认证效率。文献[15]结合区块链及雾计算服务,提出了一种区块链辅助的轻量级匿名认证方案,可以实现灵活的跨数据中心认证并保护设备的隐私,通过区块链及密码学技术减少了通信损耗,认证双方在认证过程中只需发送一次消息,大幅度提高了认证效率。本文在已有认证方案的基础上,针对目前集中式场景下物联网设备身份认证面临的兼容性及安全问题展开研究,主要贡献包括如下两方面。1) 引入区块链技术,提出一种分布式物联网设备身份认证架构。通过设置两个半权威机构实现权力分散,从而相互制约,并结合公共数据库(PD,public database),使架构中实体的操作公开、透明、可查,防止权力滥用。2) 结合密码学技术,制定了物联网分布式身份认证方案。通过数字证书技术保证密钥传输的安全性,引入新型区块数据结构,接收方可以验证发送方的数字证书是否可靠,从而节省了证书查询时间,降低了对存储空间的要求。在物联网设备接入区块链网络前,先验证接入节点的可靠性,然后节点验证设备身份,实现了设备及节点的双向身份认证。另外,通过预签名机制保证了签名伪造破解难度及接入过程的高度安全性。2 结束语针对目前物联网集中式管理平台的弊端,本文提出了一种基于区块链的物联网分布式身份认证架构,包括EA、CA、物联网设备、区块链边缘节点以及PD共5个部分。另外,对传统的区块数据结构进行扩充,引入了 MPT 数据结构以保证数字证书的可靠性。接下来,分析了物联网设备从数字证书颁发到身份认证的全过程,并对整个系统的安全性做了详细分析。最后将本文所提的物联网身份认证方案和其他方案进行性能对比分析。结果表明,本文方案具有去中心化、权力分散和保护隐私的特性,并且在安全属性、计算开销及存储开销等性能方面具有一定优势。The authors have declared that no competing interests exist.作者已声明无竞争性利益关系。3 原文链接http://www.infocomm-journal.com/wlw/article/2020/2096-3750/2096-3750-4-2-00070.shtml
  • [技术干货] 【论文分享】基于区块链智能合约的物联网恶意节点检测和定位
    基于区块链智能合约的物联网恶意节点检测和定位黄豪杰1, 吴晓晓1,2, 李刚强11 深圳大学电子与信息工程学院,广东 深圳 5180602 鹏城实验室,广东 深圳 518055摘要随着物联网中分布式设备数量的爆发式增长,设备之间的协作和优化算法的安全问题成为物联网系统研究的前沿问题。物联网中的分布式算法依赖于单个智能体的本地计算和近邻间通信来迭代地解决一类广泛的、受约束的优化问题,但是容易遭受来自内部恶意节点的数据注入攻击。针对现有的检测方法大部分为本地运行,并且存在数据封闭、单点故障、检测过程不透明等问题,考虑使用区块链技术和智能合约对网络中存在的恶意节点进行检测。所提方法基于区块链技术的去中心化和多地备份特性实现了数据共享,避免了单点故障问题。另外,利用智能合约的合约代码、执行过程及结果公开透明且合约代码与结果不可篡改等特性保证检测过程可追溯和可验证。最后,采用平均共识算法并基于树莓派平台对所提方法进行验证分析。关键词: 物联网 ; 数据注入攻击 ; 区块链 ; 智能合约 ; 恶意节点1 引言物联网技术推动着新一轮的信息化浪潮,对于实现物理设备之间的实时控制、管理和决策具有重要意义[1]。近年来,随着设备成本和通信成本的迅速下降,物联网技术得到快速发展。据IHS Markit公司估计,到 2030 年接入物联网的智能设备将超过1 250亿台[2]。一方面,大量物联网设备的接入改善了人们的生活,提高了社会生产效率;另一方面,大部分设备的计算能力和处理效率不同,需要依赖分布式优化算法来进行协同合作及计算资源分配。物联网中分布式的优化算法通常称为基于Gossip的算法或网络偏移算法,该算法依赖于单个智能体的本地计算和近邻间通信来迭代地解决一类广泛的、受约束的优化问题[3,4,5]。但是,在物联网中运行分布式算法的潜在危险在于必须确保分布式优化的结果不受到恶意攻击。物联网设备面对的攻击主要来自两方面,一方面是外部的攻击行为,另一方面是内部节点受到入侵后被控制,从而在内部发起数据注入攻击行为[6]。针对外部攻击,可以使用加密算法加密或者使用防火墙等工具应对;而内部攻击一般具有隐匿性和伪装性,所以更难检测。事实上,该情况下的网络非常容易受到攻击,即使只有一个内部节点受到攻击也会影响整个网络的优化结果。对于网络中节点的协同攻击,基于Gossip 的分布式算法将会偏离恶意节点所期望的状态,从而导致整个网络的资源分配完全失衡[7,8,9,10]。数据注入攻击检测理论早已确立,国内外的学者对此进行了大量研究。Bolouki等在文献[11]中第一次描述了这种可引导系统偏离正常共识状态的恶意节点。Kailkhura等[12]提出了一种适用于同步平均共识算法的似然比检验法,用来检测数据注入攻击,但是该方法不适用于广泛使用的异步平均共识算法。Su等[13]建议丢弃极端的状态值,从而减小恶意节点对整个网络的影响,但是该做法会造成信息丢失。Yan 等在文献[14]中利用物理模型的先验知识去估计系统收敛速度来判断网络是否有恶意节点。检测依据了攻击者的数据注入会让系统收敛速度变慢,通过检测指数收敛趋势是否异常来判断攻击者是否存在。但是此方法具有一定的局限性,必须有先验知识才能估计正常收敛速度。谢晋阳等[15]考虑了无线传感网络中攻击者容易俘获正常节点注入虚假数据的情景,提出了一种对事件源能量感知值相近的特征节点的恶意节点检测机制。通过计算事件源的能量值,建立良性节点的坐标系,根据待检测节点与事件源的距离计算值以及与距离感知值的差异判断节点是否为恶意节点。然而,此类算法对网络的要求较高,所需要的节点较多,任意两个节点的数据已知,恶意节点的数目较少,同时恶意节点不会发生协同攻击。王欣等[16]提出了一种基于自适应度量阈值裁决机制的恶意节点筛选算法,该算法假设网络中存在中央控制节点,通过抽样获取节点的自适应度量阈值,然后与中央控制节点进行阈值对比来判断节点是外来节点还是恶意节点。恶意节点的分类通过聚类方式实现,但是该方法不适用于完全分布式的优化算法。季薇等[17]提出了一种将信誉模型与一致性融合相结合的分布式智能入侵防御方案,每个认知用户作为独立的融合中心,并采用冲突惩罚机制对认知用户的信誉值进行更新计算。其中,诚实用户在数据融合中的占比会越来越大,而恶意用户的占比越来越小,从而促使智能的恶意用户放弃攻击,达到网络收敛的目的,但是该方案要求协同攻击下的恶意节点之间是一跳可达的。Wu和Gentz等[7,8,9]提出了基于时间和空间差分的策略,应用于恶意节点的检测和定位。这些基于分数设计的方法具有不错的性能,可以更有效、准确地揭示攻击者的行为。该方案基于平均一致性共识法则将局部的通信信息带入概率模型,从而判断邻居节点中是否存在恶意节点,在检测完成后通过定位策略将恶意节点踢出网络。相较而言,Wu和Gentz等[7,8,9]所提的模型能覆盖较多的场景,且使用限制较少,但是仍然存在一些不足,具体如下。1)“数据孤岛”问题:网络里的信息分散存储于各节点内部,且各节点存储的数据不尽相同,使得数据未能实现共享,形成了“数据孤岛”,导致数据不能得到充分利用,大幅度降低了数据价值。2) 数据维护困难:由于数据分散存储且没有副本,同时易发生单点故障,导致部分数据损失,不利于后期的复盘、分析和利用。3) 检测过程不透明:节点的检测算法都在本地运行,使得外部不知道其具体检测过程,检测结果也未公开。为了解决上述问题,本文基于文献8的平均共识算法,利用区块链和智能合约技术搭建了一个攻击检测系统。对于网络安全领域,区块链技术发挥着重要作用[18,19]。因此,本文所提方法利用区块链技术实现数据的共享和备份,并保证数据的真实性,再利用智能合约进行攻击检测,使得检测过程透明、公开、可追溯。该检测系统可以为类似于物联网的各种分布式网络提供安全保障,因此,具有广泛的应用意义。2 结束语本文提出了一个基于区块链和智能合约的物联网恶意节点检测和定位系统,本系统部署在由 9 台树莓派组成的物联网模拟网络中,所有节点都接入以太坊的测试网络,调用检测模块进行恶意节点检测。根据实验过程可知,所有共识数据都上传至区块链以供所有节点查询和验证,实现了去中心化的共享和异地备份,解决了“数据孤岛”和维护困难问题;相比于本地检测程序,智能合约由所有参与方共同制定,合约发布后存储于区块链中,一经发布则不可篡改,并且在检测过程中所有节点同步运行,保证了检测过程的公开、透明;其次,合约执行过程全部记录在区块链的数据库中,确保了结果可追溯和可验证。下一步将结合密码学、权限访问等技术进一步完善方案,在保证数据共享的同时,加强隐私保护;此外,也可以考虑将数据迁移至星际文件系统(IPFS,interplanetary file system)等区块链系统中,在数据上传过程中将上传数据改为上传 IPFS 数据地址,从而降低交易费用和存储费用。The authors have declared that no competing interests exist.作者已声明无竞争性利益关系。3 原文链接http://www.infocomm-journal.com/wlw/article/2020/2096-3750/2096-3750-4-2-00058.shtml
  • [技术干货] 【论文分享】基于区块链的安全车联网数字取证系统
    基于区块链的安全车联网数字取证系统李萌1, 司成祥2, 祝烈煌31 合肥工业大学,安徽 合肥 2306012 国家计算机网络应急技术处理协调中心,北京 1000293 北京理工大学,北京 100081摘要车联网大数据的出现对更好地理解车联网特点、掌握车联网用户需求和提升车联网服务质量具有极大的推动作用,然而恶意用户甚至不法分子利用车联网进行非法行为,造成车联网服务质量下降以及车联网事故难以定责。同时,在车联网数字取证过程中,还存在一些安全和隐私问题,如数据提供者的身份隐私和数据访问者的请求权限问题。因此,提出了一种基于区块链的安全车联网数字取证方案。首先数据请求者在一个证书中心注册后获得匿名证书,用于后续的数据上传。然后数据访问者注册后获得公私钥对和用户密钥,分别用于数据请求和数据解密,只有其属性满足特定要求才能解密得到正确证据。接下来可信度较高的若干个机构联合建立一个区块链,记录车联网取证过程中所有的数据上传交易和数据访问交易。最后,对方案的安全和隐私进行分析,并在以太坊平台上对其性能进行实验分析。关键词: 车联网 ; 数字取证 ; 区块链 ; 安全 ; 隐私1 引言近年来,随着车联网的发展,车辆内各种传感器和通信方式的更新换代使得车联网底层数据的实时获取和收集已不是难事[1]。同时,数据也推动了各类车联网服务的出现,如网约车服务[2]、路况监测[3]、停车位查找[4]和广告分发[5]等,这些服务巩固了车联网中数字世界与物理世界的纽带,也极大地提升了车联网用户的驾驶体验。诸多车联网服务发展的同时,也催生了大规模且有价值的车联网数据。据报道[6],预计在2030年仅司机数据就将成为万亿级工业的核心驱动力量,因为大数据清晰地展示了司机的驾驶行为,为广告商和保险公司带来了潜在价值,这些数据对研究人员更好地理解车联网特点、掌握车联网用户需求和提升车联网服务质量具有极大的推动作用。尽管车联网的发展给人们的出行带来了许多便捷,但是也不乏恶意用户甚至不法分子利用车联网的优势进行恶意行为或非法行为[7,8]。如在发生肇事类的交通事故时,非诚实的肇事司机会因为没有监控而逃脱法律责任;在汽车发生故障时,保险公司因司机未能给出由于汽车本身原因引起故障的证据,而无法对其进行赔偿;在网约车服务过程中,有恶意司机发动错误位置攻击,以欺骗网约车服务提供商,从而骗取更多订单[2];还有恶意司机会向路况监测服务中的路侧单元(RSU,road side unit)发送错误的驾驶信息,以干扰智能信号灯的正常规划[3]。近年来,有些不法分子利用汽车运输非法物品或者驱车逃离犯罪现场。国际刑事警察组织的官方定义指出,汽车犯罪指的是汽车盗窃与非法汽车交易以及汽车备用零件的非法交易。上述行为在全世界范围内对个人财产、商业活动、金融和公共安全都造成了负面影响[9]。为了解决以上问题,车联网数字取证(VDF,vehicular digital forensics)[10,11]的作用变得越来越重要,逐渐成为学术界及工业界重点关注的研究课题之一。VDF通过收集和分析车联网数据(如车速、转向、刹车、行车记录仪的视频等),帮助执法机构等相关部门及时确定相应的问题(如司机驾驶误操作、刹车片老化、车尾停车感应器失灵等)来源,对车联网中潜在的恶意行为和用户进行定位与追踪,降低了车联网的安全风险和用户损失。概括来说,将 VDF 分为 4 个步骤,即收集、检查、分析和汇报[12]。数据提供者上传数据的过程即数据收集过程,数据访问者对数据进行访问后需检查数据的真实性以及哪些数据与案件相关,并做深入分析,最终得出结论并进行汇报。此外,在 VDF 中,还存在一些安全和隐私问题。首先,基于集中式的取证模型面临恶意数据提供者或数据访问者篡改数据的风险,并且非法的数据访问者不能对取证数据进行访问。其次,数据提供者在上传数据(如录音或证词)时,不希望其真实身份被泄露,从而保护自身安全。最后,数据访问者在请求数据时,其访问权限必须被限制在一定的数据范围内,即数据访问者不能请求获得其访问权限以外的取证数据,实现数据隐私的进一步保护。本文工作的挑战来自两个方面:1) 如何利用区块链保障车联网证据的安全管理;2) 如何保障数据提供者和数据访问者的隐私与访问控制。为了解决上述两个问题,本文提出一种基于区块链的安全车联网数字取证(SVDF,secure vehicular digital forensics)方案。在SVDF方案中,数据提供者向一个证书中心(CA,certificate authority)注册后获得匿名证书,用于后续的数据上传;数据访问者注册后获得公私钥对和用户密钥,分别用于数据请求和数据解密,只有其属性满足特定要求才能解密得到正确的证据。可信度较高的若干个机构联合建立一个区块链,记录车联网取证过程中所有的数据上传交易和数据访问交易。同时,SVDF 方案将数据密文存储于分布式存储系统中,本文的贡献包括以下3个方面。1) 为VDF设计了一种系统模型,分别由底层的用户、中层的 RSU 和上层的组织机构组成,并建立了相应的敌手模型,假设存在恶意数据篡改者和恶意数据访问者。2) 在上述系统模型和安全模型的基础上,提出了SVDF方案。具体来说,借助匿名认证的方法[13]对数据提供者的真实身份进行条件隐私式验证,使用基于属性加密算法[14]对数据访问者的数据请求进行访问控制,再通过搭建联盟区块链[12]提供数据记录的可验证性和防篡改性。3) 对 SVDF 方案进行严格的安全与隐私证明,并通过以太坊测试网络对SVDF方案进行性能测试。2 相关工作区块链在车联网中已经有了初步应用和实践,本节主要分析区块链在 VDF 中的应用以及区块链在车联网其他场景中的应用。2.1 区块链在VDF中的应用Cebe等[12]指出,智能网联汽车服务将为汽车厂商、汽车维修公司、司机和保险公司提供有价值的数据,这些数据对于VDF具有重要作用。文献[12]中将VDF系统的数据处理模型划分为收集、检查、分析和汇报4个环节,为车联网数据管理提出了一种基于许可链的架构,结合了车联网公钥基础设施和区块链,用以实现车联网用户的身份管理和隐私保护。其中,许可区块链中有 4 种角色,即队长(leader)、验证者(validator)、监测者(monitor unit)和用户(client)。验证者在每个时间段内选出一个队长,根据拜占庭共识机制创建新的区块。用户使用IEEE 1609.2标准中的匿名机制,在不同时间段内使用不同匿名来汇报数据。然而,此方案并没有考虑访问控制问题,即不同的数据访问者可以访问的数据是不同的。2.2 区块链在车联网其他场景中的应用边缘计算已经被应用于车联网中,Kang 等[15]指出,边缘节点在车联网中扮演着重要的角色,但是其半可信的安全假设会导致潜在的安全与隐私问题。文献[15]中利用联盟区块链和智能合约设计了一种面向车联网数据的安全点对点数据共享方案,边缘节点根据存储证明(proof-of-storage)共识机制更新区块链。车联网中的广告分发服务帮助厂商和用户在车联网中及时地推广和获得最新的商品信息,Li等[5]为了解决广告分发过程中因恶意司机合谋攻击骗取奖励而引发的公平性问题以及司机参与广告分发活动的隐私泄露问题,提出了一种基于区块链的公平与匿名广告分发方案。通过使用Merkle哈希树和智能合约技术,实现了验证司机是否收到广告的“广告接收证明”机制和检测司机多次索取广告转发费的机制,RSU根据权益证明(proof-of-stake)共识机制维护区块链。智能停车是一种常见的车联网服务,Wang等[16]在利用私家停车位的智能停车服务[4]的基础上,提出了一种基于区块链的匿名智能停车方案。该方案使用分布式匿名证书机制对私家停车位所属人和司机的身份进行匿名认证,在一个停车位信息交换池中完成用户之间的停车位匹配后,借助门罗币的变种实现匿名支付,并在 RSU 节点之间实现区块链的更新和维护。与现有方案相比,本文提出的SVDF系统提供了一种面向车联网的安全证据管理系统,并充分考虑了数据利益方的隐私问题。3 结束语本文提出了一种基于区块链的SVDF方案,该方案可以实现车联网数据上传者的匿名身份认证和针对数据访问者的访问控制,并借助区块链记录所有数据上传和访问的记录,保证记录的公开可验证性和不可篡改性。同时,SVDF 还可以抵抗恶意数据上传者的篡改攻击和恶意数据访问者的非法请求。最后,对SVDF的安全属性与系统性能进行分析。在未来的工作中,将结合现有实际案例继续挖掘基于区块链的 VDF 中潜在的安全与隐私问题,并设计相应的保护措施。此外,区块链只能提供证据上链之后的不可篡改性,而暂时无法充分保证证据上链之前的真实性[24],所以接下来将在这方面做进一步的研究。The authors have declared that no competing interests exist.作者已声明无竞争性利益关系。4 原文链接http://www.infocomm-journal.com/wlw/article/2020/2096-3750/2096-3750-4-2-00049.shtml
  • [技术干货] 【论文分享】区块链跨链技术分析
    区块链跨链技术分析郭朝1, 郭帅印1, 张胜利1, 宋令阳2, 王晖11 深圳大学区块链研究中心,广东 深圳 5180602 北京大学电子工程与计算机科学学院,北京 100871摘要随着区块链技术的发展,区块链项目也越来越多。由于区块链的封闭性,导致不同区块链形成一个个价值“孤岛”,不同区块链之间的信息交互与价值转移问题亟待解决。跨链技术解决了不同链间资产与数据等跨链操作问题,在过去几年里已经有许多尝试和发展,跨链的主要模式包括哈希锁定、公证人机制、侧链与中继技术等。介绍了目前主要跨链技术的基本原理,总结分析了各个跨链技术的优势与劣势。关键词: 区块链 ; 跨链 ; 哈希锁定 ; 公证人 ; 侧链 ; 中继1 引言区块链技术是分布式数据存储、点对点传输、分布式共识算法、加密算法等计算机技术的集成应用。从狭义角度来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式进行组合的一种链式数据结构,并以密码学方式保证数据不可篡改和不可伪造的分布式账本。从广义角度来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新账本数据、利用密码学方式保证数据传输和访问安全、利用智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式[1]。基于时间戳的链式区块结构、分布式节点的共识机制、灵活可编程的智能合约是区块链技术最具创新性的技术环节。2008年,Nakamoto[2]发表了《Bitcoin:a peer-topeer electronic cash system》报告,通常被认为是区块链技术的起源。在文献[2]中提出了一种去中心化、按时间顺序排序的数据,数据由所有节点维护、可编程和密码学上安全可信的分布式账本技术构成,用于解决比特币(BTC,bitcoin)在去中心化网络中的信任问题。作为比特币的底层实现技术,该技术被认为是构建下一代“信任互联网、价值互联网”的关键技术。作为区块链技术的一个成功应用,比特币验证了区块链技术的可行性。目前,区块链技术已经应用到社会的很多领域,如“数字货币”、跨境支付、供应链、制造业以及能源领域等。随着各界人士对区块链技术研究的逐步深入,越来越多的区块链应用出现在各种场景中,但是区块链结构体系、共识算法[3]、对用户隐私的保护[4]、智能合约开发、系统底层性能、交易吞吐量以及不同区块链系统之间的跨链通信等技术挑战越来越制约区块链技术及其行业的发展。不同应用场景所用的区块链系统不同,这些链可能应用于不同的领域,也可能具有不同的运行机制,而不同区块链存储的区块信息之间的隔离不可避免地造成了区块链的价值“孤岛”效应[5]。随着区块链行业的蓬勃发展,多种公有链、私有链和联盟链的出现产生一个问题,即不同区块链之间如何进行通信甚至价值交换。本文深入探讨了跨链的本质、意义以及跨链需要解决的关键性问题,回顾了跨链技术的发展历程,利用具体跨链项目分析了主要的跨链模式,并对跨链技术的未来进行了展望。2 结束语针对目前跨链技术遇到的关键性问题,一种有效的方式是设计一个在底层平台就遵循统一的跨链协议标准的区块链系统,就像现在的操作系统对TCP/IP协议的支持一样。而通用的区块链跨链系统需要支持以下5方面内容。1) 提供跨链消息的输入和输出口径,如Cosmos和Polkadot的跨链队列。2) 提供跨链消息的真实性证明,区块链需要提供类似SPV的证明方法。3) 消息的有效路由需要构建跨链消息的统一格式,定义消息的来源和去处以及消息的内容,如Cosmos的IBC协议。4) 消息状态的有效性证明,区块链可能需要设计新的、类似UTXO的可验证存储结构,方便做类似 SPV 的证明方案,否则目前的基于 KV(key value)的数据存储方式很难做有效性证明。5) 跨链执行结果证明,与有效性证明类似,需要全新的数据结构和运行算法支持该功能。除此之外,跨链系统的设计还需要考虑系统的稳定性、可扩展性以及如何升级系统、容错等方面。总之,跨链技术在过去几年间发展迅速,但目前的跨链技术尚未完全成熟,没有得到广泛应用,仍有较大的提升空间。一方面,跨链所面临的技术问题有一定的复杂性;另一方面,区块链技术在飞速发展,区块链的类别和技术复杂度也在不断提升,导致对于跨链技术更迭的要求不断提高。其次,跨链技术的发展与跨链技术的应用模式密切相关,除了跨链本身的技术形态演进,跨链未来的进一步发展也依赖于跨链应用模式的构建与发展,随着区块链行业应用的逐步落地和不断丰富,对跨链的需求也必定不再局限于交易。The authors have declared that no competing interests exist.作者已声明无竞争性利益关系。3 原文链接http://www.infocomm-journal.com/wlw/article/2020/2096-3750/2096-3750-4-2-00035.shtml
  • [热门活动] 全民爱豚月 “人手一豚”?数字江豚rua起来,区块链助力江豚保护!
    江豚,主要生活在长江沿岸被誉为“水中大熊猫”以及“长江生态的活化石”它们经常在水中翻滚、跳跃,嬉戏逐闹它们自带的“微笑表情”被称为长江里的微笑天使可长久以来受人类活动影响它们已经成为长江中最后一种哺乳动物作为我国的一级保护动物它们曾一度濒临灭绝2017年数据显示目前现存数量一共也只有1012头左右随着2020年我国正式提出“十年禁渔”政策江豚的生存环境得到了保障人们也越来越频繁地看到江豚出现在城市主城区流域内嬉戏的场景这么可爱的江豚,想不想近距离与它互动?为了推进落实“长江大保护”、“十年禁渔”政策营造全民参与江豚保护的社会氛围传播和普及江豚保护知识提高公众爱豚、护豚意识鼓励更多的爱心公众参与长江生态保护行动6月1日,在武汉市农业农村局武汉市生态环境局等相关单位的支持下武汉白鱀豚保护基金会发起第二届“全民爱豚月”会上,武汉白鱀豚保护基金会携手华为云、斗鱼、武汉云共同发布六只憨态可掬的“数字江豚”华为云此次为数字江豚项目提供了区块链、云计算等数字化技术支持以强大的系统性能,高达百亿的存储能力“芯-边-云”的全栈安全助力斗鱼实现数字江豚极速生成快速上链、存证、流转让每一位用户感受到了一个独特、生动的可爱形象用户只需进入活动页面领取到独一无二的“数字江豚“与江豚宝宝实现0距离接触怎样领取“数字江豚”?有哪些玩法?速速get这份领取攻略⬇01   领取专属江豚,实现亲密互动6只江豚宝宝性格各异它们中有热爱旅行的探险家、热衷美食的甜品师喜欢电竞的“大男孩”等用户可登录斗鱼APP或扫描下方海报二维码领取“数字江豚”第一期活动共推出6款可爱的数字江豚宝宝数量有限,领完即止成功领取数字江豚的用户可以进入江豚栖息地通过点击江豚宝宝进行互动后续还将推出喂食、出游等丰富玩法 02   了解江豚保护历史,每个人都是“江豚科普宣讲员”除江豚宝宝领取外本次活动还上线了江豚保护时间轴、数字江豚馆、爱豚月活动在内的几个模块用户可登录斗鱼APP进入活动页面学习观看江豚保护大事件江豚保护科普、江豚书画等相关内容保护江豚任重道远让我们一起期待长江生态环境进一步向好江豚数量稳步回升携手一起守护江豚的微笑让长江精灵永远在长江中畅游
  • [技术干货] 【论文分享】基于区块链的动态频谱共享接入技术
    基于区块链的动态频谱共享接入技术王威1,2, 李祖广1,2, 吴启晖1,21 南京航空航天大学电子信息工程学院,江苏 南京 2111062 电磁频谱空间认知动态系统工业和信息化部重点实验室,江苏 南京 211106摘要引入智能合约的区块链技术具有使能智能结算、价值转移和资源共享等优势,为动态频谱共享系统中存在的安全与信任机制匮乏等问题提供了新的解决方案。从频谱共享系统的实际需求出发,首先对区块链技术在频谱共享中的应用进行了概述,并探讨了区块链应用于大规模频谱共享系统急需解决的关键问题,然后深入分析了解决上述问题所面临的挑战,并提出了相应的关键技术及解决思路。关键词: 动态频谱共享 ; 区块链 ; 可信频谱账本 ; 智能合约1 引言物联网(IoT,Internet of things)业务数据的不断涌入和无线通信技术宽带化、泛在化、融合化的发展趋势使得频谱需求呈现爆发式增长。然而,最适合无线通信的6 GHz以下的“黄金”频谱资源几乎被分配殆尽,导致频谱资源面临严重的结构性供求失衡局面。物联网业务和传统通信业务对频谱需求的日益增长与频谱静态分配和频谱独占模式导致的频谱利用率低之间的矛盾,迫使人们采用动态频谱共享的模式。2013年4月,西门子股份公司、爱立信公司和高通公司在已投入使用的 2.3 GHz TD-LTE 网络上进行了全球首次授权共享接入(ASA,authorized shared access)试验。美国联邦通信委员会(FCC,Federal Communications Commission)于2015年4月在3.5 GHz频段上推出公众无线宽带服务(CBRS,citizens broadband radio service),实现了无线接入系统与雷达和固定卫星通信业务之间的动态频谱共享。我国于 2005 年开始在频谱资源共享无线通信系统和认知无线电网络等方面进行了广泛而深入的研究工作。目前,基于认知无线电的动态频谱共享接入技术仍然存在以下4 个问题。1) 用户用频信息如频段、时长、位置等缺乏统一记录的数据库,导致频谱共享的态势不明。2) 主次用户之间缺乏有效的激励机制,导致主用户的频谱共享动机不强。3) 节点的趋利性,导致认知无线电系统中存在模仿主用户攻击、干扰认知用户、恶意节点伪造感知数据、节点隐私泄露等突出的安全性问题,且频谱资源的共享交易缺乏足够的信任机制。4) 目前的频谱管理通常依赖于中心化的数据库。一方面,中心化系统的访问受限在动态频谱管理上存在实时性差、管理成本高等问题;另一方面,面对大范围物联网终端频谱共享和动态调整的场景时,中心化的频谱监管模式将面临严重的维度诅咒问题,严重制约了动态频谱共享的实现。区块链技术利用密码学原理和共识机制,在不确定安全性的网络空间中建立点对点的信任机制,成为世界各国的发展战略与学术研究的新兴热点。在区块链中引入智能合约使区块链具有使能智能结算、价值转移、资源共享等优势,推动了区块链与频谱资源共享的融合。利用区块链提供的分布式账本结构,使频谱交易流通记录能够做到公开透明、不可篡改和可追溯,充分反映流通各环节状况,建立频谱交易各链条之间的信任关系。基于共识机制,在频谱交易之前将确权信息和频谱资源有效绑定并登记存储,使全网节点可同时验证确权信息的有效性,并以此明确频谱资产的权利所属人。通过确权建立全新、可信赖的频谱资源权益体系,为维护频谱主权提供有力保障。在频谱交易中建立规则,使用智能合约代码表述形式代替合同,实现了链上支付,提高了交易的自动化水平。基于上述研究,区块链技术为频谱共享中的安全与激励问题提供了很好的解决思路。FCC和法国国家频谱管理机构等均已开展频谱区块链的研究工作,基于区块链的频谱共享技术也被列为未来6G的核心技术之一。中华人民共和国工业和信息化部IMT-2030频谱组也在加快推进频谱区块链的研究。通过将区块链技术融入动态频谱共享系统中,可以实现在保障无线电频谱安全、可靠共享的同时,提高频谱利用率,满足具有海量终端、海量数据和海量应用的万物互联业务需求,具有强大的应用潜力。因此,本文首先对区块链技术在动态频谱共享系统中的应用进行研究,提出了实现高效动态频谱共享需要解决的核心问题。然后,详细分析了解决上述问题所面临的关键技术挑战,并给出了应对策略。2 国内外研究现状近年来,越来越多的国家将区块链技术上升至国家战略高度,并在多领域积极探索区块链技术的推广应用。2019年7月9日,美国参议院商业委员会、科学委员会和运输委员会共同批准了《区块链促进法》,明确要求美国商务部为区块链建立标准定义,并建立新的法律框架,为未来新兴技术的应用提供指导并防范风险。同时,FCC积极推进基于区块链的频谱共享机制,并将频谱区块链视为美国在下一代无线通信技术中的重要发展战略。中国联合网络通信集团有限公司提出将区块链技术引入6G 网络中,以支持通信服务节点之间更安全、更稳健和更扁平化的交互[1]。中国电信集团有限公司正在研究基于区块链去中心化的物联网平台。与传统区块链系统主要服务的加密货币应用场景不同,频谱共享系统复杂的层级关系、多变的应用场景和用户动态、随机的用频行为等因素,使得区块链与频谱的简单叠加未必能发挥区块链技术的真正潜力。因此,需要结合频谱共享系统的实际需求和区块链本身的适用条件,深入研究面向复杂动态系统的体系结构。为了实现频谱供应商与用户之间的频谱共享,文献[2]设计了一种由用户、通信网络和区块链网络组成的频谱共享架构,并利用区块链技术构建了两个模块之间统一、可共享的数据库,以提高频谱态势清晰度。文献[3]介绍了一种基于区块链的分布式移动网络架构,该架构通过引入智能合约将所有事务由软件代码自动执行,消除了复杂且高成本的账单系统需求。相对于机器设备,人类用户具有灵活性强、传输频率高、数据传输量大等特点,文献[4]提出了一种基于人对人(H2H,human-to-human)通信和机器对机器(M2M,machine-to-machine)通信共存的频谱区块链共享架构,通过基于Gale-Shapley算法的低复杂度稳定匹配方法来解决用户与设备之间的双边匹配问题。文献[5]建立了一种高性能集中私有链运行环境和超级账本结构环境并行的全频谱区块链服务(FSBaaS,full-spectrum blockchain as a service)架构,为两个运行环境开发了统一的接口,以满足用户自身的运行环境需求。在动态频谱共享系统中存在大量资源受限的设备,其存储和计算能力有限,所以此类设备无法存储完整的区块链账本且难以运行复杂的区块链共识算法。因此,在基于区块链的动态频谱共享系统中,需考虑引入边缘计算技术。文献[6]建立了一种通过边缘计算实现车联网区块链信任访问认证的系统,利用边缘计算网络更新用户信息、创建智能合约、降低时延。为了提高移动设备处理计算密集型任务(如实时数据处理任务和挖矿任务等)的能力,文献[7]设计了一种联合计算卸载和货币贷款的区块链驱动边缘计算方案。文献[8]介绍了一种异构资源智能动态匹配的车联网边缘网络系统,在该系统中,用户的计算业务可卸载至边缘网络,边缘网络可实现资源的自适应供给、应用类型识别等。为了实现频谱资源的深度共享,需要对频谱资源的所有者与需求者进行双向激励,以促进频谱资源的高效交易。文献[9]构建了公有链和联盟链结合的双链系统,公有链用于现金与频谱币(spectrum coin)之间的转换,联盟链则用于频谱交易,并利用博弈论算法根据出租时间、出租频段带宽等计算得到频谱租赁价格,以此激励频谱资源拥有者共享频谱资源。文献[10]提出了一种基于区块链的安全频谱拍卖程序,利用频谱监测方式获取空闲频段,以鼓励授权用户共享频谱,通过两次密封投标来提高频谱拍卖效率,并确保其真实性。该程序具有分布式、可访问性、易验证用户身份、防诈骗等优势。文献[11]提出了一种迭代的双重拍卖机制以实现利益最大化,此机制能够鼓励数据需求方提交投标和确定交易数量及价格。针对频谱共享中的恶意节点攻击问题,Kotobi等[12]提出了一种区块链认证协议,该协议采用了一种安全性算法,通过身份验证机制阻止恶意节点在不付费的情况下访问频谱,从而保证移动认知无线电网络中的安全频谱共享。文献[13]针对攻击者可以通过数据挖掘算法获取记录在区块链上的隐私信息问题,提出了一种面向联盟链的隐私泄露问题的解决方案。文献[14]提出了一种区块链无线接入网络(B-RAN,blockchain radio access network)架构,并开发了一种分布式、安全、高效的机制来管理网络访问和在本质上不可信的网络实体间的身份验证。由上述分析可知,国内外针对基于区块链的动态频谱共享已进行了相关研究,但尚未形成完备的理论体系,为了满足广泛的物联网应用和传统通信系统对响应时间、吞吐量、计算和存储开销等方面的要求,还需要深入研究频谱区块链的体系架构、可信账本构建方法、频谱交易激励机制和频谱智能合约等关键问题。3 结束语本文针对区块链技术在动态频谱共享中的应用展开了分析和研究,总结了国内外频谱区块链的研究现状,并指出实现基于区块链的动态、高效、安全的频谱共享急需解决的区块链体系架构、可信频谱账本模型、频谱交易激励机制和频谱协作管理等关键问题。分析了解决这些问题所面临的挑战,研究了对应的解决方法。区块链与动态频谱共享的结合虽然吸引了很多研究者的关注,但目前其研究还处于初级阶段,并未形成完备的标准和规范。从研究角度来看,不管是对于区块链本身还是频谱区块链,对安全性、可扩展性、算法性能等方面的研究还远远不够,区块链与动态频谱共享结合存在的巨大潜力仍需要人们不断探索。The authors have declared that no competing interests exist.作者已声明无竞争性利益关系。4 原文链接http://www.infocomm-journal.com/wlw/article/2020/2096-3750/2096-3750-4-2-00026.shtml
  • [技术干货] 【论文分享】优化可扩展的拜占庭容错共识算法
    优化可扩展的拜占庭容错共识算法韩嗣诚, 朱晓荣, 张秀贤南京邮电大学通信与信息工程学院,江苏 南京 210003摘要区块链是一个去中心化的账本,可为交易中互不信任的双方提供信任,其最初作为支撑比特币的底层框架,近年来逐渐成为具有颠覆价值的新兴技术。共识算法是区块链的核心技术之一,没有共识算法就无法实现分布式节点间的状态一致。简单介绍了一种目前联盟链中常用的共识算法——实用拜占庭容错(PBFT,practical Byzantine fault tolerance)算法,并在其基础上优化算法机制,增加可扩展性,提出了一种改进的算法。经改进后,降低了算法的复杂度,并且允许共识节点加入和退出系统。仿真结果表明,改进后的算法可显著减少交易共识完成的时间和节点间的通信次数,从而在支持更多节点、减少系统通信开销和 CPU 计算资源消耗的同时,增大了整个系统的吞吐量。关键词: 区块链 ; 共识算法 ; 拜占庭容错 ; 可扩展1 引言区块链是一个由分布式对等网络、数据加密、共识算法等技术组合而成的去中心化账本或数据库。区块链运用技术手段为用户提供了对彼此的信任,使得他们可以在相互之间无信任基础的前提下完成交易,且其去中心化的存储方式配合共识机制使得交易的记录无法被篡改。区块链最初诞生于比特币[1]中,作为服务交易的底层架构,逐渐扩展到各式各样的“数字货币”甚至金融业务中。随后,对架构和共识机制做了一定改变的联盟链被认为可以超越金融领域,用于数字资产认证、供应链溯源等商业化领域。共识算法是区块链非常重要的一部分,也是其去中心化和信任机制建立的基础。具体来说,在分布式状态机构成的异步网络中,需要有一种办法保证每个状态机最终达成一个一致的状态,这种方法被称为共识算法。共识算法在区块链中的具体作用是保证每个节点中记录的区块信息以及区块中的交易或请求信息都是相同的,这样才能达到“共同维护”的效果。比特币中的工作量证明(PoW,proof of work)是最早使用的共识算法,其核心是通过算力来竞争记账权,也就是创建新区块的权利。算力体现在给定一个字符串,在其后连接一个整数值串,然后对连接后的整个字符串进行 SHA256 哈希运算,如果运算后得到的字符串是以若干个0开头则验证通过,最先算出这个字符串的节点可以创建新区块,并得到一定数量比特币的奖励。这种算法非常耗费资源,除了最终胜出的节点,其他节点都在不停地计算却一无所获。以太坊出于对优化资源的考虑,设计了一种相对简单的共识算法,即权益证明(PoS,proof of stake)[2]。该机制引入了币龄的概念,通过一种与币龄相关的方式来决定创建新区块的权利,拥有币龄越大的节点获得区块创建权的可能性越高。PoW和PoS适用于参与节点众多的公有链,但却不适合节点数较少、节点间存在一定信任度的联盟链和私有链。联盟链和私有链常用的算法是基于消息传递的共识算法,如实用拜占庭容错(PBFT,practical Byzantine fault tolerance)算法[3]、Paxos算法[4]和Raft算法[5]等。其中,PBFT算法是一种主要用于联盟链的、可以解决拜占庭错误的算法,本文将在第2节进行介绍;而Paxos算法和基于其改进的 Raft 算法则主要用于不存在拜占庭错误的私有链中。Raft算法不考虑拜占庭错误,节点仅可能因为故障而宕机,Raft算法将节点分为集群,每个集群通常包含 5 个节点(服务器),允许最多有两个节点(服务器)发生故障。除了上述已经成熟且投入应用的算法,近年也出现了一些新算法,如 Ripple 算法[6]和小蚁算法[7]等。区块链的高热度促使很多研究者对这些算法做了不同程度的改进。文献[8]将PoW和PoS结合,提出了一种双跳的共识算法。文献[9]提出了一种基于投票证明(proof of vote)的算法,为参与者建立不同的安全身份,再根据安全身份进行投票,来决定交易的提交和区块的创建。文献[10]提出了轻量化、动态化的Raft算法为Pirogue算法,其核心在于有节点发生故障后,剩余无故障节点可根据新的投票规则继续对交易进行共识,直到故障节点数量达到上限。文献[11]为 PBFT 算法增加了数据同步机制。本文的主要贡献和成果如下。1) 对PBFT算法进行改进,在确保共识机制可靠的前提下降低了算法复杂度,提升了共识效率,降低了计算资源消耗,提升了系统吞吐量。2) 允许共识节点自由地加入和退出共识系统,并设计了加入和退出机制,使得算法能够更好地适用于实际的区块链系统。2 结束语本文介绍了常用的共识算法,从联盟链目前相对成熟的PBFT算法着手研究,对其进行改进,提出了OSBFT算法。OSBFT算法减少了共识步骤,增加了节点加入和退出机制,使得共识节点数量可变化。最后,本文对 OSBFT 算法进行性能分析。分析结果表明,改进后的算法可显著减少交易共识完成的时间和节点间的通信次数,从而在支持更多节点、减少系统通信开销和 CPU 计算资源消耗的同时,增大了整个系统的吞吐量。The authors have declared that no competing interests exist.作者已声明无竞争性利益关系。3 原文链接http://www.infocomm-journal.com/wlw/article/2020/2096-3750/2096-3750-4-2-00018.shtml
  • [技术干货] 【论文分享】区块链在物联网系统中的应用探讨
    区块链在物联网系统中的应用探讨高镇1, 崔琪楣2, 张雪菲2, 王晓飞11 天津大学,天津 3000722 北京邮电大学,北京 100876摘要区块链技术近年来受到广泛关注,很多行业都在尝试基于区块链技术解决信息系统中传统中心化方案存在的可靠性与安全等难题。而将区块链网络与行业实体相关联必须依托物联网技术,因此,结合区块链和物联网技术解决不同领域中的多方协作问题是当前的研究热点。另一方面,物联网自身发展也受到中心化架构的限制,如何利用区块链技术解决现有物联网系统的不足也是一个重要问题。尽管当前区块链技术的相关应用非常多,但其中一些应用实际上并不适合采用区块链技术。首先介绍了区块链技术的应用逻辑,然后基于典型案例分析介绍区块链结合物联网的适用场景,最后讨论了4个区块链与物联网结合的共性问题。关键词: 区块链 ; 物联网 ; 应用分析1 引言区块链是比特币的底层技术,是一系列技术集成的代名词,包括区块链数据结构、非对称加密、点对点网络、共识算法、激励制度等[1]。由于比特币在完全没有人为管理的情况下一直能够正常运行,因此,产业界和学术界从 2015 年开始意识到区块链技术的巨大潜力,甚至将其看作是“继大型机、个人电脑、互联网、移动/社交网络后,计算机范式的第5次颠覆式创新”以及“人类信用进化史上继血亲信用、贵金属信用、央行纸币信用之后的第4个里程碑”[2]。截至目前,区块链技术已经经历了以比特币为代表的可编程货币阶段(1.0阶段)和以以太坊和超级账本为代表的可编程金融阶段(2.0阶段),正在向可编程社会的3.0阶段发展。各个行业都在积极探讨如何利用区块链技术解决目前中心化系统无法解决的问题。物联网(IoT,Internet of things)系统是联系人与社会、人与自然的媒介,是构建各类智能系统的基础设施,如智能家居、智慧城市等,已经逐步深入到人们生活的方方面面及各个垂直行业[3]。现有系统一般基于云计算系统来汇集IoT设备采集的数据,并基于数据分析结果对 IoT 设备发送控制指令[4]。对于时延敏感的IoT应用,可结合边缘计算来降低处理时延[5],但总体来说还是中心化的数据收集和处理模式。随着各类IoT应用的大规模实践,这种中心化的处理方案逐渐显露出一些固有的问题,主要包括单点控制大规模 IoT 节点的巨大成本和容量限制、单个节点被攻击可导致整个系统受到威胁、云端数据可能被篡改或被滥用、用户隐私存在泄露风险等[6]。而区块链技术的兴起为解决上述问题提供了一个具有可行性的方案。由于IoT系统天然的分布式特性和应用场景中天然的多方参与特性,IoT 成为除金融以外区块链技术最热门的应用领域,近年来相关的应用研究和学术成果非常多。但是,由于区块链技术的综合性和复杂性,同时一些商业机构和研究机构从自身利益出发,很多应用示范案例并没有真正体现区块链的核心价值。虽然目前已经有很多综述性文章对区块链在 IoT 方面的应用进行了总结[7,8,9,10,11],但其通常会汇总上百篇文章的结论,并没有对区块链技术在所述应用中的具体价值做详尽的分析。本文拟弥补这一缺失,通过列举一些典型的“区块链+IoT”应用案例,分析适合区块链应用的典型场景,从而为更好地挖掘区块链在 IoT 方面的创新应用提供思路。2 区块链技术的适用场景和应用逻辑2.1 区块链应用的典型特征根据文献[12,13,14]的分析,一个典型的区块链应用应具备以下5个特征。1) 需要不可篡改的数据库狭义上来看,区块链系统本质上是一个分布式数据库,因此,区块链技术一定是被用来存储数据的。但区别于一般数据库,区块链维护的数据库只能增加条目,而不能删除或者修改已有条目,即这个数据库是不可篡改的,数据的不可篡改是应用区块链的最主要目的。由于所记录的数据都带有提交者的数字签名和时间标签,因此,具备了可追溯特性。2) 需要多方共享与维护区块链系统所针对的应用场景一定包含多方参与,共同维护数据库,不仅是多方可读,更重要的是多方可写。在区块链系统中,写区块链数据库的每一方都需要运行一个节点,并保存完整的区块链数据。写数据库的行为是由交易触发的,但产生交易的双方不一定都需要拥有过一个节点。3) 多方之间缺乏信任在区块链的应用场景中,区块链的多个维护方之间一定是缺乏信任的。具体包括两层含义:从写数据库的角度看,由于不信任,所以每一方都不愿意其他方修改自己维护的数据库;从读数据库的角度看,每一方都不相信其他方告知的查询结果。这种不信任主要来自于各方利益不同,这个利益可能是经济方面的或者是其他方面的。4) 没有合适的第三方对于一般的共享账本来说,解决多方不信任问题的一个方法就是寻找一个多方都信任的第三方,所有数据库的读写都交由这个可信的第三方进行。而区块链的应用场景一定是没有这样一个第三方的情况,通常是商业利益或者政策法规的限制不允许这样的第三方出现。此时,每个区块链参与方都独立地进行交易验证和账本读写。5) 联系各方的交易区块链最适用的应用场景一般存在一个特点,即交易产生于维护账本的各方之间,且交易之间存在关联。有了这个特性,一笔交易的验证就以之前相关交易的验证为前提,从而使参与交易的各方利益相互绑定。此时,各参与方才有意愿协作地共同维护这个关乎各方利益的账本。此外,为了使每个节点能够独立地进行交易验证,每个交易的合法性应该是可验证的。总之,一个合适的区块链应用一定是建立在互不信任的多方之间,在没有可信第三方的情况下,基于相互关联的交易共同构建一个不可篡改的数据库,从而在公开、公平的情况下实现多方共赢,体现为提高效率或降低成本。2.2 区块链技术适用场景的判断条件迄今为止,区块链最活跃的应用领域仍然是金融,包括基于公有链的比特币、基于联盟链的跨境支付/清算等。在这些应用中,区块链记录的数据就是金融交易,即货币或数字资产的转移。在这种情况下,交易的合法性验证包括支付方的身份和支付方拥有的资产额,交易之间的联系也是天然的。而随着区块链技术在其他领域的广泛应用,链上存储的数据类型逐渐泛化,对数据可验证性的要求变弱。在这种情况下,对于是否使用区块链技术的判断主要基于2.1节所述的前4个特征,仍需结合具体应用场景设计交易的合法性验证方法,从而最大限度地体现区块链技术的价值。区块链技术适用场景的判断条件,一个应用需求必须同时满足前4个特征才有必要使用区块链技术,否则就应该寻求传统解决方案[13,14]。进一步地,在确定使用区块链之后,还需要根据权限管理需求来决定区块链系统的类型。如果不限制参与节点的读写权限,则采用公有链;如果需要限制读写权限,则使用联盟链或者私有链,前者用于机构之间,后者用于机构内部。而对于后两种区块链系统而言,相关多方一般是有资质的团体,具备一定的可信性,但是由于利益不一致,仍然有破坏账本一致性的可能,因此,区块链才有应用的必要。从IoT系统的角度来看,由于大多数应用在各个垂直行业之间或企业内部,参与各方大多是有资质的组织,且相关数据及交易都不希望对公众开放,因此,一般不采用公有链,而是以联盟链或私有链为主。3 结束语IoT 是区块链技术应用的一个重要领域,既可以将两个技术结合起来解决其他行业面临的困难,也可以利用区块链技术解决IoT系统自身的问题。但一个应用是否真的需要区块链技术,应结合区块链的本质特征和目标应用的核心痛点进行具体分析。本文结合5个典型的应用案例深入剖析了区块链能解决哪些问题,以及如何真正地在具体应用中发挥区块链的价值。尽管区块链技术在实际场景中的应用形式可以是多种多样的,现在也没有相关法规和标准来说明怎样的应用可以被称作是基于区块链的,但是只有找到真正适合区块链核心特征的应用才有助于区块链技术的发展,人们所憧憬的可编程社会才有可能真正到来。The authors have declared that no competing interests exist.作者已声明无竞争性利益关系。4 原文链接http://www.infocomm-journal.com/wlw/article/2020/2096-3750/2096-3750-4-2-00010.shtml
  • [技术干货] 【论文分享】基于区块链与边缘计算的物联网数据管理
    基于区块链与边缘计算的物联网数据管理程冠杰, 黄诤杰, 邓水光浙江大学计算机科学与技术学院,浙江 杭州310007摘要智能设备的普及带动了物联网技术的应用和发展,而随之产生的海量物联网数据给传统集中式数据管理带来诸多挑战,如性能、隐私与安全的挑战。因此,提出了一种基于区块链与边缘计算的物联网数据管理架构来支持分布式的物联网数据管理,可以为物联网数据提供分布式存储和访问控制。同时设计了一种内置加密方案来保护数据的安全和隐私,并保障数据的所有权。通过引入边缘计算,解决了区块链系统的可扩展性瓶颈问题。给出了基于该架构的数据存储和数据访问流程,并详细说明了基于智能合约技术的系统实现算法。实验结果表明,与传统基于云的数据管理系统相比,基于该架构实现的物联网数据管理系统的性能更好。关键词: 物联网 ; 区块链 ; 边缘计算 ; 数据管理1 引言物联网(IoT,Internet of things)是新一代信息技术的重要组成部分,也是信息化发展的重要标志[1]。通过连接智能设备,IoT 技术使得异构实体之间更容易收集、流通、处理和共享数据。目前,大多数IoT 系统使用云服务提供存储和计算支持[2],但是IoT 海量、异构的数据特征以及多维、实时的服务请求等对基于云的数据管理架构产生了很大挑战[3],极大地限制了IoT应用的发展。对基于云的数据管理架构产生的挑战具体包括如下3个方面。1) 身份认证和访问控制设备和用户的身份验证是IoT系统的第一层保障[4]。但是现有的身份验证机制一般完全依赖于第三方(如证书颁发机构),该机制缺乏可信性和稳定性[5]。此外,即使用户已通过认证,也无法排除其在进入系统后故意执行恶意行为的可能,如窃取数据和攻击网络。因此,需要制定高效的访问控制机制以实现对IoT用户的访问授权。2) 数据安全与隐私数据安全[6]和隐私保护[7]是 IoT 技术发展的核心问题。集中式的IoT数据管理架构容易受到各种网络攻击,如单点攻击和分布式拒绝服务攻击[8],导致数据始终处于不安全的状态。因此,必须确保用户获取的 IoT 数据与数据源采集的数据完全一致,即未被篡改或丢失。另一方面,集中式的存储架构通常由中心化组织支配,使得生产者无法掌控数据的所有权。用户习惯用个人的数字资产来换取中心化组织提供的免费信息和服务,但是却忽略了由第三方掌控数据带来的安全和隐私威胁。以电商巨头阿里巴巴网络技术有限公司和北京京东世纪贸易有限公司为例,从“你可能还喜欢”的商品推荐到蚂蚁金服、京东白条的信贷评估模型,均利用了用户的购买记录数据进行筛选。为了更好地提取用户特征,数据管理者可以在用户不知情的情况下复制无数备份并将数据存储在组织内部的各个数据中心,若一个数据中心遭受攻击就会导致所有数据被泄露。因此,应该由数据生产者掌控数据的所有权,从而保障数据的安全和隐私。3) 数据存储与处理性能当前的IoT数据存储系统通常基于中心化架构构建,如由一个云服务提供商同时管理多个IoT应用[9]。IoT 从终端设备收集数据,然后发送到云服务器进行存储和进一步处理。但是这种基于云的中心化数据存储和处理模型无法适应IoT应用的扩展速度以及IoT场景的多样化需求[10]。面对大规模IoT应用,中心化架构将面临网络负载过重和网络传输时延不可预测等挑战,因此,海量异构IoT数据的处理性能无法得到保障。综上所述,当前的IoT应用迫切需要一种新型的数据管理架构,从而能提供一种访问控制机制并确保IoT数据的安全和隐私,同时实现高效的数据存储和处理。学术界关于IoT数据管理问题的研究有很多,文献[11]针对 IoT 数据访问控制提出了一种基于身份的IoT认证机制,在该机制下,每个设备都有一个虚拟的网际协议第6版(IPv6,Internet protocol version 6)地址,在设备参与网络时作为身份证书。文献[12]设计了一种系统能够自动识别连接到IoT网络的设备类型,通过约束易受攻击设备之间的通信来尽量降低系统风险。文献[13]针对IoT数据隐私保护提出了一种基于生成源的数据分类机制,并创建了用户和访问控制列表,可有效防止IoT数据泄露。尽管上述工作已经为IoT数据管理提供了很多有效的解决方案,但基于云的本质并未改变,因此,仍面临中心化数据管理机制下的各种挑战和隐患。本文考虑使用区块链技术建立分布式的信任机制,为IoT数据管理提供了一种新的解决思路。作为比特币的核心技术[14],区块链的研究与应用呈现爆发式增长趋势。区块链本质上是一个分布式数据账本,区块链网络的每个参与者通过分布式共识算法维持存储数据的一致性,而不需要中心化机构的信用证书。区块链中记录的数据是不可篡改且可追溯的,只要系统中的诚实节点比所有攻击者节点拥有更多的算力,那么系统就是安全可靠的。此外,系统内置的数字签名技术和各种加密算法保障了链上数据的隐私和安全。因此,区块链技术为IoT 数据管理提供了一种高效的解决方案。但是,区块链系统的整体性能受单个节点的性能上限的限制,导致存储和计算能力存在瓶颈,无法满足大规模 IoT 数据的可扩展性需求。边缘计算架构在移动网络边缘提供了充足的存储和计算能力,并且具备分布式、低时延和高带宽的特性[15]。通过引入边缘计算,可以很好地解决区块链的可扩展性瓶颈问题。此外,边缘计算可以满足 IoT 数据实时处理的需求,并为 IoT 数据提供了一个分布式存储架构。因此,本文将区块链和边缘计算相结合,提出了一种新型IoT数据管理架构。基于内置的加密方案设计了一种主动访问控制机制,保护了数据的安全和隐私。基于边缘计算架构设计了一种新型分布式数据存储系统,详细说明了基于此架构的数据存储和数据访问流程,并对系统架构的性能进行了实验和分析。2 相关工作目前,已有一些研究工作将区块链与IoT进行结合。文献[16]提出了一种基于区块链的软件定义网络架构,实现了一种安全的分布式点对点(P2P,peer-to-peer)网络,其中,IoT 成员可以在没有可信第三方的情况下进行交互。文献[17]利用区块链为大型IoT系统提供访问控制,通过智能合约来注册、广播和撤销访问授权;IoT 设备拥有资源的所有权,而不是由中心机构进行监督。文献[18]提出了一种基于区块链的分布式访问控制方案,通过智能合约创建特定交易来定义访问控制策略。但是上述工作均基于私有区块链平台,通过牺牲去中心化来提升性能。此外,上述工作过分依赖于智能合约技术,而不是区块链架构本身。文献[4]提出了一种IoT身份验证机制,为每个用户分配一个唯一的ID,然后将其记录到区块链上。此外,通过将重要数据进行哈希运算并存储到区块链中而提出一种数据保护机制,但是该机制忽略了区块链的存储瓶颈。文献[19]和文献[20]所做的工作与本文的研究类似。文献[19]引入了联盟链来解决 IoT 数据的安全问题,然后采用了雾计算架构作为分布式环境部署区块链。但是,此方案的每个雾节点都需要存储完整的数据账本,导致存储负担很大。此外,所有IoT 数据都存储在区块链上,导致系统缺乏可扩展性。在本文的数据管理架构中,区块链仅存储加密数据块的哈希值和一些重要文件,每台边缘服务器仅维护一部分状态信息,从而大幅度降低了存储开销并增强了系统的可扩展性。文献[20]提出了一种分布式的数据管理架构,将数据的哈希值存储在区块链中,并使用可信执行环境(TEE,trusted execution environment)将原始数据存储在可信硬件中。使用TEE会大幅度增加系统成本,并且数据的访问控制没有被纳入研究工作中。此外,大部分现有工作中的IoT用户都需要充当区块链节点才能参与网络,而同步区块将产生巨大的资源消耗。在本文提出的数据管理架构中,用户只需要与边缘服务器进行交互而不必加入区块链网络,因此,降低了用户使用系统的技术门槛和成本开销。3 结束语本文提出了一种基于区块链与边缘计算的 IoT数据管理方案。基于Kademlia算法设计了一种分布式数据存储方案,提高了系统的存储效率。此外,提出了一种基于区块链的主动访问控制机制,只有数据所有者授权的用户才能访问IoT数据。设计了一种内置的加密方案来保障数据安全和隐私,另外,基于智能合约在Hyperledger Fabric平台实现了系统原型。实验结果表明,与基于云的数据管理策略相比,本文提出的数据管理架构性能更高效。The authors have declared that no competing interests exist.作者已声明无竞争性利益关系。4 原文链接http://www.infocomm-journal.com/wlw/article/2020/2096-3750/2096-3750-4-2-00001.shtml
  • [行业资讯] LoRa Edge解锁物联网定位追踪市场新机遇
    从管理化工园区内的工作人员、追踪牛羊群的定位,到物流货运中实时获取货物的位置信息……物联网定位功能被越来越多地应用于各行各业中,位置感知也随之成为物联网设备的重要组成部分。据Market Insight Reports报告显示,到2025年,“带有地理定位功能的物联网”市场规模预计将增长至740亿美元。然而,由于物联网应用碎片化的特性,目前市场上还没有一套系统、一种技术能够一统整个物联网定位服务的“江湖”。随着地理定位应用场景的拓展,市场对于定位技术的需求也日趋多元化。例如,室内外一体化定位成为市场热点;一些应用需要在定位模式上叠加健康、报警、语音等功能,同时保持低功耗;以及一些应用则要求更高的数据安全、网络私密性,需要在本地部署私有网络等。与此同时,在全球供应链管理中,对于智能、可扩展和高性价比的全球资产追踪方案的需求在持续增加。行业更为迫切地希望提升端到端供应链表现、资产可视性和客户服务,由此推动相关技术需求加速增长。然而,资产追踪的大规模采用,仍受限于缺少能够兼具跨越广阔区域、高可靠性和高性价比特点的无线连接方案。整体而言,市场需要定位技术具有更长的电池寿命、更低的部署及运营成本、以及更灵活的运营模式,而这些正是LoRa技术的优势所在。远距离、低功耗且易于部署的、连接到云端的LoRa Edge物联网地理定位平台,能够支持超低功耗资产管理平台的自动定位,并且追踪和监控设备、产品、车辆及人员等资产,从而保证供应链的稳定运行,实现更智能和更具可操作性的资产追踪。随着近期Semtech推出LoRa Edge LR1120芯片组,拓展后的平台支持物联网应用直连卫星和全球化部署的能力,进一步解锁了全球定位追踪市场的应用潜力。Semtech LoRa Edge LR1120LoRa Edge地理定位平台:低功耗、低成本、更灵活LoRa已经成为了主流的低功耗物联网通信技术。基于LoRa技术,Semtech于2020年推出了LoRa Edge地理定位平台和LR1110芯片组,适用于工业、楼宇、家居、农业、交通运输和物流等领域。作为一个高度通用且低功耗的地理定位平台,LoRa Edge通过LoRa网络回传降低成本和功耗,通过LoRa Cloud提供云服务。2022年1月,Semtech宣布将LoRa Cloud地理定位服务集成至腾讯云物联网开发平台,从而更好地服务于中国用户。基于LoRa Edge平台的定位方案,在低功耗、低成本方面具有显著的优势,由此成为腾讯云和Semtech合作的重点。LoRa Edge地理定位平台的特点包括:· 中精度定位:LoRa Edge主要针对10-50米的中精度定位范围,同时也可以融合其他技术满足高精度定位需求。该平台能够实现室内外连续覆盖,支持公有网络和私有网络,并可以根据客户的具体需求进行量身定制。· 低功耗:传统的基于芯片的地理定位设备需要承载巨大的计算量,导致它们往往只有数周至数月的电池寿命。LoRa Edge解决方案可以在定位设备和LoRa Cloud之间分配计算量,使设备可拥有长达数月甚至数年的电池寿命。· 低成本:LoRa Edge芯片的模组成本可达到小于5美元,并且LoRa远距离的优势可以减少所需的网关使用,从而降低了整体部署和运维成本。LoRa Edge LR1110芯片组集成了GNSS和Wi-Fi扫描器,结合低功耗的LoRa收发器、Semtech的LoRa Cloud地理定位求解器以及相关调制解调器,有助于实现更智能、更高效的资产管理。LoRa Edge产品系列于近期进一步扩展——Semtech推出了全新芯片组LR1120,在单个芯片上提供多频段的 LoRa 连接选项,支持 Sub-GHz、卫星通信S 频段和 2.4GHz 频段。该解决方案将简单性和低功耗的优势扩展到更多可用无线频谱,从而提高了物联网部署的全球可用性和覆盖范围。LoRa Edge LR1120芯片组应用市场:畜牧业、物流、园区的资产管理在众多的物联网应用中,地理定位是最为强大、发展势头最为迅猛的细分领域之一。近年来,LoRa技术在定位领域不断发力,将位置和环境传感器与物联网设备集成,在国内外已经涌现了不少应用案例。自LoRa Edge发布以来,许多客户基于这一独特的“设备到云端”的解决方案,推出了各种创新产品和服务。在国内,LoRa Edge的目标市场主要包括畜牧业牛羊群定位以及物流、园区的资产管理等。畜牧业牛羊群定位与监测:我国智慧畜牧业的发展面临着畜牧群数量庞大、分布范围广的挑战,而畜牧业对于牛羊定位的需求仍将不断增加。仅仅使用一颗LoRa Edge芯片就可以实现定位和LoRa数据传输功能,降低整个畜牧追踪器的尺寸和成本,同时降低功耗,增加使用寿命,对于特定场景中的畜牧管理有一定的提升作用。LoRa Cloud与腾讯云集成后,也为基于云端的智慧化畜牧管理提供更多可能。智慧园区、物流的资产管理基于物联网的资产管理解决方案应用于智慧园区、物流等领域,实时追踪相关的设备(如托盘)、货物、车辆和人员,能够取代传统的人工管理方式,提高管理效率。例如,配备地理定位功能的设备能够查询资产的位置、库存地点,以及其处于静止或移动状态等信息,还能提供货物防丢失和防范损坏功能。传统的GPS追踪器功耗很高,需要多次更换电池,在大规模部署的情况下导致电池更换成本高昂,而一旦电池耗尽则将产生资产追踪器“失联”问题,给维护带来很大难度。LoRa Edge能够帮助解决上述难题,其设备可拥有长达数月甚至数年的电池寿命,满足资产管理的需求。同时,LoRa Edge的加密级别更高,能够防止数据伪造,适用于对于安全性、保密性要求更高的资产管理场景。基于LoRa Edge的解决方案也适用于购物中心、医院、校园等Wi-Fi全覆盖的封闭区域,实现对于人和物的追踪管理,例如对于清洁工作人员进行追踪管理以提高绩效,管理库存商品和贵重资产等。无处不在的地理定位随着LR1120芯片组的推出,LoRa Edge地理定位平台具有低功耗、支持地面及卫星LoRaWAN网络、增加了LoRa 2.4GHz频段等特点,能够支持各类新兴用例。由于其减少了网络部署支出,也将简化和加速物联网解决方案的上市。无处不在的地理定位将改变洲际物流中的资产追踪方式。在从工厂到分销、终端客户的典型资产运输场景中,可以首先使用LoRaWAN地面Sub-GHz网络,当地面无网络覆盖时再无缝切换到卫星网络;而在货物通过空运或海运方式进行洲际运输时,则使用LoRa 2.4GHz频段,从而大幅简化地理定位资产追踪。卫星连接也更适用于农业和监测环境应用,比如监测地处森林、山区等偏远或危险环境中的资产等。利用卫星实现远程和实时监测的用例多种多样,涵盖了农业、动物保护、公用事业基础设施和采矿等多种应用场景。此外,当存在地面网络覆盖,但在起点与目的地之间必须跨越多个网络时,拥有一个无需向多个运营商付费的同质化网络也将更具优势,它能够确保在地区穿行时拥有连续的网络服务,这一需求常见于陆地货运中。结语定位功能正日益成为物联网设备的“刚需”。凭借在低功耗、低成本、灵活性、集成度和安全性等方面的优势,LoRa Edge有望延伸至更多的垂直应用领域。与腾讯云的合作,也将进一步助推其在国内有更多的应用落地。随着LR1120芯片组的推出,LoRa Edge现已具备卫星通讯S频段,能够支持在网络无法覆盖的偏远地区部署物联网设备,从而助力客户开发高度集成且低功耗的地理定位追踪设备,运行于地面和卫星LoRaWAN网络,实现跨越数千里的资产追踪,涵盖室内、室外、偏远地区以及密集城市等不同环境。这将为洲际供应链管理和物流、资产追踪、陆运和海运等多个行业解锁广阔机遇。
  • [行业资讯] 国务院:鼓励加快人工智能、云计算、区块链等领域技术研发突破
    据中国政府网消息,近日,国务院印发《扎实稳住经济的一揽子政策措施》。《措施》中提到,要促进平台经济规范健康发展。出台支持平台经济规范健康发展的具体措施,在防止资本无序扩张的前提下设立“红绿灯”,维护市场竞争秩序,以公平竞争促进平台经济规范健康发展。充分发挥平台经济的稳就业作用,稳定平台企业及其共生中小微企业的发展预期,以平台企业发展带动中小微企业纾困。引导平台企业在疫情防控中做好防疫物资和重要民生商品保供“最后一公里”的线上线下联动。鼓励平台企业加快人工智能、云计算、区块链、操作系统、处理器等领域技术研发突破。今日,国家发展改革委召开新闻发布会,解读国务院常务会议部署的扎实稳住经济一揽子政策措施有关情况。会上,工信部副部长徐晓兰在回答记者提问时透露,工信部将加快实施制造业“十四五”规划重大工程和项目、重点领域节能降碳重大技术改造项目,引导基础电信企业适度超前部署5G基站、大数据、工业互联网等新型基础设施建设,推进重大外资项目落地实施,力争早开工、早投产、早见效,形成更多实物工作量。充分挖掘汽车消费、信息消费、绿色消费潜力,培育信息消费示范城市和示范项目,加快5G、工业互联网与垂直行业的融合应用。
  • [技术干货] 深入学习区块链的隐私保护(一)概述
    区块链作为公开账本解决了各方信任问题,但却带来了一个新的问题:用户的隐私如何得到保证?这在传统的集中式系统中,不存在此问题,或者说只有“可信”第三方拥有上帝视角。如果在区块链上用户的交易信息被恶意敌手进行分析和利用,将给用户带来严重的威胁。隐私保护问题不仅在公链中需要考虑,在部署商业应用的联盟链中显得更为迫切。如何解决公开、透明与隐私保护之间的矛盾,一直是区块链技术发展的重要方向,至今仍未完全解决。并且在一些特定的应用场景,需要根据实际需求结合各种密码组件设计相应的隐私保护算法。比特币没有提供真正的匿名性,可以称为伪匿名性,是因为比特币的账户地址从其对应的公钥中直接得到,不与用户在真实世界中的身份绑定,而现实中则使用CA(Certificate Authority)进行身份认证。比特币在区块链上的所有交易都是公开的,因此任何人都可以追踪到某个地址的交易。虽然创建新地址进行交易看来起增加了匿名性,但仍然不能解决所有交易都被公开的事实。论文【1】对用户地址间的关系进行了分析,结果如图1。而在联盟链应用场景中,例如银行间的转账,如果采用区块链系统进行记录交易,虽然严格一致的账本省去了繁琐的对账工作,但没有任何一家银行希望自己的资金往来完全暴露。并且欧盟于2018年5月实施了GDPR【2】(General Data Protection Regulation),这意味着在欧盟的企业如果想将用户的个人数据进行上链,那么必须保证用户数据的链上隐私性。 图1. 比特币地址关系图针对链上的一笔交易而言,接收者地址、发送者地址以及交易金额都是需要考虑的问题,以及除此之外的附加数据。对接收者和发送者地址的隐私保护我们称为匿名性;对交易金额的隐私保护我们称为机密性。在保证匿名性和机密性的同时,要达成多方校验和共识,我们称之为公开可验证性。常用在区块链隐私保护中的高级密码组件/方法如下: 签名类:签名类的隐私保护手段有盲签名、群签名以及环签名等。盲签名就是接收者在不让签名者获取所签署消息具体内容的情况下所采取的一种特殊的数字签名技术,消息者先将消息盲化,而后让签名者对盲化的消息进行签名,最后消息拥有者对签字除去盲因子,得到签名者关于原消息的签名,例如基于椭圆曲线的盲签名ECBDS【3】。群签名是群参与者利用群公钥和自己的私钥对消息进行签名,验证者对消息进行验证时,无法确定该消息是群中的哪一个成员进行了签名,但群签名中存在管理员,群的管理员可以揭示签名者。而环签名则在群签名的基础上,去掉了群管理员的角色。群签名/环签名的方案例如可链接的群签名【4】和可追踪的环签名【5】等。非交互式零知识证明:非交互式零知识证明是指证明者无需交互,就能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的。常见的NIZK有zk-SNARKs【6】、zk-STARKs【7】、Bulletproofs【8】等。同态加密技术:同态加密是一种特殊的加密方法,对密文直接进行处理,与对明文进行处理后再加密得到的结果相同。同态加密分为全同态和部分同态。全同态为可以对密文进行加减乘除四则运算,例如BGV方案【9】;部分同态分为加法同态、乘法同态、减法同态和除法同态。常用的有加法同态paillier【10】、Pederson承诺【11】和椭圆曲线点乘【12】等。可信执行环境:可信执行环境在系统中是一个独立的环境,受硬件机制保护,与现有系统隔离,提供从文件到内存的全方位安全。它作为一个安全、可靠、中立的环境,可以用来执行区块链系统中隐私性要求比较高的业务逻辑,例如将密文解密成明文再进行运算,不用担心明文数据被窃取,在离开可信环境前,再将结果转化成密文在区块链中传输。可信执行环境有SGX【13】等。目前有不少区块链上的隐私保护项目,将其分为两类,一种基于UTXO,另一种基于账户性。基于UTXO的项目有Mixcoin【14】、Zcash【15】、Monero【16】和Hawk【17】等。基于账户性的项目有Zether【18】和AZTEC【19】等。本文给出了区块链隐私保护的学习知识图谱,有兴趣的小伙伴可以一起多交流。————————————————版权声明:本文为CSDN博主「Xiao Dai」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/nanshenyaohaohaode/article/details/106418537
  • [行业资讯] 元宇宙和物联网:进化还是共生关系?
    Metaverses,也称为 3D 虚拟世界网络,专注于社交联系,并承诺为所有用户提供多维沉浸式数字体验。这些虚拟世界融合了几乎增强的物理和数字现实,具有持久性、分散性、高度协作性和互操作性。虽然Metaverse还处于起步阶段,但已经有多种技术为其提供支持,如增强现实(AR)、虚拟现实(VR)、区块链、人工智能、空间计算和物联网,其目标是使这些虚拟世界对每个用户实时而言尽可能真实和上下文相关。在本文中,我将探讨物联网在metaverse扩展中的作用,重点关注物联网和metaverse之间的协同作用,以及依赖于物联网的未来metaverse用例,最后为读者提出三个发人深省的开放性问题。物联网与Metaverses之间的协同效应。物联网数据。 Metaverses 开发的基础是从物理环境中捕获数据、大量摄取 IoT 数据并在 Metaverses 的途径中以有意义的方式实时表示这些数据的能力。物联网数据还需要响应迅速并得到妥善保护。数字孪生(作为物理对象或过程的实时数字对应物的虚拟表示)。数字孪生技术支持物理组件与其数字对应物之间的连接,由获取、集成和通信实时数据馈送的物联网传感器创建的连接。当前对虚拟现实的日益增长的吸引力和投资正在推动数字孪生技术的突破,这将为不断更复杂的虚拟现实用例铺平道路。物联网架构。为了让元宇宙向所有用户提供多维沉浸式、高度情境化和交互式数字体验,它们需要来自物理现实的越来越高分辨率的输入。这增加了对增强型物联网架构的需求。多个物联网架构层需要更多的技术突破来支持虚拟现实的扩展速度,例如连接和交互(例如,传感器、机器人、可穿戴设备、扩展现实 XR 设备)、计算(例如,智能边缘、AIoT、5G)和数据和信息层。依赖于物联网的未来Metaverse用例元节和最终的元节据说会提高人类决策的质量,同时最大限度地减少做出有根据的决策所需的精神能量。实现这一目标的基础是虚拟现实、增强现实和物联网数据的无缝互操作性,这使得新的复杂用例能够改善人们在数字和物理现实中的生活,甚至解决现实世界的问题。增强型协作工作空间以及改进的大规模交互式体验设计将使个人和企业能够在元宇宙中学习、社交和参加活动。可再生能源供应将依赖于物联网平台提供的实时数据,这些平台连接到太阳能电池板、风力涡轮机、天气传感器、子生产系统、配电和能源电网系统等,在这些系统中,虚拟世界可以实现大规模的数据管理和处理。沉浸式学习和培训。在现实世界的情况下,例如,严重故障、极端天气、(网络)攻击通过虚拟模拟中的空间感知使用虚拟世界中的数字双胞胎。将允许针对现实世界的情况开发和测试多种方法,供人类和机器检测、响应和限制现实生活中的影响。在制造业中,工人将接受远程培训,以熟悉机器操作。对于大型基础设施项目,工程师和建筑师将利用数字双胞胎来模拟对在建物理资产的实时反馈。通过将物联网数据流式传输到元节中,关键系统维护的态势感知能力增强,制造人员的工作安全将得到改善。工人将被及时告知危险情况,以便他们限制现实生活中的影响。“对于要向所有用户提供多维沉浸式高度上下文和交互式数字体验的元节,它们需要来自物理现实的越来越高分辨率的输入。这增加了对增强型物联网架构的需求”用于长期规划的大规模模拟。元宇宙最终将成为物理现实的反映,由现实世界对象和角色的数字双胞胎赋予生命。虚拟世界可能会成为政府、企业和个人运行长期分析和规划场景以确定最佳方法和响应的最复杂的虚拟仿真环境。元宇宙将使相关各方能够将这些方法和响应与现实世界的变化联系起来(例如,人道主义危机、人口收入差距、气候变化、新的和重新出现的疾病、恐怖主义)。通过这种方式,人类将在持续的学习循环中提前预测对事件的最佳响应。开放式问题随着用户参与度的增加,元节的采用也随之增加,1. 人类和机器的身份管理能否跟上并有效降低快速扩张的元宇宙带来的风险?2. 这将如何影响人类个人和社会障碍的数量和严重程度?3. 神经挖掘(应用行为智能和机器学习技术来大规模分析和影响人类行为)将如何影响人类决策?总而言之,我毫不怀疑由物联网和尖端技术驱动的元宇宙最终将创造未来的多维体验,最终感觉就像我们周围的物理世界一样正常。
  • [行业资讯] 基于物联网芯片,跃昉科技发布工业园区节能降碳方案
    5月27日消息,近日,广东跃昉科技有限公司(“跃昉科技”)推出基于跃昉工业物联网芯片BF2的工业园区节能降碳解决方案,致力于为全国各大工业园区优化传统用能方案,减少碳排放。据跃昉科技产品经理黄进介绍,在对北京、深圳、佛山等地多个工业园区进行了实地调研后,跃昉科技发现这些园区有很多共性需求,包括物联网芯片集成、设备区块链接入、园区用能数据的全采集全感知、能耗监测与质量跟踪等。基于此,智能园区节能降碳服务方案可集成各类采集、控制与通信的物联网设备,利用区块链技术防止信息篡改,并采用大数据与人工智能算法来整体优化现有园区用能方式。该解决方案主要从服务器、客户端、用电设备和信息采集设备等方面进行软件开发与实施,实现能源可视化、决策智能化、控制自动化、管理数字化、传输网络化。此外,方案通过大数据、物联网、人工智能、以及区块链技术,以实现工业园区用能数据采集管控、支撑园区电网规划、科学节能降耗、更安全的智能设备运营环境、智能设备运行态势监测和故障报警、办公设备能耗分析与智能管控、合理的智能照明控制策略以及光伏发电最大限度就地消纳。跃昉科技方面表示,这一解决方案具有更安全的信息系统、更开放的监控系统、更智能的感知系统、更科学的分析系统以及更全面的管理系统,方案中应用的核心器件BF2是一款32位RISC-V架构的SoC,集成双模Wi-Fi/BLE,自带安全加密功能。据悉,BF2目前已实现量产,并应用到智慧能源、智慧物流、智慧城市、智慧工厂等多个领域。公开信息显示,跃昉科技(LeapFive)由格兰仕集团和前谷歌CTO江朝晖博士发起,于2020年1月成立,是一家聚焦研发基于RISC-V开源指令集架构SoC芯片产品的高科技公司。公司主要面向工业物联网、安全等行业领域,提供从操作系统到云平台的全栈基础智能软件服务,并旨在通过融合人工智能、工业物联网、区块链等交叉领域技术为中国数字经济的创新应用赋能。今年3月,跃昉科技推出行业第一款FullMask的RISC-V架构高端应用处理器NB2,聚焦智慧能源、智慧物流、智慧制造、数据安全等领域多维度为工业物联网应用赋能。
  • [技术干货] python区块链实现简版工作量证明(转载)
    python区块链实现简版工作量证明 更新时间:2022年05月24日 16:48:41   作者:晓彬_  这篇文章主要为大家介绍了python区块链实现简版工作量证明详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪目录说明回顾工作量证明哈希计算Hashcash实现说明本文根据https://github.com/liuchengxu/blockchain-tutorial的内容,用python实现的,但根据个人的理解进行了一些修改,大量引用了原文的内容。文章末尾有"本节完整源码实现地址"。回顾在上一节,我们构造了一个非常简单的数据结构 – 区块,它也是整个区块链数据库的核心。目前所完成的区块链原型,已经可以通过链式关系把区块相互关联起来:每个块都与前一个块相关联。但是,当前实现的区块链有一个巨大的缺陷:向链中加入区块太容易,也太廉价了。而区块链和比特币的其中一个核心就是,要想加入新的区块,必须先完成一些非常困难的工作。在本文,我们将会弥补这个缺陷。工作量证明区块链的一个关键点就是,一个人必须经过一系列困难的工作,才能将数据放入到区块链中。正是由于这种困难的工作,才保证了区块链的安全和一致。此外,完成这个工作的人,也会获得相应奖励(这也就是通过挖矿获得币)。这个机制与生活现象非常类似:一个人必须通过努力工作,才能够获得回报或者奖励,用以支撑他们的生活。在区块链中,是通过网络中的参与者(矿工)不断的工作来支撑起了整个网络。矿工不断地向区块链中加入新块,然后获得相应的奖励。在这种机制的作用下,新生成的区块能够被安全地加入到区块链中,它维护了整个区块链数据库的稳定性。值得注意的是,完成了这个工作的人必须要证明这一点,即他必须要证明他的确完成了这些工作。整个 “努力工作并进行证明” 的机制,就叫做工作量证明(proof-of-work)。要想完成工作非常地不容易,因为这需要大量的计算能力:即便是高性能计算机,也无法在短时间内快速完成。另外,这个工作的困难度会随着时间不断增长,以保持每 10 分钟出 1 个新块的速度。在比特币中,这个工作就是找到一个块的哈希,同时这个哈希满足了一些必要条件。这个哈希,也就充当了证明的角色。因此,寻求证明(寻找有效哈希),就是矿工实际要做的事情。哈希计算获得指定数据的一个哈希值的过程,就叫做哈希计算。一个哈希,就是对所计算数据的一个唯一表示。对于一个哈希函数,输入任意大小的数据,它会输出一个固定大小的哈希值。下面是哈希的几个关键特性:无法从一个哈希值恢复原始数据。也就是说,哈希并不是加密。对于特定的数据,只能有一个哈希,并且这个哈希是唯一的。即使是仅仅改变输入数据中的一个字节,也会导致输出一个完全不同的哈希。本质上哈希是一个摘要算法。哈希函数被广泛用于检测数据的一致性。软件提供者常常在除了提供软件包以外,还会发布校验和。当下载完一个文件以后,你可以用哈希函数对下载好的文件计算一个哈希,并与作者提供的哈希进行比较,以此来保证文件下载的完整性。在区块链中,哈希被用于保证一个块的一致性。哈希算法的输入数据包含了前一个块的哈希,因此使得不太可能(或者,至少很困难)去修改链中的一个块:因为如果一个人想要修改前面一个块的哈希,那么他必须要重新计算这个块以及后面所有块的哈希。Hashcash比特币使用 Hashcash ,一个最初用来防止垃圾邮件的工作量证明算法。它可以被分解为以下步骤:取一些公开的数据(比如,如果是 email 的话,它可以是接收者的邮件地址;在比特币中,它是区块头)给这个公开数据添加一个计数器。计数器默认从 0 开始将 data(数据) 和 counter(计数器) 组合到一起,获得一个哈希检查哈希是否符合一定的条件:如果符合条件,结束如果不符合,增加计数器,重复步骤 3-4因此,这是一个暴力算法:改变计数器,计算新的哈希,检查,增加计数器,计算哈希,检查,如此往复。这也是为什么说它的计算成本很高,因为这一步需要如此反复不断地计算和检查。现在,让我们来仔细看一下一个哈希要满足的必要条件。在原始的 Hashcash 实现中,它的要求是 “一个哈希的前 20 位必须是 0”。在比特币中,这个要求会随着时间而不断变化。因为按照设计,必须保证每 10 分钟生成一个块,而不论计算能力会随着时间增长,或者是会有越来越多的矿工进入网络,所以需要动态调整这个必要条件。为了阐释这一算法,我从前一个例子(“I like donuts”)中取得数据,并且找到了一个前 3 个字节是全是 0 的哈希。实现这里我们实现一个简易的区块链,就不动态调节难度了,使用固定的难度。1234567891011class ProofOfWork(object):    """    pow     """    _N_BITS = 16    MAX_BITS = 256    MAX_SIZE = sys.maxsize    def __init__(self, block, n_bits=_N_BITS):        self._n_bits = n_bits        self._target_bits = 1 << (self.MAX_BITS - n_bits)        self._block = block这里的_n_bits就是难度值。 在比特币中,当一个块被挖出来以后,“n_bits” 代表了区块头里存储的难度,也就是开头有多少个 0。这里的 16 指的是算出来的哈希前 16 位必须是 0,如果用 16 进制表示,就是前 6 位必须是 0,这一点从最后的输出可以看出来。目前我们并不会实现一个动态调整目标的算法,所以将难度定义为一个全局的常量即可。16 其实是一个可以任意取的数字,其目的只是为了有一个目标而已,这个目标占据不到 256 位的内存空间。同时,我们想要有足够的差异性,但是又不至于大的过分,因为差异性越大,就越难找到一个合适的哈希。这里的_target_bits则表示满足要求的最大值,即一个上界,它是由1左移256-n_bits位来的。计算出来的哈希只要满足小于它就满足条件了。接下来我们要准备用于计算哈希的数据:1234567def _prepare_data(self, nonce):    data_lst = [str(self._block.block_header.prev_block_hash),                str(self._block.block_header.hash_merkle_root),                str(self._block.block_header.timestamp),                str(self._block.block_header.height),                str(nonce)]    return utils.encode(''.join(data_lst))nonce就是我们要不断尝试要寻找的值,就是上面 Hashcash 所提到的计数器,它是一个密码学术语。其他数据都是区块头的数据。我们需要把这些数据进行合并作为计算哈希的原数据。寻找nonce的方法:1234567891011121314151617181920def run(self):    nonce = 0    found = False    hash_hex = None    print('Mining a new block')    while nonce < self.MAX_SIZE:        data = self._prepare_data(nonce)        hash_hex = utils.sum256_hex(data)        hash_val = int(hash_hex, 16)        sys.stdout.write("try nonce == %d hash_hex == %s \r" % (nonce, hash_hex))        if (hash_val < self._target_bits):            found = True            break        nonce += 1    if found:         print('Found nonce == %d' % nonce)    else:        print('Not Found nonce')        raise NonceNotFoundError('nonce not found')    return nonce, hash_hex为防止溢出,我们要设定一个上线为int64的上限。然后我们不断循环寻找目标值,直到满足难度要求。当然,如果难度设计得过高,有可能寻找不到,所以也需要判断一下。所以我们再循环内做了一下事:1. 准备数据2. 用 SHA-256 对数据进行哈希3. 将哈希转换成一个大整数4. 将这个大整数与目标进行比较然后我们还需要很方便的去检验这个块的难度值是否满足我们的要求:12345678def validate(self):    """    validate the block    """    data = self._prepare_data(self._block.block_header.nonce)    hash_hex = utils.sum256_hex(data)    hash_val = int(hash_hex, 16)    return hash_val < self._target_bits最后运行以前的main.py,结果如下:12345Mining a new block.........Block(_block_header=BlockHeader(timestamp='1548213145.24', hash_merkle_root='', prev_block_hash='', hash='00008fbcbe3a817641195652d9bad37fa8c974536f152f4bc575b3ead9dc6407', nonce=62489, height=0))Block(_block_header=BlockHeader(timestamp='1548213166.65', hash_merkle_root='', prev_block_hash='00008fbcbe3a817641195652d9bad37fa8c974536f152f4bc575b3ead9dc6407', hash='9e851f78295e7933cd9749f712d1f09f1408dff9bd37cc2f79f1c65d1ab39e2e', nonce=16184, height=1))Block(_block_header=BlockHeader(timestamp='1548213171.15', hash_merkle_root='', prev_block_hash='9e851f78295e7933cd9749f712d1f09f1408dff9bd37cc2f79f1c65d1ab39e2e', hash='f88e7a382dafc50b01c43cbbdbbdfa20ac2bffcf5ddf36b97439ff09203f8c2a', nonce=8286, height=2))可以看到这次我们产生三个块花费了25秒多,比没有工作量证明之前慢了很多(也就是成本高了很多)。参考:[1] proof-of-work[2] 完整源码