一种非交互式数据完整性审计方法、公平付费方法及系统与流程

专利2022-06-29  45


本公开涉及区块链技术领域,特别涉及一种非交互式数据完整性审计方法、公平付费方法及系统。



背景技术:

本部分的陈述仅仅是提供了与本公开相关的背景技术,并不必然构成现有技术。

目前,各类公共云存储服务,如百度云、坚果云、dropbox、onedrive、icloud等,已经被大众广泛接受并使用。借助云存储服务,数据所有者可以在任意能够接入网络的设备上使用数据,能够更方便、更快捷地与他人共享数据。然而,由于数据不再存储于用户本地,如何确保数据的完整性(确保数据没有丢失),成为困扰云存储用户的一大难题。

本公开发明人发现,现有的解决办法是通过使用数据完整性审计方案,定时对数据的完整性进行检查。如果云存储服务器丢失了部分数据,那么(第三方)审查员将以很大的概率检测到“数据丢失”。但是目前的公共云存储服务多采用预付费模式,因此即使用户通过以上方式检测到了“数据丢失”,维权并挽回经济损失也是非常困难的(需要有较高的举证和仲裁成本)。

目前的数据完整性审计方案,采用的是“挑战-应答”模式。验证者向云存储服务器发起“挑战”,服务器进行“应答”。如果服务器的“应答”能够通过验证,那么验证者可以确认服务器以很高的概率存储着完整的数据;如果无法通过验证,那么验证者可以确认服务器丢失了部分数据。由于验证过程需要验证者与服务器之间进行交互,因此这类数据完整性审计方案,也被称为交互式数据完整性审计方案。

然而,当把这类交互式方案部署于基于区块链的智能合约上时,将面临一个问题:当区块链的共识节点去执行智能合约的代码时,共识节点充当的是验证者的角色,这就意味着这些共识节点都需要与云存储服务器进行交互。然而,共识节点的数量是巨大的,如此数量的共识节点都需要与云服务器在短时间内进行交互是难以实现的。



技术实现要素:

为了解决现有技术的不足,本公开提供了一种非交互式数据完整性审计方法、公平付费方法及系统,将存储数据的完整性与支付云存储服务费挂钩,只有当云存储服务器完整的存储数据一个周期后,才可以获得服务费,防止了数据丢失带来的索赔问题,同时本公开使得付费过程可以在无第三方支持的情况下自动完成,极大的降低了人力成本。

为了实现上述目的,本公开采用如下技术方案:

本公开第一方面提供了一种非交互式数据完整性审计方法。

一种非交互式数据完整性审计方法,第一终端执行密钥生成算法和标签生成算法,生成与数据文件相对应的密钥和数据标签,并将数据文件、密钥和数据标签一起发送到云存储服务终端;

云存储服务终端执行证明生成算法,输出数据完整性证明给数据验证端,所述数据验证端执行验证算法,对数据完整性进行验证。

作为可能的一些实现方式,所述密钥生成算法,具体为:

(a-1)令g和gt为p阶双线性群,p为素数,g为群g的生成元,存在双线性映射e:g×g→gt;

(a-2)选取两个哈希函数h(·):{0,1}*→g、h(·):gt→zp;

(a-3)选取伪随机函数f(·):{0,1}*→[1,n];

(a-4)调用标准数字签名方案,生成公私钥对(spk,ssk);

(a-5)在集合{1,2,..,p-1}中随机选择随机数x,在群g中随机选择元素u,计算v←gx

(a-6)公钥pk为(spk,g,u,v,e,h(·),h(·),f(·)),私钥sk为(ssk,x)。

作为可能的一些实现方式,所述标签生成算法,具体为:

(b-1)将数据文件f编码为f={mi}1≤i≤n,其中mi∈zp;

(b-2)第一终端随机选择name←zp作为文件f的编号;

(b-3)对i∈{1,2,...,n},计算认证元其中wi=name||i,令ψ={σi}1≤i≤n;

(b-4)调用标准的数字签名算法sig,对name签名,得到sigssk(name);

(b-5)令t=name||sigssk(name)作为文件f的标识符;

(b-6)将数据文件f和相应的数据标签φ=(ψ,t)上传至云存储服务终端。

