【深度分析】运用非对称加密技术进行去中心化身份验证
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【深度分析】运用非对称加密技术进行去中心化身份验证
文章出自Fr8 Network首席工程师Yevgeniy Spektor
Fr8 Network简介
Fr8 Network希望通过其分布式网络彻底改变物流业。他们旨在为承运人和托运人创建一个点对点的网络,这可能会对商品和服务产生重大影响。因为整个过程将在区块链上公开,从而降低商品价格。
这个系列的文章分为两部分,这篇文章侧重于身份识别和验证,而下一篇文章将讨论智能合约的权限问题。
传统的身份验证和身份识别始终依赖中央服务器,用户必须向其发送密码进行验证。这种中心化的身份验证方法存在一些安全漏洞,最近几年发生过几起重大的恶性事件,导致企业损失数百万美元。
本文中提出的身份验证方案利用非对称加密技术对用户进行身份验证,无需中央服务器,也无需密码或私钥。用户将使用公钥和带有私人密钥签名的随机字符串进行身份验证,而不是使用用户名和密码进行身份验证。
OAuth 2.0和SAML 2.0
身份验证的最大挑战之一,就是用户需要管理和维护大量软件、服务和平台的凭据。而OAuth 2.0或SAML能解决这个问题,让用户可以在多个平台上使用一组凭据来进行识别和验证。但需要注意OAuth 2.0还具有的资源授权的功能,而这一功能很多时候不会常用。
传统验证方案有两个主要缺陷。首先,OAuth 2.0和SAML都需要中央身份验证服务器来验证登录资格和代币访问权限。身份验证依赖于中央实体,这就让应用程序和服务存在了安全风险。如果授权服务器(OAuth)或身份提供商(SAML)因任何原因不可用或者受到破坏,用户将无法登录。例如,假设应用程序A允许用户使用他们的脸书帐户登录,但如果脸书遭到入侵无法使用,应用程序
A的用户将无法登录,而这种情况则完全不受应用程序A团队的控制。应用程序A团队将陷入困境,只能等待脸书的修复。
第二个缺陷是用户名和密码登录的身份验证方法。这导致了严重的安全漏洞,主要是网络诱骗和中间人攻击。简而言之,网络诱骗是指犯人恶意创建一个虚假登录屏幕,这个虚假登陆屏幕与真正的网站登录屏幕别无二致,从而诱使目标用户输入其用户名和密码。为了验证ID提供方或授权服务器,用户必须在登录屏幕中输入其用户名和密码。一旦用户输入了他们的用户名和密码,犯人就会知道密码,掌握其帐户。近年来,网络诱骗变得越来越普遍,越来越复杂。
中间人则更复杂,更难以察觉。“中间人攻击”是攻击者作为中间设备(例如路由器)构成的攻击,它能够拦截网络流量。传统的身份验证技术需要输入用户名和密码。攻击者可以拦截这些数据,然后获得对用户帐户的访问权限。
非对称加密技术简述
在深入讨论身份认证之前,让我们简要回顾一下非对称加密,也称为公开密钥加密。每个用户能够独立地生成一对密钥、公钥和私钥。公钥可以共享,是用户的主要标识符。私钥只应为用户所知,并且必须保密。私钥和公钥是通过数学算法绑定在一起的,并且可以用
于验证消息的真实性和完整性(即发送者和消息内容)。
可以使用用户的私钥对信息进行签名,以生成可以公开共享的数字签名。然后,其他方可以仅使用用户的公钥验证消息发送方和内容。签名过程是一个复杂的加密操作,我们不会在这里深入讨论,但从功能上来说,该过程的工作原理如下:
1. 爱丽丝创建了一条消息。
2. 爱丽丝用她的私钥签名。
3. 爱丽丝将签名的消息发送给鲍勃。
4. 爱丽丝的公钥是众所周知的。鲍勃使用爱丽丝的公钥和她签名的消息通过数学方法验证发送消息的是真正的爱丽丝,并且消息内容未曾被修改过。
要阅读有关签名过程的更多信息,请参阅“以太坊:签名和验证”。
通过非对称加密技术进行身份验证
我们可以通过非对称加密技术,以去中心化的方式实现识别和认证。运用这种方法的身份验证流程如下:
1. 客户使用公钥向应用程序发送身份验证请求。
2. 应用程序回复随机质询消息字符串。
3. 客户使用其私钥对此字符串进行签名。
4. 客户将签名的消息发送到应用程序。
5. 应用程序验证消息签名和内容。
如果签名正确,应用程序接口(API)服务器会向客户回复有效的访问令牌。
优点
与传统的中心化身份验证方案相比,去中心化身份验证方法具有几个关键优势。它的优势主要是:去中心化身份验证不依赖于中心化服务,也无需传输密码或任何需要重复使用的凭据。任何服务或应用程序都能够独立验证签名信息,从而对用户进行身份验证。
因此,这些应用程序的开发人员完全掌控其身份验证服务的运行,而无需依赖他们无法控制的服务方。
如果我们看一看身份验证过程,用户只会传输他们的公钥和签名的消息。用户的私钥不会公开,也无需输入,因为用户能够在私下离
线签署交易。签名的交易凭证是一次性的,不可重复使用。因此,网络诱骗和中间人攻击带来的损失几乎被消除。即便攻击者拦截已签名信息,他们也无法再次使用该签名信息,因为每次身份验证都会生成随机信息。
结论
此处介绍的去中心化身份验证方案让用户可以在多个应用程序使用相同的身份和凭据,而这些应用程序不依赖于中央身份验证服务器或身份提供程序。应用程序的用户管理架构具有更大的灵活性。用户的私钥永远不会被泄露,因此,大多数网络诱骗和中间人攻击都会有所缓解。基于非对称加密技术的去中心化身份验证是一种强大的工具,可应用于身份验证流程设计。尤其是在应用程序必须与区块链交互时,它非常有用。在本系列的第二部分中,我们将讨论如何利用这种身份验证方案和以太坊智能合约,以高效、透明和去中心化的方式处理权限问题。
----
Fr8协议以区块链技术为核心,旨在由内而外实现物流现代化。从根本上来说,这套新的标准、软件工具以及定位准确的激励机制将使整个供应链中的所有利益相关者受益。