A repository for Algogenous Smart Contracts created on the Algorand Blockchain.

Overview

Smart Contacts

Alogrand Smart Contracts using Choice Coin. Read Docs for how to implement Algogenous Smart Contracts for your own applications. Smart contracts are programs that automatically execute, transferring cryptocurrency between parties. In other words, smart contracts are logically executed on a blockchain to transfer assets without only computational or formalized oversight. Algorand Smart Contracts (ASCs) allow for global payments and financial transactions, with instantaneous processing and only marginal fees – less than $0.01 in total value. As typically described the three types of ASCs are: (1) Stateful Smart Contracts; (2) Stateless Smart Contracts; and (3) Algogeneous Smart Contracts.

Stateful

Stateful refers to the contract’s ability to store information in a specific state on the network. For example, one type of stateful smart contract is a request payment function, allowing a user to request payment from another user. Generally, Stateful Smart Contracts are logical programs which store data on the blockchain.

Stateless

Stateless Smart Contracts differ in that they validate transactions between parties, like an escrow and more like a contract in the traditional sense. Stateless Smart Contracts on the Algorand Network also act as signature delegators, signing transactions, thus validating them on the main blockchain network. By analogy, many describe Stateless Smart Contracts as essentially equivalent to escrow functions. Indeed, the essential design purpose for Stateless Smart Contracts were to approve or deny blockchain transactions.

Algogeneous

Representing a technical convergence of Stateless and Stateful Smart Contracts, Algogeneous Smart Contracts include an innovative integration with artificial intelligence. Where previous ASCs must be stateful or stateless, Algogeneous contracts may be stateful, stateless, or both.

Docs

Files

  • The “Algogenous_Contracts” Folder contains examples of Algogenous Smart Contracts.
  • The “Single_State_Contracts” Folder contains examples of Stateful and Stateless Contracts.

Dependencies

  • To run the code in the Algogenous_Contracts Folder, you first must have Python installed. Please download the latest version of Python, and create a virutal environment specifcally for this directory. Python Download: https://www.python.org/downloads/.
  • Second, your Python Virtual Envrionment must have all of the packages listed in the requirements.txt file, which is also found in the Algogenous_Contracts Folder.

Run Steps

  • To run the code found in the Algogenous_Contracts folder, make sure to first download the dependencies as described above using pip.
  • Use Choice Coin or create a new Algorand Standard Asset as described in the asset_creation.py file in the Algogenous_Contracts folder. Once this is done, change the value of asset_id in the AlgoG.py file to the id of the asset you just created. Additionally, assign the manager address and mnemonic to the fund_address and fund_mnemonic variables in the AlgoG.py file.
  • Furthermore, connect to the Algorand Network through a service such as the PureStake API or the Algorand Sandbox, the code was tested using the PureStake API, and assign your new address and token to algod_address and algod_token respectively.
  • In the algo_switch function, found in AlgoG.py, change the script exectuable in the comment variable to fit organizational or application need.
  • To test code in the Python terminal, import the function you are testing from AlgoG, choice_transaction for transfer, request_funds for the charge function, and algo_switch for the Algogenous smart contract. It is reccomended to add a reciever_address and reciever_mnemonic in the AlgoG file for code that is being tested in the terminal to avoid potential errors associated with a copy-paste method. Once this is done, import the fund_address, fund_mnemonic, receiver_address, receiver_mnemonic, and asset_id variables from AlgoG. Then, run the function with the appropriate inputs as described in the AlgoG file.

License

Copyright Fortior Blockchain, LLLP 2021

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Owner
Choice Coin
Official Github for Choice Coin, a utility token focusing on governance and democratic participation. Built on the Algorand Blockchain.
Choice Coin
GreenDoge is a modern community-centric green cryptocurrency based on a proof-of-space-and-time consensus algorithm.

GreenDoge Blockchain Download GreenDoge blockchain GreenDoge is a modern community-centric green cryptocurrency based on a proof-of-space-and-time con

40 Sep 11, 2022
The (Python-based) mining software required for the Nintendo Switch mining project.

ntgbtminer - Nintendo Switch edition This is a version of ntgbtminer that works with the Nintendo Switch bitcoin miner. ntgbtminer ntgbtminer is a no

