-
Notifications
You must be signed in to change notification settings - Fork 524
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
WeTEE milestone 3 Delivery #1151
Conversation
Hey @BurnWW, Do you have any advice on how to go through your testing guide if I don't have a physical machine with a required intel chip that features sgx? I tried to check numerous cloud providers but couldn't find anyone advertised with sgx enabled. Looking forward to hearing from you. |
hello @PieWol, Thank you very much for your reminder.
This is the configuration for the virtual machine I created.
This is the result of my test in azure DC2s_v2 virtual machine. |
Thank you @BurnWW for the advice. I'll get me a cloud provider with the same features as you showed in the example. 👍 |
Hey @BurnWW , Just as a quick follow up before I proceed with the setup. In azure it explicitly states that TEE is only available in the most strict security setting (confidential virtual machines) but in your setup you are using the standard security settings. It even seems to be impossible to boot up an ubuntu instance with TEE capabilities in azure. I wonder why you think that the TEE is actually in place with the setup tutorial you provided. Is there an integrity check of the machine in any place of your code that somewhat proves that the TEE is active? Looking forward to your feedback on this :) |
@PieWol,hello, I fully understand your doubts, and I have also had similar questions before. In our current version, we provide a thread-level Trusted Execution Environment (TEE base on SGX) solution. All TEE initialization and authentication are based on SGX technology, hence we opt for regular CPUs in the Below is the documentation for DC2s_v2 This is the underlying technology we use, ego and gramine, which are two very popular SGX technologies, By obtaining the report through them and using the code from this milestone, users can actually verify that the program is indeed running under the protection of SGX. and here are the relevant documents. https://gramine.readthedocs.io/en/stable/attestation.html?highlight=report |
Hey @BurnWW,
|
The error output I have gotten is the following Given I have modified the PATH as given in the documentation I'm wondering what could have gone wrong. |
@PieWol, Thank you very much for your reply.
We haven’t come across this kind of issue before. Would it be possible for you to follow the steps below to give us more details? We are in urgent need of the results of the following command. # step1 check sgx support
$ cpuid -1 -l 0x7 | grep SGX
SGX: Software Guard Extensions supported = true
SGX_LC: SGX launch config supported = true
# step2 check host sgx device
$ ls /dev/sgx
enclave provision
# step3 check sgx-device start error
> The pod name might have been changed,You can retrieve the information again using `kubectl get pods -A`
$ kubectl describe pod -n kube-system sgx-device-plugin-ds-5pk29
# step4 check sgx-device run error
> The pod name might have been changed,You can retrieve the information again using `kubectl get pods -A`
$ kubectl logs -n kube-system sgx-device-plugin-ds-5pk29
We are in urgent need of the results of the following command. $ ls /usr/lib/go-1.21/
api bin doc go.env misc pkg src test VERSION
$ echo $PATH
/home/wetee/Soft/jdk/bin:/home/wetee/.vscode-server/bin/863d2581ecda6849923a2118d93a088b0745d9d6/bin/remote-cli:/home/wetee/Soft/jdk/bin:/home/wetee/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/wetee/Soft/flutter/bin:/home/wetee/Soft/go//bin:/home/wetee/go/bin:/home/wetee/bin:/home/wetee/go/bin:/home/wetee/.local/bin:/home/wetee/.cargo/bin:/opt/occlum/build/bin:/opt/occlum/sgxsdk-tools/bin:/opt/occlum/toolchains/gcc/bin:/opt/edgelessrt/bin:/home/wetee/Android/Sdk/tools:/home/wetee/Android/Sdk/tools/bin:/home/wetee/Android/Sdk/platform-tools:/home/wetee/Soft/flutter/bin:/home/wetee/Soft/go//bin:/home/wetee/go/bin:/home/wetee/bin:/home/wetee/go/bin:/home/wetee/.local/bin:/home/wetee/.cargo/bin:/opt/occlum/build/bin:/opt/occlum/sgxsdk-tools/bin:/opt/occlum/toolchains/gcc/bin:/opt/edgelessrt/bin:/home/wetee/Android/Sdk/tools:/home/wetee/Android/Sdk/tools/bin:/home/wetee/Android/Sdk/platform-tools:/usr/lib/go-1.21//bin |
@PieWol hello |
Thank you @BurnWW, |
Hi @BurnWW ,
I'm sure this is the reason for the crashing container issue. I will boot up a variety of azure vms in standard security mode to figure out if I can get any that features SGX. I was following your setup instructions and picked the vm with the same name. I'll get back to you shortly. This is the config I used until now:
|
My bad. I just realized I was choosing the wrong VM config. Sorry for the inconvenience. It's working now. |
Hey @BurnWW , looking for your feedback once more. I was able to complete the procedure as given in the documentation.
|
@PieWol Thank you for your reply.
This log entry is not an error; the key created in this log is provisioned for a future feature. Each confidential application will generate its own sr25519 key, and we envision that in the future, these confidential applications will use this key to authenticate their identities and eventually invoke on-chain functions of pallets and ink! smart contracts. At present, this key has no practical use, so it’s safe to ignore this particular log entry. The log appears within the code of this file |
Hey @BurnWW, Here is the link to the evaluation. |
@PieWol Thank you for the reminder, this is indeed a bug because our project is still in the POC stage. We have been constantly restarting services and rebuilding the entire k3s cluster. We were not aware that each time the blockchain container restarts, it automatically starts again, and the container files of substrate are not being persisted. This will cause all the containers to fail to run properly. This is my modification to the yaml file https://github.com/wetee-dao/worker/blob/main/hack/chain.yaml
Get the latest code for worker (https://github.com/wetee-dao/worker/) by running git pull Testing new effects requires updating the container of blockchain nodes. $ git pull
$ kubectl replace -f ./hack/chain.yaml
$ make undeploy
$ make deploy IMG=wetee/worker:2024-03-27-12_57 You need to re-execute the operations in the following document after which, whether you restart your computer or k3s, all contents within the cluster will automatically recover, including all TEE applications which will also be restarted. If it’s a recreated cluster, this bug will no longer exist, and the programs will continue to run normally after the server restarts. |
@PieWol I have placed the check step of |
Hey @BurnWW , thanks for delivering the changes. I wonder why you have created a documentation dedicated to the milestone delivery but offer so little general documentation in the repo itself? Or is their additional documentation to the readme within the same repo? I assume it is because you are in the POC stage without having an actual live network that could be used to deploy TEE resources towards. Still for the current stage of development I think the documentation you created for the milestone delivery could also be used as regular documentation right now. Given you already put in the work anyways. This would allow the public to try out your tech locally. Linking the article at the start of the documentation / readme would be great too. |
@PieWol hello
Yes, it’s true that we haven’t updated the readme of our project for quite some time now. The reason being that we’ve been keeping all the latest information on our official website at https://wetee.app/. We greatly appreciate the reminder and will update the readme for our project this week. We look forward to welcoming more developers to join our DAO |
@PieWol Thank you for the reminder. I have updated the existing documents into the readme, but this still feels insufficient. There is also a lack of a minner UI, so at present, it remains incomplete for both users and developers. |
Thanks very much for clarifying @BurnWW. |
🪙 Please fill out the invoice form in order to initiate the payment process. Thank you! |
We noticed that this is the last milestone of your project. Congratulations on completing your grant! 🎊 |
hi @BurnWW we sent the payment last Friday |
Milestone Delivery Checklist
Link to the application pull request: w3f/Grants-Program#2065