首页> 中国专利> 一种基于区块链的生成房屋历史记录的方法

一种基于区块链的生成房屋历史记录的方法

摘要

本发明涉及房地产领域,公开了一种基于区块链的生成房屋历史记录的方法,具体首先填入信息,区块链进行运作,再生成房屋的第一块数据,验证第一块数据的合法性,再将第一块数据储存于整个区块链中;在房屋状态有变化时,例如进行数据更新或者进行所有权人的变更,先从整个区块链中获取上一块的数据,再填入修改内容或变更内容,区块链进行运作,生成当前块数据,验证当前块数据签名的有效性和修改内容或变更内容的完整性,再将当前块数据储存于整个区块链中。本发明形成了统一的房屋历史记录,并且公开后的信息不可篡改,确保了房屋信息的准确性和不可篡改性。

著录项

  • 公开/公告号CN107506661A

    专利类型发明专利

  • 公开/公告日2017-12-22

    原文格式PDF

  • 申请/专利权人 河南真二互联网科技有限公司;

    申请/专利号CN201710696827.4

  • 发明设计人 李征;

    申请日2017-08-15

  • 分类号G06F21/62(20130101);G06F17/30(20060101);G06Q50/16(20120101);

  • 代理机构51230 成都弘毅天承知识产权代理有限公司;

  • 代理人徐金琼;刘东

  • 地址 450000 河南省郑州市高新技术产业开发区翠竹街6号863软件园11号楼10层1009号

  • 入库时间 2023-06-19 04:06:43

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-04-24

    授权

    授权

  • 2018-01-19

    实质审查的生效 IPC(主分类):G06F21/62 申请日:20170815

    实质审查的生效

  • 2017-12-22

    公开

    公开

说明书

技术领域

本方案涉及房地产领域,具体涉及一种基于区块链的生成房屋历史记录的方法。

背景技术

区块链本质上是一个去中心化的分布式数据库,它无需中心化代理,实现了一种点对点的直接交互,使得高效率、大规模、无中心化代理的信息交互方式成为了现实。同时区块链采用密码学的方法来保证已有数据不可能被篡改,在区块链上记录的每一块数据,都保持真实可靠,同时公开透明,能够被其他人查看(但交易者个人或机构可以是匿名的),所以就形成了一种不需要对陌生交易对手了解和信任,只需看到区块链上交易对手的信息、资产等本身是可信的,就可以放心地交易。这里不需要任何信任中介。

因为区块链具有可大规模扩展、数据公开透明、以及因为每个客户端数据一致,即使部分客户端被毁也不影响数据安全的可靠性等技术特点,特别是能有效解决陌生人间的信任问题,所以这个技术可推广到所有可以数字化的领域,比如数字货币、支付清算、数字票据、权益证明、征信、政务服务、医疗记录等。

在现有的房屋交易系统中,没有统一记录房屋的建造、翻修、出租以及买卖历史,房屋产权不明晰,这样就会出现业主一房二卖或者租借已损坏房屋,使得房屋购买者或租借者上当受骗。

发明内容

本发明的目的在于:形成统一的房屋历史记录,并且公开后的信息不可篡改,确保房屋信息的准确性和不可篡改性,提供一种基于区块链的生成房屋历史记录的方法。

本发明采用的技术方案如下:

一种基于区块链的生成房屋历史记录的方法,包括以下几个步骤:

步骤1:填入房屋的信息,区块链对信息进行处理,再生成房屋的第一块数据,验证第一块数据的合法性,再将第一块数据储存于整个区块链中;

步骤2:若房屋状态有变化,判断状态变化的具体情况,若房屋进行所有权人变更,则进入步骤4;否则进入步骤3;

步骤3:从整个区块链中获取第M-1块数据,其中,第M-1块数据指上一块进行验证过的数据;再填入修改信息,区块链对修改信息进行处理,生成第M块数据,验证第M块数据签名的有效性和修改内容的完整性,再将第M块数据储存于整个区块链中;

步骤4:从整个区块链中获取第N-1块数据,其中,第N-1块数据指上一块进行验证过的数据,再填入所有权人B的信息,区块链对所有权人B的信息进行处理,所有权人A变更为所有权人B,得到第N块数据,验证第N块数据,验证通过后再将第N块数据储存于整个区块链中。

具体地,所述步骤1具体包括以下几个步骤:

