Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Draft] Universal Marlowe Script: combine Validator and MintingPolicy in a single script #117

Closed
wants to merge 9 commits into from

Conversation

nau
Copy link
Contributor

@nau nau commented Apr 15, 2022

PoC of an idea to combine validator and mintingPolicy in a single script.

It's possible to produce a script that can be run in both Validation and Minting contexts.
In such a case we can mint Marlowe role tokens and ensure we created a Marlowe contract that uses these tokens within the same transaction. Thus, we can guarantee that no one can reuse the same tokens for different Marlowe contracts produced this way.

The thing is that tokens' CurrencySymbol == ValidatorHash, and we can check during minting that the Tx contains a script TxOut with ValidatorHash == CurrencySymbol.

@nau nau requested review from palas and bwbush April 15, 2022 11:39
@bwbush bwbush self-assigned this Apr 15, 2022
@bwbush
Copy link
Collaborator

bwbush commented Jul 20, 2022

@palas, the SCP-4107 assessment for this PR was formulated as a Marlowe Improvement Proposal (MIP): marlowe-lang/MIPs#1.

@bwbush
Copy link
Collaborator

bwbush commented Jul 20, 2022

Language.Marlowe.Scripts from this PR has been cherry-picked, modified, and merged into https://github.com/input-output-hk/marlowe-cardano/tree/SCP-4107, which is derived from https://github.com/input-output-hk/marlowe-cardano/tree/sprint-61.

@bwbush
Copy link
Collaborator

bwbush commented Aug 29, 2022

Consideration of the universal validator has been moved to marlowe-lang/MIPs#1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants