H04L9/3218

zkMFA: zero-knowledge based multi-factor authentication system

An authentication method of a prover by a verifier includes: performing at least once, an enrollment process by an enrollment center computer; and subsequent to performing the enrollment process, performing an on demand authentication process including: receiving at a verifier computer from the prover, a prover authentication request sent from the prover computer device which includes the prover identity and a preferred ZKP protocol identifier; looking up a prover's public key in the database via the identity; the verifier sending a selected ZKP protocol identifier to the prover computer device; commencing a round of authentication by receiving a commitment generated according to the selected ZKP protocol; and repeating the step of commencing a round of authentication until the verifier computer accepts or rejects the prover's identity. A zkMFA method of authentication and an authentication system for authenticating a prover by a verifier are also described.

SYSTEMS AND METHODS FOR ENSURING CORRECT EXECUTION OF COMPUTER PROGRAM USING A MEDIATOR COMPUTER SYSTEM

In a distributed system, a first computer system may require computationally verifiable assurances of the authenticity and integrity of computations (e.g., performed as part of the execution of a program) performed by a second computer system. Methods described herein may be utilized to enforce and/or ensure the correct execution of a program. The first computer system may delegate execution of a program to a second computer system and a protocol may be employed to constrain the second computer system to perform a correct execution of the program. The protocol may include mitigation and correction routines that mitigate and/or correct the incorrect execution of a program. In various systems and methods described herein, the protocol may utilize a blockchain network such as a Bitcoin-based blockchain network.

KEY-VALUE MAP COMMITMENTS SYSTEM AND METHOD

A method includes a validation computer receiving an authorization request message comprising a user state and a user proof from a user device. The user state comprises first and second user state elements. The user proof comprises first, second, and third user proof elements. The validation computer computes a first verification value by multiplying the first user proof element raised to the power of the second user state element, and the second user proof element raised to the power of the first user state element. The computer computes a second verification value by raising the second user proof element to the power of the second user state element. The computer compares the first verification value to a first accumulated state element of an accumulated state. The compares the second verification value to a second accumulated state element. The validation computer authorizes the authorization request message based on the comparison steps.

Multi-party threshold authenticated encryption

Systems and methods for threshold authenticated encryption are provided. A collection of cryptographic devices may encrypt or decrypt a message, provided that a threshold number of those devices participate in the encryption process. One cryptographic device may generate a commitment message and transmit it to the other selected devices. Those devices may each perform a partial computation using the commitment message, and transmit the partial computations back to the encrypting or decrypting device. The encrypting or decrypting device may use those partial computations to produce a cryptographic key, which may then be used to encrypt or decrypt the message.

Systems, devices, and methods for determining a confidence level associated with a device using heuristics of trust
11695783 · 2023-07-04 · ·

A method of determining a confidence level associated with a device using heuristics of trust includes receiving, by an evaluating device, at least a communication from a first remote device, determining, by the evaluating device, an identity of the first remote device as a function of the at least a communication, calculating, by the evaluating device, at least a heuristic of trust as a function of the at least a communication and the identity, assigning, by the evaluating device, a first confidence level to the first remote device as a function of the at least a heuristic of trust, and assigning, by the evaluating device, an access right as a function of the first confidence level.

Decentralized privacy-preserving rewards with cryptographic black box accumulators

A decentralized and trust-minimizing computer architecture for computing rewards for users of an advertising system includes cryptographic black box accumulators (BBA), which is a cryptographic counter that only the issuer can update. An attention application requests initialization of a BBA from a guardian and subsequently requests updates to the BBA to track interactions between a user of the attention application and ads on the attention application. The guardian signs updates to the BBA to reach agreement on the state of ad interactions. The attention application may randomize the BBA and submit requests via an anonymous channel such that no participant can link two encounters with the BBA to each other or link the BBA to a specific attention application, thus improving user privacy. Reward redemption requests can be made based on a known policy and committed to a public blockchain for verification by observers that the protocol is operating correctly.

Multi-device remote attestation
11695549 · 2023-07-04 · ·

Systems and methods for attesting an enclave in a network. A method includes receiving, by a first device, proof information from an application provider entity that the enclave is secure, wherein the proof information includes a public part, Ga, of information used by the enclave to derive a Diffie-Hellman key in a key generation process with the application provider entity, processing, by the first device, the proof information to verify that the enclave is secure and ensuring that Ga is authentic and/or valid, deriving, by the first device, a new Diffie-Hellman key, based on Ga and x, wherein x is a private part of information used by the first device to derive the new Diffie-Hellman key, and sending, by the first device, a message including Ga and a public part, Gx, of the information used by the first device to derive the new Diffie-Hellman key to the enclave.

Virtualized network functions verification using decentralized identifiers

This disclosure describes techniques for verifying virtualized network functions (VNFs) using Decentralized Identifiers (DIDs). For example, a system includes an orchestrator configured to obtain, using a Decentralized Identifier (DID) that is associated with a virtualized network function (VNF) image for a VNF, a DID document associated with the DID, verify, based on the DID document associated with the DID, the VNF image, and deploy the VNF image as a VNF instance on a Network Functions Virtualization infrastructure (NFVi). The system also includes one or more consensus networks that store the DID document associated with the VNF image in a distributed ledger.

SYSTEMS AND METHODS FOR DATA MANAGEMENT

Systems and methods for data management. In some embodiments, information may be accessed from a knowledge structure associated with an entity. The knowledge structure may store both private information of the entity and state information of a distributed ledger. For instance, the knowledge structure may include an identity structure for the entity and/or an attribute structure corresponding to an attribute of the entity. The identity structure may store a pointer to the attribute structure. Additionally, or alternatively, the attribute structure may associate a value with the attribute of the entity.

Systems and methods for ensuring correct execution of computer program using a mediator computer system

In a distributed system, a first computer system may require computationally verifiable assurances of the authenticity and integrity of computations (e.g., performed as part of the execution of a program) performed by a second computer system. Methods described herein may be utilized to enforce and/or ensure the correct execution of a program. The first computer system may delegate execution of a program to a second computer system and a protocol may be employed to constrain the second computer system to perform a correct execution of the program. The protocol may include mitigation and correction routines that mitigate and/or correct the incorrect execution of a program. In various systems and methods described herein, the protocol may utilize a blockchain network such as a Bitcoin-based blockchain network.