步骤1.1:填入房屋的信息,包括房屋初始信息、机构A公钥和所有权人A公钥;

其中,房屋初始信息包括房屋数据、房屋唯一标识符、房屋坐落、房屋结构和房屋用途;机构A公钥是对外公布且可验证的;

步骤1.2:将信息共同计算生成哈希值,即HASH[1],再用机构A私钥对HASH[1]进行签名,得到机构A签名SIGNATURE[1],将信息、HASH[1]和机构A签名SIGNATURE[1]形成房屋的第一块数据,再将第一块数据储存于整个区块链中;

步骤1.3:然后对房屋的第一块数据进行验证,验证房屋的第一块数据是否有效,若有效,则房屋的第一块数据具有完整有效性和合法性;

具体地,所述步骤3具体包括以下几个步骤:

步骤3.1:从整个区块链中获取第M-1块数据,其中,第M-1块数据指上一块进行验证过的数据;填入修改信息,将修改信息计算生成SUB_HASH[m],再用机构A私钥对SUB_HASH[m]进行签名,得到机构A签名SUB_SIGNATURE[m],修改信息、SUB_HASH[m]和机构A签名SUB_SIGNATURE[m]共同组成修改内容;

步骤3.2:修改内容、所有权人公钥和第M-1块数据共同计算生成HASH[m],再用所有权人A私钥对HASH[m]进行签名,得到所有权人A签名SIGNATURE[m],修改内容、所有权人公钥、第M-1块数据、HASH[m]和所有权人A签名SIGNATURE[m]共同组成第M块数据;

步骤3.3:对第M块数据进行验证,验证通过后将其储存于整个区块链中;

具体地,所述步骤4具体包括以下几个步骤:

步骤4.1:从整个区块链中获取第N-1块数据,其中,第N-1块数据指上一块进行验证过的数据;验证第N-1块数据的合法性,确认第N-1块数据合法;

步骤4.2:填入变更信息,将变更信息和所有权人A私钥共同计算生成HASH[n],再用所有权人私钥对HASH[n]进行签名,得到所有权人A的签名SIGNATURE[n],将变更信息、HASH[n]和所有权人A签名SIGNATURE[n]形成第N块数据;

其中,变更信息包括变更详情和所有权人B公钥;

步骤4.3:对第N块数据进行验证,验证通过后将其储存于整个区块链中。

进一步,步骤1的验证过程包括以下几个步骤:

步骤1.3.1:对房屋的第一块数据开始验证,先验证填入的信息;

步骤1.3.2:用第一块数据中的机构A公钥解密机构A签名SIGNATURE[1],得到明文plaintext[1],再验证明文plaintext[1]与第一块数据中的HASH[1]是否一致,若一致,则签名有效,进入下一步;否则签名无效,标记信息为不可信任的,流程停止;

步骤1.3.3:计算步骤1中信息的哈希值,得到HASH[1];验证HASH[1]与数据中的HASH[1]是否一致,若一致,则填入的信息未被篡改,进入下一步,否则信息已被篡改,标记信息为不可信任的,流程停止;

步骤1.3.4:从可信源获取发布机构A的公钥,验证机构A的公钥与信息中声称的机构A的公钥是否一致,若一致,表示信息是机构A发布的,进入下一步;否则表示信息已被篡改,标记信息为不可信任的,流程停止;

步骤1.3.5:第一块数据完整有效,验证过程完成。

进一步,步骤3的验证过程包括以下几个步骤:

步骤3.3.1:从整个区块链获取第M-1块数据,其中,第M-1块数据指上一块进行验证过的数据,验证第M-1块数据是否完整有效,若有效,进入下一步,若无效则表示第M块数据也一定无效,流程停止;

步骤3.3.2:获取第M-1块数据中的所有权人A公钥,用所有权人A公钥解密所有权A人签名SIGNATUR[m],得到明文plaintext[m],验证plaintext[m]与第M块数据中的HASH[m]是否一致,若一致,则签名有效,进入下一步;否则签名无效,标记信息为不可信任的,流程停止;

步骤3.3.3:将第M-1块数据的完整内容与第M块数据的信息一起计算出哈希值,得到info_hash[m],验证info_hash[m]与第M块数据中的HASH[m]是否一致,若一致,则信息未被篡改,第M块数据的签名有效,进入下一步;否则信息已被篡改,标记信息为不可信任的,流程停止;