作为可能的一些实现方式,所述证明生成算法,具体为:

(c-1)根据预设证明难度以及数据文件的块数n,确定常数c;

(c-2)获取系统的当前状态信息τ;

(c-3)对于i∈{1,2,...,c},计算si←f(τ||i);

(c-4)令i={s1,s2,…,sc}是包含c个元素的多重集合,即i允许包含重复的元素;

(c-5)对于所有的j∈i,计算vj←h(τ||j);

(c-6)计算计算

(c-7)在{1,2,…,p-1}中随机选取随机数s,计算t=e(u,v)s,计算μ=s γμ',其中γ=h(t)∈zp;

(c-8)输出∑={μ,σ,t,τ,c}作为数据完整性证明发送给验证者。

作为进一步的限定,所述验证算法具体为:

(d-1)验证状态信息τ的真实性,如果验证失败,则算法终止,否则计算i={f(τ||1),f(τ||2),...,f(τ||c)};

(d-2)对所有的j∈i,计算{vj=h(τ||j)}j∈i,{h(nj)}j∈i,并计算γ={h(t)};

(d-3)判断等式是否成立,若成立输出1,否则输出0。

本公开第二方面提供了一种非交互式数据完整性审计系统,包括至少一个第一终端、至少一个数据验证端和云存储服务终端;其中第一终端执行密钥生成算法和标签生成算法,生成与数据文件相对应的密钥和数据标签,并将数据文件、密钥和数据标签一起发送到云存储服务终端;

云存储服务终端执行证明生成算法,输出数据完整性证明给数据验证端,所述数据验证端执行验证算法,对数据完整性进行验证。

本公开第三方面提供了一种用于公共云存储服务的公平付费方法。

第一终端调用标签生成算法,得到数据文件对应的数据标签,将数据文件连同数据标签一起上传至云存储服务终端,提交第一合约至智能合约平台;

云存储服务终端核查数据文件的完整性,提交第二合约至智能合约平台,并且云存储服务终端按时间周期提交第三合约;

智能合约平台的共识节点将作为数据验证端验证数据完整性证明的正确性;

如果完整性验证通过则激活第一合约,第一终端向云存储服务终端付费;否则激活第二合约,云存储服务终端赔偿第一终端的损失。

作为可能的一些实现方式,所述第一合约包括第一合约描述部分和第一代码部分;

所述第一合约描述部分包括文件名称、文件大小、文件哈希值、上传时间、存储周期、服务费、第一终端账户、云存储服务终端账户、第一终端公钥和第一终端签名;

所述第一代码部分对支付服务费的行为进行了定义,如果验证算法输出1,第一合约从第一终端的账户地址划拨服务费金额至云存储服务终端的账户。

作为可能的一些实现方式,所述第二合约包括第二合约描述部分和第二代码部分;

所述第二合约描述部分包括文件名称、文件大小、文件哈希值、接收时间、存储周期、赔偿金、第一终端账户、云存储服务终端账户、云存储服务终端公钥和云存储服务终端签名;

第二代码部分对支付罚金的行为进行了定义,如果验证算法输出0,第二合约从云存储服务终端的账户划拨赔偿金至第一终端的账户地址。

作为可能的一些实现方式,所述第三合约包括第三合约描述部分和第三代码部分;

(e-1)所述第三合约描述部分包括支付付费合约、支付赔偿金合约和数据完整性证明,其中支付付费合约采用第一合约,支付赔偿金合约采用第二合约;

(e-2)所述第三代码部分对如何公平支付进行了定义,根据对数据完整性证明的验证结果,决定激活第一合约或者激活第二合约。

本公开第四方面提供了一种用于公共云存储服务的公平付费系统,包括至少一个第一终端和云存储服务终端,其中云存储服务终端按时间周期提交第三合约;智能合约平台的共识节点将作为数据验证端验证数据完整性证明的正确性;

如果完整性验证通过则激活第一合约,第一终端向云存储服务终端付费;否则激活第二合约,云存储服务终端赔偿第一终端的损失。

与现有技术相比,本公开的有益效果是:

