一、RSA(Rivest Shamir Adleman)算法的特点:
1、历史悠久。RSA是国际标准算法,在七十年代首次被描述,它被很好地理解并用于安全数据传输。它作为一种加密方案持续了几十年,其中公钥用于加密信息,而私钥用于解密信息。
2、RSA 基于分解大整数的难度。分解大整数以识别素数是处理器密集型的,因此迄今为止作为一种防御非常有效。但它带来了开销,例如缓慢的密钥生成,计算机资源的最大消耗。
3、可扩展性不是最佳的。当我们知道联网设备(物联网)的激增将对预计到 2030 年过时的系统提出要求时,这是一个重大缺陷。RSA 容易受到量子计算机和蛮力攻击的攻击,因此需要一种新算法,它可以为指定的安全级别提供更好的性能。
4、非常快速,非常简单的加密。RSA 加密基于简单的原理,并且在正确的环境下可以比 ECC运行得更快。RSA 可能不可扩展,但在某些情况下,例如对于内部组织,它可能更快。在RSA中,可靠性和安全性取决于整数分解的难度级别。
二、ECC(Elliptic Curve Cryptography)算法的特点:
1、依赖于检测随机椭圆曲线的单独对数。ECC算法适用于黑客难以破解的椭圆曲线离散对数问题 (ECDLP)。对于在图形中产生椭圆曲线的方程所提出的数学问题没有已知的解决方案,因此唯一的解决方案是尝试随机数。但是,每个比特大小都提供了比 RSA 更多的选项,这使得蛮力方法不太可能成功。
2、ECC加密中的较短密钥与RSA中的长密钥一样强。这会大大减少网络开销,从而实现更快的性能和更好的客户或用户体验。这也意味着从长远来看,还有更多的增长空间,因为在 RSA 中,每增加一个位,就比每增加一个位提供更多的选择。这也意味着随着时间的推移,比特大小的增长会放缓,这使得它在物联网方面可能更具可扩展性。
3、较小的证书大小。同样,交换验证所需的信息量明显少于 RAS,从而降低了网络开销并提高了性能,从而改善了用户或客户体验。它还通过提供一个环境来提高可伸缩性,在该环境中,由于开销较低,服务器可以处理增加的流量,而无需更改基础架构。
4、CPU消耗和内存使用率低。对于客户端和服务器来说,这是一种改进的体验,简化了连接并简化了流程。ECC 消耗更少的计算能力和电池资源。RSA 证书每秒可容纳 450 个请求,平均响应时间为 150 毫秒,而 ECC 仅需要 75 毫秒即可响应每秒相同数量的请求。ECC 在服务器与桌面通信时具有极好的响应时间。
5、支持RSA受信任的根证书。对于某些组织而言,网站必须在较旧的设备上成功运行,在这种情况下,每个组织都必须考虑一种混合证书技术,该技术允许 ECC 算法甚至支持 RSA 受信任的根证书。
总结一下,RSA算法应用较早,适用范围广,兼容性更好,但是对服务端性能消耗高。ECC算法是新一代算法趋势主流,加密速度快,效率更高,对服务器资源消耗低,而且最重要的是更安全,抗攻击型更强。两种算法各有各的优点,但是长远来看,RSA可能会被ECC取代。1、在设计阶段纳入安全性。物联网开发人员应在任何基于消费者,企业或工业的设备开发之初包括安全性。默认情况下启用安全性至关重要,同时提供最新的 *** 作系统和使用安全硬件。
2、硬编码凭证永远不应成为设计过程的一部分。开发人员可以采取的另一项措施是在设备运行之前要求用户更新凭据。如果设备附带默认凭据,则用户应使用强密码或多因素身份验证或生物识别技术更新它们。
3、PKI 和数字证书。公钥基础设施(PKI)和 509 数字证书在安全物联网设备的开发中发挥着关键作用,提供分发和识别公共加密密钥,通过网络进行安全数据交换以及验证身份所需的信任和控制。
4、API 安全性。应用程序性能指标(API)安全性对于保护从 IoT 设备发送到后端系统的数据的完整性至关重要,并确保只有授权设备,开发人员和应用程序才能与 API 通信。
5、身份管理。为每个设备提供唯一标识符对于了解设备是什么,它的行为方式,与之交互的其他设备以及应该为该设备采取的适当安全措施至关重要。随着区块链技术的出现,尽管我们已经朝着这个未来主义的愿景迈近了很多步,但还远远无法达到理想的目标。以下简单地列出了一些关键的局限性:
1、缺少专门为物联网设备开发的主流区块链网络(注意:截至本文撰稿时间,还没有任何区块链系统称得上是「主流的」);
2、设备制造商尚未将加密密钥嵌入到所有硬件中,也没有把与区块链的兼容性确立为一个通用标准;
3、用于保证隐私保护算法的软件加密方法效率极低且不切实际 [1],而硬件解决方案则需要建立在对制造商和整个制造供应链完全信任的基础上。因此止数据盗版很难被防止;
4、人工智能还不够精密,无法在设备中实现这种高度自主的决策行为;
5、为了进一步消除链上交易风险,还需要确立相应的法律手段,但是只有有限的国家和地区 [2] 才承认链上智能合约具有和链下合约同等的法律约束力。
但即使存在这些局限性,区块链依旧具有提供广泛增值应用的潜力,能够解决物联网面临的许多技术。首先,让我们更深入地了解区块链技术当前的进展,以及我们可以做些什么来改善现有技术水平。
为物联网设备开发的区块链网络
考虑到区块链和物联网之间的所有协同作用,一个能够完美适配物联网需求的区块链网络会具备哪些特征?尽管许多区块链技术在本质上都是基础性的,并不会明显侧重于特定应用,但在公共分类帐层面,有许多设计和优化选择能够反映设计者在开发过程中考虑到的应用堆栈。
物联网设备的特征及其对区块链网络设计的影响
在谈及物联网,特别是将其与现有区块链网络上运行的节点做对比时,我们需要明确一点:目前所有的区块链网络,都依赖于功能强大且始终联网的服务器来执行所有记录保存和共识任务。当下显而易见的是,我们所认为的大多数「物联网」设备,或者更小的,有时是移动的联网设备,其受限且独有的特征并不适合上述情况。
「IoT」一词基本上被用于指代任何连入互联网的设备,我们可以对这些设备的特征做一些总结性的陈述:
大规模:[3] 据一些统计显示,物联网设备的数量已经超过了世界人口,并将继续以更快的速度增长;
有限的算力:[4] 即使是与普通笔记本电脑的处理能力相比,物联网设备的算力在量级上往往也排不上号;
有限的存储空间:大多数物联网设备的初衷并不是在本地存储信息,而是单纯的信息中继(例如上传到云端),因此其存储空间非常有限;
有限的带宽和网络连接性:许多物联网设备在没有可靠网络连接的野外环境运行,联网成本高昂(例如,树林深处的卫星网络);
能耗限制:许多物联网设备使用电池或通过能量采集机制运行,这严重限制了其能耗。
那么想要设计最适合物联网设备的区块链网络,需要满足哪些关键指标?
1、网络需具备可扩展性:考虑到可能有数十亿个设备连接到任何特定的区块链网络,该网络必须能够扩展其处理交易和请求的能力。
2、网络需支持通用资产的发现和交易:物联网设备上有许多可交易的数字资产和资源(例如数据),其中不仅仅是货币。因此还需要发现这些资产的途径。
3、网络需支持选择性存储:考虑到物联网设备的所有局限性,它们将只能参与网络的一个小的子集,并且必须仔细甄选每个设备所存储和处理的内容。
4、网络不能仅仅依靠「工作」来维持安全性:网络安全不能单纯基于解决复杂的密码难题,这会使物联网设备难以执行区块链事务。
5、网络需支持去信任的轻节点:目前的物联网设备并不足以支持全节点的 *** 作,但仍需要保持其在区块链网络上的独立性,因此在物联网设备上运行的「轻」节点不能太过天真(即盲目地信任另一个全节点),并且应该具备某种方法能够验证网络状态和状态转换。
6、网络需支持点对点交易:IoT 设备之间的许多事务都是高度本地化的,即设备彼此相邻,不可能每次都去等待全网验证造成的延时。
综上,即便目前区块链与物联网的结合还存在许多局限性,在满足上述关键指标的基础上,就能够设计出最适合物联网设备的区块链网络,从更好地赋能物联网生态。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)