@ethernity-cloud/sdk-js 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (184) hide show
  1. package/LICENSE +661 -0
  2. package/README.md +185 -0
  3. package/build.js +22 -0
  4. package/init.js +301 -0
  5. package/nodenithy/build/las/Dockerfile +5 -0
  6. package/nodenithy/build/securelock/Dockerfile.tmpl +65 -0
  7. package/nodenithy/build/securelock/scripts/binary-fs-build.sh +28 -0
  8. package/nodenithy/build/securelock/src/.env +3 -0
  9. package/nodenithy/build/securelock/src/etny_crypto.js +201 -0
  10. package/nodenithy/build/securelock/src/etny_exec.js +65 -0
  11. package/nodenithy/build/securelock/src/image_registry_abi.js +808 -0
  12. package/nodenithy/build/securelock/src/models.js +261 -0
  13. package/nodenithy/build/securelock/src/package.json +40 -0
  14. package/nodenithy/build/securelock/src/pox_abi.js +1491 -0
  15. package/nodenithy/build/securelock/src/securelock.js.tmpl +421 -0
  16. package/nodenithy/build/securelock/src/swift_stream_service.js +147 -0
  17. package/nodenithy/build/securelock/src/task_status.js +15 -0
  18. package/nodenithy/build/securelock/src/wallet.js +29 -0
  19. package/nodenithy/build/squash/Dockerfile +7 -0
  20. package/nodenithy/build/trustedzone/Dockerfile.tmpl +57 -0
  21. package/nodenithy/build/trustedzone/scripts/binary-fs-build.sh +22 -0
  22. package/nodenithy/build/trustedzone/src/.env +3 -0
  23. package/nodenithy/build/trustedzone/src/etny_crypto.js +202 -0
  24. package/nodenithy/build/trustedzone/src/etny_exec.js +54 -0
  25. package/nodenithy/build/trustedzone/src/image_registry_abi.js +808 -0
  26. package/nodenithy/build/trustedzone/src/models.js +261 -0
  27. package/nodenithy/build/trustedzone/src/package.json +40 -0
  28. package/nodenithy/build/trustedzone/src/pox_abi.js +1491 -0
  29. package/nodenithy/build/trustedzone/src/swift_stream_service.js +147 -0
  30. package/nodenithy/build/trustedzone/src/task_status.js +15 -0
  31. package/nodenithy/build/trustedzone/src/test.js +44 -0
  32. package/nodenithy/build/trustedzone/src/trustedzone.js.tmpl +508 -0
  33. package/nodenithy/build/trustedzone/src/wallet.js +28 -0
  34. package/nodenithy/build/validator/Dockerfile +58 -0
  35. package/nodenithy/build/validator/package-lock.json +6 -0
  36. package/nodenithy/build/validator/scripts/binary-fs-build.sh +19 -0
  37. package/nodenithy/build/validator/src/.env +3 -0
  38. package/nodenithy/build/validator/src/cert.pem +5 -0
  39. package/nodenithy/build/validator/src/etny_crypto.js +204 -0
  40. package/nodenithy/build/validator/src/etny_exec.js +52 -0
  41. package/nodenithy/build/validator/src/image_registry_abi.js +808 -0
  42. package/nodenithy/build/validator/src/key.pem +6 -0
  43. package/nodenithy/build/validator/src/models.js +261 -0
  44. package/nodenithy/build/validator/src/package-lock.json +2498 -0
  45. package/nodenithy/build/validator/src/package.json +40 -0
  46. package/nodenithy/build/validator/src/pox_abi.js +1491 -0
  47. package/nodenithy/build/validator/src/swift_stream_service.js +147 -0
  48. package/nodenithy/build/validator/src/task_status.js +15 -0
  49. package/nodenithy/build/validator/src/test.js +44 -0
  50. package/nodenithy/build/validator/src/trustedzone.js +613 -0
  51. package/nodenithy/build/validator/src/validator_abi.js +834 -0
  52. package/nodenithy/build/validator/src/wallet.js +28 -0
  53. package/nodenithy/build.js +184 -0
  54. package/nodenithy/build.mjs +179 -0
  55. package/nodenithy/build.sh +161 -0
  56. package/nodenithy/ipfs.js +135 -0
  57. package/nodenithy/ipfs.mjs +551 -0
  58. package/nodenithy/public/favicon.ico +0 -0
  59. package/nodenithy/public/index.html +43 -0
  60. package/nodenithy/public/logo192.png +0 -0
  61. package/nodenithy/public/logo512.png +0 -0
  62. package/nodenithy/public/manifest.json +25 -0
  63. package/nodenithy/public/robots.txt +3 -0
  64. package/nodenithy/run/__pycache__/swift_stream_service.cpython-312.pyc +0 -0
  65. package/nodenithy/run/app/input.txt +4 -0
  66. package/nodenithy/run/app/payload.js +4 -0
  67. package/nodenithy/run/docker-compose-final.yml.tmpl +65 -0
  68. package/nodenithy/run/docker-compose-swift-stream.yml +17 -0
  69. package/nodenithy/run/docker-compose.yml.tmpl +76 -0
  70. package/nodenithy/run/etny-securelock-test.yaml.tpl +46 -0
  71. package/nodenithy/run/etny-trustedzone-test.yaml.tpl +45 -0
  72. package/nodenithy/run/git.sh +22 -0
  73. package/nodenithy/run/image_registry.abi +1 -0
  74. package/nodenithy/run/image_registry.js +372 -0
  75. package/nodenithy/run/image_registry.py +327 -0
  76. package/nodenithy/run/image_registry_runner.py +71 -0
  77. package/nodenithy/run/ipfs.sh +58 -0
  78. package/nodenithy/run/ipfs_pre.sh +75 -0
  79. package/nodenithy/run/public_key_service.js +90 -0
  80. package/nodenithy/run/public_key_service.py +107 -0
  81. package/nodenithy/run/swift_stream_service.py +212 -0
  82. package/nodenithy/run/swiftstream.py +37 -0
  83. package/nodenithy/run/swiftstream1.py +27 -0
  84. package/nodenithy/run.js +538 -0
  85. package/nodenithy/run.sh +277 -0
  86. package/nodenithy/scripts/build-ipfs-upload.sh +23 -0
  87. package/nodenithy/scripts/build.sh +40 -0
  88. package/nodenithy/scripts/ipfs-daemon.sh +7 -0
  89. package/nodenithy/scripts/run.sh +50 -0
  90. package/nodenithy/src/App.css +57 -0
  91. package/nodenithy/src/ec_helloworld_example.js +64 -0
  92. package/nodenithy/src/index.css +13 -0
  93. package/nodenithy/src/index.js +17 -0
  94. package/nodenithy/src/preStart.js +45 -0
  95. package/nodenithy/src/preStart.mjs +57 -0
  96. package/nodenithy/src/reportWebVitals.js +13 -0
  97. package/nodenithy/src/serverless/backend.js +5 -0
  98. package/package.json +48 -0
  99. package/postinstall.js +34 -0
  100. package/publish.js +126 -0
  101. package/pynithy/build/docker-compose.yml +68 -0
  102. package/pynithy/build/las/Dockerfile +11 -0
  103. package/pynithy/build/las/src/etny_entrypoint.sh +6 -0
  104. package/pynithy/build/las/src/las_entrypoint.sh +26 -0
  105. package/pynithy/build/scripts/binary-fs-build.sh +28 -0
  106. package/pynithy/build/securelock/Dockerfile.tmpl +78 -0
  107. package/pynithy/build/securelock/scripts/binary-fs-build.sh +41 -0
  108. package/pynithy/build/securelock/src/app/.env +5 -0
  109. package/pynithy/build/securelock/src/app/cert1-ca1-clean.crt +10 -0
  110. package/pynithy/build/securelock/src/app/cert1-ca1-clean.key +6 -0
  111. package/pynithy/build/securelock/src/app/enclave_pub_cert.pem +10 -0
  112. package/pynithy/build/securelock/src/app/input.txt +1 -0
  113. package/pynithy/build/securelock/src/app/payload.py +25 -0
  114. package/pynithy/build/securelock/src/app/public-cert-clean.pem +10 -0
  115. package/pynithy/build/securelock/src/app/result.txt +1 -0
  116. package/pynithy/build/securelock/src/app/transaction.txt +1 -0
  117. package/pynithy/build/securelock/src/etny_crypto.py +167 -0
  118. package/pynithy/build/securelock/src/etny_exec.py +79 -0
  119. package/pynithy/build/securelock/src/image_registry.abi +1 -0
  120. package/pynithy/build/securelock/src/key_generation.py +17 -0
  121. package/pynithy/build/securelock/src/models.py +176 -0
  122. package/pynithy/build/securelock/src/pox.abi +1489 -0
  123. package/pynithy/build/securelock/src/securelock.py.tmpl +411 -0
  124. package/pynithy/build/securelock/src/swift_stream_service.py +186 -0
  125. package/pynithy/build/trustedzone/Dockerfile.tmpl +56 -0
  126. package/pynithy/build/trustedzone/scripts/binary-fs-build.sh +32 -0
  127. package/pynithy/build/trustedzone/src/app/.env +5 -0
  128. package/pynithy/build/trustedzone/src/app/cert1-ca1-clean.crt +10 -0
  129. package/pynithy/build/trustedzone/src/app/cert1-ca1-clean.key +6 -0
  130. package/pynithy/build/trustedzone/src/app/enclave_pub_cert.pem +10 -0
  131. package/pynithy/build/trustedzone/src/app/input.txt +1 -0
  132. package/pynithy/build/trustedzone/src/app/payload.py +25 -0
  133. package/pynithy/build/trustedzone/src/app/public-cert-clean.pem +10 -0
  134. package/pynithy/build/trustedzone/src/app/result.txt +1 -0
  135. package/pynithy/build/trustedzone/src/app/securelock.crt +10 -0
  136. package/pynithy/build/trustedzone/src/app/transaction.txt +1 -0
  137. package/pynithy/build/trustedzone/src/app/trustedzone.crt +10 -0
  138. package/pynithy/build/trustedzone/src/etny_crypto.py +188 -0
  139. package/pynithy/build/trustedzone/src/etny_exec.py +56 -0
  140. package/pynithy/build/trustedzone/src/formatter.py +42 -0
  141. package/pynithy/build/trustedzone/src/image_registry.abi +1 -0
  142. package/pynithy/build/trustedzone/src/key_generation.py +17 -0
  143. package/pynithy/build/trustedzone/src/models.py +176 -0
  144. package/pynithy/build/trustedzone/src/pox.abi +1489 -0
  145. package/pynithy/build/trustedzone/src/swift_stream_service.py +186 -0
  146. package/pynithy/build/trustedzone/src/trustedzone.py.tmpl +460 -0
  147. package/pynithy/build.mjs +179 -0
  148. package/pynithy/docker-compose.yml +0 -0
  149. package/pynithy/ipfs.mjs +244 -0
  150. package/pynithy/public/favicon.ico +0 -0
  151. package/pynithy/public/index.html +43 -0
  152. package/pynithy/public/logo192.png +0 -0
  153. package/pynithy/public/logo512.png +0 -0
  154. package/pynithy/public/manifest.json +25 -0
  155. package/pynithy/public/robots.txt +3 -0
  156. package/pynithy/run/certs/cert.pem +31 -0
  157. package/pynithy/run/certs/challenge.crt +10 -0
  158. package/pynithy/run/certs/key.pem +52 -0
  159. package/pynithy/run/docker-compose-final.yml +59 -0
  160. package/pynithy/run/docker-compose-final.yml.tmpl +59 -0
  161. package/pynithy/run/docker-compose-swift-stream.yml +27 -0
  162. package/pynithy/run/docker-compose-swift-stream.yml.tmpl +27 -0
  163. package/pynithy/run/docker-compose.yml +55 -0
  164. package/pynithy/run/docker-compose.yml.tmpl +55 -0
  165. package/pynithy/run/etny-pynity-test.yaml.tpl +46 -0
  166. package/pynithy/run/etny-securelock-test.yaml.tpl +46 -0
  167. package/pynithy/run/etny-trustedzone-test.yaml.tpl +46 -0
  168. package/pynithy/run/git.sh +22 -0
  169. package/pynithy/run/image_registry.abi +1 -0
  170. package/pynithy/run/image_registry.js +372 -0
  171. package/pynithy/run/image_registry.py +139 -0
  172. package/pynithy/run/image_registry_runner.py +45 -0
  173. package/pynithy/run/ipfs.sh +89 -0
  174. package/pynithy/run/public_key_service.js +90 -0
  175. package/pynithy/run/swiftstream.py +28 -0
  176. package/pynithy/run.js +538 -0
  177. package/pynithy/src/App.css +57 -0
  178. package/pynithy/src/ec_helloworld_example.js +64 -0
  179. package/pynithy/src/index.css +13 -0
  180. package/pynithy/src/index.js +17 -0
  181. package/pynithy/src/preStart.mjs +57 -0
  182. package/pynithy/src/reportWebVitals.js +13 -0
  183. package/pynithy/src/serverless/__init__.py +0 -0
  184. package/pynithy/src/serverless/backend.py +2 -0
