Skip to content

Instantly share code, notes, and snippets.

@kctam
kctam / generate_account.js
Created November 9, 2020 01:22
Algorand demonstration with JS SDK
const algosdk = require('algosdk');
let account = algosdk.generateAccount();
console.log("Account Address: ", account.addr);
let mn = algosdk.secretKeyToMnemonic(account.sk);
console.log("Account Mnemonic: ", mn);
@kctam
kctam / apiserver.js
Created August 24, 2020 01:52
Rewrite a sample implementation of API Server on Hyperledger Fabric v2.2
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
app.use(bodyParser.json());
// Setting for Hyperledger Fabric
const { Wallets, Gateway } = require('fabric-network');
const fs = require('fs');
const path = require('path');
@kctam
kctam / docker-compose-peer1org1.yaml
Created August 3, 2020 14:51
Docker Compose File for Bringing up peer1.org1.example.com
# Copyright IBM Corp. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#
version: '2'
volumes:
peer1.org1.example.com:
@kctam
kctam / terminalorg1
Created August 3, 2020 14:40
Terminal for Test Network
export CORE_PEER_TLS_ENABLED=true
export CORE_PEER_LOCALMSPID="Org1MSP"
export CORE_PEER_TLS_ROOTCERT_FILE=${PWD}/organizations/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt
export CORE_PEER_MSPCONFIGPATH=${PWD}/organizations/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp
export CORE_PEER_ADDRESS=localhost:7051
export PATH=$PATH:$PWD/../bin/
export FABRIC_CFG_PATH=$PWD/../config/
export ORDERER_CA=${PWD}/organizations/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem
@kctam
kctam / ca.cnf
Created July 15, 2020 08:08
Configuration for setting up RCA-ICA using openssl. Adopted from source: https://medium.com/ibm-garage/using-3rd-party-root-cas-in-hyperledger-fabric-3cafa91d1260
# OpenSSL root CA configuration file.
# Copy to `/root/ca/openssl.cnf`.
[ ca ]
# `man ca`
default_ca = CA_default
[ CA_default ]
# Directory and file locations.
dir = .
@kctam
kctam / 8_bringUpContainers.sh
Created July 10, 2020 03:12
Companion Guide for Fabric CA Operation Guide - script
docker-compose up -d peer1-org1 peer2-org1 peer1-org2 peer2-org2
sleep 5
configtxgen -profile OrgsOrdererGenesis -outputBlock /tmp/hyperledger/org0/orderer/genesis.block -channelID syschannel
sleep 5
configtxgen -profile OrgsChannel -outputCreateChannelTx /tmp/hyperledger/org0/orderer/channel.tx -channelID mychannel
sleep 5
docker-compose up -d orderer1-org0 cli-org1 cli-org2
@kctam
kctam / 7_enrollOrg2.sh
Created July 10, 2020 03:07
Companion Guide for Fabric CA Operation Guide - script
echo "Enroll Peer1"
# preparation
mkdir -p /tmp/hyperledger/org2/peer1/assets/ca
cp /tmp/hyperledger/org2/ca/admin/msp/cacerts/0-0-0-0-7055.pem /tmp/hyperledger/org2/peer1/assets/ca/org2-ca-cert.pem
mkdir -p /tmp/hyperledger/org2/peer1/assets/tls-ca
cp /tmp/hyperledger/tls-ca/admin/msp/cacerts/0-0-0-0-7052.pem /tmp/hyperledger/org2/peer1/assets/tls-ca/tls-ca-cert.pem
# for identity
@kctam
kctam / 6_enrollOrg1.sh
Created July 10, 2020 02:51
Companion Guide for Fabric CA Operation Guide - script
echo "Enroll Peer1"
# preparation
mkdir -p /tmp/hyperledger/org1/peer1/assets/ca
cp /tmp/hyperledger/org1/ca/admin/msp/cacerts/0-0-0-0-7054.pem /tmp/hyperledger/org1/peer1/assets/ca/org1-ca-cert.pem
mkdir -p /tmp/hyperledger/org1/peer1/assets/tls-ca
cp /tmp/hyperledger/tls-ca/admin/msp/cacerts/0-0-0-0-7052.pem /tmp/hyperledger/org1/peer1/assets/tls-ca/tls-ca-cert.pem
# for identity
@kctam
kctam / 5_enrollOrg0.sh
Created July 10, 2020 00:32
Companion Guide for Fabric CA Operation Guide - script
echo "Enroll Orderer"
# preparation
mkdir -p /tmp/hyperledger/org0/orderer/assets/ca
cp /tmp/hyperledger/org0/ca/admin/msp/cacerts/0-0-0-0-7053.pem /tmp/hyperledger/org0/orderer/assets/ca/org0-ca-cert.pem
mkdir -p /tmp/hyperledger/org0/orderer/assets/tls-ca
cp /tmp/hyperledger/tls-ca/admin/msp/cacerts/0-0-0-0-7052.pem /tmp/hyperledger/org0/orderer/assets/tls-ca/tls-ca-cert.pem
# for identity
@kctam
kctam / 4_rca_org2.sh
Created July 10, 2020 00:23
Companion Guide for Fabric CA Operation Guide - script
docker-compose up -d rca-org2
sleep 5
export FABRIC_CA_CLIENT_TLS_CERTFILES=/tmp/hyperledger/org2/ca/crypto/ca-cert.pem
export FABRIC_CA_CLIENT_HOME=/tmp/hyperledger/org2/ca/admin
fabric-ca-client enroll -d -u https://rca-org2-admin:rca-org2-adminpw@0.0.0.0:7055
sleep 5
fabric-ca-client register -d --id.name peer1-org2 --id.secret peer1PW --id.type peer -u https://0.0.0.0:7055