步骤3.3.4:填入修改信息,包括机构A公钥和修改内容,用第M块数据中的机构A公钥解密机构A签名SUB_SIGNATURE[m],得到明文sub_plaintext[m],验证sub_plaintext[m]与第M块数据中的SUB_HASH[n]是否一致,若一致,则签名有效,进入下一步;否则签名无效,标记信息为不可信任的,流程停止;

步骤3.3.5:计算修改信息的哈希值,得到sub_info_hash[m],验证sub_info_hash[m]与第M块数据中的SUB_HASH[n]是否一致,若一致,则表示信息未被篡改,进入下一步;否则信息已被篡改,标记信息为不可信任的,流程停止;

步骤3.3.6:从可信源获取发布机构A的公钥,验证机构A的公钥与信息中声称的机构A的公钥是否一致,若一致,则表示信息是机构A修改的,进入下一步;否则表示信息不是机构A修改的,已被篡改,标记信息为不可信任的,流程停止;

步骤3.3.7:第M块数据内容具有完整性。

进一步,所述步骤4的验证过程包括以下几个步骤:

步骤4.3.1:从整个区块链获取第N-1块数据,其中,第N-1块数据指上一块进行验证过的数据,验证第N-1块数据是否完整有效,若有效,则进入下一步;否则说明第N块数据也一定无效,标记信息为不可信任的,流程停止;

步骤4.3.2:对第N块数据进行验证,首先获取第N-1块数据中的所有权人A公钥,用所有权人A公钥解密所有权人签名,得到明文S[t],验证S[t]与数据中的HASH[n]是否一致,若一致,则签名有效,进入下一步,否则签名无效,标记信息为不可信任的,流程停止;

步骤4.3.3:将上一块数据的完整内容与当前块数据的信息一起计算出哈希值,得到HASH[t],验证HASH[t]与数据中的HASH[n]是否一致,若一致,则表明信息没有被篡改,进入下一步,否则信息也被篡改,标记信息为不可信任的,流程停止;

步骤4.3.4:当前块数据中的所有权人B公钥标记了新的所有权人B,所有权人变更完成,将第N块数据储存于整个区块链。

具体的,区块链的运作流程包括以下几个步骤:

步骤I:当一次新的修改产生时,会先被广播到区块链网络中的其他节点;

步骤II:每个节点会将未验证的修改的哈希值收集到区块中,每个区块可能包含1次或多次修改;

步骤III:各个节点都进行验证修改的合法性,由最先完成验证的节点来发布结果;

步骤IV:最先完成的节点即取得验证权的节点将自己的区块广播给其他所有节点;

步骤V:各个节点验证并链接新的区块,其他节点验证区块中包含的修改是否有效,确认有效后,才将此区块放入区块链;

步骤VI:所有节点一旦接受新的区块,当前还未验证完的区块就为无效,修改验证完成,各个节点创建一个新区块等待进行下一回的验证计算。

进一步,所述步骤1-3分为生成数据块的过程和验证过程,所述验证过程与生成数据块的过程共同进行或验证过程单独进行。

综上所述,由于采用了上述技术方案,本发明的有益效果是:

1.本发明因为有验证过程,在使用区块链中的数据时,验证通过的数据都是可信任的,在传输过程中具有不可篡改性,不会因为传输错误或恶意伪造而在此基础上进行错误的流程;

2.本发明采用区块链,用户可以随时查询公开的房屋历史信息,较为便捷,也不会泄露房屋所有权人的个人信息,具有公开性的同时也具有保密性,可以储存大量数据,而不易出错;

3.本发明的验证过程可以及时制止错误或伪造的流程进行,可以避免因传输过程出错或人为伪造而导致的数据错误,而不会因为错误的数据传输导致整个数据库都错误;

4.本发明可以明确房屋的所有权人,可以有效防止业主进行诈骗的行为,防止用户上当受骗;

5.本发明形成了房屋管理的统一记录,能够即时查询房屋状态,辨别是否可以交易。

附图说明

本发明将通过例子并参照附图的方式说明,其中:

图1是房屋的第一块数据生成流程图;

图2是房屋的第一块数据验证流程图;

图3是第三方机构修改记录的流程图;

图4是修改记录过程中验证数据的合法性的流程图;

图5是修改记录过程中验证修改内容的完整性的流程图;

图6是所有权人变更的流程图;

