Inspiration

访问控制是安全中非常重要的部分. 在现代的许多机构内部, 或者跨机构的合作中, 往往都需要实现非常复杂的访问控制策略, 传统的访问控制模型已经无法提供足够的灵活性. 而较为灵活的访问控制, 比如基于属性的访问控制, 虽然能解决问题, 但是需要在部门间进行业务逻辑非常复杂的信息交换. 在传统的模式下, 各个部门拥有自己的单点服务器相互通信,进行此类操作时, 难以保证正确性, 实时性, 且易受攻击和篡改.而使用集中式服务器会带来成本的增加,并且有服务完全宕机的风险. 使用 _ IBM blockchain _ 技术, 我们可以非常方便而自然地将许多业务放在区块链上, 使用智能合约正确, 高效, 可信地执行, 在现有设施上实现高安全性高可用性的访问控制系统.

What it does

为了解决传统跨部门信息验证的问题,我们采用区块链技术,当一个访问验证请求发出,由各部门组成的联盟链来对其确认,而区块链的不可篡改特性可以有效防止未授权的访问.因为采取 _ 拜占庭容忍 _ 算法,此时,单点攻击是无法篡改系统的.

How we built it

我们利用IBM的开源 _ 区块链 _ 技术, 在链上维护了一个关系型数据库用以存放共享信息, 该数据库对所有部门可见, 各部门可以对自己管辖的信息进行修改, 同时通过IBM Blockchain提供的member service服务, 可以保证各部门无法篡改其它部门的信息. 所有的访问控制逻辑均由chaincode通过调取链上数据来进行评估, 可以保证鉴权的正确, 快速, 公开, 由其是当访问控制策略设计到多个部门的信息时, 相比传统的架构优势更为明显.

Accomplishments that we're proud of

  • 使用基于属性的访问控制,使权限管理更加灵活, 并且保证结果正确, 过程公开高效
  • 更少的软硬件成本和更佳的安全性
  • 更灵活的验证方式,每个验证方式都可以映射到同一个uuid,便于多因验证的的实现

What we learned

  • 学习并初步掌握了如何开发chaincode
  • 学习并了解如何迅速部署大规模网络应用

What's next for Blockchain Based Access Control

使该访问控制系统更具通用性,可以适应大集群或较小的分工群组的特点.

Built With

Share this project:
×

Updates