H04L2209/46

NONDECREASING SEQUENCE DETERMINING DEVICE, METHOD AND PROGRAM

Determination as to whether a nondecreasing sequence exists or not is efficiently made. A sorting part sorts elements of a set P.sub.i in ascending order to generate vectors t.sub.i,i+1 and A merging part generates vectors t.sub.0,m and b.sub.0,m by repeating the process of merging vectors (t.sub.i,j, b.sub.i,j) and (t.sub.i,k, b.sub.i,k) to generate (t.sub.i,k, b.sub.i,k). A stable-sorting part generates a vector e by coupling and stably sorting vectors b.sub.i,j and t.sub.i,k. A searching part searches for sets of (λ, x, y) in which e[λ] is b.sub.i j[x] and e[λ+1] is t.sub.i,k[y] and generates a set λ including all x and a set Y including all y. An extracting part sorts t.sub.i,j[x] (x∈X) in ascending order to generate a vector t.sub.i,k and sorts b.sub.j,k[y] (y∈Y) in ascending order to generate a vector b.sub.i,k. If the length of a vector t.sub.0,m is 0, a determining part outputs a result of determination that indicates the absence of a nondecreasing sequence.

DEVICE, METHOD AND PROGRAM FOR DETECTING POSITIONS OF PARTIAL CHARACTER STRINGS

The positions in a text in which partial character strings in a pattern appear are efficiently detected. A partial-character-string position detecting device 1 takes inputs of a secret text [t] of a text t, a secrete text <p> of a pattern p, a secret text <c> of a vector c, and a secret text <E> of a matrix E and outputs a secret text <H> of a matrix H. A first matrix generating part 20 generates a secret text <F> of a matrix F, in which F[i][j]=E[i][j+i mod n+1] (where it is assumed that E[i][n]=custom-characterc[i]). A second matrix generating part 30 generates a secret text <F′> of a matrix F′, in which F[i][j]=1 is set if c[i]=0 or if c[i]=1 and F[k][j]=1 for every k that is successively c[k]=1, otherwise F[i][j]=0 is set, where k=i, . . . , n−1. A third matrix generating part 40 computes <H[i][j]>=<F[i][j−i mod n+1]>custom-character<c[i]>custom-character> to generate the secrete text <H>.

Distributed architecture for explainable AI models
11256975 · 2022-02-22 · ·

A method, and system for a distributed artificial intelligence architecture may be shown and described. An embodiment may present an exemplary distributed explainable neural network (XNN) architecture, whereby multiple XNNs may be processed in parallel in order to increase performance. The distributed architecture may include a parallel execution step which may combine parallel XNNs into an aggregate model by calculating the average (or weighted average) from the parallel models. A distributed hybrid XNN/XAI architecture may include multiple independent models which can work independently without relying on the full distributed architecture. An exemplary architecture may be useful for large datasets where the training data cannot fit in the CPU/GPU memory of a single machine. The component XNNs can be standard plain XNNs or any XNN/XAI variants such as convolutional XNNs (CNN-XNNs), predictive XNNS (PR-XNNs), and the like, together with the white-box portions of grey-box models like INNs.

Secure computer evaluation of decision trees

Decision trees can be securely evaluated with reasonable computation speed and bandwidth utilization. A user device encrypts input vectors using a client's public key in an additively homomorphic encryption system. A server computer effectively randomizes the decision tree for each use, such that a value indicative of a path resulting from applying an input vector to the decision tree is different each time the decision tree is used. The server computer homomorphically computes the evaluations of each decision node. The server computer provides the value indicative of the path through the decision tree as one part accessible by the client, and another part accessible by the server. The server computer uses the parts to look up a corresponding output value from a database of output values for each path. In this operation, only the output value corresponding to the combined parts can be retrieved, and only by the intended recipient.

INTERACTIVE TECHNIQUES FOR ACCELERATING HOMOMORPHIC LINEAR OPERATIONS ON ENCRYPTED DATA
20220052834 · 2022-02-17 · ·

An interactive multi-party system for collaboratively performing homomorphic operations, such that no party has access to unencrypted data or an unencrypted operator. A first party device may add noise to encrypted data and an encrypted linear operator to generate noisy encrypted data and a noisy encrypted operator, and transmit the noisy encrypted data and operator to a second party device possessing a secret decryption key for the encryption. The second party device may decrypt the noisy encrypted data and noisy encrypted operator to generate unencrypted noisy data and an unencrypted noisy operator, solve the linear operation using the unencrypted noisy data and an unencrypted noisy operator to generate a noisy solution, encrypt the noisy solution to the linear operation, and transmit it to the first party device. The first party device may then cancel the noise of the encrypted noisy solution to generate the encrypted solution to the linear operation.

