本发明属于区块链领域,具体来说涉及一种基于区块链对社区房屋预警信息存证的方法及系统。
背景技术:
就目前来看,社区内相邻房屋间的业主常常因为漏水、噪音污染等事情导致邻里关系激化,而物业、居委会也很难在第一时间及时掌握情况去调节,并且对于如楼上漏水对楼下造成损失的情况,常常产生取证难、理赔难的尴尬局面;当矛盾激化甚至报警了,警察才出动进行调节;而闹到法院,还需要进一步取证,包括受损评估等,十分麻烦。
虽然当前物联网技术发达,很多家庭安装了智能传感器,可以第一时间获得漏水、漏电、燃气泄漏等提醒,但这些提醒由于其可篡改性而并不能直接形成证据被公证,作为理赔的依据。
技术实现要素:
本发明的目的之一在于提供一种基于区块链对社区房屋预警信息存证的方法,以解决背景技术中现有的房屋预警信息因为可篡改性而无法作为理赔依据。
本发明的目的之二在于提供一种基于区块链对社区房屋预警信息存证的系统,以解决背景技术中现有的系统无法防止房屋预警信息被篡改的问题。
为实现上述目的,本发明提供技术内容如下:
一种基于区块链对社区房屋预警信息存证的方法,任一房屋对应设有一传感节点,任一管辖部门对应设有一区块链节点,所述方法包括以下步骤:
步骤1:任一所述传感节点获取对应的房屋预警信息进行签名,将签名和房屋预警信息打包成区块发送到区块链网络;所述房屋预警信息包括若干检测信息、房屋门牌号;
步骤2:所有区块链节点分别验证区块中的签名是否为对应传感节点的签名,若至少2/3的区块链节点验证通过,则将区块加入到区块链中最后一区块之后,否则舍弃;
步骤3:任一区块链节点存储有区块链全账本,任一区块链节点通过区块链更新对应的区块链全账本,对区块链全账本中新加入区块判断房屋预警信息是否异常,若异常,判断该异常是否为当前区块链节点对应的管辖部门所管辖,若是,则通知对应的管辖部门进行处理,否则不做处理。
优选地,所述检测信息包括异常检测数据和异常检测数据的检测时间。
优选地,所述步骤1中,确定其中一区块链节点作为第一区块链节点,所述第一区块链节点接收区块并将区块按照接收的先后进行排序并向其他区块链节点广播,执行步骤2。
优选地,所述步骤3中,通过约定的方式,实现房屋预警信息的自动触发及通知。
优选地,所述方法还包括步骤4,包括以下步骤:
步骤4.1:至少一区块链节点获取对应管辖部门输入的处理结果;将处理结果进行签名,并将处理结果和签名打包成区块发送到区块链网络;
步骤4.2:其他区块链节点验证区块中的签名是否为对应区块链节点的签名,若是,则将区块加入到区块链中最后一区块之后,否则舍弃。
一种基于区块链对社区房屋预警信息存证的系统,包括多个传感节点与多个区块链节点,任一传感节点对应一房屋,一区块链节点对应一管辖部门,任一传感节点与任一区块链节点有线或者无线通信连接;任一所述传感节点包括电源模块、单片机模块、信息传输模块、私钥签名模块及若干传感器,任一所述传感器分别与单片机模块输入端相连,所述单片机模块通过信息传输模块与区块链网络连接,所述私钥签名模块与单片机模块双向连接,所述私钥签名模块用于生成公私钥对和对房屋预警信息签名。
优选地,所述私钥签名模块仅可生成一公私钥对,且私钥签名模块只能读取公钥及对任意字符串进行签名,而不能读取私钥。
优选地,所述信息传输模块为有线网络模块或者无线网络模块;所述有线网络模块包括网络接口和网线;所述无线网络模块为wifi模块、zigbee模块、lora模块、443无线模块或nb-iot模块的一种或多种。
优选地,所述传感器包括噪音传感器、漏水传感器、漏电传感器、燃气传感器。
优选地,所述漏水传感器分别设于房屋顶部和房屋底部。
与现有技术相比,本发明的有益效果为:
本发明采用区块链提高房屋预警信息和有关管理部门之间的联系,形成一个联动的可信存证系统,一旦出现问题,相关管理部门能在第一时间赶到现场,公开透明地进行处理,从而把邻里矛盾消灭在萌芽中,以促进邻里和谐。
附图说明
图1为本发明的流程图。
图2为本发明的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一种基于区块链对社区房屋预警信息存证的系统,所述系统包括多个传感节点与多个区块链节点,一传感节点对应一房屋,一区块链节点对应一管辖部门,任一传感节点与任一区块链节点有线或者无线通信连接;任一所述传感节点包括电源模块、单片机模块、信息传输模块、私钥签名模块及若干传感器,任一所述传感器分别与单片机模块输入端相连,所述单片机模块通过信息传输模块与区块链网络连接,所述私钥签名模块与单片机模块双向连接,所述私钥签名模块用于生成公私钥对和对房屋预警信息签名。
本发明中,任一传感器均自带电源,电源模块为单片机模块供电,私钥签名模块与单片机模块相连,单片机可以给私钥签名模块供电,信息传输模块和单片机相连,因此也无需单独电源;任一传感器用于对房屋进行检测,得到对应的检测信息。
本发明中,所有区块链节点组成一个区块链网络,每个传感节点中的单片机模块每隔一定的时间读取若干个传感器采集的检测数据,将读取的检测数据和门牌号作为房屋预警信息发送给私钥签名模块,所述私钥签名模块以房屋预警信息作为参数输入,通过私钥加密得到签名后返回给单片机模块,单片机模块将房屋预警信息和签名打包成区块,通过信息传输模块发送到区块链网络中;而区块链网络中的所有区块链节点需要对区块进行验证后确定是否将该区块作为合法区块加入到区块链中最后一个区块之后。
本发明通过区块链节点的共识将区块加入到区块链中,防止区块中的房屋预警信息被篡改的同时实现了房屋预警信息的共享和存证,提高处理效率。
所述私钥签名模块仅可生成一公私钥对,且私钥签名模块只能读取公钥及对任意字符串进行签名,而不能读取私钥。
本发明中,通过ecc、ecdsa等非对称加密算法的芯片使得生成的公钥可以被读取,而私钥不能被读取,将任意字符串作为参数输入通过该非对称加密算法后即可得到签名,此为本领域普通技术人员的公知常识。
本发明中,芯片上的非对称加密算法由厂商进行烧录,用户不得随意更改,提高检测信息的可靠性,防止有人更改公私钥对,冒充别的用户。
所述信息传输模块为有线网络模块或无线网络模块;所述有线网络模块包括网络接口和网线;所述无线网络模块为wifi模块、zigbee模块、lora模块、443无线模块或nb-iot模块的一种或多种。
本发明中,传感节点、区块链节点上均设有网络接口,传感节点和区块链节点间可通过网线和网络接口连接通信,形成有线局域网络,传感节点和区块链节点间也可通过无线通信连接;举例来说,传感节点a和区块链节点1可通过网线和网络接口连接通信,形成有线局域网络,传感节点b和区块链节点2可通过wifi模块实现无线通信,传感节点b和区块链节点3可通过网线和网络接口连接通信。此为本领域普通技术人员的公知常识,本领域技术人员可根据实际情况自行设置。
本发明中,单片机模块可同时接入多种无线模块,以确保网络畅通,如传感节点b和区块链节点2间既可通过wifi模块实现无线通信,也可通过nb-iot模块实现无线通信,所述本领域技术人员应该了解到,不同的传感节点和区块链节点间可通过不同的网络模块进行连接,只要满足传感节点可与区块链网络进行通信即可。
所述传感器包括噪音传感器、漏水传感器、漏电传感器、燃气传感器。
本发明中,所述传感器包括但不限于上述传感器,本领域技术人员可以根据实际情况自行设置。
所述漏水传感器分别设于房屋顶部和房屋底部。
本发明中,可在房顶上分别设置10个漏水传感器,在房屋底部设置10个传感器,其中厕所的房顶和地板上分别设置2个,既可多方位监测一户的漏水情况,也可以实现上下楼漏水的联动监测,漏水传感器的数量及分布位置为本领域普通技术人员的常规技术手段,本领域技术人员可根据实际情况自行设置。
一种基于区块链对社区房屋预警信息存证的方法,任一房屋对应设有一传感节点,任一管辖部门对应设有一区块链节点,所述方法包括以下步骤:
步骤1:任一所述传感节点获取对应的房屋预警信息进行签名,将签名和房屋预警信息打包成区块发送到区块链网络;所述房屋预警信息包括若干检测信息、房屋门牌号;
步骤2:所有区块链节点分别验证区块中的签名是否为对应传感节点的签名,若至少2/3的区块链节点验证通过,则将区块加入到区块链中最后一区块之后,否则舍弃;
步骤3:任一区块链节点存储有区块链全账本,任一区块链节点通过区块链更新对应的区块链全账本,对区块链全账本中新加入区块判断房屋预警信息是否异常,若异常,判断该异常是否为当前区块链节点对应的管辖部门所管辖,若是,则通知对应的管辖部门进行处理,否则不做处理。
本发明中,作为所述步骤1的其中一具体实施方式,所述单片机模块的输入端分别与噪音传感器、漏水传感器、漏电传感器、燃气传感器连接,单片机模块按照一定的时间间隔读取至少一传感器的检测信息,并确定检测信息的检测时间;对于同一房屋内的不同传感器,单片机模块读取检测信息的时间间隔不同,可根据房屋预警信息的危险程度设置,越危险的时间间隔越短,如对燃气传感器每隔1分钟或者更短时间读取一次,而对漏水传感器,单片机模块可每隔5分钟读取一次,那么当单片机模块读取漏水传感器的检测信息的同时也需要读取燃气传感器的检测信息,对时间间隔的具体数值为本领域普通技术人员的公知常识,本领域技术人员可根据实际情况自行设置。本发明通过对不同类型的传感器设置不同的读取时间间隔,提高房屋安全性,提高有关管辖部门的处理效率,减少能源耗费。
本发明步骤3中,所述通知所属管辖部门进行处理为发送系统消息通知。
确定其中一区块链节点作为第一区块链节点,所述第一区块链节点接收区块并将区块按照接收的先后进行排序并向其他区块链节点广播,执行步骤2。
本发明中,在所有区块链节点中选择其中一区块链节点作为第一区块链节点,该区块链节点接收所有传感节点发送的区块,并根据接收时间对区块进行排序同时向所有其他区块链节点广播区块,其他区块链节点按照区块的排列顺序执行步骤2,如所有区块链节点先分别验证第一个区块中的签名是否为对应传感节点的签名,判定是将该区块加入到区块链中还是将区块舍弃,然后所有区块链节点再验证第二个区块中的签名是否为对应传感节点的签名。
本发明中,所述步骤1中,打包成区块为将房屋预警信息按照固定的格式和顺序写入,形成格式化列表;如所述格式化列表的第一行写入的是漏水传感器监测得到的是否漏水的判断结果;第二行写入的是噪音传感器检测到的房屋的当前分贝数,第三行写入的是检测信息的检测时间;该格式可以是json、xml或其他格式,字段与值可以由实施人员自定义,具体按照什么固定格式和顺序写入,只要区块链网络能解析即可;此为本领域普通技术人员的公知常识,本领域技术人员可根据实际情况自行设置。
所述检测信息包括异常检测数据和异常检测数据的检测时间。
本发明中,通过选取传感器监测到的异常数据作为检测数据,可大大减小区块链的体积。
作为本发明步骤1的其中一具体实施方式,签名包括以下步骤:单片机模块将房屋预警信息进行哈希运算后得到摘要,并调用私钥签名模块,把摘要作为参数输入得到字符串。
对应地,所述步骤2中,所有区块链节点分别验证区块中的签名是否为对应传感节点的签名具体为:任一区块链节点接收到区块后,会将区块通过格式解析得到签名和房屋预警信息,区块链节点对解析出的原始预警信息进行hash计算得到哈希值,同时对数字签名利用对应传感节点的公钥进行解密,所述对应传感节点的公钥由传感节点向所有区块链节点广播;判断解密得到的结果和哈希值是否一致,若一致,则认为是对应传感节点的签名,且该区块是由对应的传感节点发送的,验证通过,否则不是对应传感节点的签名,验证不通过。当2/3的区块链节点验证通过就认为该区块合法,区块链节点通过共识算法确定其中一区块链节点的记账权,有记账权的区块链节点将该区块加入到本地区块链全账本中最后一区块之后并向全网广播该区块,其他任一区块链接收到消息之后将该区块加入到本地区块链中最后一区块之后,否则认为该区块不合法,不将该区块加入到区块链中。
本发明步骤2.1中,传感节点的公钥在入户安装完毕后即向区块链网络发送公钥,区块链节点接受到公钥后将发送的传感节点和该公钥相关联存储;当区块链节点接收到该传感节点发送的区块后,即调用该传感节点所关联的公钥,将区块中的签名作为参数输入进行解密。
本发明中,若干区块链节点包括但不限于消防部门节点、居委会节点、物业节点、派出所节点、法院节点。
本发明步骤1-3通过同一房屋内的若干传感器将房屋的水、电等数据进行实时监测,并传输给单片机模块,单片机模块将得到的检测信息形成区块加入到区块链,该过程中无需人为干预,实现数据的智能化入链,区块链节点可根据区块链中任一区块中的检测信息对突发事件如漏电、噪音等进行及时处理。
所述步骤3中,通过约定的方式,实现房屋预警信息的自动触发及通知。
本发明步骤3中,通过建立智能合约,实现房屋预警信息的自动触发及通知,就是说可通过智能合约实现区块链节点对异常消息的自动判断,并且能判断该异常消息是否为该区块链节点所对应的管辖部门管辖,若是,可以自动发送系统消息;智能合约是区块链领域中普通开发人员的常识性技能。智能合约就是用代码实现针对某个特定条件而触发相应的动作,而不同技术人员编写代码的风格与变量也都不同,没有统一标准。
所述方法还包括步骤4,包括以下步骤:
步骤4.1:至少一区块链节点获取对应管辖部门输入的处理结果;将处理结果进行签名,并将处理结果和签名打包成区块发送到区块链网络;
步骤4.2:其他区块链节点验证区块中的签名是否为对应区块链节点的签名,若是,则将区块加入到区块链中最后一区块之后,否则舍弃。
本发明中,区块链节点仅可生成一公私钥对,在生成公私钥对时即将公钥向区块链网络中的其他区块链节点广播,由其他区块链节点进行存储。
作为本发明的其中一具体实施方式,所述步骤4具体为:区块链节点通过人机交互方式获得处理结果,将该处理结果用区块链节点的私钥进行加密得到签名,将处理结果和签名打包成区块发送到区块链网络,除该区块链节点外其他每一个区块链节点将处理结果进行哈希计算得到哈希值,将签名利用该区块链节点所对应的公钥进行解密后得到结果,判断结果和哈希值是否一致,若一致,则任一验证通过;当有2/3的区块链节点验证通过时,就认为该区块为合法区块,将该区块加入到区块链中最后一区块之后,否则舍弃;在认定合法区块时,确定区块链节点达成共识的具体比例为本领域普通技术人员的公知常识,可以是4/5的区块链节点验证通过时该区块作为合法区块,本领域技术人员可通过实际情况自行设置。
本发明中,区块链与区块链浏览器相连,居民可通过网络访问区块链浏览器,从而浏览与自己相关的信息。
居民也可以使用居委会的app进行浏览数据,或到居委会查询链上数据、处理进程及结果,以保证只有与自己相关的信息才能被浏览,外人不能浏览自己的隐私数据。
1.一种基于区块链对社区房屋预警信息存证的方法,其特征在于,任一房屋对应设有一传感节点,任一管辖部门对应设有一区块链节点,所述方法包括以下步骤:
步骤1:任一所述传感节点获取对应的房屋预警信息进行签名,将签名和房屋预警信息打包成区块发送到区块链网络;所述房屋预警信息包括若干检测信息、房屋门牌号;
步骤2:所有区块链节点分别验证区块中的签名是否为对应传感节点的签名,若至少2/3的区块链节点验证通过,则将区块加入到区块链中最后一区块之后,否则舍弃;
步骤3:任一区块链节点存储有区块链全账本,任一区块链节点通过区块链更新对应的区块链全账本,对区块链全账本中新加入区块判断房屋预警信息是否异常,若异常,判断该异常是否为当前区块链节点对应的管辖部门所管辖,若是,则通知对应的管辖部门进行处理,否则不做处理。
2.如权利要求1所述的一种基于区块链构建社区房屋预警信息共识的方法,其特征在于,所述检测信息包括异常检测数据和异常检测数据的检测时间。
3.如权利要求1所述的一种基于区块链构建社区房屋预警信息共识的方法,其特征在于,所述步骤1中,确定其中一区块链节点作为第一区块链节点,所述第一区块链节点接收区块并将区块按照接收的先后进行排序并向其他区块链节点广播,执行步骤2。
4.如权利要求1所述的一种基于区块链进行社区房屋预警的方法,其特征在于,所述步骤3中,通过约定的方式,实现房屋预警信息的自动触发及通知。
5.如权利要求1所述的一种基于区块链进行社区房屋预警的方法,其特征在于,所述方法还包括步骤4,包括以下步骤:
步骤4.1:至少一区块链节点获取对应管辖部门输入的处理结果;将处理结果进行签名,并将处理结果和签名打包成区块发送到区块链网络;
步骤4.2:其他区块链节点验证区块中的签名是否为对应区块链节点的签名,若是,则将区块加入到区块链中最后一区块之后,否则舍弃。
6.一种基于区块链对社区房屋预警信息存证的系统,其特征在于,包括多个传感节点与多个区块链节点,任一传感节点对应一房屋,一区块链节点对应一管辖部门,任一传感节点与任一区块链节点有线或者无线通信连接;任一所述传感节点包括电源模块、单片机模块、信息传输模块、私钥签名模块及若干传感器,任一所述传感器分别与单片机模块输入端相连,所述单片机模块通过信息传输模块与区块链网络连接,所述私钥签名模块与单片机模块双向连接,所述私钥签名模块用于生成公私钥对和对房屋预警信息签名。
7.如权利要求6所述的一种基于区块链对社区房屋预警信息存证的系统,其特征在于,所述私钥签名模块仅可生成一公私钥对,且私钥签名模块只能读取公钥及对任意字符串进行签名,而不能读取私钥。
8.如权利要求6所述的一种基于区块链对社区房屋预警信息存证的系统,其特征在于,所述信息传输模块为有线网络模块或者无线网络模块;所述有线网络模块包括网络接口和网线;所述无线网络模块为wifi模块、zigbee模块、lora模块、443无线模块或nb-iot模块的一种或多种。
9.如权利要求6所述的一种基于区块链对社区房屋预警信息存证的系统,其特征在于,所述传感器包括噪音传感器、漏水传感器、漏电传感器、燃气传感器。
10.如权利要求9所述的一种基于区块链对社区房屋预警信息存证的系统,其特征在于,所述漏水传感器分别设于房屋顶部和房屋底部。
技术总结