4 Jun 03, 2021
This program can encrypt and decrypt your files so that they can no longer be identified.

File_Cryptographer Table of Contents: About the Program Features Requirements Preview Credits Reach Me See Also About the Program: with this program,

Sina.f 6 Nov 20, 2022
Alpkunt 9 Sep 09, 2022
XMRiGUI is free and open-source crypto miner for Linux. It uses XMRig for mining and GTK3 for GUI.

XMRiGUI is free and open-source crypto miner for Linux. It uses XMRig for mining and GTK3 for GUI.

29 Jul 07, 2022
Message Encrypt and decrypt software // allows you to encrypt the secrete message and decrypt Another Encryption Message. |

Message-Encrypy-Decrypt-App Message Encrypt and decrypt software // allows you to encrypt the secrete message and decrypt Another Encryption Message.

Abdulrahman-Haji 2 Dec 16, 2021
😈 Shining is a tool that enables engineers to remotely pull smart contract code in multi-file situations.

👑 Shining 😈 Shining is a tool that enables engineers to remotely pull smart contract code in multi-file situations. Shining is the name of one of my

xxxeyJ 15 Jun 17, 2022
Python FFI bindings for libsecp256k1 (maintained)

secp256k1-py Python FFI bindings for libsecp256k1 (an experimental and optimized C library for EC operations on curve secp256k1). Previously maintaine

Rusty Russell 29 Dec 29, 2022
Atomkraft - Lightweight e2e testing for cosmos blockchains

Atomkraft End-to-end testing of Cosmos blockchains should be easy and reproducib

Informal Systems 57 Dec 16, 2022
A Docker image for plotting and farming the Chia™ cryptocurrency on one computer or across many.

An easy-to-use WebUI for crypto plotting and farming. Offers Plotman, MadMax, Chiadog, Bladebit, Farmr, and Forktools in a Docker container. Supports Chia, Cactus, Chives, Flax, Flora, HDDCoin, Maize

Guy Davis 328 Jan 01, 2023
In this repository there are two types of code files

encryption-decryption In this repository there are two types of code files Me Friend Code in the 'Me' file can use for encryption and Code in the 'Fri

Vicksura Dulhan Perera 1 Nov 22, 2021
Hide secret texts inside an image, optionally encrypt them with a password using AES-256.

Hide secret texts/messages inside an image. You can optionally encrypt your texts with a password using AES-256 before encoding into the image.

Teja Swaroop 97 Dec 29, 2022
Simple encryption-at-rest with key rotation support for Python.

keyring Simple encryption-at-rest with key rotation support for Python. N.B.: keyring is not for encrypting passwords--for that, you should use someth

Dann Luciano 1 Dec 23, 2021
Active github repos of all cryptocurrencies

This repo is to maintain the list of active repositories for all cryptocurrencies that https://codemask.org uses. The active list will be automaticall

CodeMask 5 May 20, 2022
Python Steganography data hiding in image

Python-Steganography Python Steganography data hiding in image data encryption and decryption im here you have to import stepic module 1.open CMD 2.ty

JehanKandy 10 Jul 13, 2022
Simple one-time pad (OTP) encryption

Introduction What you will make In this resource you will learn how to create and use an encryption technique known as the one-time pad. This method o

Rabih ND 6 Nov 06, 2022
A workshop to build an NFT smart contract on the polygon blockchain

Polygon NFT Workshop This is an interactive workshop that guides you through the steps to deploy an NFT smart contract on the Polygon blockchain. By t

Banjo Obayomi 56 Oct 14, 2022
A curated list for getting up to speed on crypto and decentralized networks

crypto reading list A curated list for getting up to speed on crypto and decentralized networks. The content on the toplevel page contains what we con

Jump Crypto 1.1k Jan 07, 2023
A simple python program to sign text using either the RSA or ISRSAC algorithm with GUI built using tkinter library.

Digital Signatures using ISRSAC Algorithm A simple python program to sign text using either the RSA or ISRSAC algorithm with GUI built using tkinter l

Vasu Mandhanya 3 Nov 15, 2022
Image AES256 crypt-decrypt

Image AES256 crypt-decrypt

Damian Panek 37 Nov 09, 2021