Blockchain Network Supplier Verification
20250322412 ยท 2025-10-16
Assignee
Inventors
Cpc classification
International classification
Abstract
A supplier verification system includes a processing system and a non-transitory, computer-readable storage medium having encoded thereon, machine instructions for implementing and managing a blockchain network. A processor executes the machine instructions to receive a raw materials supplier identity and a description of a batch of raw materials from the supplier, receive material test results from a specified number of independent entities analyzing compliance of the raw materials with given quality specifications, store the material test results in a block chain that includes a smart contract for confirming the first material test results, and execute the smart contract to generate determine a satisfactory variation in the confirmation scores, and, based on a satisfactory variation, execute a block validation routine.
Claims
1. A supplier verification system, comprising: a processing system; and a non-transitory, computer-readable storage medium having encoded thereon, machine instructions for implementing and managing a blockchain network based structure that verifies a provenance and integrity of raw materials suppliers, and raw materials supplied therefrom, wherein a processor executes the machine instructions to: receive a raw materials supplier identity, receive an identification and a description of a batch of raw materials provided by the raw materials supplier, receive a first material test result from a first entity analyzing compliance of materials from the batch of raw materials with a given quality specification for the raw materials, receive one or more subsequent material test results analyzing compliance of materials from the batch of raw materials with the given quality specification for the raw materials from one or more subsequent entities independent of the first entity and independent of the raw materials supplier, store the first material test result and the one or more subsequent material test results in a block of a block chain, the block chain comprising a smart contract for confirming the first material test results and the one or more subsequent test results, and execute the smart contract to generate confirmation scores, wherein the execution produces a degree of validation score based on a definable satisfactory variation in the confirmation scores, and wherein a satisfactory variation causes the processor to execute a block validation routine.
2. The supplier verification system of claim 1, wherein a verified block is made accessible to the raw materials supplier and to one or more intended recipients of the raw materials.
Description
FIGURES
[0016]
[0017]
[0018]
[0019]
[0020]
DETAILED DESCRIPTION
[0021] Exemplary embodiments are directed to methods and systems for securely storing and sharing the results of material testing. These materials include, but are not limited to, materials, for example, raw materials, that are supplied by material suppliers and that are received and utilized by the recipients of those materials. In one embodiment, the materials are raw materials, and the suppliers of the materials are raw material suppliers. In general, suitable materials include, but are not limited to, liquids, chemicals, compounds, minerals, wood, metals, plastics, polymers, and components that are used in the manufacture or are incorporated into other devices and finished products. In general, the suppliers of the materials provide the materials in lots. The recipients of the materials can utilize the materials as-delivered, can incorporate the materials into other products, for example, mixtures or supplements, or can utilize the materials in the manufacture of finished products. In one embodiment, the recipients of the material is a manufacturer, for example, a supplement manufacturer, and the materials are raw materials. In one embodiment, the raw material is used to formulate or create a supplement such as a therapeutic or nutritional supplement.
[0022] Systems and method in accordance with exemplary embodiments provide for the secure storage and sharing of information relevant to the quality of the material in a given lot of material. The quality of the material is evaluated in accordance with material quality specifications that are determined or established by the requestor or recipient of the material. In general, these material quality specifications prescribed qualities and functions of the material or component that are important or relevant to the use and incorporation of that material into the finished product. These qualities will vary from product to product. Evaluation of a given lot of material in accordance with the material quality specification includes testing of the given lot of material. This testing is conducted by different entities including the supplier of the material, third-party or independent testing laboratories, the requestor of the material, and a recipient of the raw material.
[0023] Referring initially to
[0024] The system also includes a material and supplier verification system 214. Each material supplier is in communication with the material and supplier verification system 214. In one embodiment, the material and supplier verification system includes at least one computing system 210. The computing system includes one or more logical processors which are used to execute computer-readable code. Through execution of the computer-readable code the computing system provides the desired functionality of modules for the material and supplier verification system. Suitable computing systems include servers, stand-alone computer systems and distributed computing systems. The material and supplier verification system includes one or more storage media or computer readable storage systems 212.
[0025] The material requesters 202, material suppliers 204 and independent testing laboratories 208 are in communication with the supplier verification system 214 across one or more local or wide area networks 216. In one embodiment, the material and supplier verification system includes a data collection tool 206 to input the testing results. The data collection tool 206 is provided at each material requester 202, material supplier 204 and independent testing laboratory 208, for example, on user equipment or other computing systems located at the material requester 202, material supplier 204 or independent testing laboratory 208. Each material requester 202, material supplier 204 and independent testing laboratory 208 utilizes the data collection system 206 to communicate material testing results, e.g., initial sets of material testing results and confirmation or verification sets of material testing results or data to the supplier verification system. The material testing results are the verification testing data generated to confirm compliance with the material quality specification, to confirm the testing data provided by the material supplier and to confirm the CoA provided by the material supplier. The data collection tool can be, for example, a spreadsheet into which the data is entered.
[0026] In one embodiment, the data collection tool is OmniBlocks, which is commercially available from Research Blocks Technologies, Inc. Each instance of the data collection tool running at a material requester 202, a material supplier 204 or an independent testing laboratory 208 is in communication with the supplier verification system through one or more local or wide area networks 216. Therefore, material testing results are uploaded to the supplier verification system. In one embodiment, the computing system of the material and supplier verification system includes a secure communication module that can encrypt communications among the material requesters, material suppliers, independent testing laboratories and material supplier and verification system. In one embodiment, material testing results are encrypted by the secure communication module prior to being communicated from each instance of the data collection system to the supplier verification system. For example, the material testing results or data recorded in the data collection system and retrieved by the material and supplier verification system is secured using published blockchain or hyperledger cryptography, for example, the SHA-256 cryptographic hash function. This ensures that the material testing results or data are secure and can be trusted.
[0027] In one embodiment, the material and supplier verification system includes additional material supplier verification criteria. The additional material supplier verification criteria in combination with confirmation of the CoA provided by each material supplier provide full verification of each material supplier. The additional material supplier verification criteria utilize a few extra steps. The additional steps include, for each raw material or material supplier, completion of a current Goods Manufacturing Practices (CGMP) self-audit questionnaire, a virtual or in-person facility audit, and confirmation that cGMP practices are being followed and a Quality Management System (QMS) system is in place. Use of the data collection system, e.g., the OmniBlocks platform, helps ensure material suppliers are following cGMP documentation and tracking practices set out by the specific Code of Federal Regulations (CFR). Additionally, the QMS modules provided by the OmniBlocks system confirms an appropriate cGMP QMS system is being utilized. These features of OmniBlocks further automate the process of material supplier verification, cut down the need for material requestors and material recipients to individually verify material suppliers and alleviate the burden of repeated testing within the supply chain.
[0028] To ensure immutable transparent transactions, the material and supplier verification system includes and maintains one or more industry standard databases on the storage systems. Suitable databases are immutable databases, for example, blockchain or hyperledger-style databases. Suitable immutable databases on the storage systems include, but are not limited to, Amazon Quantum Ledger and Ethereum. These immutable databases are built on community standards and provide immutable data storage with transparency of historical changes, which can be validated using standard cryptographic techniques. The implementation allows for the creation of a trusted historical record of all transactions, e.g., material testing results or data supplied to the material and supplier verification through the data collection systems associated with the raw material suppliers, supplement manufacturers and independent or third-party testing laboratories. In addition to the material testing results, each transaction includes data such as a unique unchangeable key, an identification of the raw materials or lot of materials, an identification of the entity that performed the testing, an identification of the entity requesting the material, an identification of the entity requesting material testing by an independent testing laboratory, and an identification of the material supplier. Once recorded to the immutable database on the ledger or blockchain, the material testing results and additional data cannot be updated, deleted, or modified in any way.
[0029] In one embodiment, labels such as permanent unique identification (ID) codes are associated with each material supplier, each raw material or lot of material, each material requestor or material recipient, and each independent or third-party testing center. These permanent unique ID codes provide for data integrity and for organization and searching of the material testing data including the material supplier verification data. For example, Manufacturer A is assigned a permanent unique ID, M-2345, and this permanent unique ID is associated with every transaction related to that supplement manufacturer. Similarly, Raw Material 1 is assigned a permanent unique ID, R-3456, and this permanent unique ID is associated with every transaction related to the raw material. Raw material Supplier X is assigned a permanent unique ID, S-1234. Manufacturer A performs testing on Raw Material 1 supplied by Supplier X, and the results of the test, i.e., the material testing results, are recorded to the immutable database or storage medium, for example, Amazon Quantum Ledger, by the supplier verification system using standard API calls that record the key metrics such as the Supplier ID (S-1234), Manufacturer ID (M-2345), the Raw Material ID (R-3456), and the material testing results. In one embodiment, this record of the material testing results is assigned a unique locator ID, L-4567, which is returned from the storage requests.
[0030] The use of unique permanent identification codes provides for storage, indexing, and searching of the material testing results by material suppliers, supplement manufacturers, independent or third-party testing laboratories. Therefore, all interested entities looking for verification of a material or material supplier can easily locate relevant verification and validation data in the material and supplier verification system. For example, the material testing results locator ID L-4567 is related to Supplier X, Manufacturer A, and Raw Material 1 via standard relational data mechanisms. In one embodiment, these standard relational data mechanisms are stored in a typical relation database, a key-value pair object store, or any other form of data storage that provides key based queries. The storage of the material testing results in the material and supplier verification system allows queries to be performed at any time to drive algorithms that can determine degree of certainty or degree of validation for any material, lot of material or material supplier. An example of a suitable query is return all test results from the immutable data store for Supplier X Raw Material 1.
[0031] All materials from a given material supplier can have material testing results validated to a degree of certainty by cross-referencing the unique supplier ID, raw material ID, and related material testing results recorded in the immutable database by locator ID. As used herein, degree of certainty refers to the number of entities, i.e., material suppliers, material requestors, material recipients, e.g., supplement manufacturers, and independent testing laboratories, that verify the material testing results. Each confirming entity is a degree. In one embodiment, additional filters are employed against the recorded material testing results to provide additional parameters on the verification process. For example, the degree of certainty can be calculated for tests performed within the previous 12 months. In one embodiment, the Degree of Certainty calculation is adjusted as needed by industry or regulatory requirements to set time constraints on the recorded transactions, to require a minimum number of passed or confirming tests, or to require that the ratio of passed, confirming, versus failed, non-confirming, tests exceed a predetermined threshold.
[0032] In one embodiment, material requestors or material recipients, either internally or through the use of independent or third-party testing laboratories, continue to reconfirm material supplier CoAs periodically as required by the applicable federal agency rule or federal regulation. This ensures material suppliers are being accurately verified within the supply chain network. The frequency at which lots of materials provided by material suppliers are tested by independent testing laboratories and other entities and deemed accurate (verified) on the blockchain network of the material and supplier verification system determines the degree to which a material supplier is verified overall or for that ingredient or raw material. The higher the degree of verification, i.e., the higher the frequency of verification, the higher the level of trust that can be associated with any CoA from the material supplier. This frequency can be expressed, for example, at a percentage of initial material testing results that are verified for a given lot of material or material supplier, a percentage of testing entities that verify the material or supplier, and the occurrence of verified testing results for a given lot of material or given material supplier within a given period of time.
[0033] Referring now to
[0034] Each material quality specification is communicated to one or more material suppliers, for example, raw material suppliers. Any suitable method known in the art for communicating a request for a material and the desired material quality specifications from a requestor to a supplier can be used. A material supplier produces at least one lot of the material 254 in accordance with the material request and material quality specification. The lot of material is tested or analyzed 256 by a first entity based on the material quality specification. The entity performing the testing can be the material supplier or an independent testing laboratory that performs the testing at the request of the material supplier. Based on the testing of lot of material, an initial set of material testing results is produced 258. In addition, a Certificate of Analysis (CoA) is also produced. In one embodiment, the initial set of material testing results includes an identification of each material quality parameter analyzed or tested, a value for each material quality parameter tested, and a comparison of the tested value to an acceptable value for each material quality parameter as prescribed in the material quality specification.
[0035] In one embodiment, the initial set of material testing results is saved or logged, for example, at the material supplier. The initial set of material testing results is communicated to the material supplier verification system 260 and, therefore, to the immutable database that is transparent to historical transactions. In one embodiment, the initial set of material testing results is communicated manually. Alternatively, the initial set of material testing results is communicated automatically in real time as the results are generated. In one embodiment, the material testing results are encrypted before being communicated to the material supplier verification system and then decrypted at the material supplier verification system. In one embodiment, the material testing results are communicated using the data collection tool provided in the material supplier verification system. In one embodiment, the material testing results are communicated to the material supplier verification system along with one or more of a unique key, an identification of the material, an identification of the material supplier, and identification of a material requestor, and an identification of the entity, and an identification of the first entity, i.e., the first material testing entity. This information related to the material testing results can be produced by the material supplier or the first entity. Alternatively, information about the material testing results can be generated by the material verification system. For example, the material supplier verification system, through the data collection tool, can assign a unique key to the material testing results or can recognize the first entity that is uploading the material testing results.
[0036] The initial set of material testing results generated by the first entity and analyzing a given lot of material for compliance with a quality specification for the material are then stored in an immutable database 262. The immutable database maintains a trusted historical record of all material testing results for the given lot of material. In one embodiment, the initial set of material testing results, and all material testing results, are stored in the immutable database with transparency to historical changes in material testing results. In one embodiment, the immutable database is a blockchain database. In one embodiment, in addition to storing the initial set of material testing results at least one of a unique unchangeable key for the initial set of material testing results, an identification of the material, an identification of a supplier of the material, an identification of a requestor of the material, and an identification of the first entity are also stored in the immutable database in association with the initial set of material testing results. The first entity is the supplier of the lot of material or an independent testing facility.
[0037] In one embodiment, a current data state for the record containing the material testing results is stored in the immutable database along with processing rules governing interaction with material testing results stored in the immutable database to ensure matching of all material testing results for a given lot of material. Suitable processing rules include, but are not limited to, a smart contract. In addition to storing in the immutable database the initial set of material testing results further comprises, a plurality of initial sets of material testing results for a plurality of lots of materials can be stored in the immutable database. Each lot of material is supplied by a given material supplier.
[0038] In one embodiment, one or more labels are associated with the initial set of material testing results, which can be referred to as a record, within the immutable database. Suitable labels include, but are not limited to, an identification of the lot of material and an identification of the material supplier. In one embodiment, each label is a permanent unique identification code. In one embodiment, these labels are used for storage, organization and indexing of the records within the immutable database. In one embodiment, the labels are used in searching for records within the immutable database.
[0039] Having stored the initial material testing results, the material supplier verification system is used to verify or validate at least one of the lot of material and the material supplier 264. The lot of material is verified by additional confirming testing from the material requestor, other recipients of the material or an independent testing laboratory. The material supplier is validated based on an evaluation of the testing compliance for the lot of material or for all lots of material provided by the material supplier.
[0040] The lot of material is tested or analyzed 266 by at least one additional entity based on the material quality specification. The entity performing the testing can be the material requestor, a recipient of the material or an independent testing laboratory that performs the testing at the request of the material requestor or a recipient of the material. Based on the testing of lot of material, at least one confirming set of material testing results is produced 268. In one embodiment, the confirming set of material testing results includes an identification of each material quality parameter analyzed or tested, a value for each material quality parameter tested, and a comparison of the tested value to an acceptable value for each material quality parameter as prescribed in the material quality specification.
[0041] In one embodiment, each confirming set of material testing results is saved or logged, for example, at the material supplier. Each confirming set of material testing results is communicated to the material supplier verification system 270 and, therefore, to the immutable database. In one embodiment, each confirming set of material testing results is communicated manually. Alternatively, each confirming set of material testing results is communicated automatically in real time as the results are generated. In one embodiment, the material testing results are encrypted before being communicated to the material supplier verification system and then decrypted at the material supplier verification system. In one embodiment, the material testing results are communicated using the data collection tool provided in the material supplier verification system. In one embodiment, the material testing results are communicated to the material supplier verification system along with one or more of a unique key, an identification of the material, an identification of the material supplier, and identification of a material requestor, and an identification of the additional entity.
[0042] This information related to the material testing results can be produced by the additional entity. Alternatively, information about the material testing results can be generated by the material verification system. For example, the material supplier verification system, through the data collection tool, can assign the unique key to the material testing results or can recognize the additional entity that is uploading the material testing results.
[0043] At least one confirming set of material testing results generated by at least one additional entity separate from the first entity to confirm the initial set of material testing results is stored in the immutable database in association with the initial set of material testing results 272. Each additional entity is an independent testing facility, a requester of the lot of material or a recipient of the lot of material. In one embodiment, in addition to storing in the immutable database at least one confirming set of material testing results, at least one of a unique unchangeable key for each confirming set of material testing results, an identification of the material, an identification of a supplier of the material, an identification of a requestor of the material, and an identification of each additional entity is also stored in the immutable database. In one embodiment, the immutable database includes a plurality of initial sets of material testing results are stored in the immutable database, for example, for initial sets of material testing results associated with multiple lots of materials from a given material supplier. Therefore, at least one confirming set of material testing results are stored in the immutable database in association with one of the plurality of initial sets of material testing results. Alternatively, multiple confirming sets of material testing results are stored in the immutable database in association with multiple initial sets of material testing results.
[0044] In one embodiment, a permanent unique identification code is associated with the lot of material, the supplier of the lot of material and each entity generating material testing results for the confirming set of material testing results. In one embodiment, associated permanent unique identification codes are used to index material testing results or to search material testing results.
[0045] Having stored the confirming set of material testing results in the immutable database, the initial set of material testing results and all confirming sets of material testing results are used to determine an overall degree of validation for the given lot of material 274. In one embodiment, one degree of validation is assigned to the lot of material for each confirming set of material testing results that confirm the initial set of material testing results. The overall degree of validation is then the sum of each degree of validation assigned to the lot of material. In one embodiment, determining the overall degree of validation for the given lot of material also includes one or more of adjusting the overall degree of validation by only assigning a degree of validation for each confirming set of material testing results associated with testing performed within a prescribed time period, requiring a minimum number of confirming sets of material testing results that confirm the initial set of material testing results, and setting a threshold ratio of confirming sets of material testing results that confirm the initial set of material testing results to confirming set of material testing results that fail to confirm the initial set of material testing results.
[0046] In one embodiment, the plurality of initial sets of material testing results and all confirming sets of material testing results are used to determine an overall degree of validation for the given material supplier 276. In one embodiment, the plurality of initial sets of material testing results and all confirming sets of material testing results are used to determine a frequency at which all lots of material provided by the given material supplier are verified by the confirming sets of material testing results.
Examples
[0047] Referring to
[0048] Referring to
[0049] The present invention may be a system, a method, and/or a computer program product at any possible technical detail level of integration. The computer program product may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present invention.
[0050] The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. A non-exhaustive list of more specific examples of the computer readable storage medium includes the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon, and any suitable combination of the foregoing. A computer readable storage medium, as used herein, is not to be construed as being transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission media (e.g., light pulses passing through a fiber-optic cable), or electrical signals transmitted through a wire.
[0051] Aspects of the present invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer readable program instructions.
[0052] These computer readable program instructions may be provided to a processor of a general-purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, a programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable storage medium having instructions stored therein comprises an article of manufacture including instructions which implement aspects of the function/act specified in the flowchart and/or block diagram block or blocks.
[0053] The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process, such that the instructions which execute on the computer, other programmable apparatus, or other device implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
[0054] The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the blocks may occur out of the order noted in the Figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts or carry out combinations of special purpose hardware and computer instructions.
[0055] Embodiments of the present invention are capable of being implemented in conjunction with any other type of computing environment now known or later developed including distributed or cloud computing systems. Cloud computing is a model of service delivery for enabling convenient, on-demand network access to a shared pool of configurable computing resources, e.g., networks, network bandwidth, servers, processing, memory, storage, applications, virtual machines, and services, that can be rapidly provisioned and released with minimal management effort or interaction with a provider of the service.
[0056] Exemplary embodiments can be provided using different service models including Software as a Service (Saas), Platform as a Service (PaaS) and Infrastructure as a Service (IaaS). Software as a service provides the capability to the consumer to use the provider's applications running on a cloud infrastructure. The applications are accessible from various client devices through a thin client interface such as a web browser, e.g., web-based e-mail. Platform as a service provides the capability to the consumer to deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages and tools supported by the provider. Infrastructure as a service provides the capability to the consumer to provision processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications.
[0057] The foregoing written description uses examples of the subject matter disclosed to enable any person skilled in the art to practice the same, including making and using any devices or systems and performing any incorporated methods. The patentable scope of the subject matter is defined by the claims, and may include other examples that occur to those skilled in the art. Such other examples are intended to be within the scope of the claims.