1、本公开所述的内容能够用于公共云存储服务的公平付费,使用该方案,可以将存储数据的完整性与支付云存储服务费挂钩,只有当云存储服务器完整的存储数据一个周期后,才可以获得服务费,如果发生了数据丢失,数据所有者不仅不用支付费用,还可以获得赔偿;由于使用了基于区块链的智能合约,以上过程可以在无第三方支持的情况下自动完成。

2、本公开所述的内容通过采用密钥生成算法和标签生成算法,极大的提高了数据的安全性,通过证明生成算法和验证算法相配合,提高了数据完整性审计的精确度。

3、本公开所述的内容通过第一合约、第二合约、第三合约与数据完整性相配合,能够有效的实现公平付费,减少了数据丢失带来的索赔问题,且这种自动完成的方式,极大的减少了人力成本。

附图说明

图1为本公开实施例1提供的非交互式数据完整性审计方法的流程示意图。

图2为本公开实施例3提供的合约签署阶段的流程示意图。

图3为本公开实施例3提供的第一合约示意图。

图4为本公开实施例3提供的第二合约示意图。

图5为本公开实施例3提供的公平付费阶段的流程示意图。

图6为本公开实施例3提供的第三合约示意图。

具体实施方式

应该指出,以下详细说明都是例示性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。

需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。

在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。

实施例1:

如图1所示,本公开实施例1提供了一种非交互式数据完整性审计方法,存在三类实体,即数据所有者u、公共云存储服务器c和验证者v。在验证数据完整性期间,c和v无需交互。该方案将分为2个阶段,共包含4个算法,具体如下:

(一)系统建立阶段

在此阶段,数据所有者u生成与数据文件f相对应的数据标签φ,并将f连同φ一起发送到云存储服务器c。该阶段包含密钥生成算法keygen和标签生成算法taggen,均由数据所有者u执行。

(1)密钥生成算法keygen:

(1-1)令g和gt为p阶双线性群,p为素数,g为群g的生成元,存在双线性映射e:g×g→gt;

(1-2)选取两个哈希函数h(·):{0,1}*→g、h(·):gt→zp;

(1-3)选取伪随机函数f(·):{0,1}*→[1,n],该函数将任意长的二进制串均匀随机地映射为1到n之间的整数;

(1-4)调用标准的数字签名方案,生成公私钥对(spk,ssk);

(1-5)在集合{1,2,..,p-1}中随机选择随机数x,在群中随机选择元素u,计算v←gx

(1-6)公钥pk为(spk,g,u,v,e,h(·),h(·),f(·)),私钥sk为(ssk,x);

(2)标签生成算法taggen:

(2-1)将数据文件f编码为f={mi}1≤i≤n,其中mi∈zp;

(2-2)数据所有者随机选择name←zp作为文件f的编号;

(2-3)对i∈{1,2,...,n},计算认证元其中wi=name||i。令ψ={σi}1≤i≤n;

(2-4)调用标准的数字签名算法sig,对name签名,得到sigssk(name);

(2-5)令t=name||sigssk(name)作为文件f的标识符;

(2-6)将数据文件f和相应的数据标签φ=(ψ,t)上传至云存储服务器c。

(二)数据审计阶段

该阶段包含证明生成算法proofgen和验证算法verify,其中proofgen算法由云存储服务器c执行,verify算法可由任意实体(作为验证者)执行。验证过程是非交互的。

(3)证明生成算法proofgen:

(3-1)根据事先约定的证明难度以及数据文件的块数n,确定常数c;

(3-2)获取系统的当前状态信息τ,要求系统状态信息不能被云存储服务器控制,如系统时间就可以作为状态信息;

(3-3)对于i∈{1,2,...,c},计算si←f(τ||i)。根据伪随机函数f(·)的定义可知,si∈[1,n];

(3-4)令i={s1,s2,...,sc}是包含c个元素的多重集合,即i允许包含重复的元素;

(3-5)对于所有的j∈i,计算vj←h(τ||j);

(3-6)计算计算

(3-7)在{1,2,…,p-1}中随机选取随机数s,计算t=e(u,v)s,计算μ=s γμ',其中γ=h(t)∈zp;

(3-8)输出∑={μ,σ,t,τ,c}作为数据完整性证明发送给验证者;

(4)验证算法verify:

