-
Notifications
You must be signed in to change notification settings - Fork 482
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Rename and rewrite "Upgrading to Vasil and Plutus script addresses" (#…
- Loading branch information
Showing
4 changed files
with
56 additions
and
62 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
27 changes: 27 additions & 0 deletions
27
doc/docusaurus/docs/delve-deeper/understanding-script-hashes.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
--- | ||
sidebar_position: 20 | ||
--- | ||
|
||
# Understanding Script Hashes | ||
|
||
Script hashes are a core concept and play a vital role on Cardano. | ||
Performing an action on Cardano that involves scripts, such as spending a script UTXO or minting tokens, requires the script with a specific hash to be executed and satisfied. | ||
The cryptographic security of script hashes makes it effectively impossible to manufacture a script that matches a given hash, ensuring the integrity of the blockchain. | ||
A solid understanding of script hashes is essential for DApp development. | ||
|
||
## Changing ledger language versions leads to changed script hashes | ||
|
||
The ledger language version of a script is part of its hash, so the exact same UPLC program will have different hashes when used as a Plutus V1, V2 or V3 script. | ||
This means, for example, you can't supply a Plutus V3 script when performing an action that requires a Plutus V1 or V2 script, as the hash won't match. | ||
|
||
## Changing Plutus Tx compiler versions may lead to changed script hashes | ||
|
||
Different Plutus Tx compiler versions may compile and optimize the same Plutus Tx code differently, leading to different UPLC programs and, therefore, different script hashes. | ||
|
||
Additionally, the version of GHC can affect the resulting UPLC program and script hashes. | ||
While the Plutus Tx compiler currently supports only one major GHC version, different minor GHC versions may lead to slightly different UPLC programs. | ||
|
||
If you plan to use your script in the future, the best approach is to save the compiled script in a blueprint file. | ||
For further information, refer to [Producing a Plutus contract blueprint](../working-with-scripts/producing-a-blueprint.md). | ||
|
||
If you wish to compile your Plutus Tx code again in the future while ensuring the script hash remains unchanged, consider using Nix to lock the versions of all dependencies by pinning to a specific version of nixpkgs. |
29 changes: 0 additions & 29 deletions
29
doc/docusaurus/docs/delve-deeper/upgrade-vasil-plutus-script-addresses.md
This file was deleted.
Oops, something went wrong.
2a29fbe
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Possible performance regression was detected for benchmark 'Plutus Benchmarks'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold
1.05
.validation-auction_1-2
909.5
μs646.6
μs1.41
validation-auction_1-3
899.5
μs634.6
μs1.42
validation-auction_1-4
326.5
μs233.1
μs1.40
validation-game-sm-success_2-2
258.7
μs227
μs1.14
validation-game-sm-success_2-3
907.2
μs833.7
μs1.09
validation-game-sm-success_2-4
328.6
μs281.3
μs1.17
validation-game-sm-success_2-5
907.8
μs679.1
μs1.34
validation-game-sm-success_2-6
284.8
μs231.8
μs1.23
validation-multisig-sm-2
498.2
μs384.8
μs1.29
validation-multisig-sm-4
415.5
μs395.1
μs1.05
validation-multisig-sm-5
657.1
μs559.4
μs1.17
validation-multisig-sm-6
431.3
μs398.2
μs1.08
validation-multisig-sm-7
536.4
μs386.4
μs1.39
validation-decode-auction_2-1
273.4
μs207.5
μs1.32
validation-decode-auction_2-2
707.8
μs512.8
μs1.38
validation-decode-auction_2-3
757.5
μs529.9
μs1.43
validation-decode-auction_2-4
747.7
μs528.4
μs1.42
validation-decode-auction_2-5
270.6
μs188.7
μs1.43
validation-decode-crowdfunding-success-1
331.4
μs233.3
μs1.42
validation-decode-crowdfunding-success-2
331
μs227.6
μs1.45
validation-decode-crowdfunding-success-3
330.1
μs229.6
μs1.44
validation-decode-currency-1
334.2
μs232.1
μs1.44
validation-decode-escrow-redeem_1-1
443.8
μs306.4
μs1.45
validation-decode-escrow-redeem_1-2
440.9
μs415.1
μs1.06
validation-decode-game-sm-success_2-3
741
μs691.5
μs1.07
validation-decode-game-sm-success_2-4
229.8
μs156.6
μs1.47
validation-decode-game-sm-success_2-5
742
μs514.1
μs1.44
validation-decode-game-sm-success_2-6
229.8
μs169.6
μs1.35
validation-decode-multisig-sm-1
813.8
μs768.8
μs1.06
validation-decode-uniswap-5
1036
μs781.4
μs1.33
validation-decode-uniswap-6
233.8
μs177.4
μs1.32
marlowe-semantics/0000020002010200020101020201000100010001020101020201010000020102
455.4
μs361.4
μs1.26
marlowe-semantics/0101080808040600020306010000000302050807010208060100070207080202
1083
μs764.5
μs1.42
marlowe-semantics/0104010200020000040103020102020004040300030304040400010301040303
1105
μs780.9
μs1.42
marlowe-semantics/0543a00ba1f63076c1db6bf94c6ff13ae7d266dd7544678743890b0e8e1add63
1477
μs1206
μs1.22
marlowe-semantics/0705030002040601010206030604080208020207000101060706050502040301
1430
μs1008.9999999999999
μs1.42
marlowe-semantics/07070c070510030509010e050d00040907050e0a0d06030f1006030701020607
1451
μs1020.9999999999999
μs1.42
marlowe-semantics/0bcfd9487614104ec48de2ea0b2c0979866a95115748c026f9ec129384c262c4
1604
μs1133
μs1.42
marlowe-semantics/0be82588e4e4bf2ef428d2f44b7687bbb703031d8de696d90ec789e70d6bc1d8
1935
μs1359
μs1.42
marlowe-semantics/0f1d0110001b121d051e15140c0c05141d151c1f1d201c040f10091b020a0e1a
677.6
μs477.8
μs1.42
marlowe-semantics/119fbea4164e2bf21d2b53aa6c2c4e79414fe55e4096f5ce2e804735a7fbaf91
1087
μs764.9
μs1.42
marlowe-semantics/12910f24d994d451ff379b12c9d1ecdb9239c9b87e5d7bea570087ec506935d5
706.8
μs498.4
μs1.42
marlowe-semantics/18cefc240debc0fcab14efdd451adfd02793093efe7bc76d6322aed6ddb582ad
1070
μs750.7
μs1.43
marlowe-semantics/1a2f2540121f09321216090b2b1f211e3f020c2c133a1a3c3f3c232a26153a04
431.9
μs305.4
μs1.41
marlowe-semantics/1a573aed5c46d637919ccb5548dfc22a55c9fc38298d567d15ee9f2eea69d89e
1280
μs901.8
μs1.42
marlowe-semantics/1d56060c3b271226064c672a282663643b1b0823471c67737f0b076870331260
1103
μs781.4
μs1.41
marlowe-semantics/1d6e3c137149a440f35e0efc685b16bfb8052ebcf66ec4ad77e51c11501381c7
432.8
μs305.8
μs1.42
marlowe-semantics/1f0f02191604101e1f201016171604060d010d1d1c150e110a110e1006160a0d
1402
μs992.4
μs1.41
marlowe-semantics/202d273721330b31193405101e0637202e2a0f1140211c3e3f171e26312b0220
8042
μs6578
μs1.22
marlowe-semantics/238b21364ab5bdae3ddb514d7001c8feba128b4ddcf426852b441f9a9d02c882
426.1
μs388.8
μs1.10
marlowe-semantics/26e24ee631a6d927ea4fb4fac530cfd82ff7636986014de2d2aaa460ddde0bc3
798
μs566.3
μs1.41
marlowe-semantics/2797d7ac77c1b6aff8e42cf9a47fa86b1e60f22719a996871ad412cbe4de78b5
2536
μs1816
μs1.40
marlowe-semantics/28fdce478e179db0e38fb5f3f4105e940ece450b9ce8a0f42a6e313b752e6f2c
1319
μs930.8
μs1.42
marlowe-semantics/2cb21612178a2d9336b59d06cbf80488577463d209a453048a66c6eee624a695
1119
μs788.8
μs1.42
marlowe-semantics/2f58c9d884813042bce9cf7c66048767dff166785e8b5183c8139db2aa7312d1
1085
μs766.1
μs1.42
marlowe-semantics/30aa34dfbe89e0c43f569929a96c0d2b74c321d13fec0375606325eee9a34a6a
1630
μs1157
μs1.41
marlowe-semantics/322acde099bc34a929182d5b894214fc87ec88446e2d10625119a9d17fa3ec3d
433
μs305.4
μs1.42
marlowe-semantics/331e4a1bb30f28d7073c54f9a13c10ae19e2e396c299a0ce101ee6bf4b2020db
664.1
μs466.1
μs1.42
marlowe-semantics/33c3efd79d9234a78262b52bc6bbf8124cb321a467dedb278328215167eca455
891.4
μs630.3
μs1.41
marlowe-semantics/383683bfcecdab0f4df507f59631c702bd11a81ca3841f47f37633e8aacbb5de
1076
μs765.1
μs1.41
marlowe-semantics/3bb75b2e53eb13f718eacd3263ab4535f9137fabffc9de499a0de7cabb335479
426.2
μs302
μs1.41
marlowe-semantics/3db496e6cd39a8b888a89d0de07dace4397878958cab3b9d9353978b08c36d8a
1182
μs947
μs1.25
marlowe-semantics/44a9e339fa25948b48637fe7e10dcfc6d1256319a7b5ce4202cb54dfef8e37e7
424.2
μs301.6
μs1.41
marlowe-semantics/4c3efd13b6c69112a8a888372d56c86e60c232125976f29b1c3e21d9f537845c
1458
μs1093
μs1.33
marlowe-semantics/75a8bb183688bce447e00f435a144c835435e40a5defc6f3b9be68b70b4a3db6
988.4
μs700
μs1.41
marlowe-semantics/7a758e17486d1a30462c32a5d5309bd1e98322a9dcbe277c143ed3aede9d265f
729.3
μs516.7
μs1.41
marlowe-semantics/7cbc5644b745f4ea635aca42cce5e4a4b9d2e61afdb3ac18128e1688c07071ba
669.3
μs473.9
μs1.41
marlowe-semantics/82213dfdb6a812b40446438767c61a388d2c0cfd0cbf7fd4a372b0dc59fa17e1
1821
μs1287
μs1.41
marlowe-semantics/8c7fdc3da6822b5112074380003524f50fb3a1ce6db4e501df1086773c6c0201
1633
μs1160
μs1.41
marlowe-semantics/8d9ae67656a2911ab15a8e5301c960c69aa2517055197aff6b60a87ff718d66c
512.4
μs360.4
μs1.42
marlowe-semantics/96e1a2fa3ceb9a402f2a5841a0b645f87b4e8e75beb636692478ec39f74ee221
431.2
μs304.7
μs1.42
marlowe-semantics/9fabc4fc3440cdb776b28c9bb1dd49c9a5b1605fe1490aa3f4f64a3fa8881b25
1485
μs1050
μs1.41
marlowe-semantics/a85173a832db3ea944fafc406dfe3fa3235254897d6d1d0e21bc380147687bd5
525.1
μs372.1
μs1.41
marlowe-semantics/a9a853b6d083551f4ed2995551af287880ef42aee239a2d9bc5314d127cce592
729.8
μs516
μs1.41
marlowe-semantics/acb9c83c2b78dabef8674319ad69ba54912cd9997bdf2d8b2998c6bfeef3b122
921.9
μs655.4
μs1.41
marlowe-semantics/acce04815e8fd51be93322888250060da173eccf3df3a605bd6bc6a456cde871
399.8
μs284
μs1.41
marlowe-semantics/ad6db94ed69b7161c7604568f44358e1cc11e81fea90e41afebd669e51bb60c8
831.1
μs591.2
μs1.41
marlowe-semantics/b21a4df3b0266ad3481a26d3e3d848aad2fcde89510b29cccce81971e38e0835
1904
μs1359
μs1.40
marlowe-semantics/b50170cea48ee84b80558c02b15c6df52faf884e504d2c410ad63ba46d8ca35c
1079
μs763.5
μs1.41
marlowe-semantics/bb5345bfbbc460af84e784b900ec270df1948bb1d1e29eacecd022eeb168b315
1294
μs916.5
μs1.41
marlowe-semantics/c4bb185380df6e9b66fc1ee0564f09a8d1253a51a0c0c7890f2214df9ac19274
1046
μs742.2
μs1.41
marlowe-semantics/c9efcb705ee057791f7c18a1de79c49f6e40ba143ce0579f1602fd780cabf153
1156
μs820.8
μs1.41
marlowe-semantics/ccab11ce1a8774135d0e3c9e635631b68af9e276b5dabc66ff669d5650d0be1c
1399
μs988.4
μs1.42
marlowe-semantics/cdb9d5c233b288a5a9dcfbd8d5c1831a0bb46eec7a26fa31b80ae69d44805efc
1247
μs883.2
μs1.41
marlowe-semantics/ced1ea04649e093a501e43f8568ac3e6b37cd3eccec8cac9c70a4857b88a5eb8
1186
μs841
μs1.41
marlowe-semantics/cf542b7df466b228ca2197c2aaa89238a8122f3330fe5b77b3222f570395d9f5
700.4
μs498
μs1.41
marlowe-semantics/d1ab832dfab25688f8845bec9387e46ee3f00ba5822197ade7dd540489ec5e95
48030
μs36180
μs1.33
marlowe-semantics/d1c03759810747b7cab38c4296593b38567e11195d161b5bb0a2b58f89b2c65a
1452
μs1025
μs1.42
marlowe-semantics/d64607eb8a1448595081547ea8780886fcbd9e06036460eea3705c88ea867e33
425.7
μs300.6
μs1.42
marlowe-semantics/dc241ac6ad1e04fb056d555d6a4f2d08a45d054c6f7f34355fcfeefebef479f3
664.4
μs469.2
μs1.42
marlowe-semantics/dd11ae574eaeab0e9925319768989313a93913fdc347c704ddaa27042757d990
1073
μs776
μs1.38
marlowe-role-payout/0004000402010401030101030100040000010104020201030001000204020401
259.9
μs218.3
μs1.19
marlowe-role-payout/0100000100010000000001000100010101000101000001000000010000010000
365.8
μs257.5
μs1.42
marlowe-role-payout/0101000100000101010000010101000100010101000001000001000000010101
275.3
μs194.3
μs1.42
marlowe-role-payout/01dcc372ea619cb9f23c45b17b9a0a8a16b7ca0e04093ef8ecce291667a99a4c
228.6
μs161.1
μs1.42
marlowe-role-payout/0201020201020000020000010201020001020200000002010200000101010100
253.1
μs183.3
μs1.38
marlowe-role-payout/0303020000020001010201060303040208070100050401080304020801030001
239.5
μs168.2
μs1.42
marlowe-role-payout/031d56d71454e2c4216ffaa275c4a8b3eb631109559d0e56f44ea8489f57ba97
293.7
μs207
μs1.42
marlowe-role-payout/03d730a62332c51c7b70c16c64da72dd1c3ea36c26b41cd1a1e00d39fda3d6cc
272.6
μs192.4
μs1.42
marlowe-role-payout/0403020000030204010000030001000202010101000304030001040404030100
254.3
μs179.3
μs1.42
marlowe-role-payout/0405010105020401010304080005050800040301010800080207080704020206
277.9
μs196
μs1.42
marlowe-role-payout/041a2c3b111139201a3a2c173c392b170e16370d300f2d28342d0f2f0e182e01
279
μs196.7
μs1.42
marlowe-role-payout/04f592afc6e57c633b9c55246e7c82e87258f04e2fb910c37d8e2417e9db46e5
327.3
μs230.8
μs1.42
marlowe-role-payout/057ebc80922f16a5f4bf13e985bf586b8cff37a2f6fe0f3ce842178c16981027
233.5
μs165.4
μs1.41
marlowe-role-payout/06317060a8e488b1219c9dae427f9ce27918a9e09ee8ac424afa33ca923f7954
253.6
μs178.8
μs1.42
marlowe-role-payout/07658a6c898ad6d624c37df1e49e909c2e9349ba7f4c0a6be5f166fe239bfcae
228.1
μs160.8
μs1.42
marlowe-role-payout/0c9d3634aeae7038f839a1262d1a8bc724dc77af9426459417a56ec73240f0e0
249
μs198.8
μs1.25
marlowe-role-payout/0d0f01050a0a0a0b0b050d0404090e0d0506000d0a041003040e0f100e0a0408
246.4
μs173.5
μs1.42
marlowe-role-payout/0dbb692d2bf22d25eeceac461cfebf616f54003077a8473abc0457f18e025960
280
μs198
μs1.41
marlowe-role-payout/0e00171d0f1e1f14070d0a00091f07101808021d081e1b120219081312081e15
242.7
μs170.9
μs1.42
marlowe-role-payout/0e72f62b0f922e31a2340baccc768104025400cf7fdd7dae62fbba5fc770936d
267.9
μs189
μs1.42
marlowe-role-payout/0e97c9d9417354d9460f2eb35018d3904b7b035af16ab299258adab93be0911a
259.5
μs183.8
μs1.41
marlowe-role-payout/0f010d040810040b10020e040f0e030b0a0d100f0c080c0c05000d04100c100f
276.5
μs194.8
μs1.42
marlowe-role-payout/1138a04a83edc0579053f9ffa9394b41df38230121fbecebee8c039776a88c0c
239.3
μs169.3
μs1.41
marlowe-role-payout/121a0a1b12030616111f02121a0e070716090a0e031c071419121f141409031d
232.5
μs164
μs1.42
marlowe-role-payout/159e5a1bf16fe984b5569be7011b61b5e98f5d2839ca7e1b34c7f2afc7ffb58e
241.5
μs170.6
μs1.42
marlowe-role-payout/195f522b596360690d04586a2563470f2214163435331a6622311f7323433f1c
234.6
μs166
μs1.41
marlowe-role-payout/1a20b465d48a585ffd622bd8dc26a498a3c12f930ab4feab3a5064cfb3bc536a
261
μs184.4
μs1.42
marlowe-role-payout/211e1b6c10260c4620074d2e372c260d38643a3d605f63772524034f0a4a7632
251
μs177.2
μs1.42
marlowe-role-payout/21a1426fb3fb3019d5dc93f210152e90b0a6e740ef509b1cdd423395f010e0ca
264.1
μs186.6
μs1.42
marlowe-role-payout/224ce46046fab9a17be4197622825f45cc0c59a6bd1604405148e43768c487ef
239.8
μs169.5
μs1.41
marlowe-role-payout/332c2b1c11383d1b373e1315201f1128010e0e1518332f273f141b23243f2a07
197.1
μs161.6
μs1.22
marlowe-role-payout/3897ef714bba3e6821495b706c75f8d64264c3fdaa58a3826c808b5a768c303d
246.1
μs173.6
μs1.42
marlowe-role-payout/4121d88f14387d33ac5e1329618068e3848445cdd66b29e5ba382be2e02a174a
280.1
μs197.6
μs1.42
marlowe-role-payout/4299c7fcf093a5dbfe114c188e32ca199b571a7c25cb7f766bf49f12dab308be
259.4
μs183.2
μs1.42
marlowe-role-payout/452e17d16222a427707fa83f63ffb79f606cc25c755a18b1e3274c964ed5ec99
289.1
μs204.2
μs1.42
marlowe-role-payout/46f8d00030436e4da490a86b331fa6c3251425fb8c19556080e124d75bad7bd6
236.5
μs166.7
μs1.42
marlowe-role-payout/47364cfaf2c00f7d633283dce6cf84e4fd4e8228c0a0aa50e7c55f35c3ecaa1c
237.3
μs167.2
μs1.42
marlowe-role-payout/49b8275d0cb817be40865694ab05e3cfe5fc35fb43b78e7de68c1f3519b536bd
245.6
μs208.4
μs1.18
This comment was automatically generated by workflow using github-action-benchmark.
CC: @IntersectMBO/plutus-core