基于区块链的投标报价方法、系统、设备及存储介质与流程

文档序号:23922748发布日期:2021-02-09 19:14阅读:142来源:国知局
基于区块链的投标报价方法、系统、设备及存储介质与流程

[0001]
本公开涉及区块链技术领域,尤其涉及一种基于区块链的投标报价方法、一种基于区块链的投标报价系统、一种计算机设备以及一种计算机可读存储介质。


背景技术:

[0002]
随着社会的飞速发展,我国招投标项目越来越多,竞争也越来越激烈。在投标报价过程中,报价需要提前给出,并在开标之前是保密且不可篡改的。如果投标报价没有很好的保密且保证不被篡改,则会大大影响整个投标过程的公信度,降低投标用户的满意度。
[0003]
关于投标报价,现行的处理方法主要靠线下操作,将报价公司的报价密封在信封里给到招标公司,待开标时再打开宣读价格。这样操作无法避免一些报价公司和招标公司合伙作弊,泄露其它报价公司的报价价格或者帮助篡改自己的报价价格,从而严重影响竞争的公平性,降低了投标报价过程的公信度。
[0004]
因此,提出一种既可以确保报价价格保密又可以避免报价价格被篡改的投标报价方案是目前亟待解决的问题。


技术实现要素:

[0005]
为了至少部分解决现有技术中存在的技术问题而完成了本公开。
[0006]
根据本公开实施例的一方面,提供一种基于区块链的投标报价方法,所述方法包括:
[0007]
招标公司节点和第三方公证单位节点分别生成随机数并发送给智能合约节点,投标公司节点生成随机数并连同其投标报价价格一起发送给智能合约节点;
[0008]
开标前,智能合约节点根据其收到的多个随机数和投标公司节点的投标报价价格得到第一哈希值,并将第一哈希值广播至全网节点进行保存;
[0009]
开标时,智能合约节点根据所述多个随机数和投标公司节点的投标报价价格得到第二哈希值,并将第二哈希值与之前保存的第一哈希值进行比较,若比较结果一致,则确认投标公司的投标报价价格未被篡改。
[0010]
根据本公开实施例的另一方面,提供一种基于区块链的投标报价系统,所述系统包括:投标公司节点、招标公司节点、第三方公证单位节点和智能合约节点;
[0011]
招标公司节点设置为生成随机数并发送给智能合约节点;
[0012]
第三方公证单位节点设置为生成随机数并发送给智能合约节点;
[0013]
投标公司节点设置为生成随机数并连同其投标报价价格一起发送给智能合约节点;
[0014]
开标前,智能合约节点设置为,根据其收到的多个随机数和投标公司节点的投标报价价格得到第一哈希值,并将第一哈希值广播至全网节点进行保存;
[0015]
开标后,智能合约节点还设置为,根据其收到的多个随机数和投标公司节点的投标报价价格得到第二哈希值,并将第二哈希值与之前保存的第一哈希值进行比较,若比较
结果一致,则确认投标公司的投标报价价格未被篡改。
[0016]
根据本公开实施例的又一方面,提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时,所述处理器执行前述基于区块链的投标报价方法。
[0017]
根据本公开实施例的再一方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,所述处理器执行前述基于区块链的投标报价方法。
[0018]
本公开的实施例提供的技术方案可以包括以下有益效果:
[0019]
本公开实施例提供的基于区块链的投标报价方法及系统,在开标前智能合约节点将某一投标公司的投标报价价格加工为第一哈希值并发送至全网节点进行保存,此时报价价格对招标公司、其他投标公司和第三方公证单位都是保密的,投标公司之间并不知道彼此的报价价格;待开标时智能合约节点再将该投标公司的投标报价价格加工为第二哈希值,然后通过对比同一投标公司对应的第一哈希值与第二哈希值是否一致来证明开标前后投标价格是否被篡改过,从而极大增强了投标报价过程的公信度,也提高了投标过程的用户满意度。
[0020]
本公开的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本公开而了解。本公开的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
[0021]
附图用来提供对本公开技术方案的进一步理解,并且构成说明书的一部分,与本公开的实施例一起用于解释本公开的技术方案,并不构成对本公开技术方案的限制。
[0022]
图1为本公开实施例提供的基于区块链的投标报价方法的流程示意图;
[0023]
图2为本公开实施例提供的基于区块链的投标报价系统的结构示意图;
[0024]
图3为本公开实施例提供的计算机设备的结构示意图。
具体实施方式
[0025]
为使本公开实施例的目的、技术方案和优点更加清楚,以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
[0026]
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序;并且,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互任意组合。
[0027]
图1为本公开实施例提供的基于区块链的投标报价方法的流程示意图。如图1所示,所述方法包括如下步骤s101至s103。
[0028]
s101.招标公司节点和第三方公证单位节点分别生成随机数并发送给智能合约节点,投标公司节点生成随机数并连同其投标报价价格一起发送给智能合约节点;
[0029]
s102.开标前,智能合约节点根据其收到的多个随机数和投标公司节点的投标报价价格得到第一哈希值,并将第一哈希值广播至全网节点进行保存;
[0030]
s103.开标时,智能合约节点根据所述多个随机数和投标公司节点的投标报价价格得到第二哈希值,并将第二哈希值与之前保存的第一哈希值进行比较,若比较结果一致,则确认投标公司的投标报价价格未被篡改;若比较结果不一致,则确认投标公司的投标报价价格曾被篡改过。
[0031]
其中,投标公司节点、招标公司节点和第三方公证单位节点各自生成的随机数均是独有的,即这些随机数各不相同。而且,步骤s101和s102都在开标前执行,仅步骤s103在开标时执行。并且,针对参与同一招投标项目的每个投标公司节点,均执行一遍上述步骤s101至s103,以判断该投标公司的投标报价价格是否被篡改。
[0032]
本实施例中,在开标前智能合约节点将某一投标公司的投标报价价格加工为第一哈希值并发送至全网节点进行保存,此时报价价格对招标公司、其他投标公司和第三方公证单位都是保密的,投标公司之间并不知道彼此的报价价格,待开标时智能合约节点再将该投标公司的投标报价价格加工为第二哈希值,然后通过对比同一投标公司对应的第一哈希值与第二哈希值是否一致来证明开标前后投标价格是否被篡改过,从而极大增强了投标报价过程的公信度,也提高了投标过程的用户满意度。
[0033]
在一种具体实施方式中,在步骤s101之前,还包括如下步骤s104:
[0034]
s104.投标公司节点分别向招标公司节点和第三方公证单位节点发送报价通知消息,以将自己要报价的消息通知给二者,所述报价通知消息包括:投标公司名称、投标编号和招标编号。
[0035]
相应地,在步骤s101中,招标公司节点和第三方公证单位节点分别生成随机数并发送给智能合约节点具体为:招标公司节点和第三方公证单位节点在收到投标公司节点发送的报价通知消息后分别生成随机数并发送给智能合约节点。
[0036]
在一种具体实施方式中,步骤s101包括如下步骤s1011和s1012。
[0037]
s1011.招标公司节点生成第一随机数并向智能合约节点发送第一随机数信息,所述第一随机数信息包括:投标公司名称、投标编号、招标编号、招标公司节点编号和第一随机数;
[0038]
s1012.第三方公证单位节点生成第二随机数并向智能合约节点发送第二随机数信息,所述第二随机数信息包括:投标公司名称、投标编号、招标编号、第三方公证单位节点编号和第二随机数。
[0039]
在一种具体实施方式中,步骤s101还包括如下步骤s1013:
[0040]
s1013.投标公司节点生成第三随机数并向智能合约节点发送投标信息,所述投标信息包括:投标公司名称、投标编号、招标编号、报价价格和第三随机数。
[0041]
本实施例中,智能合约节点接收到招标公司节点发送的第一随机数信息、第三方公证单位节点发送的第二随机数信息以及投标公司节点发送的投标信息后,对已收到的信息进行对照、整合与存储。
[0042]
在一种具体实施方式中,步骤s102还包括:智能合约节点还将投标公司名称、投标编号和招标编号连同第一哈希值一起广播至全网节点进行保存。
[0043]
在一种具体实施方式中,在步骤s102中,开标前,智能合约节点根据其收到的多个随机数和投标公司节点的投标报价价格得到第一哈希值,包括如下步骤s1021至s1023。
[0044]
s1021.智能合约节点将其收到的多个随机数先求和再求平均然后取整,得到m;
[0045]
s1022.智能合约节点使用投标公司节点的投标报价价格替换m中的某些位,得到m1;
[0046]
s1023.智能合约节点对m1求哈希(可采用sha256算法)后得到第一哈希值。
[0047]
上述步骤s1021至s1023均在开标前执行。
[0048]
在一种具体实施方式中,步骤s103中,开标时,智能合约节点根据其收到的多个随机数和投标公司节点的投标报价价格得到第二哈希值,包括如下步骤s1031至s1033。
[0049]
s1031.智能合约节点将其收到的多个随机数先求和再求平均然后取整,得到m;
[0050]
s1032.智能合约节点使用投标公司节点的投标报价价格替换m中的某些位,得到m1;
[0051]
s1033.智能合约节点对m1求哈希(可采用sha256算法)后得到第二哈希值。
[0052]
上述步骤s1031至s1033均在开标时执行。
[0053]
在步骤s1021和s1031中,智能合约节点将其收到的多个随机数先求和再求平均然后取整,得到m,具体为:
[0054]
智能合约节点将其收到的k个随机数求和,再将求和结果除以k后取整,从而得到m,其中k值与随机数的个数相同。
[0055]
在一种具体实施方式中,步骤s102和s103还包括:
[0056]
智能合约节点将投标公司节点的投标报价价格转换为n位二进制数据。换言之,将投标报价价格转换成二进制数据后,该二进制数据的位数为n位。
[0057]
相应地,步骤s1022和s1032具体为:
[0058]
智能合约节点使用与投标公司节点的投标报价价格对应的n位二进制数据替换m的后n位,得到m1。
[0059]
本实施例中,m1为将m的后n位替换为一个投标公司节点的投标报价价格对应的n位二进制数据得到。
[0060]
在一种具体实施方式中,各个随机数和m1均使用256位二进制数。
[0061]
本实施例中,投标公司节点、招标公司节点和第三方公证单位节点各自生成的随机数均使用256位二进制数,智能合约节点得出的m1也使用256位二进制数。由于随机数和m1均使用256位二进制数,可以避免人为制造哈希碰撞,也避免通过使用遍历的方法根据哈希值倒推出m1,从而保证整个投标过程中数据的安全性。
[0062]
本公开实施例提供的基于区块链的投标报价方法,利用区块链的智能合约、不可篡改等特性,将招标公司、投标公司、第三方公证单位均作为区块链上的一个独立节点,智能合约节点根据既定策略将投标公司的投标报价价格加工为第一哈希值并发送至全网节点进行保存,在开标前投标公司的投标报价价格对招标公司、其他投标公司和第三方公证单位都是保密的,待开标时智能合约节点再将投标公司的投标报价价格加工为第二哈希值,然后通过对比同一投标公司对应的第一哈希值与第二哈希值是否一致来证明开标前后投标价格是否被篡改过,从而极大增强了投标报价过程的公信度,也提高了投标过程的用户满意度。
[0063]
图2为本公开实施例提供的基于区块链的投标报价系统的结构示意图。如图2所示,所述系统2包括:投标公司节点21、招标公司节点22、第三方公证单位节点23和智能合约节点24。
[0064]
其中,招标公司节点22设置为生成随机数并发送给智能合约节点24;
[0065]
第三方公证单位节点23设置为生成随机数并发送给智能合约节点24;
[0066]
投标公司节点21设置为生成随机数并连同其投标报价价格一起发送给智能合约节点24;
[0067]
开标前,智能合约节点24设置为,根据其收到的多个随机数和投标公司节点的投标报价价格得到第一哈希值,并将第一哈希值广播至全网节点进行保存;
[0068]
开标后,智能合约节点24还设置为,根据其收到的多个随机数和投标公司节点的投标报价价格得到第二哈希值,并将第二哈希值与之前保存的第一哈希值进行比较,若比较结果一致,则确认投标公司的投标报价价格未被篡改;若比较结果不一致,则确认投标公司的投标报价价格曾被篡改过。
[0069]
其中,投标公司节点、招标公司节点和第三方公证单位节点各自生成的随机数均是独有的,即这些随机数各不相同。并且,针对参与同一招投标项目的每个投标公司节点,均执行一遍上述流程以判断该投标公司的投标报价价格是否被篡改。
[0070]
本实施例中,在开标前智能合约节点将某一投标公司的投标报价价格加工为第一哈希值并发送至全网节点进行保存,此时报价价格对招标公司、其他投标公司和第三方公证单位都是保密的,投标公司之间并不知道彼此的报价价格,待开标时智能合约节点再将该投标公司的投标报价价格加工为第二哈希值,然后通过对比同一投标公司对应的第一哈希值与第二哈希值是否一致来证明开标前后投标价格是否被篡改过,从而极大增强了投标报价过程的公信度,也提高了投标过程的用户满意度。
[0071]
在一种具体实施方式中,投标公司节点21还设置为,分别向招标公司节点和第三方公证单位节点发送报价通知消息,以将自己要报价的消息通知给二者,所述报价通知消息包括:投标公司名称、投标编号和招标编号。
[0072]
相应地,招标公司节点22具体设置为,在收到投标公司节点发送的报价通知消息后生成随机数并发送给智能合约节点24;第三方公证单位节点23具体设置为,在收到投标公司节点发送的报价通知消息后生成随机数并发送给智能合约节点24。
[0073]
在一种具体实施方式中,招标公司节点22具体设置为,生成第一随机数并向智能合约节点24发送第一随机数信息,所述第一随机数信息包括:投标公司名称、投标编号、招标编号、招标公司节点编号和第一随机数;第三方公证单位节点23具体设置为,生成第二随机数并向智能合约节点24发送第二随机数信息,所述第二随机数信息包括:投标公司名称、投标编号、招标编号、第三方公证单位节点编号和第二随机数。
[0074]
在一种具体实施方式中,投标公司节点21具体设置为,生成第三随机数并向智能合约节点发送投标信息,所述投标信息包括:投标公司名称、投标编号、招标编号、报价价格和第三随机数。
[0075]
本实施例中,智能合约节点接收到招标公司节点发送的第一随机数信息、第三方公证单位节点发送的第二随机数信息以及投标公司节点发送的投标信息后,对已收到的信息进行对照、整合与存储。
[0076]
在一种具体实施方式中,智能合约节点24还设置为,将投标公司名称、投标编号和招标编号连同第一哈希值一起广播至全网节点进行保存。
[0077]
在一种具体实施方式中,开标前,智能合约节点24具体设置为:将其收到的多个随
机数先求和再求平均然后取整,得到m;使用投标公司节点的投标报价价格替换m中的某些位,得到m1;以及,对m1求哈希(可采用sha256算法)后得到第一哈希值。
[0078]
在一种具体实施方式中,开标时,智能合约节点24具体设置为:将其收到的多个随机数先求和再求平均然后取整,得到m;使用投标公司节点的投标报价价格替换m中的某些位,得到m1;以及,对m1求哈希(可采用sha256算法)后得到第二哈希值。
[0079]
在一种具体实施方式中,智能合约节点24具体设置为,将其收到的k个随机数求和,再将求和结果除以k后取整,从而得到m,其中k值与随机数的个数相同。
[0080]
在一种具体实施方式中,智能合约节点24还设置为,将投标公司节点的投标报价价格转换为n位二进制数据。换言之,将投标报价价格转换成二进制数据后,该二进制数据的位数为n位。
[0081]
相应地,智能合约节点24具体设置为,使用与投标公司节点的投标报价价格对应的n位二进制数据替换m的后n位,得到m1。
[0082]
本实施例中,m1为将m的后n位替换为一个投标公司节点的投标报价价格对应的n位二进制数据得到。
[0083]
在一种具体实施方式中,各个随机数和m1均使用256位二进制数。
[0084]
本实施例中,投标公司节点、招标公司节点和第三方公证单位节点各自生成的随机数均使用256位二进制数,智能合约节点得出的m1也使用256位二进制数。由于随机数和m1均使用256位二进制数,可以避免人为制造哈希碰撞,也避免通过使用遍历的方法根据哈希值倒推出m1,从而保证整个投标过程中数据的安全性。
[0085]
本公开实施例提供的基于区块链的投标报价系统,利用区块链的智能合约、不可篡改等特性,将招标公司、投标公司、第三方公证单位均作为区块链上的一个独立节点,智能合约节点根据既定策略将投标公司的投标报价价格加工为第一哈希值并发送至全网节点进行保存,在开标前投标公司的投标报价价格对招标公司、其他投标公司和第三方公证单位都是保密的,待开标时智能合约节点再将投标公司的投标报价价格加工为第二哈希值,然后通过对比同一投标公司对应的第一哈希值与第二哈希值是否一致来证明开标前后投标价格是否被篡改过,从而极大增强了投标报价过程的公信度,也提高了投标过程的用户满意度。
[0086]
基于相同的技术构思,本公开实施例相应还提供一种计算机设备,如图3所示,所述计算机设备3包括存储器31和处理器32,所述存储器31中存储有计算机程序,当所述处理器32运行所述存储器31存储的计算机程序时,所述处理器32执行前述基于区块链的投标报价方法。
[0087]
基于相同的技术构思,本公开实施例相应还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,所述处理器执行前述基于区块链的投标报价方法。
[0088]
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理
器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
[0089]
最后应说明的是:以上各实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述各实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1