@@ -0,0 +1,59 @@
1
+ version: '3.2'
2
+ services:
3
+ las:
4
+ container_name: las
5
+ privileged: true
6
+ image: localhost:5000/etny-las
7
+ entrypoint: "/las_entrypoint.sh"
8
+ command: "bash -c '/las_entrypoint.sh && /usr/local/bin/las | tee /var/log/las.log'"
9
+ restart: unless-stopped
10
+ networks:
11
+ - ethernity
12
+ ports:
13
+ - target: 18766
14
+ published: 18766
15
+ protocol: tcp
16
+ mode: host
17
+
18
+ etny-securelock:
19
+ container_name: etny-securelock
20
+ privileged: true
21
+ image: localhost:5000/etny-securelock
22
+ entrypoint: ""
23
+ command: [ "/usr/local/bin/python", "/etny-securelock/securelock.py" ]
24
+ environment:
25
+ - SCONE_CAS_ADDR=scone-cas.cf
26
+ - SCONE_LAS_ADDR=las
27
+ - SCONE_CONFIG_ID=__ENCLAVE_NAME_SECURELOCK__/application
28
+ - SCONE_HEAP=1024M
29
+ - SCONE_LOG=DEBUG
30
+ - SCONE_ALLOW_DLOPEN=1
31
+ - SCONE_EXTENSIONS_PATH=/lib/libbinary-fs.so
32
+ restart: on-failure
33
+ networks:
34
+ - ethernity
35
+ depends_on:
36
+ - las
37
+
38
+ etny-trustedzone:
39
+ container_name: etny-trustedzone
40
+ privileged: true
41
+ image: localhost:5000/etny-trustedzone
42
+ entrypoint: ""
43
+ command: [ "/usr/local/bin/python", "/etny-trustedzone/trustedzone.py" ]
44
+ environment:
45
+ - SCONE_CAS_ADDR=scone-cas.cf
46
+ - SCONE_LAS_ADDR=las
47
+ - SCONE_CONFIG_ID=__ENCLAVE_NAME_TRUSTEDZONE__/application
48
+ - SCONE_HEAP=256M
49
+ - SCONE_LOG=DEBUG
50
+ - SCONE_ALLOW_DLOPEN=1
51
+ - SCONE_EXTENSIONS_PATH=/lib/libbinary-fs.so
52
+ restart: on-failure
53
+ networks:
54
+ - ethernity
55
+ depends_on:
56
+ - las
57
+ networks:
58
+ ethernity:
59
+ external: true
@@ -0,0 +1,27 @@
1
+ version: '3.2'
2
+
3
+ services:
4
+ minio:
5
+ container_name: etny-swift-stream
6
+ image: quay.io/minio/minio:RELEASE.2023-03-13T19-46-17Z
7
+ command: server /data/
8
+ expose:
9
+ - "9000"
10
+ ports:
11
+ - "0.0.0.0:9000:9000"
12
+ environment:
13
+ MINIO_ROOT_USER: swiftstreamadmin
14
+ MINIO_ROOT_PASSWORD: swiftstreamadmin
15
+ healthcheck:
16
+ test: [ "CMD", "curl", "-f", "http://docker:9000/minio/health/live" ]
17
+ interval: 30s
18
+ timeout: 20s
19
+ retries: 3
20
+ # networks:
21
+ # - ethernity
22
+ # volumes:
23
+ # - etny-swift-stream-data:/data
24
+
25
+ # networks:
26
+ # ethernity:
27
+ # driver: bridge
@@ -0,0 +1,27 @@
1
+ version: '3.2'
2
+
3
+ services:
4
+ minio:
5
+ container_name: etny-swift-stream
6
+ image: quay.io/minio/minio:RELEASE.2023-03-13T19-46-17Z
7
+ command: server /data/
8
+ expose:
9
+ - "9000"
10
+ ports:
11
+ - "0.0.0.0:9000:9000"
12
+ environment:
13
+ MINIO_ROOT_USER: swiftstreamadmin
14
+ MINIO_ROOT_PASSWORD: swiftstreamadmin
15
+ healthcheck:
16
+ test: [ "CMD", "curl", "-f", "http://docker:9000/minio/health/live" ]
17
+ interval: 30s
18
+ timeout: 20s
19
+ retries: 3
20
+ # networks:
21
+ # - ethernity
22
+ # volumes:
23
+ # - etny-swift-stream-data:/data
24
+
25
+ # networks:
26
+ # ethernity:
27
+ # driver: bridge
@@ -0,0 +1,55 @@
1
+ version: '3.2'
2
+ services:
3
+ las:
4
+ container_name: las
5
+ privileged: true
6
+ image: localhost:5000/etny-las
7
+ command: "bash -c '/las_entrypoint.sh && /usr/local/bin/las | tee /var/log/las.log'"
8
+ devices:
9
+ - "/dev/sgx_enclave:/dev/sgx_enclave"
10
+ restart: unless-stopped
11
+ ports:
12
+ - target: 18766
13
+ published: 18766
14
+ protocol: tcp
15
+ mode: host
16
+
17
+ etny-securelock:
18
+ container_name: etny-securelock
19
+ privileged: true
20
+ image: localhost:5000/etny-securelock
21
+ entrypoint: ""
22
+ command: [ "/usr/local/bin/python", "/etny-securelock/securelock.py" ]
23
+ environment:
24
+ - SCONE_CAS_ADDR=scone-cas.cf
25
+ - SCONE_LAS_ADDR=las
26
+ - SCONE_CONFIG_ID=__ENCLAVE_NAME_SECURELOCK__/application
27
+ - SCONE_HEAP=1024M
28
+ - SCONE_LOG=INFO
29
+ - SCONE_ALLOW_DLOPEN=1
30
+ - SCONE_EXTENSIONS_PATH=/lib/libbinary-fs.so
31
+ restart: on-failure:5
32
+ devices:
33
+ - "/dev/sgx_enclave:/dev/sgx_enclave"
34
+ depends_on:
35
+ - las
36
+
37
+ etny-trustedzone:
38
+ container_name: etny-trustedzone
39
+ privileged: true
40
+ image: localhost:5000/etny-trustedzone
41
+ entrypoint: ""
42
+ command: [ "/usr/local/bin/python", "/etny-trustedzone/trustedzone.py" ]
43
+ environment:
44
+ - SCONE_CAS_ADDR=scone-cas.cf
45
+ - SCONE_LAS_ADDR=las
46
+ - SCONE_CONFIG_ID=__ENCLAVE_NAME_TRUSTEDZONE__/application
47
+ - SCONE_HEAP=256M
48
+ - SCONE_LOG=DEBUG
49
+ - SCONE_ALLOW_DLOPEN=1
50
+ - SCONE_EXTENSIONS_PATH=/lib/libbinary-fs.so
51
+ restart: on-failure:5
52
+ devices:
53
+ - "/dev/sgx_enclave:/dev/sgx_enclave"
54
+ depends_on:
55
+ - las
@@ -0,0 +1,55 @@
1
+ version: '3.2'
2
+ services:
3
+ las:
4
+ container_name: las
5
+ privileged: true
6
+ image: localhost:5000/etny-las
7
+ command: "bash -c '/las_entrypoint.sh && /usr/local/bin/las | tee /var/log/las.log'"
8
+ devices:
9
+ - "/dev/sgx_enclave:/dev/sgx_enclave"
10
+ restart: unless-stopped
11
+ ports:
12
+ - target: 18766
13
+ published: 18766
14
+ protocol: tcp
15
+ mode: host
16
+
17
+ etny-securelock:
18
+ container_name: etny-securelock
19
+ privileged: true
20
+ image: localhost:5000/etny-securelock
21
+ entrypoint: ""
22
+ command: [ "/usr/local/bin/python", "/etny-securelock/securelock.py" ]
23
+ environment:
24
+ - SCONE_CAS_ADDR=scone-cas.cf
25
+ - SCONE_LAS_ADDR=las
26
+ - SCONE_CONFIG_ID=__ENCLAVE_NAME_SECURELOCK__/application
27
+ - SCONE_HEAP=1024M
28
+ - SCONE_LOG=INFO
29
+ - SCONE_ALLOW_DLOPEN=1
30
+ - SCONE_EXTENSIONS_PATH=/lib/libbinary-fs.so
31
+ restart: on-failure:5
32
+ devices:
33
+ - "/dev/sgx_enclave:/dev/sgx_enclave"
34
+ depends_on:
35
+ - las
36
+
37
+ etny-trustedzone:
38
+ container_name: etny-trustedzone
39
+ privileged: true
40
+ image: localhost:5000/etny-trustedzone
41
+ entrypoint: ""
42
+ command: [ "/usr/local/bin/python", "/etny-trustedzone/trustedzone.py" ]
43
+ environment:
44
+ - SCONE_CAS_ADDR=scone-cas.cf
45
+ - SCONE_LAS_ADDR=las
46
+ - SCONE_CONFIG_ID=__ENCLAVE_NAME_TRUSTEDZONE__/application
47
+ - SCONE_HEAP=256M
48
+ - SCONE_LOG=DEBUG
49
+ - SCONE_ALLOW_DLOPEN=1
50
+ - SCONE_EXTENSIONS_PATH=/lib/libbinary-fs.so
51
+ restart: on-failure:5
52
+ devices:
53
+ - "/dev/sgx_enclave:/dev/sgx_enclave"
54
+ depends_on:
55
+ - las
@@ -0,0 +1,46 @@
1
+ name: __ENCLAVE_NAME__
2
+ version: "0.3"
3
+ __PREDECESSOR__
4
+
5
+ security:
6
+ attestation:
7
+ tolerate: [debug-mode, hyperthreading, outdated-tcb, software-hardening-needed]
8
+ ignore_advisories: "*"
9
+
10
+ services:
11
+ - name: application
12
+ image_name: application_image
13
+ mrenclaves: [ "__MRENCLAVE__" ]
14
+ command: /usr/local/bin/python /etny-pynithy/etny_result.py
15
+ pwd: /
16
+ environment:
17
+ GREETING: hello ETNY!!!!
18
+
19
+ images:
20
+ - name: application_image
21
+ injection_files:
22
+ - path: /app/ca.pem
23
+ content: $$SCONE::CA_CERT:crt$$
24
+ - path: /app/cert.pem
25
+ content: $$SCONE::SERVER_CERT:crt$$
26
+ - path: /private/key.pem
27
+ content: $$SCONE::SERVER_CERT:privatekey$$
28
+
29
+ secrets:
30
+ - name: CA_KEY
31
+ kind: private-key
32
+ key_type: P-384
33
+ migrate: true
34
+ - name: CA_CERT
35
+ kind: x509-ca
36
+ private_key: CA_KEY
37
+ valid_for: 3560d
38
+ - name: SERVER_KEY
39
+ kind: private-key
40
+ key_type: P-384
41
+ migrate: false
42
+ - name: SERVER_CERT
43
+ issuer: CA_CERT
44
+ kind: x509
45
+ endpoint: server
46
+ private_key: SERVER_KEY
@@ -0,0 +1,46 @@
1
+ name: __ENCLAVE_NAME__
2
+ version: "0.3"
3
+ __PREDECESSOR__
4
+
5
+ security:
6
+ attestation:
7
+ tolerate: [debug-mode, hyperthreading, outdated-tcb, software-hardening-needed, debug-mode]
8
+ ignore_advisories: "*"
9
+
10
+ services:
11
+ - name: application
12
+ image_name: application_image
13
+ mrenclaves: [ "__MRENCLAVE__" ]
14
+ command: /usr/local/bin/python /etny-securelock/securelock.py
15
+ pwd: /
16
+ environment:
17
+ GREETING: hello ETNY!!!!
18
+
19
+ images:
20
+ - name: application_image
21
+ injection_files:
22
+ - path: /app/__ENCLAVE_NAME__/ca.pem
23
+ content: $$SCONE::CA_CERT:crt$$
24
+ - path: /app/__ENCLAVE_NAME__/cert.pem
25
+ content: $$SCONE::SERVER_CERT:crt$$
26
+ - path: /private/__ENCLAVE_NAME__/key.pem
27
+ content: $$SCONE::SERVER_CERT:privatekey$$
28
+
29
+ secrets:
30
+ - name: CA_KEY
31
+ kind: private-key
32
+ key_type: P-384
33
+ migrate: true
34
+ - name: CA_CERT
35
+ kind: x509-ca
36
+ private_key: CA_KEY
37
+ valid_for: 3560d
38
+ - name: SERVER_KEY
39
+ kind: private-key
40
+ key_type: P-384
41
+ migrate: false
42
+ - name: SERVER_CERT
43
+ issuer: CA_CERT
44
+ kind: x509
45
+ endpoint: server
46
+ private_key: SERVER_KEY
@@ -0,0 +1,46 @@
1
+ name: __ENCLAVE_NAME__
2
+ version: "0.3"
3
+ __PREDECESSOR__
4
+
5
+ security:
6
+ attestation:
7
+ tolerate: [debug-mode, hyperthreading, outdated-tcb, software-hardening-needed]
8
+ ignore_advisories: "*"
9
+
10
+ services:
11
+ - name: application
12
+ image_name: application_image
13
+ mrenclaves: [ "__MRENCLAVE__", "2e0d912a68de525a0631d345af5af6126377ab27b9ef42373534255a320069e6" ]
14
+ command: /usr/local/bin/python /etny-trustedzone/trustedzone.py
15
+ pwd: /
16
+ environment:
17
+ GREETING: hello ETNY!!!!
18
+
19
+ images:
20
+ - name: application_image
21
+ injection_files:
22
+ - path: /app/__ENCLAVE_NAME__/ca.pem
23
+ content: $$SCONE::CA_CERT:crt$$
24
+ - path: /app/__ENCLAVE_NAME__/cert.pem
25
+ content: $$SCONE::SERVER_CERT:crt$$
26
+ - path: /private/__ENCLAVE_NAME__/key.pem
27
+ content: $$SCONE::SERVER_CERT:privatekey$$
28
+
29
+ secrets:
30
+ - name: CA_KEY
31
+ kind: private-key
32
+ key_type: P-384
33
+ migrate: true
34
+ - name: CA_CERT
35
+ kind: x509-ca
36
+ private_key: CA_KEY
37
+ valid_for: 3560d
38
+ - name: SERVER_KEY
39
+ kind: private-key
40
+ key_type: P-384
41
+ migrate: false
42
+ - name: SERVER_CERT
43
+ issuer: CA_CERT
44
+ kind: x509
45
+ endpoint: server
46
+ private_key: SERVER_KEY
@@ -0,0 +1,22 @@
1
+ #!/bin/sh
2
+
3
+ apk add git
4
+
5
+ ls -la
6
+
7
+ echo "${REGISTRY_PATH}"
8
+ cd ${REGISTRY_PATH}
9
+
10
+ ls -la
11
+
12
+ #commit add all to git
13
+ ls -la ${CI_PROJECT_DIR}/etny-hash-packages/etny-pynithy/v3/
14
+ echo "Adding changed files to GIT: IPFS_HASH, IPFS_DOCKER_COMPOSE_HASH, CERTIFICATE..."
15
+ git -C ${CI_PROJECT_DIR}/etny-hash-packages add etny-pynithy/v3/.
16
+ echo "Committed all files"
17
+ git -C ${CI_PROJECT_DIR}/etny-hash-packages commit -m 'Adding changed files to GIT: IPFS_HASH, IPFS_DOCKER_COMPOSE_HASH, CERTIFICATE'
18
+ echo "Pushed all files"
19
+ git -C ${CI_PROJECT_DIR}/etny-hash-packages push
20
+ echo "Added and committed all files"
21
+ cd -
22
+
@@ -0,0 +1 @@
1
+ [{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"wallet","type":"address"}],"name":"AllowedWalletAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"wallet","type":"address"}],"name":"AllowedWalletRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"ipfsHash","type":"string"},{"indexed":false,"internalType":"string","name":"publicKey","type":"string"},{"indexed":false,"internalType":"string","name":"version","type":"string"}],"name":"ImageAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"ipfsHash","type":"string"}],"name":"ImagePublished","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"ipfsHash","type":"string"}],"name":"ImageRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"ipfsHash","type":"string"}],"name":"ImageValidated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnerChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"ipfsHash","type":"string"}],"name":"TrustedZoneImageAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"ipfsHash","type":"string"}],"name":"TrustedZoneImageRemoved","type":"event"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"addAllowedWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"ipfsHash","type":"string"},{"internalType":"string","name":"certPublicKey","type":"string"},{"internalType":"string","name":"version","type":"string"},{"internalType":"string","name":"imageName","type":"string"},{"internalType":"string","name":"dockerComposeHash","type":"string"},{"internalType":"string","name":"session","type":"string"},{"internalType":"uint8","name":"fee","type":"uint8"}],"name":"addImage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"ipfsHash","type":"string"},{"internalType":"string","name":"certPublicKey","type":"string"},{"internalType":"string","name":"version","type":"string"},{"internalType":"string","name":"imageName","type":"string"},{"internalType":"string","name":"dockerComposeHash","type":"string"},{"internalType":"string","name":"session","type":"string"},{"internalType":"uint8","name":"fee","type":"uint8"}],"name":"addTrustedZoneImage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"ipfsHash","type":"string"},{"internalType":"address","name":"newRewardAddress","type":"address"}],"name":"changeImageRewardAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"changeOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"ipfsHash","type":"string"},{"internalType":"address","name":"newRewardAddress","type":"address"}],"name":"changeTrustedZoneImageRewardAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"ipfsHash","type":"string"}],"name":"publishImage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"removeAllowedWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"ipfsHash","type":"string"}],"name":"validateImage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"allowedWallets","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"ipfsHash","type":"string"}],"name":"getImageCertPublicKey","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"ipfsHash","type":"string"}],"name":"getImageSession","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"imageName","type":"string"},{"internalType":"string","name":"version","type":"string"}],"name":"getLatestImageVersionPublicKey","outputs":[{"internalType":"string","name":"","type":"string"},{"internalType":"string","name":"","type":"string"},{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"imageName","type":"string"},{"internalType":"string","name":"version","type":"string"}],"name":"getLatestTrustedZoneImageCertPublicKey","outputs":[{"internalType":"string","name":"","type":"string"},{"internalType":"string","name":"","type":"string"},{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"ipfsHash","type":"string"}],"name":"getRewardAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"ipfsHash","type":"string"}],"name":"getTrustedZoneImageCertPublicKey","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"ipfsHash","type":"string"}],"name":"getTrustedZoneImageSession","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"ipfsHash","type":"string"}],"name":"getTrustedZoneRewardAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"","type":"string"}],"name":"imageDetails","outputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"string","name":"ipfsHash","type":"string"},{"internalType":"string","name":"version","type":"string"},{"internalType":"string","name":"session","type":"string"},{"internalType":"uint8","name":"fee","type":"uint8"},{"internalType":"address","name":"rewardAddress","type":"address"},{"internalType":"bool","name":"validated","type":"bool"},{"internalType":"bool","name":"published","type":"bool"},{"internalType":"string","name":"certPublicKey","type":"string"},{"internalType":"string","name":"dockerComposeHash","type":"string"},{"internalType":"string","name":"name","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"images","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"","type":"string"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"imageVersions","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"","type":"string"},{"internalType":"string","name":"","type":"string"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"imageVersionsHash","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"","type":"string"}],"name":"trustedZoneImageDetails","outputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"string","name":"ipfsHash","type":"string"},{"internalType":"string","name":"version","type":"string"},{"internalType":"string","name":"session","type":"string"},{"internalType":"uint8","name":"fee","type":"uint8"},{"internalType":"address","name":"rewardAddress","type":"address"},{"internalType":"bool","name":"validated","type":"bool"},{"internalType":"bool","name":"published","type":"bool"},{"internalType":"string","name":"certPublicKey","type":"string"},{"internalType":"string","name":"dockerComposeHash","type":"string"},{"internalType":"string","name":"name","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"","type":"string"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"trustedZoneImageVersions","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"","type":"string"},{"internalType":"string","name":"","type":"string"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"trustedZoneVersionsHash","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"}]