SECRET CALCULATION DEVICE, METHOD, RECORDING MEDIUM, AND SECRET CALCULATION SYSTEM
20170278433 · 2017-09-28 · ·

To calculate of an exclusive OR of elements of bits while the bits remain distributed to a plurality of secret calculation devices without communication among the secret calculation devices, and to calculate of an AND of bits with small amounts of communication and calculation while the bits remain distributed, provided is a secret calculation device including a local AND device and an AND redistribution device. The local AND device receives at least two one-bit input elements to produce a first local AND element. The AND redistribution device receives a one-bit mask and a second local AND element acquired by calculating an exclusive OR of the first local AND element and P bits (P is an integer equal to or more than 0), calculates a first OR, and communicates to/from an AND redistribution device of another secret calculation device to produce at least one one-bit output element.

TRANSFERRING CRYPTOCURRENCY FROM A REMOTE LIMITED ACCESS WALLET
20220051240 · 2022-02-17 · ·

Provided herein are systems, devices and methods for transferring cryptocurrency from a limited access cryptocurrency wallet. The limited access cryptocurrency wallet may create, in advance, provisional account(s) allocated for respective recipient(s) and transfer a predefined overall value of cryptocurrency from its associated account associated to the provisional account(s). The limited access cryptocurrency wallet may further generate, in advance, a plurality of signed transactions for transferring a plurality of predefined partial values of cryptocurrency from the provisional account(s) to receiving account(s) associated with the recipient(s) and transmit the plurality of signed transactions to a network connected cryptocurrency wallet. Later, in real-time, the network connected cryptocurrency wallet may transmit one or more of the plurality of signed transactions for transferring cryptocurrency from the provisional account(s) to the receiving account(s) without physically attending to the limited access cryptocurrency wallet.

Garbled circuit for device authentication
11245680 · 2022-02-08 · ·

This application describes systems and methods for using a garbled circuit and a physical unclonable function (PUF) value to authenticate a device. During enrollment, the device and at least one computer collaboratively construct multiple garbled circuits corresponding to bits of an enrollment PUF value generated by PUF circuitry coupled to the device. During authentication, the device and at least one computer evaluate the multiple garbled circuits using an authentication PUF value. Using the results of this evaluation, the at least one computer compares the enrollment PUF value with the authentication PUF value and determines a distance between them. The at least one computer may authenticate the device when the calculated distance is less than a threshold value.

Accumulating automata and cascaded equations automata for non-interactive and perennial secure multi-party computation
09742739 · 2017-08-22 · ·

A method of securely executing practically unbounded input stream of symbols, by non-interactive, multi-party computation, according to which the input stream is distributed among a plurality of parties, which do not communicate among themselves throughout execution, by a dealer with a secret initial state. The dealer distributes shares of the secret state between the parties. The input stream is executed by a finite-state automaton which may be an accumulating automaton with accumulating nodes or an automaton that is defined by a series of cascaded equations. During any execution stage, the input stream and the current state of the original automaton are concealed from any coalition of participants being smaller than a given threshold. Upon receiving a signal from the dealer, the parties terminate the execution and submit their internal state to the dealer, which computes the current state that defines the computation result.

SYSTEMS AND METHODS FOR PROVIDING A MARKETPLACE WHERE DATA AND ALGORITHMS CAN BE CHOSEN AND INTERACT VIA ENCRYPTION
20220311750 · 2022-09-29 ·

A method includes receiving, on a computer-implemented system and from user, an identification of data and an identification of an algorithm and, based on a user interaction with the computer-implemented system comprising a one-click interaction or a two-click interaction. Without further user input, the method includes dividing the data into a data first subset and a data second subset, dividing the algorithm (or a Boolean logic gate representation of the algorithm) into an algorithm first subset and an algorithm second subset, running, on the computer-implemented system at a first location, the data first subset with the algorithm first subset to yield a first partial result, running, on the computer-implemented system at a second location separate from the first location, the data second subset with the algorithm second subset to yield a second partial result and outputting a combined result based on the first partial result and the second partial result.