CN113892094A - 基于分布式账本的电子文件生成 - Google Patents
基于分布式账本的电子文件生成 Download PDFInfo
- Publication number
- CN113892094A CN113892094A CN202080039178.0A CN202080039178A CN113892094A CN 113892094 A CN113892094 A CN 113892094A CN 202080039178 A CN202080039178 A CN 202080039178A CN 113892094 A CN113892094 A CN 113892094A
- Authority
- CN
- China
- Prior art keywords
- user
- information
- management system
- data management
- domain
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/93—Document management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- General Business, Economics & Management (AREA)
- Business, Economics & Management (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
提供了一种数据管理系统。数据管理系统通信地耦合到分布式账本,该分布式账本存储对于用户的电子文件信息和控制访问文件信息的智能合约。数据管理系统接收包括用户标识符(ID)的对电子文件的用户请求,并识别与该用户请求相关联的域。数据管理系统从存储的智能合约中选择对于该域的智能合约,并基于用户ID和选择出的智能合约从该分布式账本中提取对于该电子文件的特定于用户的信息。数据管理系统确定与对于该电子文件的模板信息相关联的内容ID,并基于所确定的内容ID和选择出的智能合约从分布式账本中提取模板信息。数据管理系统基于特定于用户的信息和模板信息来生成电子文件。
Description
对相关申请的交叉引用/通过引用合并
无。
技术领域
本公开的各种实施例涉及对分布式数据库的数据管理。更具体地,本公开的各种实施例涉及用于基于分布式账本生成电子文件的系统和方法。
背景技术
数据管理技术的进步引导了提供交易安全性和不可变性的分布式账本(distributed ledger)(如区块链)的发展。在分布式账本中,交易数据的副本可以分布在系统的多个节点之间,使得每个节点都可以了解每笔交易。账本可以包括多个区块,每个区块代表与交易相关的数据。此外,每个节点都可以有能力基于对账本当前状态的了解来验证每笔新交易。一般地,随着分布式账本上特定应用的数据记录增加,访问和处理此类记录的效率和计算复杂度会受到影响,在需要低内存占用和快速处理时间的去中心化应用的情况下更是如此。
如本申请的后续部分和参考附图所阐述的,通过将描述的系统与本公开的某些方面进行比较,常规和传统方法的更多限制和缺点对本领域技术人员将变得清楚。
发明内容
如在权利要求中更为完整地阐述的,如至少一个图所示和/或结合至少一个图所描述的,充分地提供了一种用于基于分布式账本生成电子文件的系统和方法。
可以通过阅读以下对本公开的详细描述以及附图来理解本公开的这些和其他特征以及优点,在附图中,相同的附图标记始终指代相同的部分。
附图说明
图1是例示根据本公开的实施例的用于基于分布式账本生成电子文件的示例性网络环境的图。
图2是例示根据本公开的实施例的用于生成电子文件的数据管理系统的框图。
图3是例示根据本公开的实施例的创建分布式账本上的区块的序列图。
图4是例示根据本公开的实施例的基于分布式账本生成电子文件的序列图。
图5是例示根据本公开的实施例的基于用户请求的域配置的序列图。
图6是例示根据本公开的实施例的图2中的数据管理系统的示例性实施的序列图。
图7是例示根据本公开的实施例的用于基于分布式账本生成电子文件的示例性方法的流程图。
具体实施方式
可以在所公开的用于基于分布式账本生成电子文件的系统和方法中理解以下描述的实施方式。本公开示例性方面提供了一种数据管理系统,其可以通信地耦合到分布式账本(例如,区块链网络)。分布式账本可以存储多个用户的文件信息和控制访问存储的文件信息的智能合约组。数据管理系统可以从用户接收对电子文件的用户请求。用户请求可以包括用户的用户标识符(ID)。基于从接收到的用户请求中识别出的域(domain)(例如,教育域),可以从智能合约组中选择一个或多个智能合约。数据管理系统可以基于用户ID和选择出的智能合约从存储的文件信息中提取特定于用户的信息。然后,数据管理系统可以基于模板信息的内容ID和选择出的智能合约从存储的文件信息中提取模板信息。可以基于提取出的特定于用户的信息和提取出的模板信息来生成电子文件。
所公开的系统和方法提供了一种基于数据抽象框架的存储高效的数据管理,该数据抽象框架从可以是用户私有的特定于用户的数据中抽象出可以在用户之间通用的特定于域的数据。本文还公开了一种用于检索对于不同域的特定于域的模板数据的机器学习系统,以便处理可以存储在分布式账本上的来自各种域的数据。一般地,数据库系统创建包括对于特定域的通用模板的多个文件副本。可以在多个文件中重复这种通用模板中的通用内容。所公开的数据管理系统创建对于每个域的通用模板并将该通用模板的单个副本存储在节点(例如,区块链节点)中。因此,避免了存储通用模板的多个副本,从而减少了内存占用。此外,所公开的数据管理系统从每个扫描的文件中抽象特定于用户的内容,特定于用户的内容不同于通用内容,对于每个用户的特定于用户的内容可以是不同的。因此,无论何时请求用户的文件,通用内容和特定于用户的内容都可以即时组合并安全地提供给用户。
图1是例示根据本公开的实施例的用于基于分布式账本生成电子文件的示例性网络环境的图。参考图1,在此示出了网络环境100。网络环境100包括数据管理系统102、用户设备104和授权方设备106。用户设备104可以托管客户端108,例如,网络浏览器。网络环境100还包括分布式账本110和通信网络112。可以在网络环境100的两个或更多个计算设备之间建立通信网络112。举例而言,通信网络112可以介于数据管理系统102、用户设备104、授权方设备106和分布式账本110之间。分布式账本110可以存储多个区块114,并且可以与可以控制访问分布式账本110的多个区块114的智能合约组116相关联。这里还示出了与用户设备104相关联的用户118。
数据管理系统102可以包括适当的逻辑、电路系统和接口,其可以被配置为执行与生成对于特定域(例如,教育域)的电子文件相关联的操作。电子文件可以是特定于用户118的,并且可以基于分布式账本110上的特定于用户的信息和模板信息来生成电子文件。数据管理系统102的实施示例可以包括但不限于服务器、服务器的分布式网络、计算设备、大型机器、计算机工作站和/或消费电子(CE)设备。
根据实施例,数据管理系统102可以托管去中心化应用,该应用可以包括客户端侧接口(前端)、服务器侧接口(后端)和分布式逻辑。客户端侧接口(前端)可以被配置为加载在客户端108上,而服务器侧接口可以运行在数据管理系统102上。去中心化应用的分布式逻辑可以是能够对分布式账本110执行,并且可以包括智能合约组116。智能合约组116中的每个智能合约可以是可对分布式账本110运行的能够自执行的(self-executable)程序或计算机代码,并且可以包括条件的集合,在该条件的集合下智能合约的各方同意相互交互。智能合约可以存储在分布式账本110上的特定地址,并且可以是计算机代码(即,功能)和数据(即,账户的状态)的集合。
用户设备104可以包括适当的逻辑、电路系统和接口,其可以被配置为经由客户端108访问托管在分布式账本110上的去中心化应用的客户端侧接口。例如,客户端108可以是加载去中心化应用的客户端侧界面的网页浏览器。客户端108可以具有提供生成对电子文件的用户请求,然后将用户请求传输到数据管理系统102。基于传输的用户请求,客户端108可以接收从数据管理系统102生成作为可读文档的电子文件。用户设备104可以包括适当的输入/输出(I/O)功能和网络功能以促进客户端108与数据管理系统102的通信。用户设备104的示例可以包括但不限于计算设备、移动电话、智能电话、计算机工作站和/或任何CE设备。
授权方设备106可以包括适当的逻辑、电路系统和接口,其可以被配置为一旦电子文件生成并通过散列被数字签名,就将电子文件验证为有效文件。授权方设备106的示例可以包括但不限于计算设备、移动电话、智能电话、服务器、远程服务器、大型机器、计算机工作站和/或CE设备。在至少一个实施例中,在不偏离本公开的范围的情况下,可以将授权方设备106的整体功能并入用户设备104中。
客户端108可以是计算机应用程序,诸如用户设备104上的网络浏览器。客户端108可以对应于用户设备104上的平台,以访问与数据管理系统102相关联的去中心化应用的客户端侧接口。
分布式账本110可以是去中心化且分布式的数据库系统,其可以维护数据操作或交易的不可变记录。数据操作的集合可以被组合在一起作为一个区块并且可以进一步被链接到前一个数据操作区块,以形成多个区块114的链。所有数据操作区块可以以去中心化的方式存储,由此所有参与者或节点存储全部多个区块114。此外,分布式账本110可以包括操作系统,该操作系统可以允许在多方(例如,用户118和数据管理系统102)之间部署智能合约组116。
分布式账本110可以是区块链,其使用账户作为状态对象,并且每个账户的状态可以通过链来跟踪。这里,账户代表用户、挖矿节点或自动化代理的身份。所有数据操作区块或智能合约都与区块链上的账户相关联。
作为示例而非限制,分布式账本110可以是以太坊区块链,其可以使用账户作为状态对象并且每个账户的状态可以通过以太坊区块链来跟踪。这里,账户代表用户、挖矿节点或自动化代理的身份。所有数据操作区块或智能合约都与以太坊区块链上的账户相关联。本公开的范围可以不限于将分布式账本110实施为以太坊区块链、超级账本(Hyperledger)区块链或Corda区块链。在不偏离本公开的范围的情况下,在本公开中分布式账本110的其他实施方式也是可能的。
多个区块114可以存储对于多个用户的文件信息并且可以包括模板数据区块的集合和用户数据区块的集合。模板数据区块的集合可以与对于一个或多个域的电子文件的模板的集合对应。类似地,用户数据区块的集合可以包括对于电子文件的模板的集合的多个用户的个人数据。
通信网络112可以包括通信介质,数据管理系统102、用户设备104、授权方设备106和分布式账本110可以通过该通信介质彼此通信。通信网络112的示例可以包括但不限于因特网、云网络、无线保真(Wi-Fi)网络、个域网(PAN)、局域网(LAN)或城域网(MAN)。网络环境100中的各种设备可以被配置为根据各种有线和无线通信协议连接到通信网络112。这种有线和无线通信协议的示例可以包括但不限于传输控制协议和互联网协议(TCP/IP)、用户数据报协议(UDP)、超文本传输协议(HTTP)、文件传输协议(FTP)、Zig Bee、EDGE、IEEE802.11、可见光无线通信(Li-Fi)、802.16、IEEE 802.11s、IEEE802.11g、多跳通信、无线接入点(AP)、设备间通信、蜂窝通信协议和蓝牙(BT)通信协议中的至少一种。
在操作中,分布式账本110可以托管去中心化应用(图1中未示出)。在用户设备104上,客户端108可以接收第一用户输入(例如,统一资源定位符(URL))以访问去中心化应用的客户端侧界面。一旦客户端侧界面被加载并显示在用户设备104的用户界面上,客户端108就可以接收第二用户输入作为用户请求以生成用户118感兴趣的对于特定域的电子文件。客户端108可以通过客户端侧接口将用户请求传输到数据管理系统102。如在此简要描述的,数据管理系统102可以基于第二用户输入,启动处理以生成电子文件。
数据管理系统102可以从客户端108接收对生成与用户118相关联的电子文件的用户请求。例如,用户请求可以包括用户ID。数据管理系统102可以识别与接收到的用户请求相关联的域。域的示例可以包括但不限于教育域、医学域或零售/电子商务域。
例如,在教育域的情况下,电子文件可以对应但不限于中学文件、毕业文件、毕业后文件或成绩单文件。此外,在医学域的情况下,电子文件可以对应但不限于医疗处方、病理检查报告或医疗诊断报告。此外,在零售/电子商务域的情况下,电子文件可以对应但不限于销售发票、采购订单或库存/盘存清单。此后,数据管理系统102可以从智能合约组116中选择对于识别出的域的一个或多个智能合约,然后从存储在分布式账本110上的文件信息的多个区块114之一中提取对于电子文件的特定于用户的信息。例如,特定于用户的信息可以包括私人信息(或个人身份信息(PII)),例如姓名、地址、职务、就业细节、财务信息和医疗记录。数据管理系统102可以依赖于用户ID和选择出的一个或多个智能合约来从分布式账本110中提取特定于用户的信息。
数据管理系统102可以确定与电子证书的模板信息相关联的内容ID。根据实施例,内容ID可以对应于散列密钥,基于该散列密钥可以将模板信息进行散列并存储在分布式账本110上的多个区块114中。模板信息可以包括对于域的电子文件通用的信息。例如,中学文件的模板信息可以包括教育机构名称、教育委员会名称、教育委员会/教育机构的水印以及教育委员会/教育机构的授权签署。
在一个实施例中,数据管理系统102可以从分布式账本110上存储的文件信息的多个区块114中提取模板信息。模板信息的这种提取可以基于所确定的内容ID和选择出的一个或多个智能合约。数据管理系统102可以使用内容ID查询选择出的一个或多个智能合约,以从多个区块114中搜索模板信息。例如,内容ID可以被使用作为散列密钥来搜索被散列并存储于分布式账本110的多个区块114上的模板信息。
数据管理系统102可以被配置为基于提取出的特定于用户的信息和提取出的模板信息生成电子文件。可以基于结合提取出的特定于用户的信息和提取出的模板信息来生成电子文件。例如,在教育域的中学文件的情况下,特定于用户的信息可以包括学生姓名、出生日期和选择的科目。模板信息可以包括教育机构的名称、教育委员会的名称、水印信息、文件的授权签署以及用于包括特定于用户的信息的占位符。数据管理系统102可以通过利用模板信息和上述模板信息的占位符中的特定于用户的信息来填充空文件以生成电子文件。此后,数据管理系统102的服务器接口可以将生成的电子文件传输到加载在客户端108上的客户端接口。例如,在图4中,进一步说明了基于分布式账本110生成电子文件。
图2是例示根据本公开的实施例的用于生成电子文件的数据管理系统的框图。结合图1的要素来说明图2。参考图2,在此示出了描绘数据管理系统102的框图200。数据管理系统102包括电路系统202、存储器204、输入/输出(I/O)设备206和网络接口208。I/O设备206可以包括显示设备210和用户界面(UI)212。电路系统202可以被配置为使用网络接口208经由通信网络112与用户设备104、授权方设备106和分布式账本110通信。
电路系统202可以包括适当的逻辑、电路系统、接口和/或代码,其可以被配置为执行存储在存储器204中的指令。一些指令可以与处理的对生成一个或多个域的电子文件的用户请求的操作相关联。此外,这些指令可以与用户验证、文件处理操作、智能合约管理等相关联。电路系统202的实施的示例可以包括中央处理单元(CPU)、基于x86的处理器、精简指令集计算(RISC)处理器、专用集成电路(ASIC)处理器、复杂指令集计算(CISC)处理器、图形处理单元(GPU)、协同处理器、其他处理器和/或其组合。
存储器204可以包括适当的逻辑、电路系统和/或接口,其可以被配置为存储可以由电路系统202执行的指令。存储器204的实施的示例可以包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、硬盘驱动器(HDD)和/或安全数字(SD)卡。
I/O设备206可以包括适当的逻辑、电路系统和接口,其可以被配置为接收输入并基于接收到的输入提供输出。I/O设备206可以包括各种输入和输出设备,其可以被配置为与电路系统202通信。I/O设备206的示例可以包括但不限于触摸屏、键盘、鼠标、操纵杆、显示设备(例如,显示设备210)、麦克风(图2中未示出)和扬声器(图2中未示出)。
网络接口208可以包括适当的逻辑、电路系统、接口和/或代码,其可以被配置为经由通信网络112实现数据管理系统102、用户设备104、授权方设备106和分布式账本110之间的通信。网络接口208可以实施已知技术以支持与通信网络112的有线或无线通信。
网络接口208可以包括但不限于天线、调频(FM)收发器、射频(RF)收发器、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、编码器解码器(CODEC)芯片组、用户身份模块(SIM)卡和/或本地缓冲区。网络接口208可以经由无线通信与诸如因特网、内联网之类的网络和/或诸如蜂窝电话网络、无线局域网(LAN)和/或城域网(MAN)之类的无线网络进行通信。无线通信可以使用诸如长期演进(LTE)、全球移动通信系统(GSM)、增强型数据GSM环境(EDGE)、宽带码分多址(W-CDMA)、码分多址(CDMA)、时分多址(TDMA)、蓝牙、无线保真(Wi-Fi)(e.120g.、IEEE802.11a、IEEE 802.11b、IEEE 802.11g和/或IEEE 802.11n)、互联网协议语音(VoIP)、Wi-MAX、电子邮件协议、即时消息和/或短消息服务(SMS)之类的多种通信标准、协议和技术中的任何。
显示设备210可以包括适当的逻辑、电路系统和接口,其可以被配置为显示数据管理系统102的输出。显示设备210可以用来渲染UI 212。在一些实施例中,显示设备210可以是与数据管理系统102相关联的外部显示设备。显示设备210可以通过若干种已知技术(诸如但不限于,液晶显示(LCD)显示器、光发光二极管(LED)显示器、等离子体显示器或有机LED(OLED)显示技术中的至少一种)或其他显示设备来实施。根据实施例,显示设备210可以指智能眼镜设备、透视显示器、基于投影的显示器、电致变色显示器、透明显示器或头戴式设备(HMD)的显示屏幕。
例如在图3中,进一步说明分布式账本110的多个区块114的创建。例如在图4中,进一步说明基于分布式账本110的电子文件的生成。例如在图4中,进一步说明域的配置。
图3是例示根据本公开的实施例的创建分布式账本上的区块的序列图。结合图1和图2的要素来说明图3。参考图3,在此示出了例示用于创建分布式账本110上证书信息的多个区块114的方法的序列图300。操作的序列可以是从302到324,其可以由网络环境100的各种要素(诸如但不限于,数据管理系统102、客户端108和分布式账本110)执行。此外,在此还示出了示例性的区块的集合326,其可以是多个区块114的一部分,并且可以基于本文描述的方法来创建。
在302处,可以经由客户端108将电子文件上传到数据管理系统102。另外,可以向数据管理系统102提供用户ID连同上传的文件。在某些实施例中,在电子文件被上传之前,客户端108可以接收用户输入,电子扫描文件的硬拷贝(即物理副本)以生成用户118的文件。或者,文件可能已经是电子扫描格式。
对于用户ID,用户118可以提供他/她的用户凭证以通过客户端108访问数据管理系统102。客户端108(或数据管理系统102)可以基于用户凭证确定用户118的用户ID。一经确定,客户端108就可以上传文件(例如,物理副本的电子扫描版本)并将用户ID连同上传的文件一起提供给数据管理系统102。数据管理系统102接收上传的文件。
在304处,数据管理系统102可以检查用户118的授权和认证,以上传文件。换言之,数据管理系统102可以验证用户身份并检查用户118的特定权限以上传文件。例如,用户118可以仅被允许上传特定域的文件,并且一些域对用户118而言可以是限制的。基于用户凭证(或用户ID),数据管理系统102可以认证并授权用户118以进一步提供文件,以便作为用户118的文件信息被处理并上传到分布式账本110。
在306处,数据管理系统102可以基于用户118被认证并被授权上传文件的确定,向客户端108传输授权确认。
在308处,数据管理系统102可以通过使用第一机器学习模型将上传的文件分类到域和/或子域。作为将文件分类到特定域和/或子域的多类分类任务的一部分,可以在来自多个域/子域的文件的模板上训练第一机器学习模型。第一机器学习模型的示例可以包括但不限于,线性回归模型、逻辑回归模型、决策树模型、支持向量机(SVM)模型、朴素贝叶斯模型、人工神经网络(ANN)模型、深度神经网络(DNN)模型、k最近邻(kNN)模型、k均值(k-Means)模型或随机森林模型。例如,考虑上传的文件是特定学科的毕业文件的场景。在应用基于第一机器学习模型的分类器的基础上,数据管理系统102可以将上传的毕业文件分类为属于教育域和毕业子域。
在310处,数据管理系统102可以处理经分类的域和/或子域。作为该处理的一部分,数据管理系统102可以提取与经分类的域和/或子域相关的信息。这种提取出的信息可以包括经分类的域的指示(例如,域名)和与经分类的域相关联的标识符(例如,域ID)。类似地,与经分类的子域相关的提取出的信息(如果有)可以包括经分类的子域的指示和与经分类的子域相关联的标识符(例如,子域ID)。例如,域ID可以对应于分类域的指示的散列,并且类似地,子域ID也可以对应于经分类的子域的指示的散列。
在312处,数据管理系统102可以基于第二机器学习模型从上传的文件中分离模板信息。第二机器学习模型可以被训练,以从被分类到特定域或子域的文件中识别模板信息。第二机器学习模型的示例可以包括但不限于,线性回归模型、逻辑回归模型、决策树模型、SVM模型、朴素贝叶斯模型、ANN模型、DNN模型、k-NN模型、k-Means模型或随机森林模型。
例如,可以基于从先前用于分类到特定域和/或子域的文件中提取出的模板的集合来训练第二机器学习模型。例如,对于作为来自教育域和毕业子域的毕业文件的上传的文件,数据管理系统102可以对上传的文件应用第二机器学习模型以识别诸如水印、大学名称、致谢声明或授权签署的签名之类的模板信息。这种模板信息可以与上传的文件的域/子域相关。此外,第二机器学习模型还可以检测呈现样式,其作为与上传的文件相关联的模板信息的一部分。呈现样式可以包括例如与上传的文件相关联的字体大小、文本/图像方向和文本/图像透明度。数据管理系统102可以创建特定的数据结构来存储识别出的模板信息,包括上传的文件的呈现样式。
在一个实施例中,当试图从上传的文件中分离模板信息时,数据管理系统102可能无法将上传的文件中的信息和与上传的文件的识别出的域和/或子域相关联的模板的集合中的至少一个进行匹配。在这种实施例中,数据管理系统102可以创建对于上传的文件的新模板。可替代的,数据管理系统102可以向客户端108传输文件处理失败指示并请求用户118验证上传的文件。
在一个实施例中,上传的电子文件可以属于某个域和子域。上传的电子文件可以包括与域相关联的自然语言文本。可以基于与上传的电子文件的子域相关联的特定文件结构来将文本布置在上传的电子文件中。数据管理系统102可以包括认知引擎(处理或服务器应用),以对上传的电子文件执行数据分离来确定上传的电子文件的域和子域。因此,基于数据分离,该认知引擎可以识别上传的电子文件的域和子域。
在某些实施例中,数据管理系统102可以基于自然语言处理(NLP)技术对上传的文件执行数据分离以自动地识别上传的文件的域/子域。举例来说,数据管理系统102可以使用NLP技术对上传的文件内的文本执行模式分析,以将上传的文件归类到类别。数据管理系统102可以基于上传的文件的类别对上传的文件的结构执行语义理解。此后,可以基于对上传的文件的结构的语义理解,将上传的文件划分为某域/子域。
例如,数据管理系统102可以通过使用NLP技术来分析文件中的文本以将文件归类为医学类别。由于与医学类别相关联的文件相较于其他域的文件可以具有不同的结构/内容,因此可能需要对文件的域/子域进行识别。基于对医学类别的文件的结构的语义理解,数据管理系统102可以将文件与医学域和实验室报告子域相关联。
在另一个实施例中,数据管理系统102可以被配置为基于识别出的域或子域和提取出的模板信息来检查上传的文件的真实性。例如,数据管理系统102可以检查来自授权方设备106和/或文件验证器的上传的文件的真实性,以检测上传的文件是否是欺诈的。在一个实施例中,上传的文件的真实性校验可以对照数据管理系统102支持的域和子域的列表来执行。例如,用户可以被允许上传与教育域相关的文件,然而,用户可能上传与医学域相关的文件,其可能是数据管理系统102不支持的。在这种情况下,上传的文件可能会被数据管理系统102作为不支持的文件类型而拒绝。
在314处,数据管理系统102可以处理分离的模板信息。作为该处理的一部分,数据管理系统102可以在分布式账本110上创建初始数据区块(例如,Block_0 326A)。数据管理系统102可以将分离的模板信息和与经分类的域和/或子域相关的提取出的信息传输给分布式账本110。分布式账本110可以在初始数据区块中包括分离的模板信息和提取出的信息。
一经创建,分布式账本110就可以确定对于模板信息的内容ID并且将所确定的内容ID插入到初始数据区块中。例如,内容ID可以是初始数据区块中模板信息的散列。例如,初始数据区块可以包括内容ID、域ID、子域ID(如果有)和模板信息。此后,初始数据区块(例如,Block_0 326A)的内容的散列值可以被确定,并被存储在区块本身(例如,区块Block_0326A的散列值“散列#0”)中。初始数据区块(例如,Block_0 326A)可以对应于多个区块114的模板数据区块。
初始数据区块的示例被示为Block_0 326A。应当注意的是,图3中所示的Block_0326A仅作为示例呈现而不能被解释为对本公开的限制。本公开还可以适用于对于多于一个的文件的、和/或对于多于一个的域/子域的初始数据区块。
在316处,分布式账本110可以将与模板信息相关联的内容ID传输到数据管理系统102。
在318处,分布式账本110可以基于第三机器学习模型分离特定于用户的信息。第三机器学习模型可以被训练用来从分类到特定域或子域的文件中检测特定于用户的信息。第三机器学习模型的示例可以包括但不限于,线性回归模型、逻辑回归模型、决策树模型、SVM模型、朴素贝叶斯模型、ANN模型、DNN模型、k-NN模型、k-Means模型或随机森林模型。
例如,可以基于从先前分类到特定域或子域的电子文件中提取出的模板的集合来训练第三机器学习模型。模板的集合可以包括特定格式的与一个或多个用户相关的信息。例如,在上传的文件是毕业文件(与教育域和毕业子域相关联)的情况下,数据管理系统102可以对毕业文件应用第三机器学习模型来检测毕业文件中的特定于用户的信息。例如,数据管理系统102可以检测用户的姓名、学科、学院名称、科目或专业、以及可选地用户在毕业课程中获得的分数或成绩,作为特定于用户的信息。
本领域的一般技术人员将理解,第一机器学习模型、第二机器学习模型和第三机器学习模型的整体功能可以合并在单个机器学习模型中,以用于域或子域识别、模板信息分离以及从上传的文件中分离特定于用户的信息。
在320处,数据管理系统102可以处理特定于用户的信息。作为处理的一部分,数据管理系统102可以创建分布式账本110上的第一用户数据区块(例如,Block_1 326B)。此后,数据管理系统102可以将特定于用户的信息(在318处)连同用户ID、与分离的模板信息相关联的内容ID一起传输到分布式账本110。分布式账本110可以在第一用户数据区块中包括特定于用户的信息、用户ID、内容ID。此后,第一用户数据区块(例如,Block_1 326B)的内容的散列值可以被确定并存储在第一用户数据区块(例如,Block_1 326B的散列值“散列#1”)中。
第一用户数据区块的示例被示为Block_1 326B。应当注意的是,图3中所示的Block_1 326B仅作为示例呈现,并且不能被解释为对本公开的限制。本公开还可以适用于对于多于一个的文件的、和/或对于多于一个的域/子域的用户数据区块。
在322处,分布式账本110可以向数据管理系统102传输区块形成的确认。例如,在形成初始数据区块(即模板数据区块(例如,Block_0 326A)和第一用户数据区块(例如,Block_1 326B))之后,分布式账本110可以向数据管理系统102传输指示多个区块114的示例性区块的集合326的形成的确认。
在324处,数据管理系统102可以将与第一用户数据区块(例如,Block_1 326B)的创建相关联的交易ID传输到客户端108。客户端108可以向用户118展示文件已被成功处理并且与文件相关联的文件信息已上传到分布式账本110的指示。
此处,在表1中呈现了区块链中数据存储的传统实施和本公开实施的比较,用于性能评估,如下所示:
表1:传统实施和本公开实施的区块链区块中的示例性数据存储
如表1所示,在传统实施和本公开实施两者中,区块B1可以对应于具有零字节(无数据,即,0KB大小)的数据区块。对于两种实施,区块B2可以对应于提供方区块。例如,在两种实施中,区块B2可以都具有100KB大小。区块B2可以包括与区块链的提供方相关的信息以及区块B2的散列。此外,区块B3和B4可以对应于两种区块链实施的用户数据区块。在传统实施的情况中,每个用户数据区块(即,B3和B4)可以包括完整文件的数据(包括模板信息和特定于用户的信息)和相应用户数据区块的散列。然而,在本公开实施的情况中,用户数据区块(即,B3和B4)可以仅包括与文件相关联的特定于用户的信息和相应用户数据区块的散列。因此,在本公开实施的情况中,此类用户数据区块(即,B3和B4)的大小(例如,每个10KB)与传统实施的用户数据区块大小(例如,每个100KB)相比可以更小。因此,区块链中数据存储的本公开实施可以具有较低的内存占用,这可以导致数据检索的效率的提高。
图4是示出根据本公开的实施例的基于分布式账本生成电子文件的序列图。结合图1、图2和图3的要素来说明图4。参考图4,在此示出了例示用于生成电子文件的方法的序列图400。操作序列可以是从402到422,并且可以由网络环境100的各种要素(诸如,客户端108、数据管理系统102和分布式账本110)执行。基于这里描述的方法,可以生成示例性电子文件424。
在402处,客户端108可以将带有用户118的用户ID的用户请求传输到数据管理系统102。可以基于通过客户端108从用户118接收到的用户输入来生成用户请求。用户输入可以指示生成和/或与请求实体共享用户118的电子文件的请求。用户输入还可以包括客户端108可以基于其提取用户ID的用户凭证。
在404处,数据管理系统102可以将用户118认证为具有有效身份的有效用户,并授权用户118基于用户ID请求电子文件。在某些实施例中,用户请求还可以包括与用户请求相关联的域和/或子域的指示。在这种实施例中,数据管理系统102可以进一步授权用户118请求基于与用户请求相关联的域和/或子域的指示的电子文件。
在某些实施例中,基于用户ID,数据管理系统102可以验证与接收到的用户请求相关联的用户118的身份。另外或可替代地,数据管理系统102可以确定与接收到的用户请求相关联的用户权限的集合。例如,每个用户可以具有相关联的权限的集合(例如,请求特定域/子域的电子文件的权限)。例如,数据管理系统102可以将用户请求中指示的域或子域和与用户118被允许的域/子域相关联的用户权限的集合进行匹配。基于身份的验证和所确定的用户权限的集合,数据管理系统102可以认证接收到的用户请求。
在406处,数据管理系统102可以基于用户118被认证并被授权请求电子文件的确定来向客户端108传输确认。
在408处,可以执行域配置。作为域配置处理的一部分,可以识别与接收到的用户请求相关联的域和/或子域。另外,可以基于识别出的域和/或子域从智能合约组116中选择一个或多个智能合约。例如,在图5中进一步说明了与域配置相关的操作序列。
在410处,数据管理系统102可以基于在用户请求中接收到的用户ID和从智能合约组116中选择出的一个或多个智能合约,从分布式账本110中提取特定于用户的信息。可以从分布式账本110的文件信息中提取特定于用户的信息。这里,文件信息可以指为对于多个用户的特定于用户的信息和模板信息的集合,并可以被存储在分布式账本110的多个区块114中。
在一个实施例中,为了提取特定于用户的信息,数据管理系统102可以将用户ID输入到与分布式账本110相关联的选择出的一个或多个智能合约中。例如,用户ID可以由选择出的一个或多个智能合约用来查找与用户请求的识别出的域或子域相关联的用户数据区块。基于一个或多个智能合约的响应,数据管理系统102可以确定与用户请求的识别出的域(或子域)相关联的用户数据区块。此后,可以从所确定的用户数据区块中提取特定于用户的信息。
用户数据区块可以对应于文件信息的多个区块114之一,并且可存储例如,对于电子文件的散列、特定于用户的信息和内容ID。例如,用户数据区块可以对应于图3中所示的第一用户数据区块(例如,Block_1326B)。
在412处,分布式账本110可以将提取出的特定于用户的信息传输到数据管理系统102。
在414处,数据管理系统102可以向分布式账本110输入对与用户请求相关联的内容ID的查询。这里,内容ID可以与电子文件的模板信息相关联。数据管理系统102可以从分布式账本110接收对于查询的响应,并可以基于收到的对查询的响应来确定内容ID。在某些实施例中,由于内容ID可以存储在用户数据区块中,分布式账本110可以在从用户数据区块中提取特定于用户的信息的同时,从同一用户数据区块(例如,图3中所示的Block_1 326B)中检索内容ID。
在416处,数据管理系统102可以基于内容ID和从智能合约组116中选择出的一个或多个智能合约从分布式账本110中提取模板信息。可以从存储在分布式账本110上的文件信息中提取模板信息。举例而言,为了提取模板信息,数据管理系统102可以将内容ID输入到选择出的一个或多个智能合约中。例如,数据管理系统102可以基于内容ID执行选择出的一个或多个智能合约,并基于选择出的一个或多个智能合约的响应来确定与用户请求的识别出的域相关联的模板数据区块。这里,模板数据区块可以对应于分布式账本110上的文件信息的多个区块114之一,并且可以存储例如,模板数据区块的散列、模板信息、内容ID、域信息和子域信息。例如,模板数据区块可以对应于图3中所示的初始数据区块(例如,Block_0 326A)。可以从所确定的模板数据区块中提取模板信息。
在某些实施例中,用户请求的识别出的域可以包括子域集。子域集中的每个子域可以具有对于电子文件的不同的模板。例如,教育域可以具有不同的子域,诸如,中学证书、文凭证书和毕业证书。中学文件的模板可能与毕业文件的模板不同。因此,在这种实施例中,数据管理系统102可以基于接收到的用户请求从域集中确定子域,并且进一步基于所确定的子域来确定与电子文件的模板信息相关联的子域ID。数据管理系统102可以进一步基于所确定的子域ID从分布式账本110中提取模板信息。在这种情况下,模板数据区块还可以包括子域ID。例如,子域ID可以作为输入传递给选择出的一个或多个智能合约。这些智能合约可以使用子域ID以在分布式账本110上搜索模板数据区块。此后,可以从可存储着与识别出的子域相关的模板信息的模板数据区块中提取模板信息。
在418处,分布式账本110可以将从模板数据区块中提取出的模板信息传输到数据管理系统102。
在420处,数据管理系统102可以基于提取出的特定于用户的信息和提取出的模板信息生成电子文件。举例来说,利用提取出的特定于用户的信息和属于识别出的域的电子文件的模板的集合之一的提取出的模板信息,数据管理系统102可以创建电子文档(例如,以可移植文件格式(pdf)),并利用提取出的特定于用户的信息和模板信息填充电子文档以生成电子文件。在填充时,数据管理系统102可以遵循电子文件的模板的呈现样式(例如,字体、颜色、边距和布局)。
在图4中,此处示出了示例性电子文件424。例如,示例性电子文件424可以是毕业文件并且可以包括模板信息424A,诸如,机构/大学的名称、致谢声明、水印、和授权签署的签名。模板信息424A还可以包括呈现样式信息,其可以控制模板信息424A和特定于用户的信息424B可如何被并入示例性电子文件424中。呈现样式信息的示例可以包括但不限于,字体大小、文本/图像方向、文本/图像透明度、颜色和文本/图像位置。示例性电子文件424的特定于用户的信息424B可以包括例如,用户名、科目或专业、课程学科、用户118获得的成绩或分数等。
在一个实施例中,数据管理系统102可以被配置为利用存储在用户数据区块中的散列对生成的电子文件进行数字签名。例如,数据管理系统102可以利用对应于存储在用户数据区块中的散列值(例如,图3所示的第一用户数据区块Block_1 326B的“散列#1”)的散列424C对电子文件424进行数字签名。
在422处,客户端108可以检索电子文件。或者,数据管理系统102可以将电子文件作为特定文档格式的可读文档与客户端108共享。特定文档格式的示例可以包括但不限于,pdf文档、附件(postscript)文档、图像文档、网页或文本文档。
与客户端108共享的电子文件可以使用与用户数据区块相关联的散列值进行数字签名。在一个实施例中,数据管理系统102可以在客户端108上向用户118显示用于基于散列值验证电子文件的选项。此后,通过客户端108,数据管理系统102可以接收用于选择所显示的选项的用户输入。基于该接收到的指示选择所显示的选项的用户输入,数据管理系统102可以输出存储在客户端108的用户数据区块上的散列。用户设备104可以基于从数据管理系统102输出的散列值和与电子文件相关联的散列的比较来校验电子文件。
图5是说明根据本公开的实施例的基于用户请求的域配置的序列图。结合图1、图2、图3和图4的要素来说明图5。参考图5,此处示出了例示基于生成电子文件的用户请求进行域配置的方法(在图4的408处)的序列图500。操作序列可以是从502到512,并且可以由网络环境100的各种要素(诸如,客户端108、数据管理系统102和分布式账本110)执行。最初,用户118可以通过客户端108提供用户输入,该用户输入可以作为用户请求与数据管理系统102共享。用户输入可以通过显示在客户端108上的某些字段或选项提供。例如,此类字段可以允许用户118在提交用户请求之前选择域或子域。用户请求可以包括用户ID、此类字段的指示以及用户118通过此类字段输入的值。例如,用户请求可以是与特定域和/或子域相关联的电子文件。用户118可以在一个或多个字段中输入指示域和/或子域的值。
在502处,数据管理系统102可以使用机器学习模型分析接收到的用户请求。例如,用户请求可以由数据管理系统102的认知引擎基于机器学习模型和/或自然语言处理(NLP)模型进行分析。在一个实施例中,机器学习模型可以应用于诸如用户ID、字段的指示以及用户118通过字段输入的值之类的信息,以分析接收到的用户请求。机器学习模型的示例可以包括但不限于,线性回归模型、逻辑回归模型、决策树模型、SVM模型、朴素贝叶斯模型、ANN模型、DNN模型、k-NN模型、k-Means模型或随机森林模型。
在504处,数据管理系统102可以基于用户ID和对用户请求的分析(如在502处所描述的)来识别与用户请求相关联的域和/或子域。域的示例可以包括但不限于,教育域、医学/保健域或零售域。子域的示例可以包括但不限于教育域的中学证书或毕业;医学/保健域的医疗处方或实验室报告;以及零售域的发票或采购订单。
例如,在用户请求是毕业文件的情况下,用户118可以提供详细信息,诸如,用户名、文件类型(例如,成绩单)、大学名称和课程名称/学科。这些用户提供的详细信息可以包括在用户请求中。基于对用户请求中的这些细节的分析,数据管理系统102可以将用户请求的域识别为教育并且将子域识别为毕业。
在506处,数据管理系统102可以向分布式账本110传输请求以检索特定于域的信息。在504处,可以基于域和/或子域的识别来传输对特定于域的信息的请求。
在508处,分布式账本110可以将与识别出的域和/或子域相关联的特定于域的信息传输到数据管理系统102。特定于域的信息可以包括域和/或子域的指示,以及域和/或子域的标识符(例如,识别出的域的域ID和/或识别出的子域的子域ID)。域和/或子域的标识符可以分别对应于域和/或子域的指示的散列。另外或可替代地,特定于域的信息可以包括与用户118相关联的授权配置列表。授权配置列表可以对应于与用户请求相关联的域和/或子域的智能合约的授权列表。
在510处,数据管理系统102可以从特定于域的信息中指定的智能合约的授权列表(也被称为智能合约组116)中选择一个或多个智能合约。这种选择还可以基于接收到的用户请求被认证的确定。例如,数据管理系统102可以使用域ID和/或子域ID(在508处确定)在授权列表中搜索一个或多个智能合约。
在512处,数据管理系统102可以与客户端108共享域配置确认。一旦域配置确认被共享,识别出的域和/或子域就可以被确定为针对用户请求而配置的。此后,基于图4中410到422的操作,可以向用户118提供用户118通过用户请求所请求的电子文件。
图6是例示根据本公开的实施例的图2中数据管理系统的示例性实施的序列图。结合图1、图2、图3、图4和图5的要素来说明图6。参考图6,此处示出了例示图2中数据管理系统102的示例性实施的序列图600。操作序列可以是从608到626,并且可以由各种要素(诸如,数据管理系统102、电子设备602、提供方系统604和文件授权方系统606)执行。
电子设备602可以对应于用户设备104并可以包括与电子设备602相关联的客户端(图6中未示出)。类似地,提供方系统604可对应于提供方的应用服务器,其可以托管至少一个网页应用以允许用户基于用户的电子文件(例如,教育证书)来请求提供方(例如,大学)供应的产品或服务。文件授权方系统606可以对应于授权方设备106,其可以被配置为验证用户的电子文件。
在608处,电子设备602可以经由客户端向提供方系统604传输对提供由提供方系统604供应的产品或服务的请求。客户端可以接入可允许用户请求产品或服务的网页应用。例如,产品或服务可以对应于保险公司或银行公司提供的健康保险产品。
在610处,提供方系统604可以向电子设备602传输用户的对相关电子文件的请求。例如,在产品或服务是健康保险产品的情况下,提供方系统604可以请求与用户的医疗报告相关联的电子文件。
在612处,电子设备602可以向数据管理系统102传输具有用户ID的用于检索电子文件的用户请求(以类似于图4中说明的方式)。可以基于传输的用户请求如图4中所说明的那样执行从402到422的操作。
在614处,数据管理系统102可以通过类似于图4中说明的方式与电子设备602共享电子文件。
在616处,电子设备602可以将用户的电子文件传输到提供方系统604。可选地,代替610、612、614和616的操作,可以执行以下从618到620的操作以获得电子文件。
在618处,提供方系统604可以直接向数据管理系统102传输对电子文件的请求。在这种情况下,提供方系统604可以从电子设备602接收用户的用户ID和对产品或服务的请求。对电子文件的请求可以包括用户ID。
在620处,数据管理系统102可以与提供方系统604共享用户的电子文件。
在622处,提供方系统604可以向文件授权方系统606传输验证电子文件的请求。这种验证的请求可以包括可以利用散列值进行数字签名的电子文件。
文件授权方系统606可以从电子文件中提取散列值,并请求数据管理系统102共享与分布式账本110上的用户的用户数据区块相关联的散列。基于该请求,文件授权方系统606可以接收与用户数据区块相关联的所请求的散列,并且可以将来自电子文件的散列与所请求的散列进行比较以校验电子文件。
在624处,文件授权方系统606可以基于电子文件的验证向提供方系统604传输验证证实。如此,当来自电子文件的散列值和存储在与用户相关联的用户数据区块上的输出的散列值匹配时,可以传输验证证实。
在626处,提供方系统604可以基于验证证实向电子设备602传输证实响应。在验证证实指示电子文件有效的情况下,证实响应可对应于对接受提供方向用户提供产品/服务的用户请求的证实。
图7是例示根据本公开的实施例的用于基于分布式账本生成电子文件的示例性方法的流程图。结合图1、图2、图3、图4、图5和图6的要素来说明图7。参考图7,此处示出了流程图700。流程图700的示例性方法可以由任何计算系统(例如,由图2中的数据管理系统102)执行。流程图700的示例性方法可以开始于702并进行到704。
在704处,可以接收对电子文件的用户请求。在一个或多个实施例中,数据管理系统102可以被配置为从用户设备104的客户端108接收对电子文件的用户请求。用户请求可以包括用户118的用户ID。
在706处,可以识别与接收到的用户请求相关联的域。在一个或多个实施例中,数据管理系统102可以被配置为基于用户ID识别与接收到的用户请求相关联的域。例如在图5中,进一步说明了与接收到的用户请求相关联的域的识别。
在708处,可以从智能合约组116中选择对于识别出的域的一个或多个智能合约。在一个或多个实施例中,数据管理系统102可以被配置为从智能合约组116中选择出一个或多个智能合约。例如在图5中,进一步说明了对一个或多个智能合约的选择。
在710处,可以从存储在分布式账本110上的文件信息中提取对于电子文件的特定于用户的信息。在一个或多个实施例中,数据管理系统102可以被配置为基于用户ID和选择出的一个或多个智能合约,从存储在分布式账本110上的文本信息中提取对于电子文件的特定于用户的信息。在一个实施例中,数据管理系统102可以使用用户ID作为输入来执行一个或多个智能合约,以从分布式账本110中确定与识别出的域相关联的用户数据区块。此后,数据管理系统102可以从分布式账本110上所确定的用户数据区块中提取特定于用户的信息。例如在图4中,进一步说明了对特定于用户的信息的提取。
在712处,可以确定与对于电子文件的模板信息相关联的内容ID。在一个或多个实施例中,数据管理系统102可以被配置为确定与对于电子文件的模板信息相关联的内容ID。在一个实施例中,数据管理系统102可以向分布式账本110输入对内容ID的查询,并基于接收到的对查询的响应来确定内容ID。例如在图4中,进一步说明了内容ID的确定。
在714处,可以确定存储的文件信息的模板信息。在一个或多个实施例中,数据管理系统102可以被配置为基于所确定的内容ID和选择出的一个或多个智能合约来确定来自分布式账本110中的模板信息。在一个实施例中,数据管理系统102可以将内容ID输入到选择出的一个或多个智能合约中,并基于对选择出的一个或多个智能合约的响应从分布式账本110中确定与识别出的域相关联的模板数据区块。此后,电路系统202可以从所确定的模板数据区块中提取模板信息。例如在图4中,进一步说明了模板信息的确定。
在716处,可以生成电子文件。在一个或多个实施例中,数据管理系统102可以被配置为基于提取出的特定于用户的信息和提取出的模板信息生成电子文件。在一个实施例中,可以利用与用户数据区块的散列对应的散列值对生成的电子文件进行数字签名。然后,数据管理系统102可以与用户设备104的客户端108共享数字签名的电子文件。例如在图4中,进一步说明了电子文件的生成和电子文件的示例。控制可以传递到结束。
本公开的各种实施例可以提供非暂态计算机可读介质和/或存储介质、和/或非暂态机器可读介质和/或存储介质,其上存储有可由机器和/或计算机执行的指令(诸如,数据管理系统),用于基于分布式账本生成电子文件。至少一个代码部分可以使机器和/或计算机执行包括接收对电子文件的用户请求的操作。用户请求可以包括用户ID。数据管理系统可以通信地耦合到分布式账本,该分布式账本存储多个用户的文件信息和控制访问存储的文件信息的智能合约组。该操作还包括识别与接收到的用户请求相关联的域。操作还包括针对识别出的域从智能合约组中选择至少一个智能合约。此外,操作可以包括基于用户ID和选择出的至少一个智能合约,从存储的文件信息中提取电子文件的特定于用户的信息。此外,操作包括基于所确定的内容ID和选择出的至少一个智能合约,确定针对电子文件的与模板信息相关联的内容ID并从存储的文件信息中提取模板信息。操作还可以包括基于提取出的特定于用户的信息和提取出的模板信息生成电子文件。
本公开的示例性方面可以包括数据管理系统102,其包括通信地耦合到分布式账本110的电路系统202,该分布式账本110存储多个用户的文件信息和控制对存储的文件信息的访问的智能合约组116。电路系统202可以被配置为接收对电子文件的用户请求。用户请求可以包括用户ID。电路系统202还可以被配置为识别与接收到的用户请求相关联的域。此外,电路系统202可以被配置为针对识别出的域从智能合约组116中选择至少一个智能合约。电路系统202还可以被配置为基于用户ID和选择出的至少一个智能合约,从存储的文件信息中提取电子文件的特定于用户的信息。此外,电路系统202还可以被配置为确定与电子文件的模板信息相关联的内容ID,并基于所确定的内容ID和选择出的至少一个智能合约从存储的文件信息中提取模板信息。电路系统202还可以被配置为基于提取出的特定于用户的信息和提取出的模板信息生成电子文件。
根据实施例,电路系统202可以被配置为基于与接收到的用户请求相关联的识别出的域和用户ID来认证接收到的用户请求。电路系统202还可以被配置为验证与接收到的用户请求相关联的多个用户中的用户的身份。此后,电路系统202可以确定与接收到的用户请求相关联的用户权限的集合。此外,电路系统202可以基于对身份的验证和所确定的用户权限的集合来认证接收到的用户请求。
根据实施例,电路系统202可以被配置为对与接收到的用户请求相关联的域和/或子域执行域配置。为了执行域配置,电路系统202可以被配置为使用机器学习模型分析接收到的用户请求。此后,电路系统202可以基于对接收到的用户请求和用户ID的分析来识别与接收到的用户请求相关联的域。此外,电路系统202可以从分布式账本110中检索对于识别出的域的特定于域信息。电路系统202还可以被配置为基于检索到的识别出的域的特定于域信息和接收到的用户请求被认证的确定,来选择至少一个智能合约。
根据实施例,分布式账本110存储多个区块114,该多个区块114可以包括模板数据区块的集合和用户数据区块的集合。模板数据区块的集合可以与对于一个或多个域的电子文件的模板的集合对应。用户数据区块的集合可以包括对于一个或多个域的多个用户的个人数据。在一个实施例中,提取出的特定于用户的信息和提取出的模板信息可以属于一个或多个域中识别出的域的电子文件的模板的集合之一。
根据实施例,电路系统202可以被配置为向分布式账本110输入对内容ID的查询。电路系统202可以从分布式账本110接收对输入查询的响应并且还基于接收到的对输入查询的响应来确定模板信息的内容ID。
根据实施例,电路系统202可以被配置为将用户ID输入到至少一个智能合约。然后,电路系统202可以基于至少一个智能合约的响应从分布式账本110中确定与识别出的域相关联的用户数据区块。用户数据区块可以是分布式账本110上存储的文件信息的多个区块114之一。此外,电路系统202可以从分布式账本110上确定的用户数据区块中提取特定于用户的信息。在一个实施例中,用户数据区块可以存储对于电子文件的散列、特定于用户的信息和内容ID。
根据实施例,电路系统202可以被配置为将内容ID输入到至少一个智能合约。此后,电路系统202可以基于至少一个智能合约的响应从分布式账本110确定与识别出的域相关联的模板数据区块。模板数据区块可以是分布式账本110上存储的文件信息的多个区块114之一。此外,电路系统202可以从所确定的模板数据区块中提取模板信息。在一个实施例中,模板数据区块可以存储模板数据区块的散列、模板信息、内容ID、域信息和子域信息。
根据实施例,识别出的域可以包括子域集,每个子域具有对于电子文件的不同的模板。电路系统202还可以被配置为基于接收到的用户请求从与识别出的域相关联的子域集中确定子域。此后,电路系统202可以基于所确定的子域来确定与电子文件的模板信息相关联的子域ID。电路系统202可以被配置为进一步基于所确定的子域ID来提取模板信息。
根据实施例,电路系统202可以被配置为将生成的电子文件作为可读文件传输到用户设备104的客户端108。根据实施例,电路系统202还可以被配置为利用存储在用户数据区块中的散列对生成的电子文件进行数字签名。此后,电路系统202可以在用户设备104的客户端108上显示选项以验证利用存储在用户数据区块中的散列进行签名的电子文件。电路系统202可以接收用于选择所显示的选项的用户输入。此后,电路系统202可以在客户端108上输出存储在用户数据区块中的散列。根据实施例,可以基于输出的散列和与电子文件相关联的散列的比较在用户设备104上校验电子文件。
本公开可以用硬件或者硬件和软件的组合来实现。本公开可以在至少一个计算机系统中以集中方式或以分布式方式实现,其中不同的元件可以分布在若干互连的计算机系统中。适于执行这里描述的方法的计算机系统或其他装置可能是合适的。硬件和软件的组合可以是具有计算机程序的通用计算机系统,该计算机程序在加载和执行时可以控制计算机系统以使其执行本文所描述的方法。本公开可以在硬件中实现,该硬件包括还执行其他功能的集成电路的一部分。
本公开还可以嵌入在计算机程序产品中,该计算机程序产品包括使得能够实施本文描述的方法的所有特征,并且当加载到计算机系统中时能够执行这些方法。在本上下文中,计算机程序是指以任何语言、代码或符号表示的指令集的任何表达,旨在使具有信息处理能力的系统或者直接执行特定功能,或者在以下中的任一或两者之后执行特定功能:a)转换为另一种语言、代码或符号;b)以不同的物质形式进行复制。
虽然参靠某些实施例描述了本公开,但是本领域技术人员将理解,在不脱离本公开的范围的情况下,可以进行各种改变,并且可以替换等同物。此外,在不脱离本公开的范围的情况下,可以进行许多修改以使特定情况或材料适于本公开的教导。因此,旨在本公开不限于所公开的特定实施例,而是本公开将包括落入所附权利要求书的范围内的所有实施例。
Claims (20)
1.一种数据管理系统,包括:
通信地耦合到分布式账本的电路系统,所述分布式账本存储对于多个用户的文件信息和控制访问存储的文件信息的智能合约组,其中所述电路系统被配置为:
接收对电子文件的用户请求,所述用户请求包含用户标识符(ID);
识别与接收到的用户请求相关联的域;
从所述智能合约组中选择对于识别出的域的至少一个智能合约;
基于用户ID和选择出的所述至少一个智能合约,从存储的文件信息中提取对于所述电子文件的特定于用户的信息;
确定与对于所述电子文件的模板信息相关联的内容ID;
基于所确定的内容ID和选择出的所述至少一个智能合约,从存储的文件信息中提取模板信息;以及
基于提取出的特定于用户的信息和提取出的模板信息来生成所述电子文件。
2.根据权利要求1所述的数据管理系统,其中所述电路系统还被配置为基于与所述接收到的用户请求相关联的所述识别出的域和用户ID来认证所述接收到的用户请求。
3.根据权利要求1所述的数据管理系统,其中所述电路系统还被配置为:
验证与所述接收到的用户请求相关联的所述多个用户中的用户的身份;
确定与所述接收到的用户请求相关联的用户权限的集合;以及
基于身份的验证和所确定的所述用户权限的集合来认证所述接收到的用户请求。
4.根据权利要求1所述的数据管理系统,其中所述电路系统还被配置为:
通过机器学习模型分析所述接收到的用户请求;
基于对所述接收到的用户请求的分析和用户ID,识别与所述接收到的用户请求相关联的域;
从分布式账本中检索对于识别出的域的特定于域的信息;以及
基于检索到的所述识别出的域的特定于域的信息和所述接收到的用户请求被认证的确定,选择所述至少一个智能合约。
5.根据权利要求1所述的数据管理系统,其中所述电路系统还被配置为:
向分布式账本输入对内容ID的查询;
从分布式账本接收对所输入的查询的响应;以及
基于接收到的对所输入的查询的响应来确定对于所述模板信息的内容ID。
6.根据权利要求1所述的数据管理系统,其中所述电路系统还被配置为:
将用户ID输入到所述至少一个智能合约;
基于所述至少一个智能合约的响应,从分布式账本中确定与所述识别出的域相关联的用户数据区块,
其中,所述用户数据区块是分布式账本上所述存储的文件信息的多个区块之一;以及
从分布式账本上的所确定的用户数据区块中提取特定于用户的信息。
7.根据权利要求6所述的数据管理系统,其中所述用户数据区块存储对于所述电子文件的散列、特定于用户的信息和内容ID。
8.根据权利要求7所述的数据管理系统,其中所述电路系统还被配置为利用存储在用户数据区块中的散列来对生成的所述电子文件进行数字签名。
9.根据权利要求8所述的数据管理系统,其中所述电路系统还被配置为:
在用户设备的客户端上显示选项,以验证利用存储在用户数据区块中的散列进行签名的所述电子文件;
接收用于选择所显示的选项的用户输入;以及
在客户端上输出存储在用户数据区块中的散列,
其中,在用户设备上,基于输出的散列和与所述电子文件相关联的散列之间的比较来校验所述电子文件。
10.根据权利要求1所述的数据管理系统,其中所述电路系统还被配置为:
将内容ID输入到所述至少一个智能合约;
基于所述至少一个智能合约的响应,从分布式账本中确定与所述识别出的域相关联的模板数据区块,
其中,所述模板数据区块是分布式账本上所述存储的文件信息的多个区块之一;以及
从所确定的模板数据区块中提取模板信息。
11.根据权利要求10所述的数据管理系统,其中模板数据区块存储模板数据区块的散列、模板信息、内容ID、域信息和子域信息。
12.根据权利要求1所述的数据管理系统,其中所述分布式账本存储多个区块,所述多个区块包括模板数据区块的集合和用户数据区块的集合,其中:
所述模板数据区块的集合与对于一个或多个域的所述电子文件的模板的集合对应,
所述用户数据区块的集合包含对于所述一个或多个域的所述多个用户的个人数据,并且
所述提取出的特定于用户的信息和所述提取出的模板信息属于对于所述一个或多个域中的所述识别出的域的所述电子文件的模板的集合之一。
13.根据权利要求1所述的数据管理系统,其中所述识别出的域包括子域集,每个子域具有对于电子文件的不同的模板。
14.根据权利要求13所述的数据管理系统,其中所述电路系统还被配置为:
基于所述接收到的用户请求,从与所述识别出的域相关联的子域集中确定子域;
基于确定的子域,确定与对于所述电子文件的模板信息相关联的子域ID;以及
还基于所确定的子域ID来提取模板信息。
15.根据权利要求1所述的数据管理系统,其中所述电路系统还被配置为将生成的所述电子文件作为可读文档传输到用户设备的客户端。
16.一种方法,包括:
在通信地耦合到分布式账本的数据管理系统中,所述分布式账本存储对于多个用户的文件信息和控制访问存储的文件信息的智能合约组:
接收对电子文件的用户请求,所述用户请求包含用户标识符(ID);
识别与接收到的用户请求相关联的域;
从所述智能合约组中选择对于识别出的域的至少一个智能合约;
基于用户ID和选择出的所述至少一个智能合约,从存储的文件信息中提取对于所述电子文件的特定于用户的信息;
确定与对于所述电子文件的模板信息相关联的内容ID;
基于所确定的内容ID和选择出的所述至少一个智能合约,从存储的文件信息中提取模板信息;以及
基于提取出的特定于用户的信息和提取出的模板信息来生成所述电子文件。
17.根据权利要求16所述的方法,还包括:
将用户ID输入到所述至少一个智能合约;
基于所述至少一个智能合约的响应,从分布式账本中确定与所述识别出的域相关联的用户数据区块,
其中,所述用户数据区块是分布式账本上所述存储的文件信息的多个区块之一;以及
从分布式账本上的所确定的用户数据区块中提取特定于用户的信息。
18.根据权利要求17所述的方法,其中所述用户数据区块存储对于电子文件的散列、特定于用户的信息和内容ID。
19.根据权利要求18所述的方法,还包括利用存储在用户数据区块中的散列对生成的所述电子文件进行数字签名。
20.根据权利要求16所述的方法,还包括:
将内容ID输入到所述至少一个智能合约;
基于所述至少一个智能合约的响应,从分布式账本中确定与所述识别出的域相关联的模板数据区块,
其中,所述模板数据区块是分布式账本上所述存储的文件信息的多个区块之一;以及
从所确定的模板数据区块中提取模板信息。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/601,718 | 2019-10-15 | ||
US16/601,718 US11403283B2 (en) | 2019-10-15 | 2019-10-15 | Distributed ledger based generation of electronic documents |
PCT/IB2020/059344 WO2021074740A1 (en) | 2019-10-15 | 2020-10-05 | Distributed ledger based generation of electronic documents |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113892094A true CN113892094A (zh) | 2022-01-04 |
Family
ID=72915880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080039178.0A Pending CN113892094A (zh) | 2019-10-15 | 2020-10-05 | 基于分布式账本的电子文件生成 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11403283B2 (zh) |
EP (1) | EP4028926A1 (zh) |
CN (1) | CN113892094A (zh) |
WO (1) | WO2021074740A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210295956A1 (en) * | 2020-03-18 | 2021-09-23 | Eresearchtechnology, Inc. | Systems and Methods for Hashing-Based Assessment of Electronic Clinical Trial Outcomes |
WO2021220226A1 (en) * | 2020-04-29 | 2021-11-04 | TON Venture Studio Ltd. | Systems and methods for decentralization of blockchain-based processes employing a blockchain-associated front end or blockchain-associated user interface |
US20220027350A1 (en) * | 2020-07-21 | 2022-01-27 | Gigaforce, Inc. | Blockchain enabled service provider system |
US11921676B2 (en) | 2021-11-29 | 2024-03-05 | International Business Machines Corporation | Analyzing deduplicated data blocks associated with unstructured documents |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11130042B2 (en) * | 2016-02-02 | 2021-09-28 | Bao Tran | Smart device |
US10046228B2 (en) * | 2016-05-02 | 2018-08-14 | Bao Tran | Smart device |
US20180205546A1 (en) * | 2016-12-31 | 2018-07-19 | Assetvault Limited | Systems, methods, apparatuses for secure management of legal documents |
WO2018136944A1 (en) | 2017-01-23 | 2018-07-26 | Hasan Syed Kamran | Universal bchain e3a connections (ubec) |
WO2018161007A1 (en) | 2017-03-03 | 2018-09-07 | Mastercard International Incorporated | Method and system for storage and transfer of verified data via blockhain |
US10255342B2 (en) | 2017-04-12 | 2019-04-09 | Vijay K. Madisetti | Method and system for tuning blockchain scalability, decentralization, and security for fast and low-cost payment and transaction processing |
US11488121B2 (en) * | 2017-05-11 | 2022-11-01 | Microsoft Technology Licensing, Llc | Cryptlet smart contract |
CA3065319A1 (en) * | 2017-06-01 | 2018-12-06 | Schvey, Inc. d/b/a/ Axoni | Distributed privately subspaced blockchain data structures with secure access restriction management |
US11055802B2 (en) * | 2017-09-22 | 2021-07-06 | Sensormatic Electronics, LLC | Methods and apparatus for implementing identity and asset sharing management |
US20190116036A1 (en) * | 2017-10-17 | 2019-04-18 | Hcl Technologies Limited | System and method for building a blockchain application |
US11323273B2 (en) * | 2017-10-24 | 2022-05-03 | Tata Consultancy Services Limited | System and method for generating a blockchain application for different blockchain technologies |
US11227457B2 (en) * | 2017-12-02 | 2022-01-18 | International Business Machines Corporation | Blockchain managed storage |
US10958436B2 (en) * | 2017-12-28 | 2021-03-23 | Industrial Technology Research Institute | Methods contract generator and validation server for access control of contract data in a distributed system with distributed consensus |
KR20210093896A (ko) * | 2018-10-16 | 2021-07-28 | 엘루비오, 아이엔씨. | 탈중앙화 콘텐츠 패브릭 |
-
2019
- 2019-10-15 US US16/601,718 patent/US11403283B2/en active Active
-
2020
- 2020-10-05 WO PCT/IB2020/059344 patent/WO2021074740A1/en unknown
- 2020-10-05 CN CN202080039178.0A patent/CN113892094A/zh active Pending
- 2020-10-05 EP EP20793162.7A patent/EP4028926A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20210109919A1 (en) | 2021-04-15 |
EP4028926A1 (en) | 2022-07-20 |
WO2021074740A1 (en) | 2021-04-22 |
US11403283B2 (en) | 2022-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11354495B2 (en) | System and method for reliable extraction and mapping of data to and from customer forms | |
CN113892094A (zh) | 基于分布式账本的电子文件生成 | |
US20220060340A1 (en) | File Validation Using a Blockchain | |
US12008315B2 (en) | Automatic generation and population of digital interfaces based on adaptively processed image data | |
US9934213B1 (en) | System and method for detecting and mapping data fields for forms in a financial management system | |
US11734771B2 (en) | System and method for detecting and mapping data fields for forms in a financial management system | |
WO2016026432A1 (zh) | 名片信息查询方法和云服务器 | |
US9870420B2 (en) | Classification and storage of documents | |
US20220083503A1 (en) | Digital file recognition and deposit system | |
US11863687B2 (en) | Post-completion action management in online document system | |
US9652445B2 (en) | Methods and systems for creating tasks of digitizing electronic document | |
KR20190110873A (ko) | 비정형 텍스트 이미지에서 텍스트 데이터를 추출하는 방법 및 장치 | |
US9842307B2 (en) | Methods and systems for creating tasks | |
US20220358415A1 (en) | System and Method for Tagging Data | |
CA2853386C (en) | Mobile solution for importing and signing third-party electronic signature documents | |
US20200379661A1 (en) | Modular data processing and storage system | |
US20210374216A1 (en) | System and method for identity creation and assertion | |
US8867838B2 (en) | Method and system for a text data entry from an electronic document | |
CN112685439B (zh) | 针对风控系统的造数方法、系统、装置及存储介质 | |
CN110413366B (zh) | 一种基于区块链的截屏方法、装置、设备及存储介质 | |
CN112669000A (zh) | 政务事项处理方法、装置、电子设备及存储介质 | |
US11790677B2 (en) | System for distributed server network with embedded image decoder as chain code program runtime | |
KR102566991B1 (ko) | 핑거프린트를 이용한 전자간인 서비스 제공 시스템 | |
CN112288385A (zh) | 一种电子证件处理方法和装置 | |
KR20230084706A (ko) | 클라우드 기반의 컨텐츠 추천 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |