diff --git a/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00000.png b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00000.png new file mode 100644 index 00000000..4d1d8b6b Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00000.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00001.png b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00001.png new file mode 100644 index 00000000..373ff82c Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00001.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00002.png b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00002.png new file mode 100644 index 00000000..1eabd4d5 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00002.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00003.png b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00003.png new file mode 100644 index 00000000..76f76426 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00003.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00004.png b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00004.png new file mode 100644 index 00000000..5f8e89c1 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00004.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00005.png b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00005.png new file mode 100644 index 00000000..660f665e Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00005.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00006.png b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00006.png new file mode 100644 index 00000000..2f90a3a5 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00006.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00007.png b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00007.png new file mode 100644 index 00000000..ce795f34 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00007.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00000.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00000.png new file mode 100644 index 00000000..4d1d8b6b Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00000.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00001.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00001.png new file mode 100644 index 00000000..373ff82c Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00001.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00002.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00002.png new file mode 100644 index 00000000..53582313 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00002.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00003.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00003.png new file mode 100644 index 00000000..2f2e4157 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00003.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00004.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00004.png new file mode 100644 index 00000000..5f8e89c1 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00004.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00005.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00005.png new file mode 100644 index 00000000..660f665e Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00005.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00006.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00006.png new file mode 100644 index 00000000..2f90a3a5 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00006.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00007.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00007.png new file mode 100644 index 00000000..ce795f34 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00007.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00000.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00000.png new file mode 100644 index 00000000..4d1d8b6b Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00000.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00001.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00001.png new file mode 100644 index 00000000..373ff82c Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00001.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00002.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00002.png new file mode 100644 index 00000000..b9d7a7f4 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00002.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00003.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00003.png new file mode 100644 index 00000000..86c6680a Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00003.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00004.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00004.png new file mode 100644 index 00000000..00ea7a4a Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00004.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00005.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00005.png new file mode 100644 index 00000000..5f8e89c1 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00005.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00006.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00006.png new file mode 100644 index 00000000..660f665e Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00006.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00007.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00007.png new file mode 100644 index 00000000..2f90a3a5 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00007.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00008.png b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00008.png new file mode 100644 index 00000000..ce795f34 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00008.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00000.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00000.png new file mode 100644 index 00000000..4d1d8b6b Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00000.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00001.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00001.png new file mode 100644 index 00000000..373ff82c Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00001.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00002.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00002.png new file mode 100644 index 00000000..c7a697b2 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00002.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00003.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00003.png new file mode 100644 index 00000000..9cb81b79 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00003.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00004.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00004.png new file mode 100644 index 00000000..2445682c Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00004.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00005.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00005.png new file mode 100644 index 00000000..5f8e89c1 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00005.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00006.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00006.png new file mode 100644 index 00000000..660f665e Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00006.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00007.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00007.png new file mode 100644 index 00000000..2f90a3a5 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00007.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00008.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00008.png new file mode 100644 index 00000000..ce795f34 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00008.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00000.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00000.png new file mode 100644 index 00000000..4d1d8b6b Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00000.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00001.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00001.png new file mode 100644 index 00000000..373ff82c Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00001.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00002.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00002.png new file mode 100644 index 00000000..5a1ddda8 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00002.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00003.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00003.png new file mode 100644 index 00000000..cf50fc69 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00003.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00004.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00004.png new file mode 100644 index 00000000..cd761491 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00004.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00005.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00005.png new file mode 100644 index 00000000..5f8e89c1 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00005.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00006.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00006.png new file mode 100644 index 00000000..660f665e Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00006.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00007.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00007.png new file mode 100644 index 00000000..2f90a3a5 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00007.png differ diff --git a/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00008.png b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00008.png new file mode 100644 index 00000000..ce795f34 Binary files /dev/null and b/test/python/snapshots/nanos/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00008.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00000.png b/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00000.png new file mode 100644 index 00000000..1ef108c4 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00000.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00001.png b/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00001.png new file mode 100644 index 00000000..0ef8964e Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00001.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00002.png b/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00002.png new file mode 100644 index 00000000..8a91b539 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00002.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00003.png b/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00003.png new file mode 100644 index 00000000..7847aa6d Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00003.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00004.png b/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00004.png new file mode 100644 index 00000000..739d0b16 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00004.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00005.png b/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00005.png new file mode 100644 index 00000000..ac17dc75 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00005.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00006.png b/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00006.png new file mode 100644 index 00000000..65788722 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00006.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00000.png b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00000.png new file mode 100644 index 00000000..1ef108c4 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00000.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00001.png b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00001.png new file mode 100644 index 00000000..0ef8964e Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00001.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00002.png b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00002.png new file mode 100644 index 00000000..c18fc645 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00002.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00003.png b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00003.png new file mode 100644 index 00000000..7847aa6d Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00003.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00004.png b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00004.png new file mode 100644 index 00000000..739d0b16 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00004.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00005.png b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00005.png new file mode 100644 index 00000000..ac17dc75 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00005.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00006.png b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00006.png new file mode 100644 index 00000000..65788722 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00006.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00000.png b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00000.png new file mode 100644 index 00000000..1ef108c4 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00000.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00001.png b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00001.png new file mode 100644 index 00000000..0ef8964e Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00001.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00002.png b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00002.png new file mode 100644 index 00000000..6cfae116 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00002.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00003.png b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00003.png new file mode 100644 index 00000000..7847aa6d Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00003.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00004.png b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00004.png new file mode 100644 index 00000000..739d0b16 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00004.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00005.png b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00005.png new file mode 100644 index 00000000..ac17dc75 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00005.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00006.png b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00006.png new file mode 100644 index 00000000..65788722 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00006.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00000.png b/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00000.png new file mode 100644 index 00000000..1ef108c4 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00000.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00001.png b/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00001.png new file mode 100644 index 00000000..0ef8964e Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00001.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00002.png b/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00002.png new file mode 100644 index 00000000..da0991b0 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00002.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00003.png b/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00003.png new file mode 100644 index 00000000..7847aa6d Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00003.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00004.png b/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00004.png new file mode 100644 index 00000000..739d0b16 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00004.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00005.png b/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00005.png new file mode 100644 index 00000000..ac17dc75 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00005.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00006.png b/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00006.png new file mode 100644 index 00000000..65788722 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00006.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00000.png b/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00000.png new file mode 100644 index 00000000..1ef108c4 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00000.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00001.png b/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00001.png new file mode 100644 index 00000000..0ef8964e Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00001.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00002.png b/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00002.png new file mode 100644 index 00000000..f501b173 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00002.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00003.png b/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00003.png new file mode 100644 index 00000000..7847aa6d Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00003.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00004.png b/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00004.png new file mode 100644 index 00000000..739d0b16 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00004.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00005.png b/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00005.png new file mode 100644 index 00000000..ac17dc75 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00005.png differ diff --git a/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00006.png b/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00006.png new file mode 100644 index 00000000..65788722 Binary files /dev/null and b/test/python/snapshots/nanosp/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00006.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00000.png b/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00000.png new file mode 100644 index 00000000..1ef108c4 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00000.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00001.png b/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00001.png new file mode 100644 index 00000000..0ef8964e Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00001.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00002.png b/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00002.png new file mode 100644 index 00000000..8a91b539 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00002.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00003.png b/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00003.png new file mode 100644 index 00000000..7847aa6d Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00003.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00004.png b/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00004.png new file mode 100644 index 00000000..739d0b16 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00004.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00005.png b/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00005.png new file mode 100644 index 00000000..ac17dc75 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00005.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00006.png b/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00006.png new file mode 100644 index 00000000..65788722 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00006.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00000.png b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00000.png new file mode 100644 index 00000000..1ef108c4 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00000.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00001.png b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00001.png new file mode 100644 index 00000000..0ef8964e Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00001.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00002.png b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00002.png new file mode 100644 index 00000000..c18fc645 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00002.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00003.png b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00003.png new file mode 100644 index 00000000..7847aa6d Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00003.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00004.png b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00004.png new file mode 100644 index 00000000..739d0b16 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00004.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00005.png b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00005.png new file mode 100644 index 00000000..ac17dc75 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00005.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00006.png b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00006.png new file mode 100644 index 00000000..65788722 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00006.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00000.png b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00000.png new file mode 100644 index 00000000..1ef108c4 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00000.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00001.png b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00001.png new file mode 100644 index 00000000..0ef8964e Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00001.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00002.png b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00002.png new file mode 100644 index 00000000..6cfae116 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00002.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00003.png b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00003.png new file mode 100644 index 00000000..7847aa6d Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00003.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00004.png b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00004.png new file mode 100644 index 00000000..739d0b16 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00004.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00005.png b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00005.png new file mode 100644 index 00000000..ac17dc75 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00005.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00006.png b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00006.png new file mode 100644 index 00000000..65788722 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00006.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00000.png b/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00000.png new file mode 100644 index 00000000..1ef108c4 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00000.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00001.png b/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00001.png new file mode 100644 index 00000000..0ef8964e Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00001.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00002.png b/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00002.png new file mode 100644 index 00000000..da0991b0 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00002.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00003.png b/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00003.png new file mode 100644 index 00000000..7847aa6d Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00003.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00004.png b/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00004.png new file mode 100644 index 00000000..739d0b16 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00004.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00005.png b/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00005.png new file mode 100644 index 00000000..ac17dc75 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00005.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00006.png b/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00006.png new file mode 100644 index 00000000..65788722 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00006.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00000.png b/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00000.png new file mode 100644 index 00000000..1ef108c4 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00000.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00001.png b/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00001.png new file mode 100644 index 00000000..0ef8964e Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00001.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00002.png b/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00002.png new file mode 100644 index 00000000..f501b173 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00002.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00003.png b/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00003.png new file mode 100644 index 00000000..7847aa6d Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00003.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00004.png b/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00004.png new file mode 100644 index 00000000..739d0b16 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00004.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00005.png b/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00005.png new file mode 100644 index 00000000..ac17dc75 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00005.png differ diff --git a/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00006.png b/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00006.png new file mode 100644 index 00000000..65788722 Binary files /dev/null and b/test/python/snapshots/nanox/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00006.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00000.png b/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00000.png new file mode 100644 index 00000000..e34800df Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00000.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00001.png b/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00001.png new file mode 100644 index 00000000..05c7a051 Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00001.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00002.png b/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00002.png new file mode 100644 index 00000000..1c92967a Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00002.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00003.png b/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00003.png new file mode 100644 index 00000000..b2b4f389 Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00003.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00004.png b/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00004.png new file mode 100644 index 00000000..4da782e9 Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/BIP32_ED25519_tz1VKyZ3RFDwTkrz5LKcTc6fcYqZj6pvsyA7/00004.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00000.png b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00000.png new file mode 100644 index 00000000..e34800df Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00000.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00001.png b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00001.png new file mode 100644 index 00000000..561b4834 Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00001.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00002.png b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00002.png new file mode 100644 index 00000000..1c92967a Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00002.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00003.png b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00003.png new file mode 100644 index 00000000..b2b4f389 Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00003.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00004.png b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00004.png new file mode 100644 index 00000000..4da782e9 Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1dyX3B1CFYa2DfdFLyPtiJCfQRUgPVME6E/00004.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00000.png b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00000.png new file mode 100644 index 00000000..e34800df Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00000.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00001.png b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00001.png new file mode 100644 index 00000000..4f5c33cb Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00001.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00002.png b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00002.png new file mode 100644 index 00000000..1c92967a Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00002.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00003.png b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00003.png new file mode 100644 index 00000000..b2b4f389 Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00003.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00004.png b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00004.png new file mode 100644 index 00000000..4da782e9 Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/ED25519_tz1ez9eEyAxuDZACjHdCXym43UQDdMNa3LEL/00004.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00000.png b/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00000.png new file mode 100644 index 00000000..e34800df Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00000.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00001.png b/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00001.png new file mode 100644 index 00000000..ea7d4e41 Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00001.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00002.png b/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00002.png new file mode 100644 index 00000000..1c92967a Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00002.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00003.png b/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00003.png new file mode 100644 index 00000000..b2b4f389 Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00003.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00004.png b/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00004.png new file mode 100644 index 00000000..4da782e9 Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/SECP256K1_tz2GB5YHqF4UzQ8GP5yUqdhY9oVWRXCY2hPU/00004.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00000.png b/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00000.png new file mode 100644 index 00000000..e34800df Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00000.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00001.png b/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00001.png new file mode 100644 index 00000000..eaca10ad Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00001.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00002.png b/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00002.png new file mode 100644 index 00000000..1c92967a Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00002.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00003.png b/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00003.png new file mode 100644 index 00000000..b2b4f389 Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00003.png differ diff --git a/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00004.png b/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00004.png new file mode 100644 index 00000000..4da782e9 Binary files /dev/null and b/test/python/snapshots/stax/test_sign_delegation/SECP256R1_tz3UMNyvQeMj6mQSftW2aV2XaWd3afTAM1d5/00004.png differ diff --git a/test/python/test_instructions.py b/test/python/test_instructions.py index 50653a95..43acfc75 100644 --- a/test/python/test_instructions.py +++ b/test/python/test_instructions.py @@ -10,6 +10,7 @@ from utils.helper import get_current_commit from utils.message import ( Message, + Delegation, Preattestation, Attestation, AttestationDal, @@ -585,6 +586,50 @@ def test_sign_level_authorized( with StatusCode.WRONG_VALUES.expected(): client.sign_message(account, message_2) + +@pytest.mark.parametrize("account", ACCOUNTS) +@pytest.mark.parametrize("with_hash", [False, True]) +def test_sign_delegation( + account: Account, + with_hash: bool, + tezos_navigator: TezosNavigator, + test_name: Path) -> None: + """Test the SIGN(_WITH_HASH) instruction on delegation.""" + snap_path = Path(f"{account}") + + tezos_navigator.setup_app_context( + account, + DEFAULT_CHAIN_ID, + main_hwm=Hwm(0), + test_hwm=Hwm(0) + ) + + delegation = Delegation( + delegate=account.public_key_hash, + source=account.public_key_hash, + ) + + raw_delegation = delegation.forge() + + if with_hash: + signature = tezos_navigator.sign_delegation( + account, + delegation, + snap_path=snap_path + ) + account.check_signature(signature, bytes(raw_delegation)) + else: + delegation_hash, signature = \ + tezos_navigator.sign_delegation_with_hash( + account, + delegation, + snap_path=snap_path + ) + assert delegation_hash == raw_delegation.hash, \ + f"Expected hash {raw_delegation.hash.hex()} but got {delegation_hash.hex()}" + account.check_signature(signature, bytes(raw_delegation)) + + def test_sign_not_authorized_key( client: TezosClient, tezos_navigator: TezosNavigator) -> None: diff --git a/test/python/utils/message.py b/test/python/utils/message.py index ac449650..d9a09e15 100644 --- a/test/python/utils/message.py +++ b/test/python/utils/message.py @@ -17,6 +17,8 @@ from enum import IntEnum from hashlib import blake2b from typing import Optional, Union +from pytezos import pytezos +from pytezos.operation.group import OperationGroup from pytezos.block.forge import forge_int_fixed, forge_fitness from pytezos.michelson import forge @@ -101,6 +103,35 @@ class OperationTag(IntEnum): # Context_hash.zero DEFAULT_CONTEXT_HASH = "CoUeJrcPBj3T3iJL3PY4jZHnmZa5rRZ87VQPdSBNBcwZRMWJGh9j" +class UnsafeOp: + """Class representing an unsafe operation.""" + + operation: OperationGroup + + def __init__(self, operation: OperationGroup): + self.operation = operation + + def forge(self, branch: str = DEFAULT_BLOCK_HASH) -> Message: + """Forge the operation.""" + watermark = forge_int_fixed(MagicByte.UNSAFE_OP, 1) + self.operation.branch = branch + raw = watermark + bytes.fromhex(self.operation.forge()) + return RawMessage(raw) + +class Delegation(UnsafeOp): + """Class representing a delegation.""" + + def __init__(self, + delegate: str, + source: str, + counter: int = 0, + fee: int = 0, + gas_limit: int = 0, + storage_limit: int = 0): + ctxt = pytezos.using() + delegation = ctxt.delegation(delegate, source, counter, fee, gas_limit, storage_limit) + super().__init__(delegation) + class Preattestation: """Class representing a preattestation.""" @@ -263,6 +294,7 @@ class BlockHeader: """Class representing a block header.""" level: int + proto_level: int predecessor: str timestamp: str validation_pass: int diff --git a/test/python/utils/navigator.py b/test/python/utils/navigator.py index df45b7af..86bc3e6d 100644 --- a/test/python/utils/navigator.py +++ b/test/python/utils/navigator.py @@ -1,7 +1,7 @@ """Module providing a tezos navigator.""" from pathlib import Path -from typing import TypeVar, Callable, List, Optional, Union +from typing import TypeVar, Callable, Optional, Tuple, Union import time from multiprocessing.pool import ThreadPool @@ -20,7 +20,11 @@ from common import TESTS_ROOT_DIR, EMPTY_PATH from utils.client import TezosClient, Hwm -from utils.account import Account +from utils.account import Account, Signature +from utils.message import ( + Delegation, + DEFAULT_BLOCK_HASH +) RESPONSE = TypeVar('RESPONSE') @@ -324,3 +328,57 @@ def setup_app_context(self, ), navigate=lambda: navigate(**kwargs) ) + + def accept_sign_navigate(self, **kwargs): + """Navigate until accept signing""" + if self.firmware.is_nano: + self.navigate_and_compare( + navigate_instruction = NavInsID.RIGHT_CLICK, + validation_instructions = [NavInsID.BOTH_CLICK], + text = 'Accept', + **kwargs + ) + else: + self.navigate_and_compare( + navigate_instruction = NavInsID.USE_CASE_REVIEW_TAP, + validation_instructions = [ + NavInsID.USE_CASE_CHOICE_CONFIRM, + NavInsID.USE_CASE_STATUS_DISMISS + ], + text = 'Approve', + **kwargs + ) + + def sign_delegation(self, + account: Account, + delegation: Delegation, + branch: str = DEFAULT_BLOCK_HASH, + navigate: Optional[Callable] = None, + **kwargs) -> Signature: + """Send a sign request on delegation and navigate until accept""" + if navigate is None: + navigate = self.accept_sign_navigate + return send_and_navigate( + send=lambda: self.client.sign_message( + account, + delegation.forge(branch) + ), + navigate=lambda: navigate(**kwargs) + ) + + def sign_delegation_with_hash(self, + account: Account, + delegation: Delegation, + branch: str = DEFAULT_BLOCK_HASH, + navigate: Optional[Callable] = None, + **kwargs) -> Tuple[bytes, Signature]: + """Send a sign and get hash request on delegation and navigate until accept""" + if navigate is None: + navigate = self.accept_sign_navigate + return send_and_navigate( + send=lambda: self.client.sign_message_with_hash( + account, + delegation.forge(branch) + ), + navigate=lambda: navigate(**kwargs) + )