图7是变更过程中的验证流程图。

具体实施方式

本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。

下面结合附图对本发明作详细说明。

一种基于区块链的生成房屋历史记录的方法,包括以下几个步骤:

步骤1:填入房屋的信息,区块链对信息进行处理,再生成房屋的第一块数据,验证第一块数据的合法性,再将第一块数据储存于整个区块链中;

步骤2:若房屋状态有变化,判断状态变化的具体情况,若房屋进行所有权人变更,则进入步骤4;否则进入步骤3;

步骤3:从整个区块链中获取第M-1块数据,其中,第M-1块数据指上一块进行验证过的数据;再填入修改信息,区块链对修改信息进行处理,生成第M块数据,验证第M块数据签名的有效性和修改内容的完整性,再将第M块数据储存于整个区块链中;

步骤4:从整个区块链中获取第N-1块数据,其中,第N-1块数据指上一块进行验证过的数据,再填入所有权人B的信息,区块链对所有权人B的信息进行处理,所有权人A变更为所有权人B,得到第N块数据,验证第N块数据,验证通过后再将第N块数据储存于整个区块链中。

具体地,如图1所示,所述步骤1具体包括以下几个步骤:

步骤1.1:填入房屋的信息,包括房屋初始信息、机构A公钥和所有权人A公钥;

其中,房屋初始信息包括房屋数据、房屋唯一标识符、房屋坐落、房屋结构和房屋用途;机构A公钥是对外公布且可验证的;

步骤1.2:将信息共同计算生成哈希值,即HASH[1],再用机构A私钥对HASH[1]进行签名,得到机构A签名SIGNATURE[1],将信息、HASH[1]和机构A签名SIGNATURE[1]形成房屋的第一块数据,再将第一块数据储存于整个区块链中;

步骤1.3:然后对房屋的第一块数据进行验证,验证房屋的第一块数据是否有效,若有效,则房屋的第一块数据具有完整有效性和合法性;

具体地,如图3所示,所述步骤3具体包括以下几个步骤:

步骤3.1:从整个区块链中获取第M-1块数据,其中,第M-1块数据指上一块进行验证过的数据;填入修改信息,将修改信息计算生成SUB_HASH[m],再用机构A私钥对SUB_HASH[m]进行签名,得到机构A签名SUB_SIGNATURE[m],修改信息、SUB_HASH[m]和机构A签名SUB_SIGNATURE[m]共同组成修改内容;

步骤3.2:修改内容、所有权人公钥和第M-1块数据共同计算生成HASH[m],再用所有权人A私钥对HASH[m]进行签名,得到所有权人A签名SIGNATURE[m],修改内容、所有权人公钥、第M-1块数据、HASH[m]和所有权人A签名SIGNATURE[m]共同组成第M块数据;

步骤3.3:对第M块数据进行验证,验证通过后将其储存于整个区块链中;

具体地,如图6所示,所述步骤4具体包括以下几个步骤:

步骤4.1:从整个区块链中获取第N-1块数据,其中,第N-1块数据指上一块进行验证过的数据;验证第N-1块数据的合法性,确认第N-1块数据合法;

步骤4.2:填入变更信息,将变更信息和所有权人A私钥共同计算生成HASH[n],再用所有权人私钥对HASH[n]进行签名,得到所有权人A的签名SIGNATURE[n],将变更信息、HASH[n]和所有权人A签名SIGNATURE[n]形成第N块数据;

其中,变更信息包括变更详情和所有权人B公钥;

步骤4.3:对第N块数据进行验证,验证通过后将其储存于整个区块链中。

进一步,如图2所示,步骤1的验证过程包括以下几个步骤:

步骤1.3.1:对房屋的第一块数据开始验证,先验证填入的信息;

步骤1.3.2:用第一块数据中的机构A公钥解密机构A签名SIGNATURE[1],得到明文plaintext[1],再验证明文plaintext[1]与第一块数据中的HASH[1]是否一致,若一致,则签名有效,进入下一步;否则签名无效,标记信息为不可信任的,流程停止;

步骤1.3.3:计算步骤1中信息的哈希值,得到HASH[1];验证HASH[1]与数据中的HASH[1]是否一致,若一致,则填入的信息未被篡改,进入下一步,否则信息已被篡改,标记信息为不可信任的,流程停止;

