Looking through the pyteal documentation, I don’t see a way to convert byte strings to strings. What would be the best method for me to convert the byte string to a string?
Each SDK has a method to convert the 58 byte address (the one we see normally) to the 32 byte address that logic needs. The implementation is just base32 encode/decode with some padding adding/removal logic
Would this mean if I want to send a Algorand wallet address to be used in the smart contract I have to encode the wallet address with the encode address function? If I wanted to save these wallet addresses as a global variable to be used later, is there any way in pyteal that I can decode the addresses again or would it be done automatically?
If you’re passing it as a foreign account the SDKs will handle it for you, if its an argument it would need to be encoded since those are just byte strings.
In teal you don’t need to think about conversion since it should be the 32 byte version always when it makes it to the contract logic