From 74bb782218e68f713cba7735c4de5a522ee8216a Mon Sep 17 00:00:00 2001 From: gabrielkerekes Date: Wed, 25 Aug 2021 17:27:52 +0200 Subject: [PATCH] fixup! CIP-0021: Restrictions on transactions signed by hardware wallets --- CIP-0021/CIP-0021.md | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/CIP-0021/CIP-0021.md b/CIP-0021/CIP-0021.md index 644ffc9e74..1e0803f25c 100644 --- a/CIP-0021/CIP-0021.md +++ b/CIP-0021/CIP-0021.md @@ -1,6 +1,6 @@ --- CIP: 0021 -Title: Restrictions on transactions signed by hardware wallets +Title: Transaction requirements for interoperability with hardware wallets Authors: Gabriel Kerekes , Rafael Korbas , Jan Mazak Status: Draft Type: Standards @@ -101,13 +101,6 @@ In this exceptional case, auxiliary data must be encoded in their "tuple" format The `auxiliary_scripts` must be an array of length 0. -### Transaction witnesses - -There are two limits on the number of witnesses: - -- an absolute limit of `UINT16_MAX`, i.e. 65535; -- a relative limit dependent on the transaction body (essentially one witness per each input, each withdrawal and each certificate in a typical transaction). - ## Reasoning ### Canonical CBOR serialization format @@ -134,12 +127,6 @@ Similarly to multiassets, allowing duplicate withdrawals might lead to inconsist The specified auxiliary data format was chosen in order to be compatible with other Cardano tools, which mostly use this serialization format. -### Transaction witnesses - -The relative limit is imposed to avoid leaking signatures the user is not aware of - for ordinary transactions, witnesses are not shown. It does not apply to script witnesses which are always shown on the screen. - -However, since a HW wallet only deals with the transaction body and not the whole transaction, it is possible to make several calls to a HW wallet and collect more witnesses than these limits allow (the user has to click through the transaction more than once in such a case). - ## Backwards compatibility Most of the restrictions are already implemented in HW wallets except the canonical CBOR serialization. Tools interacting with HW wallets might need to be updated in order to continue being compatible with HW wallets when the canonical CBOR serialization format is enforced in HW wallets.