本篇我们讲解一篇论文“Distributed Blockchain-Based Authentication and Authorization Protocol for Smart Grid”
翻译成中文是:基于区块链的智能电网分布式认证与授权协议
我们将通过六个部分讲解这篇论文,包含介绍,贡献,实验,结论等;并对这篇论文的实验进行了初步的复现。

1.Introduction

Smart Grid 智能电网:传统的电网目前正沿着成为电力信息和通信网络的方向发展。


智能电网的特点:1.供应商和用户可以实时动态调整电力传输;
2.实现自我修复和自我恢复能力;
3.提高可持续性和效率。

Authentication 认证:实际就是一个登录和注册的过程

Authorization 授权:授予某种访问或操作权限:

            确定用户授权成功后允许执行哪些操作和功能
            一种建立对资源的访问的方法,例如功率、计算能力或网络带宽。授权协议还可以处理用户在系统或网络上的权限,包括一个特定的用户是否完全可以访问该系统。
流程:
可以通过在电力信息管理系统中提供正确的用户名/-密码来验证电力用户的身份。
一旦用户经过身份验证,电力服务提供商定义了用户权限的访问策略,是否可以进一步授权他们执行各种功能

区块链的类型:根据访问机制分为

公有链:BTC、ETH 
私有链:以太坊私链
联盟链:FISCO BCOS,Hyperledger Fabric

我们使用的平台:FISCO BCOS(type:联盟链)

相关链接:https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/installation.html

2.Motivation

电网中出现的问题:
(1)中心化监督成本高
(2)信任问题
(3)信息安全问题

3.Contributions

(1)提出了一种基于区块链的分布式认证和授权协议
(2)第一个使用联盟区块链技术构建的A&A协议
(3)通过算法来维护和记录智能合同,演示了一种使用FISCO平台实际部署我们的A&A协议的方法

4.Procedure

A1分布式认证:登录和注册

A2分布式授权:资源注册和授权

5.Experiment

其中我们选择Fisco Bcos作为我们运行的平台,已有开发完善的JDK 接口,因此开发方便
源程序包括协议运行的由java编写的app以及实验程序

运行程序需首先部署Fisco链,运行节点。git下载项目源代码之后,用gradle build,
进入项目dist目录中,使用java -cp运行,具体请到github主页查看!

实验结果:

A1:



A2:


6.Conclusion

(1)协议安全可靠
(2)部署和实验证明协议的效率高
(3)未来方向:将区块链技术用于智能电网的数据统计与资源计算;
对于分布式授权功能,加入角色访问控制
对于数据加密协议,引入同态加密等方法

程序源代码链接:https://github.com/humuchuang/AAGridhttps://gitee.com/kitescat/AAGrid

结尾

如有任何问题可发邮件联系我
联系方式:kitescat@foxmail.com
欢迎关注我的个人公众号:打代码的猫