(4-1)验证状态信息τ的真实性,如果验证失败,则算法终止,否则计算i={f(τ||1),f(τ||2),...,f(τ||c)};

(4-2)对所有的j∈i,计算{vj=h(τ||j)}j∈i,{h(nj)}j∈i,并计算γ={h(t)};

(4-3)判断等式是否成立,若成立输出1,否则输出0。

实施例2:

本公开实施例2提供了一种非交互式数据完整性审计系统,包括至少一个第一终端、至少一个数据验证端和云存储服务终端;其中第一终端执行密钥生成算法和标签生成算法,生成与数据文件相对应的密钥和数据标签,并将数据文件、密钥和数据标签一起发送到云存储服务终端;

云存储服务终端执行证明生成算法,输出数据完整性证明给数据验证端,所述数据验证端执行验证算法,对数据完整性进行验证。

具体的密钥生成算法、标签生成算法、证明生成算法和验证算法与实施例1中的相同,这里不再赘述。

实施例3:

本公开实施例3提供了一种用于公共云存储服务的公平付费方法,利用本公开实施例1所述的非交互式数据完整性审计方法,首先进行合约签署,如图2所示,具体如下:

(1)数据所有者u使用非交互式数据完整性审计方案,调用标签生成算法taggen,得到数据文件f对应的数据标签φ;

(2)数据所有者u将数据文件f连同数据标签φ一起上传至云存储服务器c;

(3)数据所有者提交合约t0(如图3所示)至智能合约平台p;

智能合约t0分为合约描述部分和代码部分。

(3-1)合约描述部分包含以下字段

文件名称(filename):记录所上传文件的名称fn;

文件大小(filesize):记录所上传文件的大小fs;

文件哈希值(filehash):记录所上传文件的哈希值fh;

上传时间(uploadtime):记录上传文件的时间ut;

存储周期(storageperiod):记录存储文件的周期sp;

服务费(servicecharges):记录服务费数额sc;

数据所有者账户(dataowneraccount):记录数据所有者账户地址doa;

云存储服务提供者账户(cloudstorageaccount):记录云存储服务提供者账户地址csa;

数据所有者公钥(pkd):记录数据所有者的公钥pkd;

数据所有者签名(sigd):记录数据所有者对该合约的签名sigd;

(3-2)代码部分对支付服务费的行为进行了定义

如果验证算法verify输出1,那么合约从数据所有者的账户地址doa划拨服务费金额sc至云存储服务提供者的账户csa。

(4)云存储服务器c核查数据文件f的完整性;

(5)云存储服务器c提交合约t1(如图4所示)至智能合约平台p。

智能合约t1分为合约描述部分和代码部分;

(5-1)合约描述部分包含以下字段

文件名称(filename):记录所上传文件的名称fn;

文件大小(filesize):记录所上传文件的大小fs;

文件哈希值(filehash):记录所上传文件的哈希值fh;

接收时间(receivingtime):记录接收文件的时间rt;

存储周期(storageperiod):记录存储文件的周期sp;

赔偿金(penalty):记录赔偿金数额pen;

数据所有者账户(dataowneraccount):记录数据所有者账户地址doa;

云存储服务提供者账户(cloudstorageaccount):记录云存储服务提供者账户地址csa

云存储服务提供者公钥(pkc):记录云存储服务提供者的公钥pkc;

云存储服务提供者签名(sigc):记录云存储服务提供者对该合约的签名sigc;

(5-2)代码部分对支付罚金的行为进行了定义

如果验证算法verify输出0,那么合约从云存储服务提供者的账户csa划拨赔偿金pen至数据所有者的账户地址doa。

本实施例使用基于区块链的智能合约系统构造了用于公共云存储服务的公平付费方案;所谓公平付费是指,当确认数据被完整保存一个时间周期后(一个时间周期可以是小时、日、周、月、年等时间单位),智能合约自动从用户的账户向云存储服务提供者的账户划拨该周期的云存储服务费。如果检测到数据丢失,服务费将不再划拨,同时可以根据事先约定,反向划拨赔偿金,用于赔偿用户的损失。

具体包括以下步骤:

(a)为了收取服务费,云存储服务器c按时间周期提交合约t2(如图6所示),智能合约t2分为合约描述部分和代码部分。

