-
-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Labels
enhancementNew feature or requestNew feature or request
Description
The original Haskell implementation allows PlutusMap to contain duplicate keys, just as the official CBOR standard does. This is completely bogus and hence correctly ignored by cbor2, which is used by uplc to handle PlutusMap.
However this leads to the issue that it is currently not possible to correctly simulate the behaviour of contracts when passed a CBOR with duplicate keys as dictionary, leading to a potential for oversight of specific attacks.
A potential fix has been begun in https://github.com/OpShin/uplc/tree/feat/support_invalid_plutus_map, however the rigidness of the CBOR encoder/decoder implementation from cbor2 presents some significant challenges for this endeavor.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request