#!/usr/bin/env bash ### ### arching-kaos-tools ### Tools to interact and build an Arching Kaos Infochain ### Copyright (C) 2021 - 2025 kaotisk ### ### This program is free software: you can redistribute it and/or modify ### it under the terms of the GNU General Public License as published by ### the Free Software Foundation, either version 3 of the License, or ### (at your option) any later version. ### ### This program is distributed in the hope that it will be useful, ### but WITHOUT ANY WARRANTY; without even the implied warranty of ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ### GNU General Public License for more details. ### ### You should have received a copy of the GNU General Public License ### along with this program. If not, see <http://www.gnu.org/licenses/>. ### ## ## ak-transactions <from> <to> <amount> ## fullprogrampath="$(realpath $0)" PROGRAM=$(basename $0) descriptionString="Transactions module" source $AK_LIBDIR/_ak_log source $AK_LIBDIR/_ak_script source $AK_LIBDIR/_ak_ipfs source $AK_LIBDIR/_ak_gpg source $AK_LIBDIR/_ak_zblock _ak_modules_transactions_main(){ _ak_log_info "$FROM_ADDRESS to $TO_ADDRESS value sent: $AMOUNT" cat > transaction_file <<EOF $FROM_ADDRESS $TO_ADDRESS $AMOUNT $FEE EOF TRANSACTION_FILE="transaction_file" FILE_IPFS_HASH=$(_ak_ipfs_add $TRANSACTION_FILE) SIGN_FILE=$TRANSACTION_FILE".asc" _ak_gpg_sign_detached $SIGN_FILE $TRANSACTION_FILE FILE_SIGNATURE=$(_ak_ipfs_add $SIGN_FILE) cat > data <<EOF { "timestamp":"$(date -u +%s)", "input":"$FROM_ADDRESS", "output":"$TO_ADDRESS", "amount":"$AMOUNT", "ipfs":"$FILE_IPFS_HASH", "detach":"$FILE_SIGNATURE" } EOF } if [ ! -z $3 ]; then PWD="$(pwd)" FROM_ADDRESS="$1" TO_ADDRESS="$2" AMOUNT="$3" _ak_modules_transactions_main cat $PWD/data | jq -M _ak_zblock_pack transaction/add $PWD/data else _ak_usage fi