@super-protocol/addons-tee 0.9.10 → 2.0.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 (116) hide show
  1. package/bindings/nvidia-native/README.md +174 -0
  2. package/bindings/nvidia-native/package.json +26 -0
  3. package/bindings/nvidia-native/postinstall.js +40 -0
  4. package/dist/index.d.ts +1 -1
  5. package/dist/index.js +1 -28
  6. package/package.json +4 -2
  7. package/.editorconfig +0 -15
  8. package/.eslintrc.json +0 -61
  9. package/.prettierignore +0 -3
  10. package/.prettierrc +0 -15
  11. package/bindings/amd-sev-snp-napi-rs/amd-sev-snp-napi-rs.linux-x64-gnu.node +0 -0
  12. package/bindings/amd-sev-snp-napi-rs/index.d.ts +0 -51
  13. package/bindings/amd-sev-snp-napi-rs/index.js +0 -339
  14. package/bindings/amd-sev-snp-napi-rs/package-lock.json +0 -40
  15. package/bindings/sgx-native/build/Release/libmbedcrypto_gramine.so.15 +0 -0
  16. package/bindings/sgx-native/build/Release/libmbedx509_gramine.so.6 +0 -0
  17. package/bindings/sgx-native/build/Release/libsgx_dcap_quoteverify.so.1 +0 -0
  18. package/bindings/sgx-native/build/Release/libtdx_attest.so.1 +0 -0
  19. package/bindings/sgx-native/build/Release/sgx_native.node +0 -0
  20. package/bindings/sgx-native/package-lock.json +0 -23
  21. package/bindings/sp-sev/.github/auto_assign-issues.yml +0 -5
  22. package/bindings/sp-sev/.github/auto_assign.yml +0 -21
  23. package/bindings/sp-sev/.github/dependabot.yml +0 -6
  24. package/bindings/sp-sev/.github/workflows/dco.yml +0 -10
  25. package/bindings/sp-sev/.github/workflows/lint.yml +0 -56
  26. package/bindings/sp-sev/.github/workflows/test.yml +0 -215
  27. package/bindings/sp-sev/.rustfmt.toml +0 -2
  28. package/bindings/sp-sev/CODEOWNERS +0 -1
  29. package/bindings/sp-sev/Cargo.lock +0 -2461
  30. package/bindings/sp-sev/Cargo.toml +0 -80
  31. package/bindings/sp-sev/LICENSE +0 -201
  32. package/bindings/sp-sev/README.md +0 -82
  33. package/bindings/sp-sev/build.rs +0 -17
  34. package/bindings/sp-sev/docs/attestation/README.md +0 -239
  35. package/bindings/sp-sev/docs/attestation/certchain.dot +0 -14
  36. package/bindings/sp-sev/docs/attestation/certchain.dot.png +0 -0
  37. package/bindings/sp-sev/docs/attestation/prerequisites.md +0 -6
  38. package/bindings/sp-sev/docs/attestation/process.msc +0 -60
  39. package/bindings/sp-sev/docs/attestation/process.msc.png +0 -0
  40. package/bindings/sp-sev/docs/attestation/protections.md +0 -53
  41. package/bindings/sp-sev/package-version.py +0 -11
  42. package/bindings/sp-sev/tests/api.rs +0 -194
  43. package/bindings/sp-sev/tests/certs.rs +0 -142
  44. package/bindings/sp-sev/tests/certs_data/cert_chain_milan +0 -74
  45. package/bindings/sp-sev/tests/certs_data/cert_chain_turin +0 -74
  46. package/bindings/sp-sev/tests/certs_data/report_milan.hex +0 -1
  47. package/bindings/sp-sev/tests/certs_data/vcek_milan.der +0 -0
  48. package/bindings/sp-sev/tests/certs_data/vcek_turin.der +0 -0
  49. package/bindings/sp-sev/tests/guest.rs +0 -57
  50. package/bindings/sp-sev/tests/id-block.rs +0 -172
  51. package/bindings/sp-sev/tests/measurement/ovmf_AmdSev_suffix.bin +0 -0
  52. package/bindings/sp-sev/tests/measurement/ovmf_OvmfX64_suffix.bin +0 -0
  53. package/bindings/sp-sev/tests/measurement/test_auth_block.bin +0 -0
  54. package/bindings/sp-sev/tests/measurement/test_auth_key.pem +0 -6
  55. package/bindings/sp-sev/tests/measurement/test_auth_sig.bin +0 -0
  56. package/bindings/sp-sev/tests/measurement/test_id_key.pem +0 -6
  57. package/bindings/sp-sev/tests/measurement/test_id_sig.bin +0 -0
  58. package/bindings/sp-sev/tests/measurement.rs +0 -510
  59. package/bindings/sp-sev/tests/naples/ark.cert.bad +0 -0
  60. package/bindings/sp-sev/tests/naples/ark.cert.sig +0 -0
  61. package/bindings/sp-sev/tests/naples/ark.rs +0 -38
  62. package/bindings/sp-sev/tests/naples/ask.rs +0 -29
  63. package/bindings/sp-sev/tests/naples/cek.cert +0 -0
  64. package/bindings/sp-sev/tests/naples/cek.rs +0 -30
  65. package/bindings/sp-sev/tests/naples/mod.rs +0 -20
  66. package/bindings/sp-sev/tests/naples/oca.cert +0 -0
  67. package/bindings/sp-sev/tests/naples/oca.rs +0 -45
  68. package/bindings/sp-sev/tests/naples/pdh.cert +0 -0
  69. package/bindings/sp-sev/tests/naples/pdh.rs +0 -28
  70. package/bindings/sp-sev/tests/naples/pek.cert +0 -0
  71. package/bindings/sp-sev/tests/naples/pek.rs +0 -32
  72. package/bindings/sp-sev/tests/rome/ark.rs +0 -33
  73. package/bindings/sp-sev/tests/rome/ask.rs +0 -29
  74. package/bindings/sp-sev/tests/rome/cek.cert +0 -0
  75. package/bindings/sp-sev/tests/rome/cek.rs +0 -29
  76. package/bindings/sp-sev/tests/rome/mod.rs +0 -16
  77. package/bindings/sp-sev/tests/rome/oca.cert +0 -0
  78. package/bindings/sp-sev/tests/rome/oca.rs +0 -45
  79. package/bindings/sp-sev/tests/rome/pdh.cert +0 -0
  80. package/bindings/sp-sev/tests/rome/pdh.rs +0 -28
  81. package/bindings/sp-sev/tests/rome/pek.cert +0 -0
  82. package/bindings/sp-sev/tests/rome/pek.rs +0 -32
  83. package/bindings/sp-sev/tests/session.rs +0 -39
  84. package/bindings/sp-sev/tests/sev_launch.rs +0 -120
  85. package/bindings/sp-sev/tests/snp_launch.rs +0 -108
  86. package/bindings/utils/virtee/LICENSE +0 -201
  87. package/bindings/utils/virtee/libsev.so +0 -0
  88. package/bindings/utils/virtee/snpguest +0 -0
  89. package/dist/proto/AmdSevSnp.d.ts +0 -194
  90. package/dist/proto/AmdSevSnp.js +0 -363
  91. package/dist/sgx-native-module/consts.d.ts +0 -24
  92. package/dist/sgx-native-module/consts.js +0 -38
  93. package/dist/sgx-native-module/dcap-quote-verify.service.d.ts +0 -12
  94. package/dist/sgx-native-module/dcap-quote-verify.service.js +0 -84
  95. package/dist/sgx-native-module/enclave.service.d.ts +0 -93
  96. package/dist/sgx-native-module/enclave.service.js +0 -211
  97. package/dist/sgx-native-module/errors.d.ts +0 -19
  98. package/dist/sgx-native-module/errors.js +0 -69
  99. package/dist/sgx-native-module/helpers.d.ts +0 -1
  100. package/dist/sgx-native-module/helpers.js +0 -50
  101. package/dist/sgx-native-module/index.d.ts +0 -9
  102. package/dist/sgx-native-module/index.js +0 -26
  103. package/dist/sgx-native-module/pki.service.d.ts +0 -52
  104. package/dist/sgx-native-module/pki.service.js +0 -89
  105. package/dist/sgx-native-module/sev-snp-mrenclave.d.ts +0 -59
  106. package/dist/sgx-native-module/sev-snp-mrenclave.js +0 -323
  107. package/dist/sgx-native-module/sev-snp-schema.d.ts +0 -22
  108. package/dist/sgx-native-module/sev-snp-schema.js +0 -24
  109. package/dist/sgx-native-module/sev-snp.d.ts +0 -126
  110. package/dist/sgx-native-module/sev-snp.js +0 -491
  111. package/dto/src/AmdSevSnp.proto +0 -31
  112. package/dto/src/Compression.proto +0 -11
  113. package/dto/src/Hash.proto +0 -6
  114. package/dto/src/OrderReport.proto +0 -21
  115. package/dto/src/TRI.proto +0 -22
  116. package/dto/src/TeeDeviceInfo.proto +0 -46
