###### tags: `algorand`
# Algorand Flutter App Integration Ideas
- integrate via REST API
- create Dart REST client
- support multisig accounts for extra security
- for example, multisig to login or sign transactions
- use algo account for auth and login
- user sends a login transaction, which returns the user's permissions
- users register with the platform using the smart contract API
- benefits:
- by using Algo account, it protects the system against DoS style attacks because every transaction has a cost for the user
- since the platform requires Algorand account to transact, then this simplifies account management for the user by requiring the user to authenticate via another system
- leverages the same level of security provided by the Algorand blockchain platform
# Wallet Integrations
- https://wallet.myalgo.com
- benefits:
- integrates with hardware wallets
- provides robust transaction explorer
# Algorand Best Practices
- use transaction **lease** to enforces mutual exclusion of transactions. If this field is nonzero, then once the transaction is confirmed, it acquires the lease identified by the (Sender, Lease) pair of the transaction until the LastValid round passes. While this transaction possesses the lease, no other transaction specifying this lease can be confirmed. A lease is often used in the context of Algorand Smart Contracts to prevent replay attacks. Read more about Algorand Smart Contracts and see the Delegate Key Registration TEAL template for an example implementation of leases. Leases can also be used to safeguard against unintended duplicate spends. For example, if I send a transaction to the network and later realize my fee was too low, I could send another transaction with a higher fee, but the same lease value. This would ensure that only one of those transactions ends up getting confirmed during the validity period.