步骤1.3.4:从可信源获取发布机构A的公钥,验证机构A的公钥与信息中声称的机构A的公钥是否一致,若一致,表示信息是机构A发布的,进入下一步;否则表示信息已被篡改,标记信息为不可信任的,流程停止;

步骤1.3.5:第一块数据完整有效,验证过程完成。

进一步,如图4、图5所示,步骤3的验证过程包括以下几个步骤:

步骤3.3.1:从整个区块链获取第M-1块数据,其中,第M-1块数据指上一块进行验证过的数据,验证第M-1块数据是否完整有效,若有效,进入下一步,若无效则表示第M块数据也一定无效,流程停止;

步骤3.3.2:获取第M-1块数据中的所有权人A公钥,用所有权人A公钥解密所有权A人签名SIGNATUR[m],得到明文plaintext[m],验证plaintext[m]与第M块数据中的HASH[m]是否一致,若一致,则签名有效,进入下一步;否则签名无效,标记信息为不可信任的,流程停止;

步骤3.3.3:将第M-1块数据的完整内容与第M块数据的信息一起计算出哈希值,得到info_hash[m],验证info_hash[m]与第M块数据中的HASH[m]是否一致,若一致,则信息未被篡改,第M块数据的签名有效,进入下一步;否则信息已被篡改,标记信息为不可信任的,流程停止;

步骤3.3.4:填入修改信息,包括机构A公钥和修改内容,用第M块数据中的机构A公钥解密机构A签名SUB_SIGNATURE[m],得到明文sub_plaintext[m],验证sub_plaintext[m]与第M块数据中的SUB_HASH[n]是否一致,若一致,则签名有效,进入下一步;否则签名无效,标记信息为不可信任的,流程停止;

步骤3.3.5:计算修改信息的哈希值,得到sub_info_hash[m],验证sub_info_hash[m]与第M块数据中的SUB_HASH[n]是否一致,若一致,则表示信息未被篡改,进入下一步;否则信息已被篡改,标记信息为不可信任的,流程停止;

步骤3.3.6:从可信源获取发布机构A的公钥,验证机构A的公钥与信息中声称的机构A的公钥是否一致,若一致,则表示信息是机构A修改的,进入下一步;否则表示信息不是机构A修改的,已被篡改,标记信息为不可信任的,流程停止;

步骤3.3.7:第M块数据内容具有完整性。

进一步,如图7所示,所述步骤4的验证过程包括以下几个步骤:

步骤4.3.1:从整个区块链获取第N-1块数据,其中,第N-1块数据指上一块进行验证过的数据,验证第N-1块数据是否完整有效,若有效,则进入下一步;否则说明第N块数据也一定无效,标记信息为不可信任的,流程停止;

步骤4.3.2:对第N块数据进行验证,首先获取第N-1块数据中的所有权人A公钥,用所有权人A公钥解密所有权人签名,得到明文S[t],验证S[t]与数据中的HASH[n]是否一致,若一致,则签名有效,进入下一步,否则签名无效,标记信息为不可信任的,流程停止;

步骤4.3.3:将上一块数据的完整内容与当前块数据的信息一起计算出哈希值,得到HASH[t],验证HASH[t]与数据中的HASH[n]是否一致,若一致,则表明信息没有被篡改,进入下一步,否则信息也被篡改,标记信息为不可信任的,流程停止;

步骤4.3.4:当前块数据中的所有权人B公钥标记了新的所有权人B,所有权人变更完成,将第N块数据储存于整个区块链。

具体的,区块链的运作流程包括以下几个步骤:

步骤I:当一次新的修改产生时,会先被广播到区块链网络中的其他节点;

步骤II:每个节点会将未验证的修改的哈希值收集到区块中,每个区块可能包含1次或多次修改;

步骤III:各个节点都进行验证修改的合法性,由最先完成验证的节点来发布结果;

步骤IV:最先完成的节点即取得验证权的节点将自己的区块广播给其他所有节点;

步骤V:各个节点验证并链接新的区块,其他节点验证区块中包含的修改是否有效,确认有效后,才将此区块放入区块链;

步骤VI:所有节点一旦接受新的区块,当前还未验证完的区块就为无效,修改验证完成,各个节点创建一个新区块等待进行下一回的验证计算。

进一步,所述步骤1、步骤3和步骤4均分为生成数据块的过程和验证过程,所述验证过程与生成数据块的过程共同进行或验证过程单独进行。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号