From 221f0484ab59a0e2237c6f84319130399883a092 Mon Sep 17 00:00:00 2001 From: sahilansari189 Date: Wed, 17 Jul 2024 13:12:47 +0000 Subject: [PATCH 1/2] my new nada program --- nohup.out | 14 +++++++++++++ .../nada-project.toml | 7 +++++++ .../nada_quickstart_programs/src/main.py | 12 +++++++++++ .../target/main.nada.bin | Bin 0 -> 901 bytes .../nada_quickstart_programs/=0.9.2 | 19 ++++++++++++++++++ .../nillion-python-starter | 1 + .../src/secret_addition_complete.py | 10 +++++++-- .../target/secret_addition_complete.nada.bin | Bin 975 -> 975 bytes 8 files changed, 61 insertions(+), 2 deletions(-) create mode 100644 nohup.out create mode 100644 quickstart/nada_quickstart_programs/nada-project.toml create mode 100644 quickstart/nada_quickstart_programs/src/main.py create mode 100644 quickstart/nada_quickstart_programs/target/main.nada.bin create mode 100644 quickstart_complete/nada_quickstart_programs/=0.9.2 create mode 160000 quickstart_complete/nada_quickstart_programs/nillion-python-starter diff --git a/nohup.out b/nohup.out new file mode 100644 index 00000000..f468cb8e --- /dev/null +++ b/nohup.out @@ -0,0 +1,14 @@ +ℹ️ cluster id is 9e68173f-9c23-4acc-ba81-4f079b639964 +ℹ️ using 256 bit prime +ℹ️ storing state in /tmp/.tmpMFjKdN (80.01Gbs available) +🏃 starting nilchain node in: /tmp/.tmpMFjKdN/nillion-chain +⛓ nilchain JSON RPC available at http://127.0.0.1:48102 +⛓ nilchain REST API available at http://localhost:26650 +⛓ nilchain gRPC available at localhost:26649 +🏃 starting node 12D3KooWMvw1hEqm7EWSDEyqTb6pNetUVkepahKY6hixuAuMZfJS +⏳ waiting until bootnode is up... +🏃 starting node 12D3KooWAiwGZUwSUaT2bYVxGS8jmfMrfsanZYkHwH3uL7WJPsFq +🏃 starting node 12D3KooWM3hsAswc7ZT6VpwQ1TCZU4GCYY55nLhcsxCcfjuixW57 +👛 funding nilchain keys +📝 nillion CLI configuration written to /root/.config/nillion/nillion-cli.yaml +🌄 environment file written to /root/.config/nillion/nillion-devnet.env diff --git a/quickstart/nada_quickstart_programs/nada-project.toml b/quickstart/nada_quickstart_programs/nada-project.toml new file mode 100644 index 00000000..da166dde --- /dev/null +++ b/quickstart/nada_quickstart_programs/nada-project.toml @@ -0,0 +1,7 @@ +name = "nada_quickstart_programs" +version = "0.1.0" +authors = [""] + +[[programs]] +path = "src/main.py" +prime_size = 128 diff --git a/quickstart/nada_quickstart_programs/src/main.py b/quickstart/nada_quickstart_programs/src/main.py new file mode 100644 index 00000000..49e9e7e6 --- /dev/null +++ b/quickstart/nada_quickstart_programs/src/main.py @@ -0,0 +1,12 @@ +from nada_dsl import * + +def nada_main(): + party1 = Party(name="Party1") + party2 = Party(name="Party2") + party3 = Party(name="Party3") + a = SecretInteger(Input(name="A", party=party1)) + b = SecretInteger(Input(name="B", party=party2)) + + result = a + b + + return [Output(result, "my_output", party3)] \ No newline at end of file diff --git a/quickstart/nada_quickstart_programs/target/main.nada.bin b/quickstart/nada_quickstart_programs/target/main.nada.bin new file mode 100644 index 0000000000000000000000000000000000000000..e4edd3254a0edbc1eb63c1a29d736816e2430ce5 GIT binary patch literal 901 zcmaJ<%}T^D5U&4PM8qeEJ+-=s+jcLmg_fc;?h|l54 zNt1Eg7!3@QOuz4&ugN%$T5CFQ>U>SPXog$*l+#&pQZ?&v3?L36dce>CZUErY28;}# zRLM1P6|!8?N>6>b($*a(*4Z&snvD?T?C3(?Ov+kRwK#o$ zOkbW1gOO}%c-loN$auM*uZp|}HQZyT#G=u4w*R)|;vTuNh1Wljp3(Mh(LlUZJsT#zHz&Dd0x>?r?BGL#7A8*(_XJT9k_Q1G5F5m%myVx5jA0y=^P>s`nNlBj+0;#pj h*`l5cpi**7Qml!Z7v%P;9UEUk2E_ZBB-Dz6yKflpvuXeU literal 0 HcmV?d00001 diff --git a/quickstart_complete/nada_quickstart_programs/=0.9.2 b/quickstart_complete/nada_quickstart_programs/=0.9.2 new file mode 100644 index 00000000..f4460184 --- /dev/null +++ b/quickstart_complete/nada_quickstart_programs/=0.9.2 @@ -0,0 +1,19 @@ +Requirement already satisfied: cosmpy in /usr/local/lib/python3.10/dist-packages (0.9.2) +Requirement already satisfied: bech32 in /usr/local/lib/python3.10/dist-packages (from cosmpy) (1.2.0) +Requirement already satisfied: ecdsa in /usr/local/lib/python3.10/dist-packages (from cosmpy) (0.19.0) +Requirement already satisfied: googleapis-common-protos in /usr/local/lib/python3.10/dist-packages (from cosmpy) (1.63.2) +Requirement already satisfied: grpcio in /usr/local/lib/python3.10/dist-packages (from cosmpy) (1.64.1) +Requirement already satisfied: jsonschema<5,>=3.2.0 in /usr/local/lib/python3.10/dist-packages (from cosmpy) (4.19.2) +Requirement already satisfied: protobuf<5.0dev,>=4.21.6 in /usr/local/lib/python3.10/dist-packages (from cosmpy) (4.25.3) +Requirement already satisfied: pycryptodome<4.0.0,>=3.18.0 in /usr/local/lib/python3.10/dist-packages (from cosmpy) (3.20.0) +Requirement already satisfied: python-dateutil in /usr/local/lib/python3.10/dist-packages (from cosmpy) (2.8.2) +Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from cosmpy) (2.31.0) +Requirement already satisfied: attrs>=22.2.0 in /usr/local/lib/python3.10/dist-packages (from jsonschema<5,>=3.2.0->cosmpy) (23.2.0) +Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /usr/local/lib/python3.10/dist-packages (from jsonschema<5,>=3.2.0->cosmpy) (2023.12.1) +Requirement already satisfied: referencing>=0.28.4 in /usr/local/lib/python3.10/dist-packages (from jsonschema<5,>=3.2.0->cosmpy) (0.35.1) +Requirement already satisfied: rpds-py>=0.7.1 in /usr/local/lib/python3.10/dist-packages (from jsonschema<5,>=3.2.0->cosmpy) (0.19.0) +Requirement already satisfied: six>=1.9.0 in /usr/local/lib/python3.10/dist-packages (from ecdsa->cosmpy) (1.16.0) +Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->cosmpy) (3.3.2) +Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->cosmpy) (3.7) +Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->cosmpy) (2.0.7) +Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->cosmpy) (2024.7.4) diff --git a/quickstart_complete/nada_quickstart_programs/nillion-python-starter b/quickstart_complete/nada_quickstart_programs/nillion-python-starter new file mode 160000 index 00000000..15e9fe0b --- /dev/null +++ b/quickstart_complete/nada_quickstart_programs/nillion-python-starter @@ -0,0 +1 @@ +Subproject commit 15e9fe0b43b980670bf1a97f703a8d2f25ca1afc diff --git a/quickstart_complete/nada_quickstart_programs/src/secret_addition_complete.py b/quickstart_complete/nada_quickstart_programs/src/secret_addition_complete.py index be9daa13..5c3e4139 100644 --- a/quickstart_complete/nada_quickstart_programs/src/secret_addition_complete.py +++ b/quickstart_complete/nada_quickstart_programs/src/secret_addition_complete.py @@ -1,4 +1,5 @@ from nada_dsl import * + def nada_main(): party1 = Party(name="Party1") @@ -6,7 +7,12 @@ def nada_main(): my_int1 = SecretInteger(Input(name="my_int1", party=party1)) my_int2 = SecretInteger(Input(name="my_int2", party=party1)) + + my_int3 = SecretInteger(Input(name="my_int3", party=party1)) - new_int = my_int1 + my_int2 + sum_int = my_int1 + my_int2 + my_int3 + + product_int = my_int1 * my_int2 * my_int3 - return [Output(new_int, "my_output", party1)] \ No newline at end of file + return [Output(sum_int, "sum_output", party1), + Output(product_int, "product_output", party1)] diff --git a/quickstart_complete/nada_quickstart_programs/target/secret_addition_complete.nada.bin b/quickstart_complete/nada_quickstart_programs/target/secret_addition_complete.nada.bin index 4351b211b5ee0e0c053040d7af6f7bfb2346d48a..7a59782594f4576eb3c5d4b6246a3b8cc89a9535 100644 GIT binary patch delta 113 zcmX@lex7}U8Y5f6_vYL`q!}0j ru7PwjFiif)s4m9^WLyAZc_4;KfXsrhCqH0xVPu?mUTgDGCM`w)D>59- From 017a97d8d427dc20890d93047180dd3d84fa920d Mon Sep 17 00:00:00 2001 From: sahilansari189 Date: Wed, 17 Jul 2024 13:20:23 +0000 Subject: [PATCH 2/2] my new nada program --- .../target/main.nada.bin | Bin 901 -> 901 bytes .../src/secret_addition_complete.py | 20 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/quickstart/nada_quickstart_programs/target/main.nada.bin b/quickstart/nada_quickstart_programs/target/main.nada.bin index e4edd3254a0edbc1eb63c1a29d736816e2430ce5..e9ee7936fefc99758f90541437608fa7cfd96941 100644 GIT binary patch delta 108 zcmZo=Z)M+Lz{o1_=Vo2{WK%{9L4_YcRviNa9|Hpem_50UQAYtJ4HRSn3WAja*$m$y gVh}}aOiF?<5s+3ed-5(uZAQk4>%}(PGr2JW0RM6%&Hw-a delta 108 zcmZo=Z)M+Lz{qN_w<>AEWK%{9!3Vp6tU3k;J_ZH`Fne+xqmIBHgdmtb`7fikB3Khp bDGN|3j15x>(RzweiIH*Qda=#+Om2(-ne-!_ diff --git a/quickstart_complete/nada_quickstart_programs/src/secret_addition_complete.py b/quickstart_complete/nada_quickstart_programs/src/secret_addition_complete.py index 5c3e4139..d15f1d8d 100644 --- a/quickstart_complete/nada_quickstart_programs/src/secret_addition_complete.py +++ b/quickstart_complete/nada_quickstart_programs/src/secret_addition_complete.py @@ -1,18 +1,18 @@ from nada_dsl import * - def nada_main(): party1 = Party(name="Party1") - my_int1 = SecretInteger(Input(name="my_int1", party=party1)) + # Define a list of secret integers as inputs + secret_integers = [ + SecretInteger(Input(name=f"int{i+1}", party=party1)) + for i in range(5) # Let's assume we are taking 5 integers for simplicity + ] - my_int2 = SecretInteger(Input(name="my_int2", party=party1)) - - my_int3 = SecretInteger(Input(name="my_int3", party=party1)) + # Calculate the sum of the secret integers + total_sum = sum(secret_integers) - sum_int = my_int1 + my_int2 + my_int3 - - product_int = my_int1 * my_int2 * my_int3 + # Calculate the average + average = total_sum / len(secret_integers) - return [Output(sum_int, "sum_output", party1), - Output(product_int, "product_output", party1)] + return [Output(average, "average_output", party1)]