GRIN uses a timelock. What additional functionality does BEAM add to this timelock?
BEAM supports setting an explicit incubation period on a UTXO, which limits its ability to be spent to a specific number of blocks after its creation [ 13 ]. This is different to a timelock, which prevents a transaction from being added to a block before a certain time. BEAM also supports the traditional timelock feature, but includes the ability to also specify an upper time limit, after which the transaction can no longer be included in a block [ 13 ]. This feature means that a party can be sure that if a transaction is not included in a block on the main blockchain after a certain time, it will never appear.
BEAM proposes to improve scalability by letting users recycle transaction kernels. How will they encourage users to use this feature?
In order to incentivize transactions to be built in this way, BEAM includes a fee refund model for these types of transactions.
In a GRIN transaction, both parties must be online at the same time. How does BEAM allow this to be done asynchronously?
BEAM has implemented a Secure Bulletin Board System (SBBS) that is run on BEAM full-nodes to allow for asynchronous negotiation of transactions
How does BEAM plan to support one-sided transactions?
In addition to the secure BBS communication channel, BEAM also plans to support one-sided transactions where the payee in a transaction who expects to be paid a certain amount can construct their half of the transaction and send this half-constructed transaction to the payer. The payer can then finish constructing the transaction and publish it to the blockchain.