stellar / slingshot

A new blockchain architecture under active development, with a strong focus on scalability, privacy and safety
Apache License 2.0
415 stars 61 forks source link

zkvm: non-portable items in transient contracts? #326

Closed oleganza closed 5 years ago

oleganza commented 5 years ago

The spec currently is inconsistent: in one paragraph it says that transient contracts (not outputs) can contain non-portable items. But the spec for the contract instruction requires portable items, and that's how implementation works.

  1. On one hand, it's should be safe to allow non-portable items in transient contracts (since they have to be opened before VM finishes). This may allow some useful flexibility.
  2. On the other hand, having parity between contract and output is simpler and safer.