Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

'common' not available error notification #6

Open
MISTAnalytics opened this issue Jan 10, 2022 · 13 comments
Open

'common' not available error notification #6

MISTAnalytics opened this issue Jan 10, 2022 · 13 comments

Comments

@MISTAnalytics
Copy link

MISTAnalytics commented Jan 10, 2022

@wyatt-howe @lapets

I keep getting an error like this below:

Nodejs command prompt

When I manually setup a 'common' folder. I receive another error about missing the 'Cargo.toml' file in the 'crypto' folder. And then another one and another one...

@MISTAnalytics
Copy link
Author

MISTAnalytics commented Jan 10, 2022

I just would like to try the demo of this private-id-web solution to see if I can work with it and use it to match certain datasets together via this solution. Could you perhaps elaborate on the steps to take since the README file is not sufficient for me.

Thank you in advance!

@wyatt-howe
Copy link
Member

Thanks for your interest in our adaptation of Private-ID! It seems we had the submodule pointed at the wrong commit. This is now fixed. Since two years ago, Rust has lost support for the wasm versions we had initially used, but we updated this as well, and everything seems to build as it should.

I updated the README with some more notes on building. Particularly, note that to properly run this between two parties in the browser you will need a setup Firebase or the like in the IO module.

Give it another try and see if that solves the issue!

@wyatt-howe
Copy link
Member

Also, depending on how large your datasets are, you may prefer to use the original Private-ID implementing for scale.
Although with some amount of engineering effort, this could scale to millions of rows even in the browser.

@MISTAnalytics
Copy link
Author

MISTAnalytics commented Jan 11, 2022

@wyatt-howe

Thank you for the updates, I really appreciate it.

I am a couple of steps further now. I have two questions:

  1. Now, it seems the path cannot be found. I tried several statements already with a variety of paths. But it does not seem to get the path properly though. What do I do wrong?

Nodejs cannot find path

  1. You mention Firebase, but what specific part (URL) of Firebase do I need to apply to? Since Firebase consists of multiple 'solutions'. And do I need to add the key to the URL or in the io.js file?

It would be great if you could help me.

@MISTAnalytics
Copy link
Author

MISTAnalytics commented Jan 11, 2022

In addition to question 2: would a general web key be sufficient? --> https://firebase.google.com/docs/projects/api-keys

@wyatt-howe
Copy link
Member

wyatt-howe commented Jan 11, 2022

Certainly, I'm happy to help.

For (1) you might need to use copy rather than cp. You're the first to try this on Windows. You may also want to change the same command in package.json. This is just a shortcut command for copying the newly-built WebAssembly binaries to into the web/ directory.

For (2), I'm referring to the Firebase project configuration which should be set as the value of the firebaseConfig JSON object in io.js here. (We have it generated from an encrypted string, but you can just paste it in.)

Let me know if you're still experiencing difficulties.

@MISTAnalytics
Copy link
Author

MISTAnalytics commented Jan 11, 2022

@wyatt-howe,

OK, so I tried once more.

(1) I needed to manually copy the appropriate files into the folder since I could not find how to use 'cp'. 'copy' did not work either.
(2) It seems I cannot use 'cd src; cargo run --bin private-id-test' in one line. First, I needed to confirm 'cd src' and then, I needed to confirm 'cargo run --bin private-id-test'

This lead to the following result with version errors with zeroize:

Nodejs version errors

(3) Regarding Firebase. I set this up and added the credentials to the io.js file. Do I need to host the Firebase app or may I use this demo locally, correct?

@wyatt-howe
Copy link
Member

(1) Good to know. I have only ever built the library on macOS.

(2) Hmm, I'll have to look into the error with private-id-test, but you actually do not need to compile the test suite to run the demo. The web/ directory should already be good to go now that you have copied over the .wasm and .js files.

(3) Correct, you can run everything locally, such as by running python -m http.server 3000 in the web/ directory and then pointing your browser to http://localhost:3000/. That's all! You can simulate two users by opening two tabs. Hope this helps.

@MISTAnalytics
Copy link
Author

MISTAnalytics commented Jan 11, 2022

@wyatt-howe

(1) It would be great if you could take a look at private-id-test since it still does not work, unfortunately.

(2) It seems to be very hard to use python with Nodejs. I tried everything mentioned here and restarted multiple times as well but even with python installed, Nodejs does not recognize it when I tried python -m http.server 3000 in the web directory.

I managed to set this up via this solution though (Github repo).

Now, I see this:

2022-01-11 21_47_37-Nth Party_ Private ID Web

How may I try test CSVs and use the solution? And how may I try things that are mentioned here? I.e. PS3I, Private Join and Compute etc. Is this the exact same set up as described for the FB solution? Could you elaborate, please?

I appreciate it.

@MISTAnalytics
Copy link
Author

MISTAnalytics commented Jan 12, 2022

@wyatt-howe

I tried the FB solution statements but this does not work, unfortunately. Could you maybe describe how to use an example json dataset to use in the test setup?

@MISTAnalytics
Copy link
Author

@wyatt-howe

Would be great if you could help me with a test drive..? :)

@MISTAnalytics
Copy link
Author

@wyatt-howe

Let me know.

@MISTAnalytics
Copy link
Author

@wyatt-howe
@lapets

I tried the Facebooks solution statements but this did not work, unfortunately. Could you maybe describe how to use an example dataset to use in the test setup? A description of some steps would really help me since now I am still not able to use this though.

Appreciate it, thank you in advance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants