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
A python implementation of our standard object-oriented encryption package, shipped with most apps.

Encryption Manager (python edition) VerseGroup's native encryption manager adapted for python applications. Function Generate new set of private and p

Verse Group LLC 2 Oct 30, 2022
Smart-contracts - open sourcing our upcoming smart contracts for better security and transparency

Smart-contracts - open sourcing our upcoming smart contracts for better security and transparency

Rand Gallery 16 Jul 10, 2022
Python binding to the Networking and Cryptography (NaCl) library

PyNaCl: Python binding to the libsodium library PyNaCl is a Python binding to libsodium, which is a fork of the Networking and Cryptography library. T

Python Cryptographic Authority 941 Jan 04, 2023
Cryptocurrency with implementet Blockchain

Cryptocurrency with implementet Blockchain

Mario 1 Mar 24, 2022
A simple program written in python to convert: USD, EUR & BTC to BRL

CoinsPrice This is a simple program written in python to convert: USD EUR BTC to BRL, and I used an API to get coins price. Take a look at the window

Luiz Henrique 1 Feb 09, 2022
Gold(Gold) is a modern cryptocurrency built from scratch, designed to be efficient, decentralized, and secure

gold-blockchain (Gold) Gold(Gold) is a modern cryptocurrency built from scratch, designed to be efficient, decentralized, and secure. Here are some of

zcomputerwiz 3 Mar 09, 2022
Small utility to encrypt and decrypt messages

Safe Safe is a small utility to encrypt and decrypt messages using a pair of public and private keys. Installation You need to have GPG installed in y

Gustavo Eguez 2 Dec 21, 2021
Powerful Tool to encrypt and decrypt files using AES.

AEScryptor Tool Description Encrypt and Decrypt files with AES-128 (16bytes key). AES mode = CFB (cipher Feedback) security = super safe! Usage [1] Ch

5 Jan 12, 2022
A lightweight encryption library in python.

XCrypt About This was initially a project to prove that I could make a strong encryption but I decided to publish it so that the internet peoples coul

Anonymous 8 Sep 10, 2022
EncryptAGit - Encrypt Your Git Repos

EncryptAGit - Encrypt Your Git Repos

midnite_runr 25 Oct 06, 2022
Django-based Crypto Portfolio Tracker – keep an eye on Shiba Inu and other Crypto

Crypto Tracker 🐍 📈 – Central Portfolio Tracking Easy asset tracking – at a glance 🚀 Dashboard to centrally monitor current crypto portfolio develop

65 Jan 08, 2023
Alpkunt 9 Sep 09, 2022
This python module can analyse cryptocurrency news for any number of coins given and return a sentiment. Can be easily integrated with a Trading bot to keep an eye on the news.

Python script that analyses news headline or body sentiment and returns the overall media sentiment of any given coin. It can take multiple coins an

185 Dec 22, 2022
offline half-random brute force script for Ethereum private keys

eth200swinger offline half-random brute force script for Ethereum private keys, goes from the beginning to end of range and vice versa, saves any foun

2 Oct 06, 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
Audit of classmate's smart contract in blockchain seminar

Solidity-contract-audit Audit of classmate's smart contract in blockchain seminar Assignment: The task was to create a complete audit, including unit

smrza 0 Feb 04, 2022
Certbot is EFF's tool to obtain certs from Let's Encrypt and (optionally) auto-enable HTTPS on your server.

Certbot is EFF's tool to obtain certs from Let's Encrypt and (optionally) auto-enable HTTPS on your server. It can also act as a client for any other CA that uses the ACME protocol.

29.5k Dec 31, 2022
CertPy is a high level toolkit for generating x509 (e.g. SSL/TLS/HTTPS) certificates in Python.

CertPy CertPy is a high level toolkit for generating x509 (e.g. SSL/TLS/HTTPS) certificates in Python. Certificate “profiles” are implemented as Pytho

Ryan Castellucci 4 Feb 21, 2022
Quick and dirty script to fix MD5 hashes in poetry.lock file

fix-poetry-md5-hash Quick and dirty script to fix MD5 hashes in poetry.lock file. Usage: poetry run fix-poetry-md5-hash

2 Apr 20, 2022
Arithmos Cipher is a simple Cryptography that I created myself in Python

Arithmos Cipher is a simple Cryptography that I created myself in Python

LyQuid :3 3 Oct 19, 2022