(a-1)合约描述部分包含以下字段

支付付费合约:t0;

支付赔偿金合约:t1;

数据完整性证明:σ;

(a-2)代码部分对如何公平支付进行了定义,即根据对σ的验证结果,决定激活t0还是激活t1;

(b)智能合约平台的共识节点将作为验证者验证数据完整性证明∑的正确性;

(c)如果完整性验证通过则激活t0合约,数据所有者向云存储服务提供商付费;否则激活t1合约,云存储服务提供商赔偿数据所有者的损失。

实施例4:

本公开实施例4提供了一种用于公共云存储服务的公平付费系统,包括至少一个第一终端和云存储服务终端,其中云存储服务终端按时间周期提交第三合约;智能合约平台的共识节点将作为数据验证端验证数据完整性证明的正确性;

如果完整性验证通过则激活第一合约,第一终端向云存储服务终端付费;否则激活第二合约,云存储服务终端赔偿第一终端的损失。

具体的付费方法与实施例3中的相同,这里不再赘述。

以上所述仅为本公开的优选实施例而已,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。

上述虽然结合附图对本公开的具体实施方式进行了描述,但并非对本公开保护范围的限制,所属领域技术人员应该明白,在本公开的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本公开的保护范围以内。


技术特征:

1.一种非交互式数据完整性审计方法,其特征在于,第一终端执行密钥生成算法和标签生成算法,生成与数据文件相对应的密钥和数据标签,并将数据文件、密钥和数据标签一起发送到云存储服务终端;

云存储服务终端执行证明生成算法,输出数据完整性证明给数据验证端,所述数据验证端执行验证算法,对数据完整性进行验证。

2.如权利要求1所述的非交互式数据完整性审计方法,其特征在于,所述密钥生成算法,具体为:

(a-1)令g和gt为p阶双线性群,p为素数,g为群g的生成元,存在双线性映射e:g×g→gt;

(a-2)选取两个哈希函数h(·):{0,1}*→g、h(·):gt→zp;

(a-3)选取伪随机函数f(·):{0,1}*→[1,n];

(a-4)调用标准数字签名方案,生成公私钥对(spk,ssk);

(a-5)在集合{1,2,..,p-1}中随机选择随机数x,在群g中随机选择元素u,计算v←gx

(a-6)公钥pk为(spk,g,u,v,e,h(·),h(·),f(·)),私钥sk为(ssk,x);

或者,所述标签生成算法,具体为:

(b-1)将数据文件f编码为f={mi}1≤i≤n,其中mi∈zp;

(b-2)第一终端随机选择name←zp作为文件f的编号;

(b-3)对i∈{1,2,...,n},计算认证元其中wi=name||i,令ψ={σi}1≤i≤n;

(b-4)调用标准的数字签名算法sig,对name签名,得到sigssk(name);

(b-5)令t=name||sigssk(name)作为文件f的标识符;

(b-6)将数据文件f和相应的数据标签φ=(ψ,t)上传至云存储服务终端。

3.如权利要求1所述的非交互式数据完整性审计方法,其特征在于,所述证明生成算法,具体为:

(c-1)根据预设证明难度以及数据文件的块数n,确定常数c;

(c-2)获取系统的当前状态信息τ;

(c-3)对于i∈{1,2,...,c},计算si←f(τ||i);

(c-4)令i={s1,s2,...,sc}是包含c个元素的多重集合,即i允许包含重复的元素;

(c-5)对于所有的j∈i,计算vj←h(τ||j);

(c-6)计算计算

(c-7)在{1,2,…,p-1}中随机选取随机数s,计算t=e(u,v)s,计算μ=s γμ',其中γ=h(t)∈zp;

(c-8)输出∑={μ,σ,t,τ,c}作为数据完整性证明发送给验证者。

4.如权利要求3所述的非交互式数据完整性审计方法,其特征在于,所述验证算法具体为:

(d-1)验证状态信息τ的真实性,如果验证失败,则算法终止,否则计算i={f(τ||1),f(τ||2),...,f(τ||c)};

(d-2)对所有的j∈i,计算{vj=h(τ||j)}j∈i,{h(nj)}j∈i,并计算γ={h(t)};

