Skip to content

Commit bd23788

Browse files
colll78j-mueller
andauthored
Onchain Security enhancements & offchain tests (#92)
* rework issuance and export prefix and postfix cborhex * rework issuance and export prefix and postfix cborhex * add ref utxo with the prefix and postfix cborhex of the issuance script * continue offchain * modify offchain and onchain code to support authentication of programmable assets in registration * Bump onchain-lib * Fix generated scripts * Fix parser for cbox hex TxIn * Update generated scripts * Review comments --------- Co-authored-by: Jann Müller <[email protected]>
1 parent ce472f1 commit bd23788

File tree

101 files changed

+1209
-225
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

101 files changed

+1209
-225
lines changed

.github/workflows/ci-compiled-scripts.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ jobs:
4545
# git diff --quiet implies --exit-code
4646
run: |
4747
cabal run export-smart-tokens ./generated/scripts/unapplied
48-
cabal run export-smart-tokens ./generated/scripts/preview 08a8d0bb8717839931b0a594f7c28b0a3b7c78f6e9172e977e250eab7637d879.0 '"addr_test1qq986m3uel86pl674mkzneqtycyg7csrdgdxj6uf7v7kd857kquweuh5kmrj28zs8czrwkl692jm67vna2rf7xtafhpqk3hecm"'
49-
cabal run export-smart-tokens ./generated/scripts/mainnet b1977c1eb33590ca1311384ab68cd36209832213ad4483feb8a1b7cb64828946.0 '"addr_test1qq986m3uel86pl674mkzneqtycyg7csrdgdxj6uf7v7kd857kquweuh5kmrj28zs8czrwkl692jm67vna2rf7xtafhpqk3hecm"'
48+
cabal run export-smart-tokens ./generated/scripts/preview 08a8d0bb8717839931b0a594f7c28b0a3b7c78f6e9172e977e250eab7637d879.0 08a8d0bb8717839931b0a594f7c28b0a3b7c78f6e9172e977e250eab7637d879.0 '"addr_test1qq986m3uel86pl674mkzneqtycyg7csrdgdxj6uf7v7kd857kquweuh5kmrj28zs8czrwkl692jm67vna2rf7xtafhpqk3hecm"'
49+
cabal run export-smart-tokens ./generated/scripts/mainnet b1977c1eb33590ca1311384ab68cd36209832213ad4483feb8a1b7cb64828946.0 b1977c1eb33590ca1311384ab68cd36209832213ad4483feb8a1b7cb64828946.0 '"addr_test1qq986m3uel86pl674mkzneqtycyg7csrdgdxj6uf7v7kd857kquweuh5kmrj28zs8czrwkl692jm67vna2rf7xtafhpqk3hecm"'
5050
cabal run write-openapi-schema -- generated/openapi/schema.json
5151
git diff --quiet

cabal.project

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,8 @@ source-repository-package
5757
source-repository-package
5858
type: git
5959
location: https://github.com/Plutonomicon/plutarch-plutus
60-
tag: 7002ce59642daa3fff9c720cf3076844ac81ac26
61-
--sha256: sha256-9FR+VOUCyA0/0oHqV/m6fUXBprD9AIgrUZU0jD3f9hQ=
60+
tag: f84a46287b06f36abf8d2d63bec7ff75d32f3e91
61+
--sha256: sha256-gKBk9D6DHSEudq7P9+07yXWcgM/QX7NFp0tJXBodopM=
6262
subdir:
6363
.
6464
plutarch-ledger-api
@@ -68,8 +68,8 @@ source-repository-package
6868
source-repository-package
6969
type: git
7070
location: https://github.com/input-output-hk/catalyst-onchain-libs
71-
tag: 0b997ba7e62ee5c9aa41212d24f44553410f57d7
72-
--sha256: sha256-vaUFPrR8RFhEGgXbO1npwo5uSK1jRtKtg+FEVbEGuV0=
71+
tag: 2d8389099584e2d9735e9374895386c72d90517a
72+
--sha256: sha256-sdeDXUiL1MbEtJYbN4URwpQ8CbUKjxxGXUxjj1qqi3E=
7373
subdir:
7474
src/plutarch-onchain-lib
7575

generated/prettyScriptOutput.txt

Lines changed: 309 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"type": "PlutusScriptV3",
3+
"description": "Directory Node Minting Policy",
4+
"cborHex": "590789010100323232323232323232323232323232323232323232323232323223232323232323232323259800acc00400a29462664603c44b30010018a518a9980898019813800898011813000a04232232323253301333223232325980099b874800000a2646464b30013370e900000144cdd798188021818800c528205c3031002302d001375400913232325980099b874800800a266ebcc0c4010c0c4006294102e181880118168009baa00440ac605c00460540026ea8008c0a4008c0a40044cc88c8c8c96600266e1d200000289919192cc004cdc3a400000513375e6062008606200314a08170c0c4008c0b4004dd500244c8c8c96600266e1d20020028a518a5040b86062004605a0026ea801102b181700118150009baa00230293028002302930280013029375400460506ea800cc098c09cdd5000981218129baa30240020014079132323232325980099b874800000a2b3001323302223232325330183375e605c004605c002266ebcc0b8c0b4008c0b8c0b4004c0b8dd500118169baa4c0127d8799f5820b1977c1eb33590ca1311384ab68cd36209832213ad4483feb8a1b7cb6482894600ff00302b302c37540020026eb0c0a4c0a8dd5181498151baa0108acc004d5d1802c56600266ebcc074010dd39980fa610140003301f4c120581effffffffffffffffffffffffffffffffffffffffffffffffffffffffffff003301f4c105d8799f40ff003301f4c105d8799f40ff003301f4c10140004bd7045660033001375c01748900a400500a4059149a2c81322c81322c81322c81322646644646464b30013370e900200144c9660026603266050466e3cdd7181780080380899b8f379066e28cdc5245010300337146eb8c0c0004dd98029bae3030302f0010068acc004cdc39b8d006480e22646464646464b30013301f3372000401866e400300062b30015330203302e98009ba900c9ba9002981b0024c0d800e606c606a00691111119baf0019800802c01a009003801205000889981719911191919baf0039800802c0126464b3001337126e34dd71818981f0012407115980099b87001480022607a00915980099b870014800a2607a0091640e881d22c81d0c0e8004dd5181d8014c8c96600266e24dc69bae3031303e002480e22b30013370e002900044c0f400e2b30013370e002900144c0f400e2c81d103a45903a181d0009baa303b001992cc004cdc49b8d001480e22607860760051640e46eb8c0ecc0e8005027181c800981c181c1bac00137520186ea40040462b300198009bae0188065200280ba0468a4d1640cd1640cd1640cc6eb8c0d4010dd7181a0021819000981880098180009bac302400c8b205a8b205a3758605e0031640b0605e00460560026ea8c0b0c0acc0acc0b4dd51816181598169baa33230262259800800c5a2b30013003302f00189817800c4c008c0b800502c20522330240153756605a6058605c6ea8c0b4c0b0c0b8dd50009bac302c010375c0026054605200460520028130c0a4008c094004dd51813181298139baa00d3301a23232323232325980099b874801000a2646464b30013370f30012233700004666054444b3001001880144cc00ccdc0001240046066002817120003756606400348002010918149112cc0040062005133003330040023033001303200140b4480122b30013370e6eb4c0c001d20028acc004cdc81bae001375c605e605c00515980099baf001302d0078801c5902c45902c45902c45902c18170009bac001302c0018b2052302c00230280013754605260500066604244b30010018b456600266ebcc0a0c0a80040322603c6eacc0acc0a800626004605200281390240009bab3027001302530273754002004660324646464b30013370e900200144c0a00062c8128c0a0008c090004dd518129812181218131baa0010028b2042332301d2259800800c52f5c1132598009802000c4cc074004c00cc09800a26006604c0048120c098005020118021bab30243023302537540026eb0c08c01a6002460066eacc08cc088c090dd5000c8c08cc088c090dd5000c00522301d2259800800c52f5c1132598009802800c4cc074004c00cc09800a26006604c0048120c00cc0980050200dd61810803180b8011bab301f301e301e0023232325980099b874800000a260420031640786042004603a0026ea8c078c074c074010c070004c06c004c070dd5180d800980d9baa00137529111cab113b28d1350194558654d948310d5eb4febf1b664edd4eef0467ec002298008014006941016114c00400a0030034054294088888dd39980780299807802198078019980780119807800a5eb80888a4cc02001000646600c6600e00800600361119baf374c0046e9800488cc00cdd48011ba800122330083376000400297adef6c6023300200337520024446601444b30010018c00a2b30013375e60226026002009130053013001898011809000a02040340024650010011bab300f001259800800c5a264b3001001898070014590081806000a00e230052259800800c52f5c11330043003300e0013002300d0014020ae8088cc00c8cdd7980500080180091801112cc00400629422a6600c6006601600226004601400280288c8c0088cc0080080048c0088cc00800800555cf9198018008010a515734aae755d12ba15573d"
5+
}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
0001
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
5903c15903be01010033232323232323232323232323232322232323232323232325980099b874800000a26464646464646464b300133710900000245660026602a6602a6602a6602a66e1e60026eacc07cc08000a6eb80226eb801522298008015200094c00400a90005d6cdd5800a02e801a02c002191919192cc004cdc3a400000513232325980099b874800000a266ebcc098010c0980062941024181380118118009baa4c0122d87a9f581c922a3913b26bfd4d1eeb3c20c9d35fbe25852212d2b32b8ed292478eff0089919192cc004cdc3a400400513375e604c008604c00314a08120c09c008c08c004dd5260122d87a9f581c922a3913b26bfd4d1eeb3c20c9d35fbe25852212d2b32b8ed292478eff004084604800460400026ea8004c07cc084dd5180f8011980b19ba548008cc0600492f5c06602e03c6eacc07c030cdd780099ba548008cc0600492f5c0660320026eacc07cc080c080c08003229345901d45660026602a6602c66e952002330180124bd701980b80f1bab301f00c33019301f00f3756603e604060406040019149a2c80e901d180f007180f9baa301d001375860380166eb4c074008c064004c966002003168992cc00400626036005164060603600280b8cc0548966002003168acc004cdd7980d180d80080244dd5980e980d800c4c008c07000501920300013756603000c602e003164054603000460280026ea8c050c054010c050c050004c04cc04c004c048c048c04cdd51808801180880098089baa00123002375200244446601644b30010018802c56600266ebcc040c04400401a2600860266022003130023012001403c80700048a6002005001a5040284600c44b30010018a508acc004cdd79806000801c528c4c008c03400500a2012230052259800800c52f5c11330043003300b0013002300c0014020ae8088cc010896600200314a1159800980299b873009375460126014002900044c008c02c0062b30013375e601860140020091330062259800800c528c56600266e1cc02cdd518059806000a400115980099baf300e300c0010068a50898011806800a0148a5140288048c02c00626600c44b30010018a508acc004cdc398059baa300b300c001480022b30013375e601c601800200d1330082259800800c528c56600266e1cc034dd518069807000a400115980099baf3010300e0010088a50898011807800a0188a5140308058c03400626004601a0028052294100a2012300b0014020804100700094c004006942945004119180111980100100091801119801001000aab9f5734aae755d0aba25573c98010948
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"type": "PlutusScriptV3",
3+
"description": "Programmable Logic Base",
4+
"cborHex": "58cb010100323232323223259800acc004cdd798021803000a6122d87a9f581c8605c777b28018f62f04cb5c5ce71d5209909dcdfcc96647e24f625cff008a5189991919180111980100100091801119801001000912cc00400629422b3001300330090018a51898011804000a00c555cf88cdd79802800a6122d87a9f581c8605c777b28018f62f04cb5c5ce71d5209909dcdfcc96647e24f625cff003005001400d149a2c8018dd5980298021802180218021802180218031baa300530063754002ae6955ceaba25742aae79"
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"type": "PlutusScriptV3",
3+
"description": "Programmable Logic Global",
4+
"cborHex": "5908510101003232323232323232323232323232323232323232323232323232322323232323232323232325980099b874801000a2646464646464b30013370e900000144c8c9660026603a66e1cc0acdd518161816808a4008646602c46602e466e24dd6981880099914c00400a90004a600200548002eb66eac00501e401501d1bae302e002375c605c0026eacc0c0004008c8c0ba6002444b3001001880144cc00cc8c96600266048606460686ea8004036330017010049bab303230330024081100440bc606200260646ea8c0c0004c0c400502b52f5bded8c1001409c6eb0c0b003a2934590291991194c004888966002005100189919192cc004cdc3a40000051323232325980099b874801000a264b30013302b3302b3302d303a303c375460746076607600202866ebcc0e8004c0e4c0e8028cc0c803cdd5981d002c660026076017303b00a99818981d005004a0188b206e375860720031640d86074004606c0026ea8c0d8c0dc004c0d8c0dcdd5181a981b181b9baa3008375a606a0031323232325980099b874801000a264646464b30013302e3302e3372000400666e4000c004cc0d4048dd5981e804466002607c01d303e00d806201e8b2074375c6078607a0066eb8c0ec008dd7181c981d0051bac30390018b206c303a00230360013754606c606e002606c606e6ea8c0d4c0d8c0dcdd518041bad303500140c8606c00460640026ea8c0c800d02d400a605e0094bd6f7b6302050302100d302b007375860560046645300122259800800c400a2660066464b30013302330313033375400201913232325980099b874800000a2646464b30013370e9000001456600266054606e00201b19800b808054dd5981b981c004204a8b20688acc004cc0a8c0dc0040463300170100a9bab3037303800840951640d081a0c0e0008c0d0004dd5181a000c59031181a80118188009baa3031303337546062606460666ea800620088170c0c0004c0c4dd51817981818189baa302f001303000140a94bd6f7b63040050261bac302a302b302b00b3758605401d13232323232325980099b874801000a2646464646464b300133027330273302733027330273370f300122259800800c400a2b30013302b0143039303b3754607260766ea8c0e4c0e8c0ecdd5181c800c4cc00ccdc0001240046074003133003002303a00140d881a29000402d0302400466050606c60706ea800c044cdd7998151bac3036018375a606c01866e9520003302d0033302d374c0026605a606c606e0086605a980103d87a80004bd7019814981b181c1baa3036303730373037006010329800800d28528a0683375e6e98008dd300099817181b0091bab303600a8a4d1640cc646606044b30010018a5eb7bdb1822b30013375e606e607000200713039001899817981c0009801181c800a06a40cc004606a00a6eacc0d0008c0cc008c0cc004c0ccdd51818981918199baa33025006375a60620106eb0c0c00062c8168c0c4008c0b4004dd518169817000981698171baa302c302d302e3754660400186eb4c0b0c0b4008dd618158079815800a04e302b00230270013754604e018664604244b30010018a5eb82266040600660520026004605400281208c09cc0a4dd518130009bab30260073025302600137586048003164084604a00460420026ea8c084c088c088c08cdd51810981118119baa332301c2259800800c5a2b30013003302400189812000c4c008c094005021203e23301a00a37566044604660486ea8c088c08cc090dd50008009bac30200033020302030203020001301f001301e001301e37546038004603800260386ea8004dd4a451cb5f6e4c2c95c99112ecd8841b9f2bd8481d54ec600112f47a3866a1900230122259800800c528c54cc010c00cc0680044c008c06c005015114c00400a003003405429408c008dd4800911119808912cc004006200b15980099baf3018301900100689802180d980c800c4c008c06800501620280012229800914c004016005001401d002800a0082225980080144006330012225980080144006330013017002980c00140050032024980a0014c05400a0029180791112cc00400626602000600513232325980099baf00200189980999bb0002374c660166eacc078018dd5980f001cc00401e00b301d004402115980099b90375c0046eb800626602600d3001007802c01100844cc04c00e600200f301d00499809803002a010406480c8c068008c064010c064005014100f1112cc00400a2003198009112cc00400a200319800980b0014c05c00a00280190114c04c00a602800500148c03888896600200313300f00300289919192cc004cdd7801000c4cc048cdd80011ba83300b375a603a00c6eb4c07400e600200f005980e00220108acc004cdc81bae002375c0031330120069800803c01600880422660240073001007980e0024cc04801801500820304060603200460300086030002809880708a6002005001a50403844646464b30013370e900000144c8c8c96600266e1d2000002899baf301600430160018a50404c602e00460260026ea80122646464b30013370e900100144cdd7980b002180b000c52820263017002301300137540088080c050008c040004dd500111804112cc00400629422b30013375e602000200714a313002301100140348058c0188896600266e212014001899801980200119b81001480522b3001337109005000c4cc00cc040c040c040c040c040008cdc0800a4015133005002001403080608c034c034c034c034c034c034c034c034c034c034004c0108896600266e1c00520008980680144cc00cc038008cdc0800a400480515d01119801919baf300a001003001230022259800800c528454cc018c00cc0280044c008c02c005005119180111980100100091801119801001000aab9f2330020010035734294555ceaba15744aae79"
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"type": "PlutusScriptV3",
3+
"description": "Programmable Token Minting",
4+
"cborHex": "5903d301010033232323232323232323232323232322232323232323232325980099b874800000a26464646464646464b300133710900000245660026602a6602a6602a6602a66e1e60026eacc07cc08000a6eb80226eb801522298008015200094c00400a90005d6cdd5800a02e801a02c002191919192cc004cdc3a400000513232325980099b874800000a266ebcc098010c0980062941024181380118118009baa4c0122d87a9f581c922a3913b26bfd4d1eeb3c20c9d35fbe25852212d2b32b8ed292478eff0089919192cc004cdc3a400400513375e604c008604c00314a08120c09c008c08c004dd5260122d87a9f581c922a3913b26bfd4d1eeb3c20c9d35fbe25852212d2b32b8ed292478eff004084604800460400026ea8004c07cc084dd5180f8011980b19ba548008cc0600492f5c06602e03c6eacc07c030cdd780099ba548008cc0600492f5c0660320026eacc07cc080c080c08003229345901d45660026602a6602c66e952002330180124bd701980b80f1bab301f00c33019301f00f3756603e604060406040019149a2c80e901d180f007180f9baa301d001375860380166eb4c074008c064004c966002003168992cc00400626036005164060603600280b8cc0548966002003168acc004cdd7980d180d80080244dd5980e980d800c4c008c07000501920300013756603000c602e003164054603000460280026ea8c050c054010c050c050004c04cc04c004c048c048c04cdd51808801180880098089baa00123002375200244446601644b30010018802c56600266ebcc040c04400401a2600860266022003130023012001403c80700048a6002005001a5040284600c44b30010018a508acc004cdd79806000801c528c4c008c03400500a2012230052259800800c52f5c11330043003300b0013002300c0014020ae8088cc010896600200314a1159800980299b873009375460126014002900044c008c02c0062b30013375e601860140020091330062259800800c528c56600266e1cc02cdd518059806000a400115980099baf300e300c0010068a50898011806800a0148a5140288048c02c00626600c44b30010018a508acc004cdc398059baa300b300c001480022b30013375e601c601800200d1330082259800800c528c56600266e1cc034dd518069807000a400115980099baf3010300e0010088a50898011807800a0188a5140308058c03400626004601a0028052294100a2012300b0014020804100700094c004006942945004119180111980100100091801119801001000aab9f5734aae755d0aba25573c98011e581cb8e98f65c3f29808463ab331827b572beb7d9c866ef09505362550860001"
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"type": "PlutusScriptV3",
3+
"description": "Transfer Logic Spending",
4+
"cborHex": "5902c70101003232323232323232322323232598009980319b87300a37546016601800490024c004dd618058014dd618059806000cca6002444b3001001880144cc00cc96600264646464b30013370e900000144c8c8c96600266e1d2000002899baf301700430170018a504054603000460280026ea930122d87a9f581c922a3913b26bfd4d1eeb3c20c9d35fbe25852212d2b32b8ed292478eff0089919192cc004cdc3a400400513375e602e008602e00314a080a8c060008c050004dd5260122d87a9f581c922a3913b26bfd4d1eeb3c20c9d35fbe25852212d2b32b8ed292478eff004048602a00460220026ea8004c040c048dd5000c4cd5d0180818091baa301030123754602060246ea8c040c044c048dd5000801c400d00e180798089baa300f301030113754601e0026020002806297ae0800a01037586016002911194c0048896600200314a31323232325980099b874801000a264646464b300133015330153372000400666e4000c004c8cc8c060896600200314a1153323301d00114a26006603c00226004603e00280d88cdd7980d80080b0009bab301a008899805980d805180d804c590181bae3019301a003375c60300046eb8c05c018dd6180b000c59014180b80118098009baa301330140013013301437546024602660286ea8c010dd69809180a1baa3012002403d00480120163300a2225980099b8848050006266006602460246024602460246024602460246024602400466e0400520148acc004cdc4240140031330033012301230123012301200233702002900544ccc0348896600266e1c00520008980a00144cc00cc054008cdc0800a4004809000800500f201e00245268b2012300c37546014004601400260146ea8004dd4a451ce24d28a1a5019b59bd930128d2c78af6715bbccf18bfb1ca09ef58a7002298008014006941005119180111980100100091801119801001000aab9f5734aae755d0aba25573c1"
5+
}

0 commit comments

Comments
 (0)