How can Enigma secret contract prevent someone to see transactions history of a user?

Enigma protocol is a second-layer, off-chain network that aims to solve the two problems for blockchains: scalability and privacy. Enigma is a peer-to-peer network, enabling different parties to jointly store and run computations on data while keeping the data completely private. An external blockchain is utilized as the controller of the network, manages access control and identities, and serves as a tamper-proof log of events. (Enigma website: https://www.media.mit.edu/projects/enigma/overview/) (Enigma blog: https://blog.enigma.co/)

In Enigma blog, there is an article (Link to Article), explaining the secret contract, including an example as follows:

“To give an example of a potential secret contract, imagine a lending dApp that can autonomously give out loans to users. To function, it operates a smart contract that tests each individual’s eligibility by scanning their wallets and prior transactions, then computing if the individual should receive a loan (and if so — how big it should be). For example, it may examine if you asked for loans in the past, and whether you paid them back on time.

With a normal smart contract, a user would need to disclose all of their transactions publicly. This means that everyone would have complete visibility to your finances. Since most users aren’t likely to opt into such a service, the only option left to the dApp provider is to keep the actual computation of eligibility centralized, in order to limit the exposure of the sensitive data to the provider itself. In this hybrid approach the dApp is no longer autonomous or truly decentralized, as it cannot operate without the aid of the provider. The dApp thus retains all of the weaknesses of centralized applications, with few of the advantages.

Instead, in a setting where secret contracts exist, a user can share their transaction history safely with the secret contract itself. The nodes can execute the contract and receive the eligibility result without being able to observe the user’s transactions. There is no longer a need to create a hybrid dApp. This dApp could be autonomous end-to-end, while guaranteeing both correctness — if a user is eligible for a loan, she will get a loan; and privacy — no one but the user can see their transaction history.”

My question is about the following phrases:

(1) “With a normal smart contract, a user would need to disclose all of their transactions publicly”

(2) “Instead, in a setting where secret contracts exist, a user can share their transaction history safely with the secret contract itself. The nodes can execute the contract and receive the eligibility result without being able to observe the user’s transactions.”

From my point of view, a user eventually needs to present himself by using his address (either by normal contract, or by secret contract), by which it is possible for everybody to see all his transactions history using an explorer website.

(1) How can Enigma secret contract prevent someone to see transactions history of a user?

And

(2) How can a user conceal his address and at the same time receive the loan, using secret contract?

Note: Please note that according to an agreement, questions about blockchain is brought up in Bitcoin stack exchange.

How to retrieve transactions in realtime from bitcoind .dat files

I want to get all the data from blocks as they get updated on my local node. Abe offers very poor performance, and fast-dat-parser creates other .dat files and doesn’t have enough documentation for me to understand how to get data like block size, age, hash difficulty, Transactions and transaction fees. Is there an alternative tool, or at least a detailed documentation that would allow me to write a parser for content of .dat files?

IOTA “C” version (CClient) and feasibility of signing transactions on ESP32?

An article recently has been published entitled “Running the IOTA “CClient” library on ESP32″ (>>>Link to Article<<<).

It is not clear to me if by using this C version of IOTA is practicable to run PoW or signing transactions on ESP32 device?

Since in this answer (>>>Link to Answer<<<) is mentioned that:

“It is not feasible to compute the Proof-of-Work on microcontrollers due to their limited computational speed. Furthermore, the official CCurl implementation (Proof-of-Work computation in C) uses the pthreads library and other functionality which are not typically available on microcontrollers. It is, in my opinion, not feasible to run IOTA in battery powered embedded devices due to the large amount of energy it takes to sign transactions, even if the Proof-of-Work is done elsewhere.”

The question is that:

  • Can this C version of IOTA make it feasible to run PoW or to sign transactions on micro-controllers?

  • in general, how can this C version improve running IOTA on micro-controllers? And what new opportunities does C version bring us?

How to categorise credit card transactions at scale

I’m designing an application to categorise my spending rather than going to one of the bigger establishments. The application will receive a CSV or whatever my bank producers as a statement, parse it, then categorise my transactions. While I can do some simple regexs to catch the majority of cases it raises the question of how it’s done at scale. So how do companies like Apple, Cleo, Monzo or any other company that categorises your transactions (probably based on just a bank statement) go about categorising them? Are there just rooms full of people going through bank statements and building regexs or is there something smarter gong on?

Does Bitcoin security rely on the assumption of nearly continuous transactions? [duplicate]

This question already has an answer here:

  • What happens if there are no transactions in a block? 3 answers

So for an attacker not to overcome good nodes, I believe we rely on the fact that blocks are always being produced, making the attacker essentially outpaced. But in the extreme and ridiculously unlikely case that no Bitcoin transactions occur within a certain sufficiently large time window, could an attacker gain control of the chain and do damage? If not, why?

History of transactions in Lighting Network

I’m just a beginner in lighting network. Have some questions about transactions in LN when im doing the research

  1. Transactions in LN are off-chain, so transactions couldn’t be stored in main-chain, so how could you look-up the transactions history?
  2. Payment channel is private for someone outside, and if there is no transaction history, how do i give the information to others to proof that I’ve just made a payment in LN.

Any helps, tks

Database Transactions

Two transactions T1 and T2 are given as

T1:r1(X)w1(X)r1(Y)w1(Y)

T2:r2(Y)w2(Y)r2(Z)w2(Z)

where ri(V) denotes a read operation by transaction Ti on a variable V and wi(V) denotes a write operation by transaction Ti on a variable V. The total number of conflict serializable schedules that can be formed by T1 and T2 is ______