摘要:

物联网设备能力有限且数量多,因此当前的传统物联网平台可能无法在可扩展性、可靠性和实时响应方面有效地处理访问控制。本文提出了一种基于区块链、雾节点和物的角色的分散式物联网访问控制系统,利用以太坊智能合约实现安全的设备到设备访问。物联网设备、终端用户和雾节点由管理员添加或删除。在管理员在传感器设备、致动器设备和雾节点之间添加映射关系之后,创建访问控制策略。访问控制策略由事物的角色指定。事物角色(RoT)包含设备的元信息:ID、所有权、位置、设备类型、访问令牌等。它指定了特定事件发生时设备的动作。它还包含描述传感器设备、致动器设备和fog节点之间的映射关系的访问令牌。因此,不同的设备可以根据它们的RoT来响应各种事件,并且在没有中央服务器的情况下自主地相互交互。所有操作都通过区块链智能合同进行;因此,可以可靠地实施访问控制策略。

贡献:

  • 分布式物联网设备访问控制框架基于区块链和边缘计算,允许物联网设备在没有中央服务器协调的情况下进行交互。
  • 识别物联网设备的物联网角色(RoT)配置文件。它还规定了物联网设备在不同情况下的操作及其访问控制策略。
  • 在设备和雾节点之间建立映射关系的访问控制方案。

元素:设备管理员、最终用户、物联网设备、雾节点、云服务器

每个元素都有一个以太坊地址

以太坊节点:Fog Node,Cloud

物联网设备通过关联的fog节点链接到智能合约,管理员和用户通过前端应用程序或特殊电子钱包连接到智能合约

元素功能:

管理员:有两种类型的管理员:超级管理员或所有者和访问受限的助理管理员。超级管理员(所有者)负责创建智能合约,添加或删除设备、外部用户(客户)和系统的雾节点,添加其他人为助理管理员,以及为设备创建事物角色。

用户:是由管理员授权访问特定数据或物联网设备的任何个人或客户。

智能合约:用于创建所有已注册的物联网执行器设备到所有物联网传感器设备的映射。在智能合约的帮助下,我们可以以去中心化的方式有效地管理物联网设备交互。

雾节点:与云服务器相比,雾节点在物理上更靠近物联网设备,提供快速连接。因此,雾节点提高了物联网设备的连接速度、计算能力和可靠性。

云:云服务器可以存储必要的排序和分析所需的物联网数据。

链上+链下

事物角色放在链下

实现:

智能合约内容:变量、结构和修饰符,b) 将设备添加到雾节点和传感器映射,c) 删除设备映射,以及 d) 访问令牌创建。

初始管理员创建合约,数组存放管理员

struct:token,device

两个映射函数:传感器设备映射到可交互设备addSensorDeviceMapping;设备映射雾节点

删除映射函数:delSensor,delFog

创建访问令牌:requestTokenCreation

 

Blockchain-enabled Access Control with Fog Nodes for Independent IoTs的更多相关文章

  1. 转:Oracle R12 多组织访问的控制 - MOAC(Multi-Org Access Control)

    什么是MOAC MOAC(Multi-Org Access Control)为多组织访问控制,是Oracle EBS R12的重要新功能,它可以实现在一个Responsibility下对多个Opera ...

  2. Oracle Applications Multiple Organizations Access Control for Custom Code

    档 ID 420787.1 White Paper Oracle Applications Multiple Organizations Access Control for Custom Code ...

  3. Oracle R12 多组织访问的控制 - MOAC(Multi-Org Access Control)

    什么是MOAC MOAC(Multi-Org Access Control)为多组织访问控制,是Oracle EBS R12的重要新功能,它可以实现在一个Responsibility下对多个Opera ...

  4. 开源网络准入系统(open source Network Access Control system)

    开源网络准入系统(open source Network Access Control system) http://blog.csdn.net/achejq/article/details/5108 ...

  5. Browser security standards via access control

    A computing system is operable to contain a security module within an operating system. This securit ...

  6. A GUIDE TO UNDERSTANDINGDISCRETIONARY ACCESS CONTROL INTRUSTED SYSTEMS

    1. INTRODUCTION   The main goal of the National Computer Security Center is to encourage the widespr ...

  7. Access control differentiation in trusted computer system

    A trusted computer system that offers Linux® compatibility and supports contemporary hardware speeds ...

  8. Enabling granular discretionary access control for data stored in a cloud computing environment

    Enabling discretionary data access control in a cloud computing environment can begin with the obtai ...

  9. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' heade

    XMLHttpRequest cannot load http://10.164.153.37:8050/WebService/WebService.asmx/wsGetStreetData. Res ...

  10. Windows Azure Virtual Network (10) 使用Azure Access Control List(ACL)设置客户端访问权限

    <Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的China Azure. 我们在创建完Windows Azure Virtual Machi ...

随机推荐

  1. KEIL5、STM32CubeMX、STM32CubeIDE 下载、安装

    一.资源下载 Keil5下载链接: https://www.keil.com/download/product/ STM32 标准库芯片包下载链接: https://www.keil.com/dd2/ ...

  2. 深度复盘-重启 etcd 引发的异常

    作者信息: 唐聪.王超凡,腾讯云原生产品中心技术专家,负责腾讯云大规模 TKE 集群和 etcd 控制面稳定性.性能和成本优化工作. 王子勇,腾讯云专家级工程师, 腾讯云计算产品技术服务专家团队负责人 ...

  3. 浅谈Python中的with,可能有你不知道的

    Python中的with,没那么简单,虽然也不难 https://docs.python.org/zh-cn/3.9/reference/compound_stmts.html#the-with-st ...

  4. 花了半个小时基于 ChatGPT 搭建了一个微信机器人

    相信大家最近被 ChatGPT 刷屏了,其实在差不多一个月前就火过一次,不会那会好像只在程序员的圈子里面火起来了,并没有被大众认知到,不知道最近是因为什么又火起来了,而且这次搞的人尽皆知. 想着这么火 ...

  5. day14-异常处理

    异常处理 1.基本介绍 SpringMVC 通过 HandlerExceptionResolver 处理程序的异常,包括 Handler映射.数据绑定以及目标方法执行时发生的异常 有两种方案来进行异常 ...

  6. vue2安装sass 预编译

    步骤一: 安装node-sass.sass-loader.style-loader npm i node-sass sass-loader style-loader --save-dev 步骤二: 打 ...

  7. JZOJ 1389. 玩诈欺的小杉

    思路 考虑一个点要不要翻,如果它左边的点为 \(1\),那么它必须翻 所以我们可以从左往右一列一列地翻 先枚举第 \(0\) 列的状态 然后之后的列就确定了 判断一下最后一列是不是 \(0\) 就行了 ...

  8. 安卓ro.serialno产生的整个流程

    前言: 关于ro.serialno这个属性,相信大家都不陌生了,应用层的Build.getSerial(),Build.SERIAL等均是直接或间接的获取了这个属性值.接下来从boot到系统应用,小小 ...

  9. 空间数据库中ST_开头的来由

    1. 引言 在使用空间数据库(如,PostGIS)时,我们经常使用的空间函数(如,ST_Distance(geometry, geometry).ST_Area(geometry)等)都是以ST_开头 ...

  10. Git与GitHub的快速使用

    Git的快速使用 1. Git简介 Git最初是Linus花了两周时间自己用C写了一个分布式版本控制系统 特点: 分布式,每一个主机都有完整版本库 开源免费性能好 注:类似GitHub这种中心环境的存 ...