@@ -1,172 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
-
3
- #![cfg(all(feature = "openssl", feature = "snp", target_os = "linux"))]
4
-
5
- use std::{
6
- convert::{TryFrom, TryInto},
7
- fs,
8
- io::Read,
9
- path::PathBuf,
10
- };
11
-
12
- use base64::{engine::general_purpose, Engine as _};
13
- use hex::{self, FromHex};
14
-
15
- use sev::measurement::{
16
- idblock::{load_priv_key, snp_calculate_id},
17
- idblock_types::{IdAuth, SevEcdsaPubKey, SevEcdsaSig},
18
- snp::SnpLaunchDigest,
19
- };
20
-
21
- use sev::BINCODE_CFG;
22
-
23
- // Testing that the appropriate id-block and key digests are being generated.
24
- #[test]
25
- fn test_id_block_and_key_digests() {
26
- // Expected ID-BLOCk, ID-KEY digest and AUTH-KEY digest
27
- let expected_id_block = "oU1jg0HlZ0Yo/h4C++3r5eWrT68d1y2JZgaOYVu5nv0T0hSzXCMXFbOOJj3GBZdFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAwAAAAAA".to_string();
28
- let expected_id_key_digest =
29
- "WfssaG36T+9J84M5qndckAUcKNVzg93DuvO160sUlt87DbvcuuX+J2d6ZEggdz/i".to_string();
30
- let expected_auth_key_digest =
31
- "7tgRafsMteDsNHlPEo/U4MSkb2fGWhrfqB/LJLzAiMJyNpt//D6ytq9qQoShs2xf".to_string();
32
-
33
- // Pre-generated launch digest
34
- let launch_digest = Vec::from_hex("a14d638341e5674628fe1e02fbedebe5e5ab4faf1dd72d8966068e615bb99efd13d214b35c231715b38e263dc6059745").unwrap();
35
- let id_launch_digest: SnpLaunchDigest = SnpLaunchDigest::new(launch_digest.try_into().unwrap());
36
-
37
- // Generating ID-block and key digests
38
- let block_calculations = snp_calculate_id(
39
- Some(id_launch_digest),
40
- None,
41
- None,
42
- None,
43
- None,
44
- "./tests/measurement/test_id_key.pem".into(),
45
- "./tests/measurement/test_auth_key.pem".into(),
46
- )
47
- .unwrap();
48
-
49
- // Converting ID-block and key digests into BASE64
50
- let id_block_string = general_purpose::STANDARD
51
- .encode(bincode::encode_to_vec(block_calculations.id_block, BINCODE_CFG).unwrap());
52
- let id_key_digest_string = general_purpose::STANDARD
53
- .encode::<Vec<u8>>(block_calculations.id_key_digest.try_into().unwrap());
54
- let auth_key_digest_string = general_purpose::STANDARD
55
- .encode::<Vec<u8>>(block_calculations.auth_key_digest.try_into().unwrap());
56
-
57
- // Comparing results
58
- assert_eq!(id_block_string, expected_id_block);
59
- assert_eq!(id_key_digest_string, expected_id_key_digest);
60
- assert_eq!(auth_key_digest_string, expected_auth_key_digest);
61
- }
62
-
63
- /// Using private test keys and a pre-generated signatures, the application should always generate the same AUTH-BLOCK.
64
- #[test]
65
- fn test_auth_block_generation() {
66
- // Expected AUTH-BLOCK
67
- let expected_auth_block = "AQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
68
- AAAAAAAAAAAAAAAAAAAAAAAOXTv32b+eBhvU6PfGrK4FkJqcPGnwTzGPATXq5x/30F71yMaxvIwEdhOntvAbc42gAAAAAAA\
69
- AAAAAAAAAAAAAAAAAAAAAAAANQZTcpn3oOB7G0mfAMrA908H16vpqph6Slk5VSL7zMrGukh8m3hasM7ZCdE0Zel2AAAAAAA\
70
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
71
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
72
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
73
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
74
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
75
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAB9tPIC4+57yn/fdR+jeP8uV3ZBDh2ixkyxVIzwMR131TMq4yC\
76
- wv8iwbzwkmTT529gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD6+k5w4NQsIzZvaUDyFOA39fGAS9xlmdnsyFMveqDetHW2+C\
77
- hmxUMfBzblH0KjXzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
78
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
79
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
80
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
81
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
82
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
83
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
84
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
85
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
86
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
87
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
88
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
89
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
90
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7iHuUVX9Whon/SFXD9+2ZgQw9VOz\
91
- UKWURNNwY3QIOyqdxo0y5dmZ3GqMfDrRi6pkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADyYei5XacbKjVCX0iiGad9uw/uJS\
92
- 9k0YzpmIi5+09wsQQBG33+o+A0k3Giv69vkTMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
93
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
94
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
95
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
96
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
97
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAACMhkXa\
98
- 1XNJo8X/xsGl90pWnw+DPAeLsizXlHTw/pLOcWpzmFuimWIz0UyQ1ovHcGIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD1rId\
99
- x4JERA8nyov5IQ3cZKsyziMw6/bdZtVY+zQiTX6niAoEIEHqnSITJojB5PIYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
100
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
101
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
102
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
103
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
104
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
105
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
106
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
107
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
108
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
109
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
110
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
111
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
112
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
113
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
114
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
115
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
116
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
117
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
118
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
119
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
120
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
121
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
122
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
123
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\
124
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=="
125
- .to_string();
126
-
127
- // Test keys in pem format
128
- let id_path: PathBuf = "./tests/measurement/test_id_key.pem".into();
129
- let auth_path: PathBuf = "./tests/measurement/test_auth_key.pem".into();
130
-
131
- // Get id private test key from pem
132
- let id_ec_priv_key = load_priv_key(id_path).unwrap();
133
-
134
- // Generate id public key, should always be the same
135
- let id_ec_pub_key = SevEcdsaPubKey::try_from(&id_ec_priv_key).unwrap();
136
-
137
- // Get id signature from file (can't regenerate, different each time)
138
- let mut id_sig_file = fs::File::open("./tests/measurement/test_id_sig.bin").unwrap();
139
- let mut id_block_bytes = Vec::new();
140
- id_sig_file.read_to_end(&mut id_block_bytes).unwrap();
141
- let (id_block_sig, _): (SevEcdsaSig, usize) =
142
- bincode::decode_from_slice(&id_block_bytes, BINCODE_CFG).unwrap();
143
-
144
- // Get author private test key from pem
145
- let author_ec_priv_key = load_priv_key(auth_path).unwrap();
146
-
147
- // Generate author public key, should always be the same
148
- let author_pub_key = SevEcdsaPubKey::try_from(&author_ec_priv_key).unwrap();
149
-
150
- // Get auth signature from file (can't regenerate, different each time)
151
- let mut auth_sig_file = fs::File::open("./tests/measurement/test_auth_sig.bin").unwrap();
152
- let mut auth_block_bytes = Vec::new();
153
- auth_sig_file.read_to_end(&mut auth_block_bytes).unwrap();
154
- let (auth_block_sig, _): (SevEcdsaSig, usize) =
155
- bincode::decode_from_slice(&auth_block_bytes, BINCODE_CFG).unwrap();
156
-
157
- let auth_block = IdAuth::new(
158
- None,
159
- None,
160
- id_block_sig,
161
- id_ec_pub_key,
162
- auth_block_sig,
163
- author_pub_key,
164
- );
165
-
166
- // Generate Generate auth_block string
167
- let id_auth_bytes = bincode::encode_to_vec(auth_block, BINCODE_CFG).unwrap();
168
- let id_auth_str = general_purpose::STANDARD.encode(id_auth_bytes);
169
-
170
- // Comparing auth_blocks
171
- assert_eq!(id_auth_str, expected_auth_block);
172
- }
@@ -1,6 +0,0 @@
1
- -----BEGIN PRIVATE KEY-----
2
- MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDAyp3rzsOsAMVIVbtmS
3
- QEU83YC5r0EOWZfSX3wwiBQytEjoVsXDBPTpvvyzM2aZ27ChZANiAARicMeL1pBM
4
- 0TNimaJbmHNqcc6S/vB0lNcssosHPIMPn1ZK96XBxv/Fo0lz1dpFhoyGPHkwosmE
5
- SKd6EAiBAuKpX5MIzT5WtVm3/TrMiLPMKhl3Q0j+ovLJAxGR4HGHrPU=
6
- -----END PRIVATE KEY-----
@@ -1,6 +0,0 @@
1
- -----BEGIN PRIVATE KEY-----
2
- MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDDPZQkU2FP1ii90R+e7
3
- /ShQ/rzUzsS8X7kVJ0nJAxcrS1oMD8nKjfsKKfBWJ8nbCyqhZANiAAT2dj5NJgnP
4
- GyzyLyzIuMpM9V1HDDwjVSyTsWiHQ5Ddlcs/3uhH3fef8p77uIA8bR/M16jQR7nN
5
- wcdQsRkKvm0drTeo3ssUMnt2Zhn3EmB8/Q04hTxQ2pvNCAs1OJyTvj4=
6
- -----END PRIVATE KEY-----