diff --git a/app/Makefile b/app/Makefile index f73da411..7e7a89bc 100755 --- a/app/Makefile +++ b/app/Makefile @@ -51,7 +51,7 @@ DEFINES += ZEMU_LOGGING $(info ************ LOGGING ENABLED ************) endif -DEFINES += REVIEW_SCREEN_ENABLED APP_BLIND_MODE_ENABLED +DEFINES += REVIEW_SCREEN_ENABLED SHORTCUT_MODE_ENABLED ifndef COIN COIN=ALGO diff --git a/app/Makefile.version b/app/Makefile.version index 78700854..05aa303e 100644 --- a/app/Makefile.version +++ b/app/Makefile.version @@ -3,4 +3,4 @@ APPVERSION_M=2 # This is the `spec_version` field of `Runtime` APPVERSION_N=0 # This is the patch version of this release -APPVERSION_P=4 \ No newline at end of file +APPVERSION_P=7 \ No newline at end of file diff --git a/app/src/apdu_handler.c b/app/src/apdu_handler.c index d2e4f21f..84fe936d 100644 --- a/app/src/apdu_handler.c +++ b/app/src/apdu_handler.c @@ -146,6 +146,7 @@ __Z_INLINE void handle_sign_msgpack(volatile uint32_t *flags, volatile uint32_t __Z_INLINE void handle_get_public_key(volatile uint32_t *flags, volatile uint32_t *tx, uint32_t rx) { const uint8_t requireConfirmation = G_io_apdu_buffer[OFFSET_P1]; + const bool u2f_compatibility = G_io_apdu_buffer[OFFSET_INS] == INS_GET_PUBLIC_KEY; extractHDPath(); zxerr_t err = app_fill_address(); @@ -160,6 +161,11 @@ __Z_INLINE void handle_get_public_key(volatile uint32_t *flags, volatile uint32_ return; } + //U2F compatibility: return only pubkey + if (u2f_compatibility) { + action_addrResponseLen = PK_LEN_25519; + } + *tx = action_addrResponseLen; THROW(APDU_CODE_OK); } @@ -210,16 +216,13 @@ void handleApdu(volatile uint32_t *flags, volatile uint32_t *tx, uint32_t rx) { const uint8_t ins = G_io_apdu_buffer[OFFSET_INS]; switch (ins) { case INS_SIGN_MSGPACK: - if (os_global_pin_is_validated() != BOLOS_UX_OK) { - THROW(APDU_CODE_COMMAND_NOT_ALLOWED); - } + CHECK_PIN_VALIDATED() handle_sign_msgpack(flags, tx, rx); break; + case INS_GET_ADDRESS: case INS_GET_PUBLIC_KEY: { - if( os_global_pin_is_validated() != BOLOS_UX_OK ) { - THROW(APDU_CODE_COMMAND_NOT_ALLOWED); - } + CHECK_PIN_VALIDATED() handle_get_public_key(flags, tx, rx); break; } diff --git a/app/src/common/app_main.h b/app/src/common/app_main.h index b60bb7d9..0bd2714b 100644 --- a/app/src/common/app_main.h +++ b/app/src/common/app_main.h @@ -43,15 +43,9 @@ #define P2_LAST 0x00 #define P2_MORE 0x80 -#define INS_GET_VERSION 0x00 -#define INS_SIGN_SECP256K1 0x02 -#define INS_GET_ADDR_SECP256K1 0x04 - +#define INS_GET_VERSION 0x00 #define INS_GET_PUBLIC_KEY 0x03 -#define INS_SIGN_PAYMENT_V2 0x04 -#define INS_SIGN_KEYREG_V2 0x05 -#define INS_SIGN_PAYMENT_V3 0x06 -#define INS_SIGN_KEYREG_V3 0x07 +#define INS_GET_ADDRESS 0x04 #define INS_SIGN_MSGPACK 0x08 void app_init(); diff --git a/app/src/parser.c b/app/src/parser.c index cc0e3854..5f6b6801 100644 --- a/app/src/parser.c +++ b/app/src/parser.c @@ -425,7 +425,7 @@ static parser_error_t parser_printTxAssetConfig(const txn_asset_config *asset_co uint8_t pageIdx, uint8_t *pageCount) { *pageCount = 1; - char buff[45] = {0}; + char buff[100] = {0}; switch (displayIdx) { case IDX_CONFIG_ASSET_ID: snprintf(outKey, outKeyLen, "Asset ID"); diff --git a/app/src/parser_impl.c b/app/src/parser_impl.c index aeaa33f7..9778aa58 100644 --- a/app/src/parser_impl.c +++ b/app/src/parser_impl.c @@ -103,18 +103,18 @@ static uint8_t getMsgPackType(uint8_t byte) return byte; } -parser_error_t _readMapSize(parser_context_t *c, uint8_t *mapItems) +parser_error_t _readMapSize(parser_context_t *c, uint16_t *mapItems) { uint8_t byte = 0; CHECK_ERROR(_readUInt8(c, &byte)) switch (getMsgPackType(byte)) { case FIXMAP_0: - *mapItems = byte - FIXMAP_0; + *mapItems = (uint16_t) byte - FIXMAP_0; break; case MAP16: - CHECK_ERROR(_readUInt16(c, (uint16_t*)mapItems)) + CHECK_ERROR(_readUInt16(c, mapItems)) break; case MAP32: @@ -198,7 +198,7 @@ parser_error_t _readString(parser_context_t *c, uint8_t *buff, uint16_t buffLen) break; } - if (strLen > buffLen) { + if (strLen >= buffLen) { return parser_msgpack_str_too_big; } CHECK_ERROR(_readBytes(c, buff, strLen)) @@ -404,7 +404,7 @@ static parser_error_t _readAssetParams(parser_context_t *c, txn_asset_config *as uint8_t available_params[MAX_PARAM_SIZE]; memset(available_params, 0xFF, MAX_PARAM_SIZE); - uint8_t paramsSize = 0; + uint16_t paramsSize = 0; CHECK_ERROR(_readMapSize(c, ¶msSize)) if(paramsSize > MAX_PARAM_SIZE) { @@ -412,7 +412,7 @@ static parser_error_t _readAssetParams(parser_context_t *c, txn_asset_config *as } uint8_t key[10] = {0}; - for(uint8_t i = 0; i < paramsSize; i++) { + for(uint16_t i = 0; i < paramsSize; i++) { CHECK_ERROR(_readString(c, key, sizeof(key))) if (strncmp((char*)key, KEY_APARAMS_TOTAL, strlen(KEY_APARAMS_TOTAL)) == 0) { @@ -615,10 +615,10 @@ parser_error_t _verifyAccounts(parser_context_t *c, uint8_t* num_accounts, uint8 parser_error_t _readStateSchema(parser_context_t *c, state_schema *schema) { - uint8_t mapSize = 0; + uint16_t mapSize = 0; CHECK_ERROR(_readMapSize(c, &mapSize)) uint8_t key[32]; - for (size_t i = 0; i < mapSize; i++) { + for (uint16_t i = 0; i < mapSize; i++) { CHECK_ERROR(_readString(c, key, sizeof(key))) if (strncmp((char*)key, KEY_SCHEMA_NUI, sizeof(KEY_SCHEMA_NUI)) == 0) { CHECK_ERROR(_readInteger(c, &schema->num_uint)) @@ -985,7 +985,7 @@ parser_error_t _readArray_args(parser_context_t *c, uint8_t args[][MAX_ARGLEN], parser_error_t _read(parser_context_t *c, parser_tx_t *v) { - uint8_t keyLen = 0; + uint16_t keyLen = 0; CHECK_ERROR(initializeItemArray()) CHECK_ERROR(_readMapSize(c, &keyLen)) diff --git a/app/src/parser_impl.h b/app/src/parser_impl.h index cc2b59dc..e745cb71 100644 --- a/app/src/parser_impl.h +++ b/app/src/parser_impl.h @@ -61,7 +61,7 @@ uint8_t _getTxNumItems(); parser_error_t _read(parser_context_t *c, parser_tx_t *v); -parser_error_t _readMapSize(parser_context_t *c, uint8_t *mapItems); +parser_error_t _readMapSize(parser_context_t *c, uint16_t *mapItems); parser_error_t _readArraySize(parser_context_t *c, uint8_t *mapItems); parser_error_t _readString(parser_context_t *c, uint8_t *buff, uint16_t buffLen); parser_error_t _readInteger(parser_context_t *c, uint64_t* value); diff --git a/app/src/parser_txdef.h b/app/src/parser_txdef.h index 9869c2d7..231ecd64 100644 --- a/app/src/parser_txdef.h +++ b/app/src/parser_txdef.h @@ -116,9 +116,9 @@ typedef struct { uint64_t total; uint64_t decimals; uint8_t default_frozen; - char unitname[8]; - char assetname[32]; - char url[32]; + char unitname[9]; + char assetname[33]; + char url[97]; uint8_t metadata_hash[32]; uint8_t manager[32]; uint8_t reserve[32]; diff --git a/app/src/blind.c b/app/src/shortcut.c similarity index 71% rename from app/src/blind.c rename to app/src/shortcut.c index 398a74fe..0ee2a656 100644 --- a/app/src/blind.c +++ b/app/src/shortcut.c @@ -24,26 +24,26 @@ #include "view_internal.h" #include "zxformat.h" -void blind_toggle() { -#ifdef APP_BLIND_MODE_ENABLED - app_mode_set_blind(!app_mode_blind()); +void shortcut_toggle() { +#ifdef SHORTCUT_MODE_ENABLED + app_mode_set_shortcut(!app_mode_shortcut()); view_idle_show(0, NULL); #endif } -static const char *blindMessage = - "You are about to enable blind signing mode. If you are not sure why you " +static const char *shortcutMessage = + "You are about to enable shortcut mode. If you are not sure why you " "are here, reject or unplug your device immediately. Activating this mode " "will allow you to sign transactions without reviewing each transaction " "field."; -zxerr_t blind_getNumItems(uint8_t *num_items) { - zemu_log_stack("blind_getNumItems"); +zxerr_t shortcut_getNumItems(uint8_t *num_items) { + zemu_log_stack("shortcut_getNumItems\n"); *num_items = 1; return zxerr_ok; } -zxerr_t blind_getItem(int8_t displayIdx, char *outKey, uint16_t outKeyLen, +zxerr_t shortcut_getItem(int8_t displayIdx, char *outKey, uint16_t outKeyLen, char *outVal, uint16_t outValLen, uint8_t pageIdx, uint8_t *pageCount) { if (displayIdx != 0) { @@ -52,13 +52,13 @@ zxerr_t blind_getItem(int8_t displayIdx, char *outKey, uint16_t outKeyLen, snprintf(outKey, outKeyLen, "Warning!"); - pageString(outVal, outValLen, (char*)PIC(blindMessage), pageIdx, pageCount); + pageString(outVal, outValLen, (const char*)PIC(shortcutMessage), pageIdx, pageCount); return zxerr_ok; } -zxerr_t blind_enabled() { -#ifdef APP_BLIND_MODE_ENABLED - view_review_init(blind_getItem, blind_getNumItems, blind_toggle); +zxerr_t shortcut_enabled() { +#ifdef SHORTCUT_MODE_ENABLED + view_review_init(shortcut_getItem, shortcut_getNumItems, shortcut_toggle); view_review_show(REVIEW_UI); #endif return zxerr_ok; diff --git a/deps/ledger-zxlib b/deps/ledger-zxlib index 4a7e3da2..8979f20a 160000 --- a/deps/ledger-zxlib +++ b/deps/ledger-zxlib @@ -1 +1 @@ -Subproject commit 4a7e3da292456854ae6f94380d981238da062fde +Subproject commit 8979f20ab3252ded1764ba00b1328090b1852f60 diff --git a/deps/nanos-secure-sdk b/deps/nanos-secure-sdk index 026a1f5c..78691885 160000 --- a/deps/nanos-secure-sdk +++ b/deps/nanos-secure-sdk @@ -1 +1 @@ -Subproject commit 026a1f5cf55e68f74062cb2795804f9b4554ea15 +Subproject commit 786918851f5b2173283be9e2e37fa91809cac8b5 diff --git a/deps/nanosplus-secure-sdk b/deps/nanosplus-secure-sdk index c2a17ebe..5a6aebf5 160000 --- a/deps/nanosplus-secure-sdk +++ b/deps/nanosplus-secure-sdk @@ -1 +1 @@ -Subproject commit c2a17ebe62395d7a7a36658bf4bec952c08d0df3 +Subproject commit 5a6aebf547399e012cdabd21e91d23c2eb573fad diff --git a/deps/nanox-secure-sdk b/deps/nanox-secure-sdk index 86324f6a..6a479957 160000 --- a/deps/nanox-secure-sdk +++ b/deps/nanox-secure-sdk @@ -1 +1 @@ -Subproject commit 86324f6a73e269c04f6a3e3cf41f6569a8cc6c6b +Subproject commit 6a47995721d94613dd4043691993a50d1f7319bb diff --git a/deps/picohash b/deps/picohash index 57fe0cb4..3a9eff99 160000 --- a/deps/picohash +++ b/deps/picohash @@ -1 +1 @@ -Subproject commit 57fe0cb4c32527c71dab5973539673dcba0280c5 +Subproject commit 3a9eff997553fb6547d38763628f8c9f92fcda19 diff --git a/docs/zondax_dark.png b/docs/zondax_dark.png index a6c22dfb..c14ba368 100644 Binary files a/docs/zondax_dark.png and b/docs/zondax_dark.png differ diff --git a/docs/zondax_light.png b/docs/zondax_light.png index 181ce342..3d25fda0 100644 Binary files a/docs/zondax_light.png and b/docs/zondax_light.png differ diff --git a/js/src/config.ts b/js/src/config.ts index 8d4b6f20..f928dc0b 100644 --- a/js/src/config.ts +++ b/js/src/config.ts @@ -17,6 +17,7 @@ export const CLA = 0x80; export const INS = { GET_VERSION: 0x00, GET_PUBLIC_KEY: 0x03, + GET_ADDRESS: 0x04, SIGN_MSGPACK: 0x08, }; export const PKLEN = 32; diff --git a/js/src/index.ts b/js/src/index.ts index 3e0f7f7a..fdcf9736 100644 --- a/js/src/index.ts +++ b/js/src/index.ts @@ -202,7 +202,7 @@ export default class AlgorandApp { } // eslint-disable-next-line @typescript-eslint/no-unused-vars - async getAddressAndPubKey(accountId = 0, requireConfirmation = false): Promise { + async getPubkey(accountId = 0, requireConfirmation = false): Promise { const data = Buffer.alloc(4); data.writeUInt32BE(accountId) @@ -213,6 +213,18 @@ export default class AlgorandApp { .then(processGetAddrResponse, processErrorResponse); } + // eslint-disable-next-line @typescript-eslint/no-unused-vars + async getAddressAndPubKey(accountId = 0, requireConfirmation = false): Promise { + const data = Buffer.alloc(4); + data.writeUInt32BE(accountId) + + const p1_value = requireConfirmation ? P1_VALUES.SHOW_ADDRESS_IN_DEVICE : P1_VALUES.ONLY_RETRIEVE + + return this.transport + .send(CLA, INS.GET_ADDRESS, p1_value, P2_VALUES.DEFAULT, data, [0x9000]) + .then(processGetAddrResponse, processErrorResponse); + } + async signSendChunk(chunkIdx: number, chunkNum: number, accountId: number, chunk: Buffer): Promise { let p1 = P1_VALUES.MSGPACK_ADD let p2 = P2_VALUES.MSGPACK_ADD diff --git a/tests/parser_impl.cpp b/tests/parser_impl.cpp index eac73acb..2f76191d 100644 --- a/tests/parser_impl.cpp +++ b/tests/parser_impl.cpp @@ -86,7 +86,7 @@ TEST(SCALE, EncodingUint8) { parser_init(&ctx, buffer, bufferLen); - uint8_t mapItems {0}; + uint16_t mapItems {0}; err = _readMapSize(&ctx, &mapItems); EXPECT_EQ(err, parser_ok) << parser_getErrorDescription(err); EXPECT_EQ(mapItems, 2); @@ -127,7 +127,7 @@ TEST(SCALE, EncodingUint16) { parser_init(&ctx, buffer, bufferLen); - uint8_t mapItems {0}; + uint16_t mapItems {0}; err = _readMapSize(&ctx, &mapItems); EXPECT_EQ(err, parser_ok) << parser_getErrorDescription(err); EXPECT_EQ(mapItems, 2); @@ -167,7 +167,7 @@ TEST(SCALE, EncodingUint32) { parser_init(&ctx, buffer, bufferLen); - uint8_t mapItems {0}; + uint16_t mapItems {0}; err = _readMapSize(&ctx, &mapItems); EXPECT_EQ(err, parser_ok) << parser_getErrorDescription(err); EXPECT_EQ(mapItems, 2); @@ -207,7 +207,7 @@ TEST(SCALE, EncodingUint64) { parser_init(&ctx, buffer, bufferLen); - uint8_t mapItems {0}; + uint16_t mapItems {0}; err = _readMapSize(&ctx, &mapItems); EXPECT_EQ(err, parser_ok) << parser_getErrorDescription(err); EXPECT_EQ(mapItems, 2); @@ -247,7 +247,7 @@ TEST(SCALE, EncodingString) { parser_init(&ctx, buffer, bufferLen); - uint8_t mapItems {0}; + uint16_t mapItems {0}; err = _readMapSize(&ctx, &mapItems); EXPECT_EQ(err, parser_ok) << parser_getErrorDescription(err); EXPECT_EQ(mapItems, 2); @@ -286,7 +286,7 @@ TEST(SCALE, EncodingBoolean) { parser_init(&ctx, buffer, bufferLen); - uint8_t mapItems {0}; + uint16_t mapItems {0}; err = _readMapSize(&ctx, &mapItems); EXPECT_EQ(err, parser_ok) << parser_getErrorDescription(err); EXPECT_EQ(mapItems, 2); diff --git a/tests_zemu/package.json b/tests_zemu/package.json index f6fc6452..a2868e5c 100644 --- a/tests_zemu/package.json +++ b/tests_zemu/package.json @@ -18,7 +18,7 @@ }, "dependencies": { "@zondax/ledger-algorand": "../js", - "@zondax/zemu": "^0.32.0" + "@zondax/zemu": "^0.33.1" }, "devDependencies": { "@types/jest": "^27.0.2", diff --git a/tests_zemu/snapshots/s-mainmenu/00004.png b/tests_zemu/snapshots/s-mainmenu/00004.png index 3b3d0322..7a63cca8 100644 Binary files a/tests_zemu/snapshots/s-mainmenu/00004.png and b/tests_zemu/snapshots/s-mainmenu/00004.png differ diff --git a/tests_zemu/snapshots/s-mainmenu/00005.png b/tests_zemu/snapshots/s-mainmenu/00005.png index 5e4fe5b4..ac4ddcd8 100644 Binary files a/tests_zemu/snapshots/s-mainmenu/00005.png and b/tests_zemu/snapshots/s-mainmenu/00005.png differ diff --git a/tests_zemu/snapshots/s-mainmenu/00011.png b/tests_zemu/snapshots/s-mainmenu/00011.png index 5e4fe5b4..ac4ddcd8 100644 Binary files a/tests_zemu/snapshots/s-mainmenu/00011.png and b/tests_zemu/snapshots/s-mainmenu/00011.png differ diff --git a/tests_zemu/snapshots/s-mainmenu/00012.png b/tests_zemu/snapshots/s-mainmenu/00012.png index 3b3d0322..7a63cca8 100644 Binary files a/tests_zemu/snapshots/s-mainmenu/00012.png and b/tests_zemu/snapshots/s-mainmenu/00012.png differ diff --git a/tests_zemu/snapshots/sp-mainmenu/00004.png b/tests_zemu/snapshots/sp-mainmenu/00004.png index 5bceef6b..c139a98c 100644 Binary files a/tests_zemu/snapshots/sp-mainmenu/00004.png and b/tests_zemu/snapshots/sp-mainmenu/00004.png differ diff --git a/tests_zemu/snapshots/sp-mainmenu/00005.png b/tests_zemu/snapshots/sp-mainmenu/00005.png index a4a79a2f..99db0705 100644 Binary files a/tests_zemu/snapshots/sp-mainmenu/00005.png and b/tests_zemu/snapshots/sp-mainmenu/00005.png differ diff --git a/tests_zemu/snapshots/sp-mainmenu/00011.png b/tests_zemu/snapshots/sp-mainmenu/00011.png index a4a79a2f..99db0705 100644 Binary files a/tests_zemu/snapshots/sp-mainmenu/00011.png and b/tests_zemu/snapshots/sp-mainmenu/00011.png differ diff --git a/tests_zemu/snapshots/sp-mainmenu/00012.png b/tests_zemu/snapshots/sp-mainmenu/00012.png index 5bceef6b..c139a98c 100644 Binary files a/tests_zemu/snapshots/sp-mainmenu/00012.png and b/tests_zemu/snapshots/sp-mainmenu/00012.png differ diff --git a/tests_zemu/snapshots/x-mainmenu/00004.png b/tests_zemu/snapshots/x-mainmenu/00004.png index 5bceef6b..c139a98c 100644 Binary files a/tests_zemu/snapshots/x-mainmenu/00004.png and b/tests_zemu/snapshots/x-mainmenu/00004.png differ diff --git a/tests_zemu/snapshots/x-mainmenu/00005.png b/tests_zemu/snapshots/x-mainmenu/00005.png index a4a79a2f..99db0705 100644 Binary files a/tests_zemu/snapshots/x-mainmenu/00005.png and b/tests_zemu/snapshots/x-mainmenu/00005.png differ diff --git a/tests_zemu/snapshots/x-mainmenu/00011.png b/tests_zemu/snapshots/x-mainmenu/00011.png index a4a79a2f..99db0705 100644 Binary files a/tests_zemu/snapshots/x-mainmenu/00011.png and b/tests_zemu/snapshots/x-mainmenu/00011.png differ diff --git a/tests_zemu/snapshots/x-mainmenu/00012.png b/tests_zemu/snapshots/x-mainmenu/00012.png index 5bceef6b..c139a98c 100644 Binary files a/tests_zemu/snapshots/x-mainmenu/00012.png and b/tests_zemu/snapshots/x-mainmenu/00012.png differ diff --git a/tests_zemu/tests/big_transactions.test.ts b/tests_zemu/tests/big_transactions.test.ts index d5e3e64b..9ea3899a 100644 --- a/tests_zemu/tests/big_transactions.test.ts +++ b/tests_zemu/tests/big_transactions.test.ts @@ -64,7 +64,7 @@ // Wait until we are not in the main menu await sim.waitUntilScreenIsNot(sim.getMainMenuSnapshot()) - await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign_application_big`, 50000) + await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign_application_big`) const signatureResponse = await signatureRequest console.log(signatureResponse) diff --git a/tests_zemu/tests/standard.test.ts b/tests_zemu/tests/standard.test.ts index 96f9c7ef..2f46b2f2 100644 --- a/tests_zemu/tests/standard.test.ts +++ b/tests_zemu/tests/standard.test.ts @@ -101,6 +101,29 @@ describe('Standard', function () { } }) + // Legacy + test.each(models)('get pubkey', async function (m) { + const sim = new Zemu(m.path) + try { + await sim.start({ ...defaultOptions, model: m.name }) + const app = new AlgorandApp(sim.getTransport()) + + const tmpAccountId = 123 + const resp = await app.getPubkey(tmpAccountId) + + console.log(resp) + + expect(resp.return_code).toEqual(0x9000) + expect(resp.error_message).toEqual('No errors') + + const expected_pk = '0dfdbcdb8eebed628cfb4ef70207b86fd0deddca78e90e8c59d6f441e383b377' + expect(resp.publicKey).toEqual(expected_pk) + + } finally { + await sim.close() + } + }) + test.each(models)('show address', async function (m) { const sim = new Zemu(m.path) try { @@ -159,7 +182,7 @@ describe('Standard', function () { // Wait until we are not in the main menu await sim.waitUntilScreenIsNot(sim.getMainMenuSnapshot()) - await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign_asset_freeze`,50000) + await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign_asset_freeze`) const signatureResponse = await signatureRequest console.log(signatureResponse) @@ -192,7 +215,7 @@ describe('Standard', function () { // Wait until we are not in the main menu await sim.waitUntilScreenIsNot(sim.getMainMenuSnapshot()) - await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign_asset_transfer`,50000) + await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign_asset_transfer`) const signatureResponse = await signatureRequest console.log(signatureResponse) @@ -225,7 +248,7 @@ describe('Standard', function () { // Wait until we are not in the main menu await sim.waitUntilScreenIsNot(sim.getMainMenuSnapshot()) - await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign_asset_config`,50000) + await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign_asset_config`) const signatureResponse = await signatureRequest console.log(signatureResponse) @@ -258,7 +281,7 @@ describe('Standard', function () { // Wait until we are not in the main menu await sim.waitUntilScreenIsNot(sim.getMainMenuSnapshot()) - await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign_keyreg`, 30000) + await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign_keyreg`) const signatureResponse = await signatureRequest console.log(signatureResponse) @@ -291,7 +314,7 @@ describe('Standard', function () { // Wait until we are not in the main menu await sim.waitUntilScreenIsNot(sim.getMainMenuSnapshot()) - await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign_payment`,50000) + await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign_payment`) const signatureResponse = await signatureRequest console.log(signatureResponse) @@ -324,7 +347,7 @@ describe('Standard', function () { // Wait until we are not in the main menu await sim.waitUntilScreenIsNot(sim.getMainMenuSnapshot()) - await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign_application`, 50000) + await sim.compareSnapshotsAndApprove('.', `${m.prefix.toLowerCase()}-sign_application`) const signatureResponse = await signatureRequest console.log(signatureResponse)