(d-3)判断等式是否成立,若成立输出1,否则输出0。

5.一种非交互式数据完整性审计系统,其特征在于,包括至少一个第一终端、至少一个数据验证端和云存储服务终端;其中第一终端执行密钥生成算法和标签生成算法,生成与数据文件相对应的密钥和数据标签,并将数据文件、密钥和数据标签一起发送到云存储服务终端;

云存储服务终端执行证明生成算法,输出数据完整性证明给数据验证端,所述数据验证端执行验证算法,对数据完整性进行验证。

6.一种用于公共云存储服务的公平付费方法,其特征在于,利用权利要求1-4任一项所述的非交互式数据完整性审计方法,包括以下步骤:

第一终端调用标签生成算法,得到数据文件对应的数据标签,将数据文件连同数据标签一起上传至云存储服务终端,提交第一合约至智能合约平台;

云存储服务终端核查数据文件的完整性,提交第二合约至智能合约平台,并且云存储服务终端按时间周期提交第三合约;

智能合约平台的共识节点将作为数据验证端验证数据完整性证明的正确性;

如果完整性验证通过则激活第一合约,第一终端向云存储服务终端付费;否则激活第二合约,云存储服务终端赔偿第一终端的损失。

7.如权利要求6所述的用于公共云存储服务的公平付费方法,其特征在于,所述第一合约包括第一合约描述部分和第一代码部分;

所述第一合约描述部分包括文件名称、文件大小、文件哈希值、上传时间、存储周期、服务费、第一终端账户、云存储服务终端账户、第一终端公钥和第一终端签名;

所述第一代码部分对支付服务费的行为进行了定义,如果验证算法输出1,第一合约从第一终端的账户地址划拨服务费金额至云存储服务终端的账户。

8.如权利要求6所述的用于公共云存储服务的公平付费方法,其特征在于,所述第二合约包括第二合约描述部分和第二代码部分;

所述第二合约描述部分包括文件名称、文件大小、文件哈希值、接收时间、存储周期、赔偿金、第一终端账户、云存储服务终端账户、云存储服务终端公钥和云存储服务终端签名;

第二代码部分对支付罚金的行为进行了定义,如果验证算法输出0,第二合约从云存储服务终端的账户划拨赔偿金至第一终端的账户地址。

9.如权利要求6所述的用于公共云存储服务的公平付费方法,其特征在于,所述第三合约包括第三合约描述部分和第三代码部分;

(e-1)所述第三合约描述部分包括支付付费合约、支付赔偿金合约和数据完整性证明,其中支付付费合约采用第一合约,支付赔偿金合约采用第二合约;

(e-2)所述第三代码部分对如何公平支付进行了定义,根据对数据完整性证明的验证结果,决定激活第一合约或者激活第二合约。

10.一种用于公共云存储服务的公平付费系统,其特征在于,包括至少一个第一终端和云存储服务终端,其中云存储服务终端按时间周期提交第三合约;智能合约平台的共识节点将作为数据验证端验证数据完整性证明的正确性;

如果完整性验证通过则激活第一合约,第一终端向云存储服务终端付费;否则激活第二合约,云存储服务终端赔偿第一终端的损失。

技术总结
本公开提供了一种非交互式数据完整性审计方法、公平付费方法及系统,第一终端将数据文件、密钥和数据标签一起发送到云存储服务终端;云存储服务终端输出数据完整性证明给数据验证端,数据验证端对数据完整性进行验证;第一终端提交第一合约至智能合约平台;云存储服务终端核查数据文件的完整性,提交第二合约至智能合约平台;云存储服务终端按时间周期提交第三合约;智能合约平台的共识节点将作为数据验证端验证数据完整性证明的正确性;本公开通过第一合约、第二合约、第三合约与数据完整性相配合,能够有效的实现公平付费,减少了数据丢失带来的索赔问题,且这种自动完成的方式,极大的减少了人力成本。

技术研发人员:王皓;秦红
受保护的技术使用者:山东师范大学
技术研发日:2020.01.10
技术公布日:2020.06.09

转载请注明原文地址: https://bbs.8miu.com/read-21505.html

最新回复(0)