Likes - Activity - cusma - Algorand
The PCG Random Number Generator for the AVM
This pilot proposal is for lib-pcg-avm, a random number generator (RNG) library implemented for Algorand Python, Algorand TypeScript, TEALScript, and PyTeal. GitHub Link
Description
This library integrates probabilistic techniques with the Algorand Virtual Machine (AVM).
Motivation
This library brings to the AVM language ecosystem powerful random number generation capabilities which can enhance application functionality.
Random Number Generation on the Algorand Virtual Machine
Let’s look at the situation without sortition first. This is much simpler. If you want the blockchain to never fork (like Algorand), then if more than 1/3 of the nodes are not running, then the blockchain won’t produce blocks.
The Algorand blockchain requires a bit less than 80% of stake honestly participating to produce blocks. This is because the Algorand blockchain favors security/no-forking/consistency over availability/liveness. Other blockchains make other trade-offs and allow forking to always be able to produce blocks.
Usage of local/global state
Yes, the method is not secured enough for any mission-critical application. Usage of local/global state could help resolve these issues.
This solution works as long as nothing bad can happen if group 2 is executed before group 1. If something bad can happen (e.g., loss of funds, ways for an attacker to steal funds, moving the contract in a dangerous state), then you should absolutely not use the above.
Indexer initial import speed
The biggest impact we’ve seen in the initial seeding of the DB is the latency between the indexer instance and the PostgreSQL database. The latency between the indexer and the algod instance is not as important, as long as it’s within reason.
We never put the indexer on the same VM as the database. We’re running in AWS with Aurora-managed DBs, so that’s not an option.
Handling integer overflows in PyTeal
When working with fixed-size integers in critical software, you should be doing a semi-formal or formal range analysis. Concretely, for any integer x in your smart contract, you want to show that it is always between values a and b, where a and b can be represented reliably.
Creating and Managing Non-Fungible ASA from the Command Line
You can list your wallets using:
goal wallet list
You may need to add the flag -d <your_data_directory>, where <your_data_directory> is replaced by your actual data directory.
IPFS Database Link
I’d like to create an asset that links to an IPFS database. However the IPFS link is longer than the URL character limit. Is there a way around this?
Unique NFT ASA Implementation
I am looking to create a game on Algorand. Here is how I see it. Participants can redeem prime numbers as NFTs. They can exchange them freely, and I am planning to create a marketplace app where all prime numbers would be listed.