diff --git a/.github/workflows/test-kubectl-plugin.yml b/.github/workflows/test-kubectl-plugin.yml index a45e03e1..ee77ef72 100644 --- a/.github/workflows/test-kubectl-plugin.yml +++ b/.github/workflows/test-kubectl-plugin.yml @@ -143,9 +143,8 @@ jobs: health { lameduck 5s } - rewrite name regex (.*)\.localho\.st host.ingress.internal + rewrite name regex (.*)\.localho\.st istio-ingressgateway.istio-system.svc.cluster.local hosts { - ${CLUSTER_IP} host.ingress.internal fallthrough } ready diff --git a/README-3.0.md b/README-3.0.md new file mode 100644 index 00000000..213584c4 --- /dev/null +++ b/README-3.0.md @@ -0,0 +1,785 @@ +--- +id: getting-started +title: Getting started +--- + +# Hyperledger Fabric Operator + +## Features + +- [x] Create certificates authorities (CA) +- [x] Create peers +- [x] Create ordering services +- [x] Create resources without manual provisioning of cryptographic material +- [x] Domain routing with SNI using Istio +- [x] Run chaincode as external chaincode in Kubernetes +- [x] Support Hyperledger Fabric 2.3+ +- [x] Managed genesis for Ordering services +- [x] E2E testing including the execution of chaincodes in KIND +- [x] Renewal of certificates + +## Stay Up-to-Date + +`hlf-operator` is currently in stable. Watch **releases** of this repository to be notified for future updates: + +![hlf-operator-star-github](https://user-images.githubusercontent.com/6862893/123808402-022aa800-d8f1-11eb-8df4-8a9552f126a2.gif) + +## Discord + +For discussions and questions, please join the Hyperledger Foundation Discord: + +[https://discord.com/invite/hyperledger](https://discord.com/invite/hyperledger) + +The channel is located under `BEVEL`, named [`bevel-operator-fabric`](https://discordapp.com/channels/905194001349627914/967823782712594442). + + +## Tutorial Videos + +Step by step video tutorials to setup hlf-operator in kubernetes + +[![Hyperledger Fabric on Kubernetes](https://img.youtube.com/vi/e04TcJHUI5M/0.jpg)](https://www.youtube.com/playlist?list=PLuAZTZDgj0csRQuNMY8wbYqOCpzggAuMo "Hyperledger Fabric on Kubernetes") + +## Hyperledger Meetup + +You can watch this video in order to see how to use it to deploy your own network: + +[![Hyperledger Fabric on Kubernetes](http://img.youtube.com/vi/namKDeJf5QI/0.jpg)](http://www.youtube.com/watch?v=namKDeJf5QI "Hyperledger Fabric on Kubernetes") + +## Sponsor + +| | | +| ----------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| ![kfs logo](https://avatars.githubusercontent.com/u/74511895?s=200&v=4) | If you want to design and deploy a secure Blockchain network based on the latest version of Hyperledger Fabric, feel free to contact dviejo@kungfusoftware.es or visit [https://kfs.es/blockchain](https://kfs.es/blockchain) | + +## Getting started + +# Tutorial + +Resources: +- [Hyperledger Fabric build ARM](https://www.polarsparc.com/xhtml/Hyperledger-ARM-Build.html) + +## Create Kubernetes Cluster + +To start deploying our red fabric we have to have a Kubernetes cluster. For this we will use KinD. + +Ensure you have these ports available before creating the cluster: +- 80 +- 443 + +If these ports are not available this tutorial will not work. + +```bash +cat << EOF > kind-config.yaml +kind: Cluster +apiVersion: kind.x-k8s.io/v1alpha4 +nodes: +- role: control-plane + image: kindest/node:v1.25.8 + extraPortMappings: + - containerPort: 30949 + hostPort: 80 + - containerPort: 30950 + hostPort: 443 +EOF + +kind create cluster --config=./kind-config.yaml + +``` + +## Install Kubernetes operator + +In this step we are going to install the kubernetes operator for Fabric, this will install: + +- CRD (Custom Resource Definitions) to deploy Certification Fabric Peers, Orderers and Authorities +- Deploy the program to deploy the nodes in Kubernetes + +To install helm: [https://helm.sh/docs/intro/install/](https://helm.sh/docs/intro/install/) + +```bash +helm repo add kfs https://kfsoftware.github.io/hlf-helm-charts --force-update + +helm install hlf-operator --version=1.9.2 -- kfs/hlf-operator +``` + + +### Install the Kubectl plugin + +To install the kubectl plugin, you must first install Krew: +[https://krew.sigs.k8s.io/docs/user-guide/setup/install/](https://krew.sigs.k8s.io/docs/user-guide/setup/install/) + +Afterwards, the plugin can be installed with the following command: + +```bash +kubectl krew install hlf +``` + +### Install Istio + +Install Istio binaries on the machine: +```bash +curl -L https://istio.io/downloadIstio | sh - +``` + +Install Istio on the Kubernetes cluster: + +```bash + +kubectl create namespace istio-system + +istioctl operator init + +kubectl apply -f - < "metadata.json" +{ + "type": "ccaas", + "label": "${CHAINCODE_LABEL}" +} +METADATA-EOF +## chaincode as a service +``` + +### Prepare connection file + +```bash +cat > "connection.json" < ordering service node connection timeout + connTimeout: 3s + + # It sets the delivery service maximal delay between consecutive retries + reConnectBackoffThreshold: 3600s + + # A list of orderer endpoint addresses which should be overridden + # when found in channel configurations. + addressOverrides: + + - caCertsFile: /etc/hyperledger/fabric/peer-custom-config/orderer01.orderer.dev-galachain.gala.internal.yaml + from: orderer01.orderer.dev-galachain.gala.internal:443 + to: orderer01.orderer.dev.galachain.com:443 + - caCertsFile: /etc/hyperledger/fabric/peer-custom-config/orderer02.orderer.dev-galachain.gala.internal.yaml + from: orderer02.orderer.dev-galachain.gala.internal:443 + to: orderer02.orderer.dev.galachain.com:443 + - caCertsFile: /etc/hyperledger/fabric/peer-custom-config/orderer03.orderer.dev-galachain.gala.internal.yaml + from: orderer03.orderer.dev-galachain.gala.internal:443 + to: orderer03.orderer.dev.galachain.com:443 + + # Type for the local MSP - by default it's of type bccsp + localMspType: bccsp + + # Used with Go profiling tools only in none production environment. In + # production, it should be disabled (eg enabled: false) + profile: + enabled: false + listenAddress: 0.0.0.0:6060 + + # Handlers defines custom handlers that can filter and mutate + # objects passing within the peer, such as: + # Auth filter - reject or forward proposals from clients + # Decorators - append or mutate the chaincode input passed to the chaincode + # Endorsers - Custom signing over proposal response payload and its mutation + # Valid handler definition contains: + # - A name which is a factory method name defined in + # core/handlers/library/library.go for statically compiled handlers + # - library path to shared object binary for pluggable filters + # Auth filters and decorators are chained and executed in the order that + # they are defined. For example: + # authFilters: + # - + # name: FilterOne + # library: /opt/lib/filter.so + # - + # name: FilterTwo + # decorators: + # - + # name: DecoratorOne + # - + # name: DecoratorTwo + # library: /opt/lib/decorator.so + # Endorsers are configured as a map that its keys are the endorsement system chaincodes that are being overridden. + # Below is an example that overrides the default ESCC and uses an endorsement plugin that has the same functionality + # as the default ESCC. + # If the 'library' property is missing, the name is used as the constructor method in the builtin library similar + # to auth filters and decorators. + # endorsers: + # escc: + # name: DefaultESCC + # library: /etc/hyperledger/fabric/plugin/escc.so + handlers: + authFilters: + - + name: DefaultAuth + - + name: ExpirationCheck # This filter checks identity x509 certificate expiration + decorators: + - + name: DefaultDecorator + endorsers: + escc: + name: DefaultEndorsement + library: + validators: + vscc: + name: DefaultValidation + library: + + # library: /etc/hyperledger/fabric/plugin/escc.so + # Number of goroutines that will execute transaction validation in parallel. + # By default, the peer chooses the number of CPUs on the machine. Set this + # variable to override that choice. + # NOTE: overriding this value might negatively influence the performance of + # the peer so please change this value only if you know what you're doing + validatorPoolSize: + + # The discovery service is used by clients to query information about peers, + # such as - which peers have joined a certain channel, what is the latest + # channel config, and most importantly - given a chaincode and a channel, + # what possible sets of peers satisfy the endorsement policy. + discovery: + enabled: true + # Whether the authentication cache is enabled or not. + authCacheEnabled: true + # The maximum size of the cache, after which a purge takes place + authCacheMaxSize: 1000 + # The proportion (0 to 1) of entries that remain in the cache after the cache is purged due to overpopulation + authCachePurgeRetentionRatio: 0.75 + # Whether to allow non-admins to perform non channel scoped queries. + # When this is false, it means that only peer admins can perform non channel scoped queries. + orgMembersAllowedAccess: false + + # Limits is used to configure some internal resource limits. + limits: + # Concurrency limits the number of concurrently running requests to a service on each peer. + # Currently this option is only applied to endorser service and deliver service. + # When the property is missing or the value is 0, the concurrency limit is disabled for the service. + concurrency: + # endorserService limits concurrent requests to endorser service that handles chaincode deployment, query and invocation, + # including both user chaincodes and system chaincodes. + endorserService: 2500 + # deliverService limits concurrent event listeners registered to deliver service for blocks and transaction events. + deliverService: 2500 + + ############################################################################### + # + # VM section + # + ############################################################################### + vm: + + # Endpoint of the vm management system. For docker can be one of the following in general + # unix:///var/run/docker.sock + # http://localhost:2375 + # https://localhost:2376 + endpoint: "" + + # settings for docker vms + docker: + tls: + enabled: false + ca: + file: docker/ca.crt + cert: + file: docker/tls.crt + key: + file: docker/tls.key + + # Enables/disables the standard out/err from chaincode containers for + # debugging purposes + attachStdout: false + + # Parameters on creating docker container. + # Container may be efficiently created using ipam & dns-server for cluster + # NetworkMode - sets the networking mode for the container. Supported + # standard values are: `host`(default),`bridge`,`ipvlan`,`none`. + # Dns - a list of DNS servers for the container to use. + # Note: `Privileged` `Binds` `Links` and `PortBindings` properties of + # Docker Host Config are not supported and will not be used if set. + # LogConfig - sets the logging driver (Type) and related options + # (Config) for Docker. For more info, + # https://docs.docker.com/engine/admin/logging/overview/ + # Note: Set LogConfig using Environment Variables is not supported. + hostConfig: + NetworkMode: host + Dns: + # - 192.168.0.1 + LogConfig: + Type: json-file + Config: + max-size: "50m" + max-file: "5" + Memory: 2147483648 + + ############################################################################### + # + # Chaincode section + # + ############################################################################### + chaincode: + + # The id is used by the Chaincode stub to register the executing Chaincode + # ID with the Peer and is generally supplied through ENV variables + # the `path` form of ID is provided when installing the chaincode. + # The `name` is used for all other requests and can be any string. + id: + path: + name: + + # Generic builder environment, suitable for most chaincode types + builder: $(DOCKER_NS)/fabric-ccenv:$(TWO_DIGIT_VERSION) + + pull: false + + golang: + # golang will never need more than baseos + runtime: $(DOCKER_NS)/fabric-baseos:$(TWO_DIGIT_VERSION) + + # whether or not golang chaincode should be linked dynamically + dynamicLink: false + + java: + # This is an image based on java:openjdk-8 with addition compiler + # tools added for java shim layer packaging. + # This image is packed with shim layer libraries that are necessary + # for Java chaincode runtime. + runtime: $(DOCKER_NS)/fabric-javaenv:$(TWO_DIGIT_VERSION) + + node: + # This is an image based on node:$(NODE_VER)-alpine + runtime: $(DOCKER_NS)/fabric-nodeenv:$(TWO_DIGIT_VERSION) + + # List of directories to treat as external builders and launchers for + # chaincode. The external builder detection processing will iterate over the + # builders in the order specified below. + externalBuilders: + - name: ccaas_builder + path: /opt/hyperledger/ccaas_builder + propagateEnvironment: + - CHAINCODE_AS_A_SERVICE_BUILDER_CONFIG + # The maximum duration to wait for the chaincode build and install process + # to complete. + installTimeout: 8m0s + + # Timeout duration for starting up a container and waiting for Register + # to come through. + startuptimeout: 5m0s + + # Timeout duration for Invoke and Init calls to prevent runaway. + # This timeout is used by all chaincodes in all the channels, including + # system chaincodes. + # Note that during Invoke, if the image is not available (e.g. being + # cleaned up when in development environment), the peer will automatically + # build the image, which might take more time. In production environment, + # the chaincode image is unlikely to be deleted, so the timeout could be + # reduced accordingly. + executetimeout: 30s + + # There are 2 modes: "dev" and "net". + # In dev mode, user runs the chaincode after starting peer from + # command line on local machine. + # In net mode, peer will run chaincode in a docker container. + mode: net + + # keepalive in seconds. In situations where the communication goes through a + # proxy that does not support keep-alive, this parameter will maintain connection + # between peer and chaincode. + # A value <= 0 turns keepalive off + keepalive: 0 + + # enabled system chaincodes + system: + _lifecycle: enable + cscc: enable + lscc: enable + escc: enable + vscc: enable + qscc: enable + + # Logging section for the chaincode container + logging: + # Default level for all loggers within the chaincode container + level: info + # Override default level for the 'shim' logger + shim: warning + # Format for the chaincode container logs + format: '%{color}%{time:2006-01-02 15:04:05.000 MST} [%{module}] %{shortfunc} -> %{level:.4s} %{id:03x}%{color:reset} %{message}' + + ############################################################################### + # + # Ledger section - ledger configuration encompasses both the blockchain + # and the state + # + ############################################################################### + ledger: + + blockchain: + snapshots: + rootDir: /var/hyperledger/production/snapshots + + state: + # stateDatabase - options are "goleveldb", "CouchDB" + # goleveldb - default state database stored in goleveldb. + # CouchDB - store state database in CouchDB + stateDatabase: goleveldb + # Limit on the number of records to return per query + totalQueryLimit: 100000 + couchDBConfig: + # It is recommended to run CouchDB on the same server as the peer, and + # not map the CouchDB container port to a server port in docker-compose. + # Otherwise proper security must be provided on the connection between + # CouchDB client (on the peer) and server. + couchDBAddress: 127.0.0.1:5984 + # This username must have read and write authority on CouchDB + username: + # The password is recommended to pass as an environment variable + # during start up (eg CORE_LEDGER_STATE_COUCHDBCONFIG_PASSWORD). + # If it is stored here, the file must be access control protected + # to prevent unintended users from discovering the password. + password: + # Number of retries for CouchDB errors + maxRetries: 3 + # Number of retries for CouchDB errors during peer startup. + # The delay between retries doubles for each attempt. + # Default of 10 retries results in 11 attempts over 2 minutes. + maxRetriesOnStartup: 10 + # CouchDB request timeout (unit: duration, e.g. 20s) + requestTimeout: 35s + # Limit on the number of records per each CouchDB query + # Note that chaincode queries are only bound by totalQueryLimit. + # Internally the chaincode may execute multiple CouchDB queries, + # each of size internalQueryLimit. + internalQueryLimit: 1000 + # Limit on the number of records per CouchDB bulk update batch + maxBatchUpdateSize: 1000 + # Warm indexes after every N blocks. + # This option warms any indexes that have been + # deployed to CouchDB after every N blocks. + # A value of 1 will warm indexes after every block commit, + # to ensure fast selector queries. + # Increasing the value may improve write efficiency of peer and CouchDB, + # but may degrade query response time. + warmIndexesAfterNBlocks: 1 + # Create the _global_changes system database + # This is optional. Creating the global changes database will require + # additional system resources to track changes and maintain the database + createGlobalChangesDB: false + # CacheSize denotes the maximum mega bytes (MB) to be allocated for the in-memory state + # cache. Note that CacheSize needs to be a multiple of 32 MB. If it is not a multiple + # of 32 MB, the peer would round the size to the next multiple of 32 MB. + # To disable the cache, 0 MB needs to be assigned to the cacheSize. + cacheSize: 64 + + history: + # enableHistoryDatabase - options are true or false + # Indicates if the history of key updates should be stored. + # All history 'index' will be stored in goleveldb, regardless if using + # CouchDB or alternate database for the state. + enableHistoryDatabase: true + + pvtdataStore: + # the maximum db batch size for converting + # the ineligible missing data entries to eligible missing data entries + collElgProcMaxDbBatchSize: 5000 + # the minimum duration (in milliseconds) between writing + # two consecutive db batches for converting the ineligible missing data entries to eligible missing data entries + collElgProcDbBatchesInterval: 1000 + + ############################################################################### + # + # Operations section + # + ############################################################################### + operations: + # host and port for the operations server + listenAddress: 127.0.0.1:9443 + + # TLS configuration for the operations endpoint + tls: + # TLS enabled + enabled: false + + # path to PEM encoded server certificate for the operations server + cert: + file: + + # path to PEM encoded server key for the operations server + key: + file: + + # most operations service endpoints require client authentication when TLS + # is enabled. clientAuthRequired requires client certificate authentication + # at the TLS layer to access all resources. + clientAuthRequired: false + + # paths to PEM encoded ca certificates to trust for client authentication + clientRootCAs: + files: [] + + ############################################################################### + # + # Metrics section + # + ############################################################################### + metrics: + # metrics provider is one of statsd, prometheus, or disabled + provider: disabled + + # statsd configuration + statsd: + # network type: tcp or udp + network: udp + + # statsd server address + address: 127.0.0.1:8125 + + # the interval at which locally cached counters and gauges are pushed + # to statsd; timings are pushed immediately + writeInterval: 10s + + # prefix is prepended to all emitted statsd metrics + prefix: +--- +# Source: hlf-peer/templates/configmap--peer.yaml +apiVersion: v1 +kind: ConfigMap +metadata: + name: peer01-championsarena--peer + labels: + app: hlf-peer + heritage: "Helm" + release: "hlf-cc-dev" + chart: hlf-peer-1.3.0 +data: + CORE_PEER_ID: hlf-cc-dev + CORE_PEER_NETWORKID: hlf-cc-dev-nid + CORE_PEER_ADDRESSAUTODETECT: "true" + # If we have an ingress, we set hostname to it + CORE_PEER_ADDRESS: peer01-championsarena.curator.dev.galachain.com:443 + CORE_PEER_GOSSIP_EXTERNALENDPOINT: "peer01-championsarena.curator.dev.galachain.com:443" + CORE_PEER_GOSSIP_BOOTSTRAP: "" + CORE_PEER_GOSSIP_ENDPOINT: "peer01-championsarena.curator.dev.galachain.com:443" + CORE_PEER_LISTENADDRESS: 0.0.0.0:7051 + CORE_PEER_CHAINCODELISTENADDRESS: 0.0.0.0:7052 + CORE_PEER_EVENTS_ADDRESS: 0.0.0.0:7053 + CORE_PEER_COMMITTER_ENABLED: "true" + CORE_PEER_PROFILE_ENABLED: "true" + CORE_PEER_DISCOVERY_PERIOD: 60s + CORE_PEER_DISCOVERY_TOUCHPERIOD: 60s + CORE_PEER_LOCALMSPID: "CuratorOrg" + CORE_PEER_MSPCONFIGPATH: /var/hyperledger/msp + ############## + # Operations # + ############## + CORE_OPERATIONS_TLS_ENABLED: "false" + CORE_OPERATIONS_TLS_KEY_FILE: "/var/hyperledger/tls/operations/pair/tls.key" + CORE_OPERATIONS_TLS_CERT_FILE: "/var/hyperledger/tls/operations/pair/tls.crt" + CORE_OPERATIONS_TLS_CLIENTAUTHREQUIRED: "false" + CORE_OPERATIONS_LISTENADDRESS: "0.0.0.0:9443" + CORE_OPERATIONS_TLS_CLIENTROOTCAS_FILES: "/var/hyperledger/tls/server/cert/cacert.pem" + ############## + # Events # + ############## + CORE_PEER_EVENTS_ADDRESS: "0.0.0.0:7053" + ############## + # Metrics # + ############## + CORE_METRICS_PROVIDER: "prometheus" + # Logging # + ########### + #CORE_LOGGING_LEVEL: "info" + FABRIC_LOGGING_SPEC: "info" + CORE_LOGGING_PEER: "info" + CORE_LOGGING_CAUTHDSL: "info" + CORE_LOGGING_GOSSIP: "info" + CORE_LOGGING_LEDGER: "info" + CORE_LOGGING_MSP: "info" + CORE_LOGGING_POLICIES: "info" + CORE_LOGGING_GRPC: "info" + ########## + # Gossip # + ########## + + CORE_PEER_GOSSIP_ORGLEADER: "true" + CORE_PEER_GOSSIP_USELEADERELECTION: "false" + ########## + # TLS # + ########## + CORE_PEER_TLS_ENABLED: "true" + CORE_PEER_TLS_CERT_FILE: "/var/hyperledger/tls/server/pair/tls.crt" + CORE_PEER_TLS_KEY_FILE: "/var/hyperledger/tls/server/pair/tls.key" + CORE_PEER_TLS_ROOTCERT_FILE: "/var/hyperledger/tls/server/cert/cacert.pem" + CORE_PEER_TLS_CLIENTAUTHREQUIRED: "false" + # This is fixed prior to starting the peer + CORE_PEER_TLS_CLIENTROOTCAS_FILES: "/var/hyperledger/tls/client/cert/*" + CORE_PEER_TLS_CLIENTCERT_FILE: "/var/hyperledger/tls/client/pair/tls.crt" + CORE_PEER_TLS_CLIENTKEY_FILE: "/var/hyperledger/tls/client/pair/tls.key" + CORE_LEDGER_STATE_STATEDATABASE: "goleveldb" + # Containers in the same pod share the host + PEER_CFG_PATH: /var/hyperledger/config + FABRIC_CFG_PATH: /var/hyperledger/fabric_cfg + ADMIN_MSP_PATH: /var/hyperledger/admin_msp + ORD_TLS_PATH: /var/hyperledger/tls/ord/cert +--- +# Source: hlf-peer/templates/pvc.yaml +kind: PersistentVolumeClaim +apiVersion: v1 +metadata: + name: peer01-championsarena + labels: + app: hlf-peer + heritage: "Helm" + release: "hlf-cc-dev" + chart: hlf-peer-1.3.0 +spec: + accessModes: + - "ReadWriteOnce" + resources: + requests: + storage: "5Gi" + storageClassName: "ebs-sc" +--- +# Source: hlf-peer/templates/clusterrole.yaml +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: peer01-championsarena + labels: + app: hlf-peer + heritage: "Helm" + release: "hlf-cc-dev" + chart: hlf-peer-1.3.0 +rules: + - apiGroups: + - "" + - extensions + resources: + - pods/status + - pods/log + verbs: + - create + - get + - list + - update + - watch + - patch + - apiGroups: + - "" + - extensions + resources: + - pods + verbs: + - get + - list + - watch + - create + - delete +--- +# Source: hlf-peer/templates/clusterrolebinding.yaml +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: peer01-championsarena-curator + namespace: curator + labels: + app: hlf-peer + heritage: "Helm" + release: "hlf-cc-dev" + chart: hlf-peer-1.3.0 +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: peer01-championsarena +subjects: + - kind: ServiceAccount + name: peer01-championsarena + namespace: curator +--- +# Source: hlf-peer/templates/service-fs.yaml +apiVersion: v1 +kind: Service +metadata: + name: peer01-championsarena-fs + labels: + app: hlf-peer + heritage: "Helm" + release: "hlf-cc-dev" + chart: hlf-peer-1.3.0 +spec: + type: ClusterIP + ports: + - port: 8080 + targetPort: 8080 + protocol: TCP + selector: + app: hlf-peer + release: hlf-cc-dev +--- +# Source: hlf-peer/templates/deployment.yaml +apiVersion: apps/v1 +kind: Deployment +metadata: + name: peer01-championsarena + labels: + app: hlf-peer + heritage: "Helm" + release: "hlf-cc-dev" + chart: hlf-peer-1.3.0 +spec: + replicas: 1 + selector: + matchLabels: + app: hlf-peer + release: hlf-cc-dev + # Ensure we allow our pod to be unavailable, so we can upgrade + strategy: + type: Recreate + template: + metadata: + labels: + checksum/configmap--peer: 358ec8e87fd160bad3d5dd5a3bf98f3997153912d4c7d61df84dbed8dd14 + checksum/configmap--peer--core: 58c46f4bb190ba0a640a7a1397c57f2754d5157dc2fdf67fcd98a0758d1a + checksum/config-ou: 855b4ed8f6f780bbc381b4cd2f2b7a2baebca6b9b8dfa7626421f242481d + checksum/secret--couchdb: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852 + checksum/secret--peer-idcert: 235c6a40a9e31fd79cc5693d273efc1db643ab3c278d3562fcb85cb39af0 + checksum/secret--peer-idkey: 9c2fbcfaccf4ebdab03f9e5cb4b3a6c725ce6e41a877c30e64b67df4d344 + checksum/secret--peer-ops-tls: e62ba10281a98b20e8b278fbed5383ce2dc7a5d3c4aa73dbb46f10676531 + checksum/secret--peer-tls: 6d1b97940bb671f919486e7ac2ff49f1b51ea1abb4eab0b1daa4ce999314 + checksum/secret--peerorg-cacert: df2f70dd06407159e9ee4c8ff667adb603fadd16eea2d53aea5d4c037d92 + checksum/secret--peerorg-intcacert: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852 + checksum/secret--peerorg-tlsintcacert: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852 + checksum/secret--peerorg-tlsrootcert: 97ae337d2f86d68fb916751ab475a4025275f7604b303ca55e1a6d009c61 + checksum/secret--tlsclientrootcert: 93672b562d36441bff05470ecea7bfe140846255720201ee9515a4e32b3e + app: hlf-peer + heritage: "Helm" + release: "hlf-cc-dev" + chart: hlf-peer-1.3.0 + component: peer + mspId: CuratorOrg + annotations: + ad.datadoghq.com/peer.checks: | + { + "openmetrics": { + "instances": [ + { + "openmetrics_endpoint": "http://%%host%%:9443/metrics", + "namespace": "peer", + "metrics": [".*"] + } + ] + } + } + spec: + serviceAccountName: peer01-championsarena + hostAliases: + null + volumes: +# range through .Values.volumes + - name: data + persistentVolumeClaim: + claimName: peer01-championsarena + - name: peerconfig + configMap: + name: peer01-championsarena--peer--core + - name: id-cert + secret: + secretName: peer01-championsarena-idcert + - name: id-key + secret: + secretName: peer01-championsarena-idkey + - name: cacert + secret: + secretName: peer01-championsarena-cacert + - name: tls-clientrootcert + secret: + secretName: peer01-championsarena--tlsclientrootcerts + - name: nodeou + configMap: + name: 'peer01-championsarena-nodeou' + items: + - key: 'config.yaml' + path: 'config.yaml' + - name: tls + secret: + secretName: "peer01-championsarena-tls" + - name: tls-ops + secret: + secretName: "peer01-championsarena-tls-ops" + - name: tls-rootcert + secret: + secretName: "peer01-championsarena-tlsrootcert" + - name: tls-client + secret: + secretName: "peer01-championsarena-tls" + containers: + + - name: peer + image: "hyperledger/fabric-peer:2.5.5" + imagePullPolicy: IfNotPresent + ports: + - name: request + containerPort: 7051 + protocol: TCP + - name: event + containerPort: 7053 + protocol: TCP + - name: operations + containerPort: 9443 + protocol: TCP + livenessProbe: + successThreshold: 1 + failureThreshold: 3 + timeoutSeconds: 5 + httpGet: + port: 9443 + path: /healthz + initialDelaySeconds: 5 + periodSeconds: 5 + readinessProbe: + httpGet: + port: 9443 + path: /healthz + initialDelaySeconds: 5 + failureThreshold: 3 + successThreshold: 1 + periodSeconds: 5 + command: + - /bin/sh + - -c + - | + echo "\033[0;31m peer node initialization \033[0m" + # To avoid having separate secrets for CouchDB and HLF + export CORE_LEDGER_STATE_COUCHDBCONFIG_USERNAME=$COUCHDB_USER + export CORE_LEDGER_STATE_COUCHDBCONFIG_PASSWORD=$COUCHDB_PASSWORD + + while [ ! -d ${CORE_PEER_MSPCONFIGPATH}/signcerts ]; + do + echo "\033[0;31m ${CORE_PEER_MSPCONFIGPATH}/signcerts directory must exist \033[0m" + sleep 60 + done + if [ ! -d ${FABRIC_CFG_PATH} ] + then + mkdir -p ${FABRIC_CFG_PATH} + cp -r /etc/hyperledger/fabric/core.yaml ${FABRIC_CFG_PATH} + ls ${FABRIC_CFG_PATH} + fi + + + echo ">\033[0;35m peer node start \033[0m" + peer node start + # sleep 6000000 + + env: + - name: FABRIC_LOGGING_FORMAT + value: json + envFrom: + - configMapRef: + name: peer01-championsarena--peer + volumeMounts: +# range volumeMounts + - name: peerconfig + mountPath: /var/hyperledger/fabric_cfg + - mountPath: /var/hyperledger + name: data + - mountPath: /var/hyperledger/msp/signcerts + name: id-cert + - mountPath: /var/hyperledger/msp/keystore + name: id-key + - mountPath: /var/hyperledger/msp/cacerts + name: cacert + - mountPath: /var/hyperledger/admin_msp/cacerts + + name: cacert + - mountPath: /var/hyperledger/msp/tlscacerts + name: tls-rootcert + - mountPath: /var/hyperledger/msp/config.yaml + name: nodeou + subPath: config.yaml + - mountPath: /var/hyperledger/tls/client/pair + name: tls-client + - mountPath: /var/hyperledger/tls/client/cert + name: tls-clientrootcert + - mountPath: /var/hyperledger/tls/server/pair + name: tls + - mountPath: /var/hyperledger/tls/operations/pair + name: tls-ops + - mountPath: /var/hyperledger/tls/server/cert + name: tls-rootcert + resources: + limits: + memory: 512Mi + requests: + cpu: 100m + memory: 128Mi + affinity: + ## This affinity is required to ensure reasonable ledger access speeds + podAntiAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - podAffinityTerm: + labelSelector: + matchLabels: + app: hlf-peer + mspId: CuratorOrg + topologyKey: kubernetes.io/hostname + weight: 100 +--- +# Source: hlf-peer/templates/traefikroute.yaml +apiVersion: traefik.containo.us/v1alpha1 +kind: IngressRouteTCP +metadata: + name: peer01-championsarena +spec: + + + entryPoints: + + - websecure + + routes: + - match: HostSNI(`peer01-championsarena.curator.dev.galachain.com`) + services: + - name: peer01-championsarena + port: 7051 + + tls: + passthrough: true diff --git a/code.tar.gz b/code.tar.gz new file mode 100644 index 00000000..fa1255a4 Binary files /dev/null and b/code.tar.gz differ diff --git a/connection.json b/connection.json new file mode 100644 index 00000000..4b98d7af --- /dev/null +++ b/connection.json @@ -0,0 +1,5 @@ +{ + "address": "asset:7052", + "dial_timeout": "10s", + "tls_required": false +} diff --git a/demo.json b/demo.json new file mode 100644 index 00000000..ea108299 --- /dev/null +++ b/demo.json @@ -0,0 +1,714 @@ +{ + "channel_group": { + "groups": { + "Application": { + "groups": { + "Org1MSP": { + "groups": {}, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "Org1MSP", + "role": "ADMIN" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Endorsement": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "Org1MSP", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "Org1MSP", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "Org1MSP", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + } + }, + "values": { + "AnchorPeers": { + "mod_policy": "Admins", + "value": { + "anchor_peers": [ + { + "host": "org1-peer0", + "port": 7051 + } + ] + }, + "version": "0" + }, + "MSP": { + "mod_policy": "Admins", + "value": { + "config": { + "admins": [], + "crypto_config": { + "identity_identifier_hash_function": "", + "signature_hash_family": "" + }, + "fabric_node_ous": { + "admin_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNQakNDQWVXZ0F3SUJBZ0lRRWxnbFd0dW1QSUJzLy9lS0tRZjVoREFLQmdncWhrak9QUVFEQWpCcU1Rc3cKQ1FZRFZRUUdFd0pGVXpFUk1BOEdBMVVFQnhNSVFXeHBZMkZ1ZEdVeEVUQVBCZ05WQkFrVENFRnNhV05oYm5SbApNUmt3RndZRFZRUUtFeEJMZFc1bklFWjFJRk52Wm5SM1lYSmxNUTB3Q3dZRFZRUUxFd1JVWldOb01Rc3dDUVlEClZRUURFd0pqWVRBZUZ3MHlNekV5TWpreU1UTTFNVEphRncwek16RXlNekF5TVRNMU1USmFNR294Q3pBSkJnTlYKQkFZVEFrVlRNUkV3RHdZRFZRUUhFd2hCYkdsallXNTBaVEVSTUE4R0ExVUVDUk1JUVd4cFkyRnVkR1V4R1RBWApCZ05WQkFvVEVFdDFibWNnUm5VZ1UyOW1kSGRoY21VeERUQUxCZ05WQkFzVEJGUmxZMmd4Q3pBSkJnTlZCQU1UCkFtTmhNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVhTzNzWFJhYWNKd29MQzhDajNMRU5sTnIKVDBlMUpMcGVDZng0cERDNkxIcGp5VzRLSXpNdDUrdFJoREdKNG9PaE1vMjhMVEg4YzZ3VXIvb1hjU2xUSDZOdApNR3N3RGdZRFZSMFBBUUgvQkFRREFnR21NQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUZCUWNECkFUQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01Da0dBMVVkRGdRaUJDQUxPS2ZSWTloRDlqR2YxekhYOUZoVFJpZkQKaHM5UWE5eUltZnErYXBlaDB6QUtCZ2dxaGtqT1BRUURBZ05IQURCRUFpQVdFNGJ6YW51dktvQnlESmFITXhTcwptam5rMGRscXBJc0grb3BUSzErRjdRSWdXenBwN3hia256N0NMZWpLYWkwQWtxS2JMczlLTXhyK2NNM1RmU3lLCnRXND0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "admin" + }, + "client_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNQakNDQWVXZ0F3SUJBZ0lRRWxnbFd0dW1QSUJzLy9lS0tRZjVoREFLQmdncWhrak9QUVFEQWpCcU1Rc3cKQ1FZRFZRUUdFd0pGVXpFUk1BOEdBMVVFQnhNSVFXeHBZMkZ1ZEdVeEVUQVBCZ05WQkFrVENFRnNhV05oYm5SbApNUmt3RndZRFZRUUtFeEJMZFc1bklFWjFJRk52Wm5SM1lYSmxNUTB3Q3dZRFZRUUxFd1JVWldOb01Rc3dDUVlEClZRUURFd0pqWVRBZUZ3MHlNekV5TWpreU1UTTFNVEphRncwek16RXlNekF5TVRNMU1USmFNR294Q3pBSkJnTlYKQkFZVEFrVlRNUkV3RHdZRFZRUUhFd2hCYkdsallXNTBaVEVSTUE4R0ExVUVDUk1JUVd4cFkyRnVkR1V4R1RBWApCZ05WQkFvVEVFdDFibWNnUm5VZ1UyOW1kSGRoY21VeERUQUxCZ05WQkFzVEJGUmxZMmd4Q3pBSkJnTlZCQU1UCkFtTmhNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVhTzNzWFJhYWNKd29MQzhDajNMRU5sTnIKVDBlMUpMcGVDZng0cERDNkxIcGp5VzRLSXpNdDUrdFJoREdKNG9PaE1vMjhMVEg4YzZ3VXIvb1hjU2xUSDZOdApNR3N3RGdZRFZSMFBBUUgvQkFRREFnR21NQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUZCUWNECkFUQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01Da0dBMVVkRGdRaUJDQUxPS2ZSWTloRDlqR2YxekhYOUZoVFJpZkQKaHM5UWE5eUltZnErYXBlaDB6QUtCZ2dxaGtqT1BRUURBZ05IQURCRUFpQVdFNGJ6YW51dktvQnlESmFITXhTcwptam5rMGRscXBJc0grb3BUSzErRjdRSWdXenBwN3hia256N0NMZWpLYWkwQWtxS2JMczlLTXhyK2NNM1RmU3lLCnRXND0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "client" + }, + "enable": true, + "orderer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNQakNDQWVXZ0F3SUJBZ0lRRWxnbFd0dW1QSUJzLy9lS0tRZjVoREFLQmdncWhrak9QUVFEQWpCcU1Rc3cKQ1FZRFZRUUdFd0pGVXpFUk1BOEdBMVVFQnhNSVFXeHBZMkZ1ZEdVeEVUQVBCZ05WQkFrVENFRnNhV05oYm5SbApNUmt3RndZRFZRUUtFeEJMZFc1bklFWjFJRk52Wm5SM1lYSmxNUTB3Q3dZRFZRUUxFd1JVWldOb01Rc3dDUVlEClZRUURFd0pqWVRBZUZ3MHlNekV5TWpreU1UTTFNVEphRncwek16RXlNekF5TVRNMU1USmFNR294Q3pBSkJnTlYKQkFZVEFrVlRNUkV3RHdZRFZRUUhFd2hCYkdsallXNTBaVEVSTUE4R0ExVUVDUk1JUVd4cFkyRnVkR1V4R1RBWApCZ05WQkFvVEVFdDFibWNnUm5VZ1UyOW1kSGRoY21VeERUQUxCZ05WQkFzVEJGUmxZMmd4Q3pBSkJnTlZCQU1UCkFtTmhNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVhTzNzWFJhYWNKd29MQzhDajNMRU5sTnIKVDBlMUpMcGVDZng0cERDNkxIcGp5VzRLSXpNdDUrdFJoREdKNG9PaE1vMjhMVEg4YzZ3VXIvb1hjU2xUSDZOdApNR3N3RGdZRFZSMFBBUUgvQkFRREFnR21NQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUZCUWNECkFUQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01Da0dBMVVkRGdRaUJDQUxPS2ZSWTloRDlqR2YxekhYOUZoVFJpZkQKaHM5UWE5eUltZnErYXBlaDB6QUtCZ2dxaGtqT1BRUURBZ05IQURCRUFpQVdFNGJ6YW51dktvQnlESmFITXhTcwptam5rMGRscXBJc0grb3BUSzErRjdRSWdXenBwN3hia256N0NMZWpLYWkwQWtxS2JMczlLTXhyK2NNM1RmU3lLCnRXND0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "orderer" + }, + "peer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNQakNDQWVXZ0F3SUJBZ0lRRWxnbFd0dW1QSUJzLy9lS0tRZjVoREFLQmdncWhrak9QUVFEQWpCcU1Rc3cKQ1FZRFZRUUdFd0pGVXpFUk1BOEdBMVVFQnhNSVFXeHBZMkZ1ZEdVeEVUQVBCZ05WQkFrVENFRnNhV05oYm5SbApNUmt3RndZRFZRUUtFeEJMZFc1bklFWjFJRk52Wm5SM1lYSmxNUTB3Q3dZRFZRUUxFd1JVWldOb01Rc3dDUVlEClZRUURFd0pqWVRBZUZ3MHlNekV5TWpreU1UTTFNVEphRncwek16RXlNekF5TVRNMU1USmFNR294Q3pBSkJnTlYKQkFZVEFrVlRNUkV3RHdZRFZRUUhFd2hCYkdsallXNTBaVEVSTUE4R0ExVUVDUk1JUVd4cFkyRnVkR1V4R1RBWApCZ05WQkFvVEVFdDFibWNnUm5VZ1UyOW1kSGRoY21VeERUQUxCZ05WQkFzVEJGUmxZMmd4Q3pBSkJnTlZCQU1UCkFtTmhNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVhTzNzWFJhYWNKd29MQzhDajNMRU5sTnIKVDBlMUpMcGVDZng0cERDNkxIcGp5VzRLSXpNdDUrdFJoREdKNG9PaE1vMjhMVEg4YzZ3VXIvb1hjU2xUSDZOdApNR3N3RGdZRFZSMFBBUUgvQkFRREFnR21NQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUZCUWNECkFUQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01Da0dBMVVkRGdRaUJDQUxPS2ZSWTloRDlqR2YxekhYOUZoVFJpZkQKaHM5UWE5eUltZnErYXBlaDB6QUtCZ2dxaGtqT1BRUURBZ05IQURCRUFpQVdFNGJ6YW51dktvQnlESmFITXhTcwptam5rMGRscXBJc0grb3BUSzErRjdRSWdXenBwN3hia256N0NMZWpLYWkwQWtxS2JMczlLTXhyK2NNM1RmU3lLCnRXND0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "peer" + } + }, + "intermediate_certs": [], + "name": "Org1MSP", + "organizational_unit_identifiers": [], + "revocation_list": [], + "root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNQakNDQWVXZ0F3SUJBZ0lRRWxnbFd0dW1QSUJzLy9lS0tRZjVoREFLQmdncWhrak9QUVFEQWpCcU1Rc3cKQ1FZRFZRUUdFd0pGVXpFUk1BOEdBMVVFQnhNSVFXeHBZMkZ1ZEdVeEVUQVBCZ05WQkFrVENFRnNhV05oYm5SbApNUmt3RndZRFZRUUtFeEJMZFc1bklFWjFJRk52Wm5SM1lYSmxNUTB3Q3dZRFZRUUxFd1JVWldOb01Rc3dDUVlEClZRUURFd0pqWVRBZUZ3MHlNekV5TWpreU1UTTFNVEphRncwek16RXlNekF5TVRNMU1USmFNR294Q3pBSkJnTlYKQkFZVEFrVlRNUkV3RHdZRFZRUUhFd2hCYkdsallXNTBaVEVSTUE4R0ExVUVDUk1JUVd4cFkyRnVkR1V4R1RBWApCZ05WQkFvVEVFdDFibWNnUm5VZ1UyOW1kSGRoY21VeERUQUxCZ05WQkFzVEJGUmxZMmd4Q3pBSkJnTlZCQU1UCkFtTmhNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVhTzNzWFJhYWNKd29MQzhDajNMRU5sTnIKVDBlMUpMcGVDZng0cERDNkxIcGp5VzRLSXpNdDUrdFJoREdKNG9PaE1vMjhMVEg4YzZ3VXIvb1hjU2xUSDZOdApNR3N3RGdZRFZSMFBBUUgvQkFRREFnR21NQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUZCUWNECkFUQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01Da0dBMVVkRGdRaUJDQUxPS2ZSWTloRDlqR2YxekhYOUZoVFJpZkQKaHM5UWE5eUltZnErYXBlaDB6QUtCZ2dxaGtqT1BRUURBZ05IQURCRUFpQVdFNGJ6YW51dktvQnlESmFITXhTcwptam5rMGRscXBJc0grb3BUSzErRjdRSWdXenBwN3hia256N0NMZWpLYWkwQWtxS2JMczlLTXhyK2NNM1RmU3lLCnRXND0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=" + ], + "signing_identity": null, + "tls_intermediate_certs": [], + "tls_root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNSVENDQWV1Z0F3SUJBZ0lRUDA1KzV3SVRLWldJdXVvTDNDNU9VekFLQmdncWhrak9QUVFEQWpCdE1Rc3cKQ1FZRFZRUUdFd0pGVXpFUk1BOEdBMVVFQnhNSVFXeHBZMkZ1ZEdVeEVUQVBCZ05WQkFrVENFRnNhV05oYm5SbApNUmt3RndZRFZRUUtFeEJMZFc1bklFWjFJRk52Wm5SM1lYSmxNUTB3Q3dZRFZRUUxFd1JVWldOb01RNHdEQVlEClZRUURFd1YwYkhOallUQWVGdzB5TXpFeU1qa3lNVE0xTVRKYUZ3MHpNekV5TXpBeU1UTTFNVEphTUcweEN6QUoKQmdOVkJBWVRBa1ZUTVJFd0R3WURWUVFIRXdoQmJHbGpZVzUwWlRFUk1BOEdBMVVFQ1JNSVFXeHBZMkZ1ZEdVeApHVEFYQmdOVkJBb1RFRXQxYm1jZ1JuVWdVMjltZEhkaGNtVXhEVEFMQmdOVkJBc1RCRlJsWTJneERqQU1CZ05WCkJBTVRCWFJzYzJOaE1Ga3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUWNEUWdBRXlYaHB6bDF0K3hhWXZpM3QKbUFYUGtJenhwWWtmVGVwY3FoWTYzazNkOFJUT2tMeE9QdjNWQ1RKUVpVL0ozdXZBZkVQR3hwQ3FmNm93QVNNdQpBaFdHcXFOdE1Hc3dEZ1lEVlIwUEFRSC9CQVFEQWdHbU1CMEdBMVVkSlFRV01CUUdDQ3NHQVFVRkJ3TUNCZ2dyCkJnRUZCUWNEQVRBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUNrR0ExVWREZ1FpQkNCYXdPYk44SDlFR3JoUGRoY2cKQk5CdG1ZajdPeW5DdFpzOFA2OXhsRXIwTFRBS0JnZ3Foa2pPUFFRREFnTklBREJGQWlCb2ovRmJwalk2OHVYSwo2LzRsLzJrczZMd3dJOFErc2l5UndReVZhaDNDVUFJaEFQTzNURURBZ1hsSEtPdnRuTmZBRGRlVkdpeWdtY2pjCkFrMUEvZzE3NmpiOAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==" + ] + }, + "type": 0 + }, + "version": "0" + } + }, + "version": "1" + } + }, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "Org1MSP", + "role": "ADMIN" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Endorsement": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "MAJORITY", + "sub_policy": "Endorsement" + } + }, + "version": "0" + }, + "LifecycleEndorsement": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "MAJORITY", + "sub_policy": "Endorsement" + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Readers" + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Writers" + } + }, + "version": "0" + } + }, + "values": { + "ACLs": { + "mod_policy": "Admins", + "value": { + "acls": { + "_lifecycle/CheckCommitReadiness": { + "policy_ref": "/Channel/Application/Writers" + }, + "_lifecycle/CommitChaincodeDefinition": { + "policy_ref": "/Channel/Application/Writers" + }, + "_lifecycle/QueryChaincodeDefinition": { + "policy_ref": "/Channel/Application/Writers" + }, + "_lifecycle/QueryChaincodeDefinitions": { + "policy_ref": "/Channel/Application/Writers" + }, + "cscc/GetChannelConfig": { + "policy_ref": "/Channel/Application/Readers" + }, + "cscc/GetConfigBlock": { + "policy_ref": "/Channel/Application/Readers" + }, + "event/Block": { + "policy_ref": "/Channel/Application/Readers" + }, + "event/FilteredBlock": { + "policy_ref": "/Channel/Application/Readers" + }, + "lscc/ChaincodeExists": { + "policy_ref": "/Channel/Application/Readers" + }, + "lscc/GetChaincodeData": { + "policy_ref": "/Channel/Application/Readers" + }, + "lscc/GetDeploymentSpec": { + "policy_ref": "/Channel/Application/Readers" + }, + "lscc/GetInstantiatedChaincodes": { + "policy_ref": "/Channel/Application/Readers" + }, + "peer/ChaincodeToChaincode": { + "policy_ref": "/Channel/Application/Writers" + }, + "peer/Propose": { + "policy_ref": "/Channel/Application/Writers" + }, + "qscc/GetBlockByHash": { + "policy_ref": "/Channel/Application/Readers" + }, + "qscc/GetBlockByNumber": { + "policy_ref": "/Channel/Application/Readers" + }, + "qscc/GetBlockByTxID": { + "policy_ref": "/Channel/Application/Readers" + }, + "qscc/GetChainInfo": { + "policy_ref": "/Channel/Application/Readers" + }, + "qscc/GetTransactionByID": { + "policy_ref": "/Channel/Application/Readers" + } + } + }, + "version": "2" + }, + "Capabilities": { + "mod_policy": "Admins", + "value": { + "capabilities": { + "V2_0": {} + } + }, + "version": "0" + } + }, + "version": "0" + }, + "Orderer": { + "groups": { + "OrdererMSP": { + "groups": {}, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "OrdererMSP", + "role": "ADMIN" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Endorsement": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "OrdererMSP", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "OrdererMSP", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "OrdererMSP", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + } + }, + "values": { + "Endpoints": { + "mod_policy": "Admins", + "value": { + "addresses": [ + "orderer0-ord.localho.st:443" + ] + }, + "version": "0" + }, + "MSP": { + "mod_policy": "Admins", + "value": { + "config": { + "admins": [], + "crypto_config": { + "identity_identifier_hash_function": "", + "signature_hash_family": "" + }, + "fabric_node_ous": { + "admin_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNRRENDQWVhZ0F3SUJBZ0lSQU1BOHNUMVRNREZEdUw2QmtOVisycWN3Q2dZSUtvWkl6ajBFQXdJd2FqRUwKTUFrR0ExVUVCaE1DUlZNeEVUQVBCZ05WQkFjVENFRnNhV05oYm5SbE1SRXdEd1lEVlFRSkV3aEJiR2xqWVc1MApaVEVaTUJjR0ExVUVDaE1RUzNWdVp5QkdkU0JUYjJaMGQyRnlaVEVOTUFzR0ExVUVDeE1FVkdWamFERUxNQWtHCkExVUVBeE1DWTJFd0hoY05Nak14TWpJNU1qRXpPRFEwV2hjTk16TXhNak13TWpFek9EUTBXakJxTVFzd0NRWUQKVlFRR0V3SkZVekVSTUE4R0ExVUVCeE1JUVd4cFkyRnVkR1V4RVRBUEJnTlZCQWtUQ0VGc2FXTmhiblJsTVJrdwpGd1lEVlFRS0V4QkxkVzVuSUVaMUlGTnZablIzWVhKbE1RMHdDd1lEVlFRTEV3UlVaV05vTVFzd0NRWURWUVFECkV3SmpZVEJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUFCSnduK01uaFYvU29kQVRQamMva1F1TUgKUThDYnVFK2szUVpZa1BMUnZ6VDc4MlNSYUlNQk5vemErMGQ2a0twenlsQmM1ZFhiYjZXTXpWWmZCbWt0elJXagpiVEJyTUE0R0ExVWREd0VCL3dRRUF3SUJwakFkQmdOVkhTVUVGakFVQmdnckJnRUZCUWNEQWdZSUt3WUJCUVVICkF3RXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QXBCZ05WSFE0RUlnUWdnejVNaVp3OHk2UTEzUHVhQWtXQ2dlRUsKRzl6RmY0VndDL2xOcndHM2x5WXdDZ1lJS29aSXpqMEVBd0lEU0FBd1JRSWdFZitCMTRTMjdiY2EvZVc1NnhWcwpGanJVc2ZRNUkrWFp6UDZEWFNnY3BFOENJUUR4Z0VZNE95R1piVExwL2lIY2ZRMEYzWGU4b3NqMXFjaWFEVnYvCnUrVkFSdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "admin" + }, + "client_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNRRENDQWVhZ0F3SUJBZ0lSQU1BOHNUMVRNREZEdUw2QmtOVisycWN3Q2dZSUtvWkl6ajBFQXdJd2FqRUwKTUFrR0ExVUVCaE1DUlZNeEVUQVBCZ05WQkFjVENFRnNhV05oYm5SbE1SRXdEd1lEVlFRSkV3aEJiR2xqWVc1MApaVEVaTUJjR0ExVUVDaE1RUzNWdVp5QkdkU0JUYjJaMGQyRnlaVEVOTUFzR0ExVUVDeE1FVkdWamFERUxNQWtHCkExVUVBeE1DWTJFd0hoY05Nak14TWpJNU1qRXpPRFEwV2hjTk16TXhNak13TWpFek9EUTBXakJxTVFzd0NRWUQKVlFRR0V3SkZVekVSTUE4R0ExVUVCeE1JUVd4cFkyRnVkR1V4RVRBUEJnTlZCQWtUQ0VGc2FXTmhiblJsTVJrdwpGd1lEVlFRS0V4QkxkVzVuSUVaMUlGTnZablIzWVhKbE1RMHdDd1lEVlFRTEV3UlVaV05vTVFzd0NRWURWUVFECkV3SmpZVEJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUFCSnduK01uaFYvU29kQVRQamMva1F1TUgKUThDYnVFK2szUVpZa1BMUnZ6VDc4MlNSYUlNQk5vemErMGQ2a0twenlsQmM1ZFhiYjZXTXpWWmZCbWt0elJXagpiVEJyTUE0R0ExVWREd0VCL3dRRUF3SUJwakFkQmdOVkhTVUVGakFVQmdnckJnRUZCUWNEQWdZSUt3WUJCUVVICkF3RXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QXBCZ05WSFE0RUlnUWdnejVNaVp3OHk2UTEzUHVhQWtXQ2dlRUsKRzl6RmY0VndDL2xOcndHM2x5WXdDZ1lJS29aSXpqMEVBd0lEU0FBd1JRSWdFZitCMTRTMjdiY2EvZVc1NnhWcwpGanJVc2ZRNUkrWFp6UDZEWFNnY3BFOENJUUR4Z0VZNE95R1piVExwL2lIY2ZRMEYzWGU4b3NqMXFjaWFEVnYvCnUrVkFSdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "client" + }, + "enable": true, + "orderer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNRRENDQWVhZ0F3SUJBZ0lSQU1BOHNUMVRNREZEdUw2QmtOVisycWN3Q2dZSUtvWkl6ajBFQXdJd2FqRUwKTUFrR0ExVUVCaE1DUlZNeEVUQVBCZ05WQkFjVENFRnNhV05oYm5SbE1SRXdEd1lEVlFRSkV3aEJiR2xqWVc1MApaVEVaTUJjR0ExVUVDaE1RUzNWdVp5QkdkU0JUYjJaMGQyRnlaVEVOTUFzR0ExVUVDeE1FVkdWamFERUxNQWtHCkExVUVBeE1DWTJFd0hoY05Nak14TWpJNU1qRXpPRFEwV2hjTk16TXhNak13TWpFek9EUTBXakJxTVFzd0NRWUQKVlFRR0V3SkZVekVSTUE4R0ExVUVCeE1JUVd4cFkyRnVkR1V4RVRBUEJnTlZCQWtUQ0VGc2FXTmhiblJsTVJrdwpGd1lEVlFRS0V4QkxkVzVuSUVaMUlGTnZablIzWVhKbE1RMHdDd1lEVlFRTEV3UlVaV05vTVFzd0NRWURWUVFECkV3SmpZVEJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUFCSnduK01uaFYvU29kQVRQamMva1F1TUgKUThDYnVFK2szUVpZa1BMUnZ6VDc4MlNSYUlNQk5vemErMGQ2a0twenlsQmM1ZFhiYjZXTXpWWmZCbWt0elJXagpiVEJyTUE0R0ExVWREd0VCL3dRRUF3SUJwakFkQmdOVkhTVUVGakFVQmdnckJnRUZCUWNEQWdZSUt3WUJCUVVICkF3RXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QXBCZ05WSFE0RUlnUWdnejVNaVp3OHk2UTEzUHVhQWtXQ2dlRUsKRzl6RmY0VndDL2xOcndHM2x5WXdDZ1lJS29aSXpqMEVBd0lEU0FBd1JRSWdFZitCMTRTMjdiY2EvZVc1NnhWcwpGanJVc2ZRNUkrWFp6UDZEWFNnY3BFOENJUUR4Z0VZNE95R1piVExwL2lIY2ZRMEYzWGU4b3NqMXFjaWFEVnYvCnUrVkFSdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "orderer" + }, + "peer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNRRENDQWVhZ0F3SUJBZ0lSQU1BOHNUMVRNREZEdUw2QmtOVisycWN3Q2dZSUtvWkl6ajBFQXdJd2FqRUwKTUFrR0ExVUVCaE1DUlZNeEVUQVBCZ05WQkFjVENFRnNhV05oYm5SbE1SRXdEd1lEVlFRSkV3aEJiR2xqWVc1MApaVEVaTUJjR0ExVUVDaE1RUzNWdVp5QkdkU0JUYjJaMGQyRnlaVEVOTUFzR0ExVUVDeE1FVkdWamFERUxNQWtHCkExVUVBeE1DWTJFd0hoY05Nak14TWpJNU1qRXpPRFEwV2hjTk16TXhNak13TWpFek9EUTBXakJxTVFzd0NRWUQKVlFRR0V3SkZVekVSTUE4R0ExVUVCeE1JUVd4cFkyRnVkR1V4RVRBUEJnTlZCQWtUQ0VGc2FXTmhiblJsTVJrdwpGd1lEVlFRS0V4QkxkVzVuSUVaMUlGTnZablIzWVhKbE1RMHdDd1lEVlFRTEV3UlVaV05vTVFzd0NRWURWUVFECkV3SmpZVEJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUFCSnduK01uaFYvU29kQVRQamMva1F1TUgKUThDYnVFK2szUVpZa1BMUnZ6VDc4MlNSYUlNQk5vemErMGQ2a0twenlsQmM1ZFhiYjZXTXpWWmZCbWt0elJXagpiVEJyTUE0R0ExVWREd0VCL3dRRUF3SUJwakFkQmdOVkhTVUVGakFVQmdnckJnRUZCUWNEQWdZSUt3WUJCUVVICkF3RXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QXBCZ05WSFE0RUlnUWdnejVNaVp3OHk2UTEzUHVhQWtXQ2dlRUsKRzl6RmY0VndDL2xOcndHM2x5WXdDZ1lJS29aSXpqMEVBd0lEU0FBd1JRSWdFZitCMTRTMjdiY2EvZVc1NnhWcwpGanJVc2ZRNUkrWFp6UDZEWFNnY3BFOENJUUR4Z0VZNE95R1piVExwL2lIY2ZRMEYzWGU4b3NqMXFjaWFEVnYvCnUrVkFSdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "peer" + } + }, + "intermediate_certs": [], + "name": "OrdererMSP", + "organizational_unit_identifiers": [], + "revocation_list": [], + "root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNRRENDQWVhZ0F3SUJBZ0lSQU1BOHNUMVRNREZEdUw2QmtOVisycWN3Q2dZSUtvWkl6ajBFQXdJd2FqRUwKTUFrR0ExVUVCaE1DUlZNeEVUQVBCZ05WQkFjVENFRnNhV05oYm5SbE1SRXdEd1lEVlFRSkV3aEJiR2xqWVc1MApaVEVaTUJjR0ExVUVDaE1RUzNWdVp5QkdkU0JUYjJaMGQyRnlaVEVOTUFzR0ExVUVDeE1FVkdWamFERUxNQWtHCkExVUVBeE1DWTJFd0hoY05Nak14TWpJNU1qRXpPRFEwV2hjTk16TXhNak13TWpFek9EUTBXakJxTVFzd0NRWUQKVlFRR0V3SkZVekVSTUE4R0ExVUVCeE1JUVd4cFkyRnVkR1V4RVRBUEJnTlZCQWtUQ0VGc2FXTmhiblJsTVJrdwpGd1lEVlFRS0V4QkxkVzVuSUVaMUlGTnZablIzWVhKbE1RMHdDd1lEVlFRTEV3UlVaV05vTVFzd0NRWURWUVFECkV3SmpZVEJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUFCSnduK01uaFYvU29kQVRQamMva1F1TUgKUThDYnVFK2szUVpZa1BMUnZ6VDc4MlNSYUlNQk5vemErMGQ2a0twenlsQmM1ZFhiYjZXTXpWWmZCbWt0elJXagpiVEJyTUE0R0ExVWREd0VCL3dRRUF3SUJwakFkQmdOVkhTVUVGakFVQmdnckJnRUZCUWNEQWdZSUt3WUJCUVVICkF3RXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QXBCZ05WSFE0RUlnUWdnejVNaVp3OHk2UTEzUHVhQWtXQ2dlRUsKRzl6RmY0VndDL2xOcndHM2x5WXdDZ1lJS29aSXpqMEVBd0lEU0FBd1JRSWdFZitCMTRTMjdiY2EvZVc1NnhWcwpGanJVc2ZRNUkrWFp6UDZEWFNnY3BFOENJUUR4Z0VZNE95R1piVExwL2lIY2ZRMEYzWGU4b3NqMXFjaWFEVnYvCnUrVkFSdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + ], + "signing_identity": null, + "tls_intermediate_certs": [], + "tls_root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNSekNDQWV5Z0F3SUJBZ0lSQU5Oc3F4TFdPdllwMlBoSWhmZUEvbGd3Q2dZSUtvWkl6ajBFQXdJd2JURUwKTUFrR0ExVUVCaE1DUlZNeEVUQVBCZ05WQkFjVENFRnNhV05oYm5SbE1SRXdEd1lEVlFRSkV3aEJiR2xqWVc1MApaVEVaTUJjR0ExVUVDaE1RUzNWdVp5QkdkU0JUYjJaMGQyRnlaVEVOTUFzR0ExVUVDeE1FVkdWamFERU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpNeE1qSTVNakV6T0RRMFdoY05Nek14TWpNd01qRXpPRFEwV2pCdE1Rc3cKQ1FZRFZRUUdFd0pGVXpFUk1BOEdBMVVFQnhNSVFXeHBZMkZ1ZEdVeEVUQVBCZ05WQkFrVENFRnNhV05oYm5SbApNUmt3RndZRFZRUUtFeEJMZFc1bklFWjFJRk52Wm5SM1lYSmxNUTB3Q3dZRFZRUUxFd1JVWldOb01RNHdEQVlEClZRUURFd1YwYkhOallUQlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQUJBUFNaRGRJdlJPa0tDeXYKa3FTUnRiRFdiUzVEdFRMQ2s0Wnd6N2c2TmVsd3lhWURmejJRL3IxOGVlNjBsbzBsQ3ZNTzFuK3hJbVQ3MllJbgptbHRYTWMyamJUQnJNQTRHQTFVZER3RUIvd1FFQXdJQnBqQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBZ1lJCkt3WUJCUVVIQXdFd0R3WURWUjBUQVFIL0JBVXdBd0VCL3pBcEJnTlZIUTRFSWdRZ0RQdXdtUWZGVGRjSkRNWGUKSzU0ZUdpbzRuRGRyOWM5bW1CU3RlMUkxcVljd0NnWUlLb1pJemowRUF3SURTUUF3UmdJaEFQOXZIdFl5Q1psOQo0cXE5cCtTVGlvSjBFR3E0T3hVemYxWXExVTd3dTJ2QUFpRUE1SDhCQ0VHbmVBeFNUdjlQRCtyV0ZIVjRjSDBXClViMXJ2Sy9TVGx6b2xUND0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=" + ] + }, + "type": 0 + }, + "version": "0" + } + }, + "version": "0" + } + }, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "OrdererMSP", + "role": "ADMIN" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "BlockValidation": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Writers" + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Readers" + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Writers" + } + }, + "version": "0" + } + }, + "values": { + "BatchSize": { + "mod_policy": "Admins", + "value": { + "absolute_max_bytes": 1048576, + "max_message_count": 10, + "preferred_max_bytes": 524288 + }, + "version": "0" + }, + "BatchTimeout": { + "mod_policy": "Admins", + "value": { + "timeout": "2s" + }, + "version": "0" + }, + "Capabilities": { + "mod_policy": "Admins", + "value": { + "capabilities": { + "V2_0": {} + } + }, + "version": "0" + }, + "ChannelRestrictions": { + "mod_policy": "Admins", + "value": null, + "version": "0" + }, + "ConsensusType": { + "mod_policy": "Admins", + "value": { + "metadata": { + "consenters": [ + { + "client_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUMyRENDQW42Z0F3SUJBZ0lVRkRrVlJ3djBzYmNtSXZBMzdmSmNsOWdxYVRjd0NnWUlLb1pJemowRUF3SXcKYlRFTE1Ba0dBMVVFQmhNQ1JWTXhFVEFQQmdOVkJBY1RDRUZzYVdOaGJuUmxNUkV3RHdZRFZRUUpFd2hCYkdsagpZVzUwWlRFWk1CY0dBMVVFQ2hNUVMzVnVaeUJHZFNCVGIyWjBkMkZ5WlRFTk1Bc0dBMVVFQ3hNRVZHVmphREVPCk1Bd0dBMVVFQXhNRmRHeHpZMkV3SGhjTk1qTXhNakk1TWpFek9EUTBXaGNOTWpReE1qSTVNakUwTURBd1dqQWsKTVJBd0RnWURWUVFMRXdkdmNtUmxjbVZ5TVJBd0RnWURWUVFERXdkdmNtUmxjbVZ5TUZrd0V3WUhLb1pJemowQwpBUVlJS29aSXpqMERBUWNEUWdBRTBxTXR1QkNKUUZUdWtjYy8yaHNzTFpzNDBuUyt2SjBOS3pDbVpLc1h5NXVGCnRaZWtpT044dWM1Q0NXcTJkUnlLS2NrZWxGbkZ4ZWhJcnFuNkQzZ0Q3Nk9DQVVNd2dnRS9NQTRHQTFVZER3RUIKL3dRRUF3SURxREFkQmdOVkhTVUVGakFVQmdnckJnRUZCUWNEQVFZSUt3WUJCUVVIQXdJd0RBWURWUjBUQVFILwpCQUl3QURBZEJnTlZIUTRFRmdRVWsxVjlVNmtzYzZ6Q1UzQjYrMnlKTG1VRlM5UXdLd1lEVlIwakJDUXdJb0FnCkRQdXdtUWZGVGRjSkRNWGVLNTRlR2lvNG5EZHI5YzltbUJTdGUxSTFxWWN3VndZRFZSMFJCRkF3VG9JSmJHOWoKWVd4b2IzTjBnZ2x2Y21RdGJtOWtaVEdDRVc5eVpDMXViMlJsTVM1a1pXWmhkV3gwZ2hkdmNtUmxjbVZ5TUMxdgpjbVF1Ykc5allXeG9ieTV6ZEljRWZ3QUFBWWNFckJJQUFqQmJCZ2dxQXdRRkJnY0lBUVJQZXlKaGRIUnljeUk2CmV5Sm9aaTVCWm1acGJHbGhkR2x2YmlJNklpSXNJbWhtTGtWdWNtOXNiRzFsYm5SSlJDSTZJbTl5WkdWeVpYSWkKTENKb1ppNVVlWEJsSWpvaWIzSmtaWEpsY2lKOWZUQUtCZ2dxaGtqT1BRUURBZ05JQURCRkFpRUFyQVlValY2OApxU2ZvZGo4NEwxYmZCUVVpUFVaRS80cnVtNDg5OG9qNzNXOENJSHpRdDdWL0EwcS9sYU5XKzFtTmo4VWxVbWV1CnZPaXhiR3BybE5FWk9zY2YKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "host": "ord-node1.default", + "port": 7050, + "server_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUMyRENDQW42Z0F3SUJBZ0lVRkRrVlJ3djBzYmNtSXZBMzdmSmNsOWdxYVRjd0NnWUlLb1pJemowRUF3SXcKYlRFTE1Ba0dBMVVFQmhNQ1JWTXhFVEFQQmdOVkJBY1RDRUZzYVdOaGJuUmxNUkV3RHdZRFZRUUpFd2hCYkdsagpZVzUwWlRFWk1CY0dBMVVFQ2hNUVMzVnVaeUJHZFNCVGIyWjBkMkZ5WlRFTk1Bc0dBMVVFQ3hNRVZHVmphREVPCk1Bd0dBMVVFQXhNRmRHeHpZMkV3SGhjTk1qTXhNakk1TWpFek9EUTBXaGNOTWpReE1qSTVNakUwTURBd1dqQWsKTVJBd0RnWURWUVFMRXdkdmNtUmxjbVZ5TVJBd0RnWURWUVFERXdkdmNtUmxjbVZ5TUZrd0V3WUhLb1pJemowQwpBUVlJS29aSXpqMERBUWNEUWdBRTBxTXR1QkNKUUZUdWtjYy8yaHNzTFpzNDBuUyt2SjBOS3pDbVpLc1h5NXVGCnRaZWtpT044dWM1Q0NXcTJkUnlLS2NrZWxGbkZ4ZWhJcnFuNkQzZ0Q3Nk9DQVVNd2dnRS9NQTRHQTFVZER3RUIKL3dRRUF3SURxREFkQmdOVkhTVUVGakFVQmdnckJnRUZCUWNEQVFZSUt3WUJCUVVIQXdJd0RBWURWUjBUQVFILwpCQUl3QURBZEJnTlZIUTRFRmdRVWsxVjlVNmtzYzZ6Q1UzQjYrMnlKTG1VRlM5UXdLd1lEVlIwakJDUXdJb0FnCkRQdXdtUWZGVGRjSkRNWGVLNTRlR2lvNG5EZHI5YzltbUJTdGUxSTFxWWN3VndZRFZSMFJCRkF3VG9JSmJHOWoKWVd4b2IzTjBnZ2x2Y21RdGJtOWtaVEdDRVc5eVpDMXViMlJsTVM1a1pXWmhkV3gwZ2hkdmNtUmxjbVZ5TUMxdgpjbVF1Ykc5allXeG9ieTV6ZEljRWZ3QUFBWWNFckJJQUFqQmJCZ2dxQXdRRkJnY0lBUVJQZXlKaGRIUnljeUk2CmV5Sm9aaTVCWm1acGJHbGhkR2x2YmlJNklpSXNJbWhtTGtWdWNtOXNiRzFsYm5SSlJDSTZJbTl5WkdWeVpYSWkKTENKb1ppNVVlWEJsSWpvaWIzSmtaWEpsY2lKOWZUQUtCZ2dxaGtqT1BRUURBZ05JQURCRkFpRUFyQVlValY2OApxU2ZvZGo4NEwxYmZCUVVpUFVaRS80cnVtNDg5OG9qNzNXOENJSHpRdDdWL0EwcS9sYU5XKzFtTmo4VWxVbWV1CnZPaXhiR3BybE5FWk9zY2YKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=" + } + ], + "options": { + "election_tick": 10, + "heartbeat_tick": 1, + "max_inflight_blocks": 5, + "snapshot_interval_size": 16777216, + "tick_interval": "500ms" + } + }, + "state": "STATE_NORMAL", + "type": "etcdraft" + }, + "version": "0" + } + }, + "version": "0" + } + }, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "MAJORITY", + "sub_policy": "Admins" + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Readers" + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Writers" + } + }, + "version": "0" + } + }, + "values": { + "BlockDataHashingStructure": { + "mod_policy": "Admins", + "value": { + "width": 4294967295 + }, + "version": "0" + }, + "Capabilities": { + "mod_policy": "Admins", + "value": { + "capabilities": { + "V2_0": {} + } + }, + "version": "0" + }, + "HashingAlgorithm": { + "mod_policy": "Admins", + "value": { + "name": "SHA256" + }, + "version": "0" + } + }, + "version": "0" + }, + "sequence": "3" +} diff --git a/docs/reference/technical.md.bak b/docs/reference/technical.md.bak new file mode 100644 index 00000000..e69de29b diff --git a/kfs.yaml b/kfs.yaml new file mode 100644 index 00000000..c9be9788 --- /dev/null +++ b/kfs.yaml @@ -0,0 +1,645 @@ + +name: hlf-network +version: 1.0.0 +client: + organization: "" +organizations: + + OrdererMSP: + mspid: OrdererMSP + cryptoPath: /tmp/cryptopath + users: + orderermsp-admin-kfs: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIIB9zCCAZ6gAwIBAgIULdieo6PeRh9RE+kInUt2CAhBVwAwCgYIKoZIzj0EAwIw + ajELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEL + MAkGA1UEAxMCY2EwHhcNMjMwNTA2MTYzMjE4WhcNMjQwNTA2MTYzMzAwWjAgMQ4w + DAYDVQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggqhkjO + PQMBBwNCAAQpBVgXAlV4+5i32q8sU21Nc8/f6N7iMdkSWlqz++YBForr3nbccZwS + Gaz14XAy9mBXf63CTMYD283uDduzYAqko2wwajAOBgNVHQ8BAf8EBAMCB4AwDAYD + VR0TAQH/BAIwADAdBgNVHQ4EFgQUJrZnTY+pt6Mbj7TZCHyU6YClxqcwKwYDVR0j + BCQwIoAgUkfdCmCxaK/TfihZlOzkzDZIwEVYWGotJif+SAyrGm8wCgYIKoZIzj0E + AwIDRwAwRAIgMZtoAsD6uinYz5KwZ/YPSKDk0lqRM1n0rKq+eIen2i8CIHDMn8HM + A+3/LBLMsZVOBLa0HET+xVbknLN6XwRGRyM9 + -----END CERTIFICATE----- + + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgA6YLXGvmH7F8QIu8 + D3fNV1MB/4lwvsyG1Oe2bggv+1ShRANCAAQpBVgXAlV4+5i32q8sU21Nc8/f6N7i + MdkSWlqz++YBForr3nbccZwSGaz14XAy9mBXf63CTMYD283uDduzYAqk + -----END PRIVATE KEY----- + + orderermsp-admin-tls-kfs: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIIB+zCCAaGgAwIBAgIUTkwz2y0k4C/dr/YuPVDmlAiVpYgwCgYIKoZIzj0EAwIw + bTELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEO + MAwGA1UEAxMFdGxzY2EwHhcNMjMwNTA2MTYzMjE4WhcNMjQwNTA2MTYzMzAwWjAg + MQ4wDAYDVQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggq + hkjOPQMBBwNCAAQtScbb/ncp8WLa2ns1iPAP1rGl0PBdkVXunyA2BJuSYnk8VLqz + 7vuDQJ8Y735VklQH5b9l93AFAPvji+lBZD7to2wwajAOBgNVHQ8BAf8EBAMCB4Aw + DAYDVR0TAQH/BAIwADAdBgNVHQ4EFgQU7V+zRzQLLWrQZLtlV7hQjytWk6IwKwYD + VR0jBCQwIoAgtBSgELmDzok9otfu4G4qgE3MIovOFV8Af1eLQuxJSRMwCgYIKoZI + zj0EAwIDSAAwRQIhAOD3cyhVtjeTGodUgkHY3kflWJDhOpP0JorG3wPM2dSjAiBA + SUCtHEcv/l9X/sbNlZXWvuyEQGrLeiYRp4c56TpYZw== + -----END CERTIFICATE----- + + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgEwI7J0RsvOGzoP3d + vMzjArhzUUqO8eRPMcGPaDxByb+hRANCAAQtScbb/ncp8WLa2ns1iPAP1rGl0PBd + kVXunyA2BJuSYnk8VLqz7vuDQJ8Y735VklQH5b9l93AFAPvji+lBZD7t + -----END PRIVATE KEY----- + + orderermsp-client-kfs: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIIB+TCCAaCgAwIBAgIULt8oFDcsmMlw5tIovIeu5YpoP9UwCgYIKoZIzj0EAwIw + ajELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEL + MAkGA1UEAxMCY2EwHhcNMjMwNTA2MTYzMjE4WhcNMjQwNTA2MTYzMzAwWjAiMQ8w + DQYDVQQLEwZjbGllbnQxDzANBgNVBAMTBmNsaWVudDBZMBMGByqGSM49AgEGCCqG + SM49AwEHA0IABNnNJPkov9IVmpolDGzDEPG8iymnInrxSuH7lUUZebrDXeZMKRfK + 8PFmEEk+09fdqC9dqUdx9qG//VxbN3gdVXqjbDBqMA4GA1UdDwEB/wQEAwIHgDAM + BgNVHRMBAf8EAjAAMB0GA1UdDgQWBBSmzwFeunDiuiVPvenmc4cRqU3pTzArBgNV + HSMEJDAigCBSR90KYLFor9N+KFmU7OTMNkjARVhYai0mJ/5IDKsabzAKBggqhkjO + PQQDAgNHADBEAiAm87wXPZKMfc25AAZWMRKWAvUWNPkITMci25EzJX7y3AIgDZyo + ZNQEudXAadXniG8KG7+KASX4F7D2f1SUn7NyI1g= + -----END CERTIFICATE----- + + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgsryStq1b1pqpUK2Z + CSoEfNEmL687KFzV6RrhDCCaecShRANCAATZzST5KL/SFZqaJQxswxDxvIsppyJ6 + 8Urh+5VFGXm6w13mTCkXyvDxZhBJPtPX3agvXalHcfahv/1cWzd4HVV6 + -----END PRIVATE KEY----- + + peers: [] + orderers: + - orderermsp-orderer0.kfs + - orderermsp-orderer1.kfs + - orderermsp-orderer2.kfs + Org1MSP: + mspid: Org1MSP + cryptoPath: /tmp/cryptopath + users: + org1msp-admin-kfs: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIIB+DCCAZ6gAwIBAgIULY9HpgBK3uQSQPBYE6+9gisTdTowCgYIKoZIzj0EAwIw + ajELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEL + MAkGA1UEAxMCY2EwHhcNMjMwNTA2MTYzNjQ0WhcNMjQwNTA2MTYzODAwWjAgMQ4w + DAYDVQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggqhkjO + PQMBBwNCAARyyiNsQHwRY/YLk8PhpU5i2wDeK4rd9P0afr7igse6oiPxIM4M1iFh + /NcT7IHf4BEzyU+hfHdoZ6WOY3kX95kao2wwajAOBgNVHQ8BAf8EBAMCB4AwDAYD + VR0TAQH/BAIwADAdBgNVHQ4EFgQUmpxwKByHtduQCfszQ3NXM5Ovn+UwKwYDVR0j + BCQwIoAgWivoI6D8gs+ciePsbmDeZZgrnBkhYP9AUlgtc4XAUWQwCgYIKoZIzj0E + AwIDSAAwRQIhAJDDKOZ3RGkPhkXE8m/8MgSkdsDzfB+QeNX4VPF7sJogAiAzVzu0 + 4n03p1CA3EpHgqlKL5+KIuDqh94S8Paj5/dfAw== + -----END CERTIFICATE----- + + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg5hKs7keNZ6zHrnHb + mjjP46doKJQfqqrQV7+3EdPRcbGhRANCAARyyiNsQHwRY/YLk8PhpU5i2wDeK4rd + 9P0afr7igse6oiPxIM4M1iFh/NcT7IHf4BEzyU+hfHdoZ6WOY3kX95ka + -----END PRIVATE KEY----- + + org1msp-admin-tls-kfs: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIIB+jCCAaGgAwIBAgIUVdnvIq5rKOKhj7hPoRxyFKO4DEEwCgYIKoZIzj0EAwIw + bTELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEO + MAwGA1UEAxMFdGxzY2EwHhcNMjMwNTA2MTYzNjQ0WhcNMjQwNTA2MTYzODAwWjAg + MQ4wDAYDVQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggq + hkjOPQMBBwNCAARvSmZRddwnrFQE3mHwSWJMLm/jLPuEHaSpAUXCEO9lZh5//CIY + gFrxmye3eh4P/GV4k9j2+hRrcskuMfRG835eo2wwajAOBgNVHQ8BAf8EBAMCB4Aw + DAYDVR0TAQH/BAIwADAdBgNVHQ4EFgQU0VmhmaTam8prgR1tXp/OTlFOZLowKwYD + VR0jBCQwIoAg4vRX3iv4VrfEWSRflAzoXbUblPwndcBsz5E6TmaoTHEwCgYIKoZI + zj0EAwIDRwAwRAIgSJAAMoMuFrPS+wN1+pVHPOHGFp2AueAil6/QD+ySWQ4CIC6S + V9JrLnqSVjEQ56s7vWptrLZRoRLMB+UpkCdQoJId + -----END CERTIFICATE----- + + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg+RqA+A8QMwzFUAy5 + +6tXt6L/XmpskxlY39fBEojGGWyhRANCAARvSmZRddwnrFQE3mHwSWJMLm/jLPuE + HaSpAUXCEO9lZh5//CIYgFrxmye3eh4P/GV4k9j2+hRrcskuMfRG835e + -----END PRIVATE KEY----- + + org1msp-client-kfs: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIIB+TCCAaCgAwIBAgIUE8xvGJ6QAJBB5062xnsY0tZ4Rs8wCgYIKoZIzj0EAwIw + ajELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEL + MAkGA1UEAxMCY2EwHhcNMjMwNTA2MTYzNjQ0WhcNMjQwNTA2MTYzODAwWjAiMQ8w + DQYDVQQLEwZjbGllbnQxDzANBgNVBAMTBmNsaWVudDBZMBMGByqGSM49AgEGCCqG + SM49AwEHA0IABKfFaY2UPr/fvp1GrBuBjAC+axXTkIfhA0UyOK7ycVcHMsFB8/gQ + 6DRurYAbNr9XvY1oEQJUFuwpDLEf467bh0ajbDBqMA4GA1UdDwEB/wQEAwIHgDAM + BgNVHRMBAf8EAjAAMB0GA1UdDgQWBBSGvGZpJsb81PX2JV0w+CireXp0mzArBgNV + HSMEJDAigCBaK+gjoPyCz5yJ4+xuYN5lmCucGSFg/0BSWC1zhcBRZDAKBggqhkjO + PQQDAgNHADBEAiB39cmOqOGT+1G1Dw5a/YngPrSCwK+Wt91v5f8Y3pU/OAIgPGTY + l6gTa8DF5uaXw1jIdgJGAMBhFRX9lJ1WvRkc5Z4= + -----END CERTIFICATE----- + + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgCnPE/sf2XmsbB0+F + 5z7+zIe1a2YEREDYfXgI/9Ma3BuhRANCAASnxWmNlD6/376dRqwbgYwAvmsV05CH + 4QNFMjiu8nFXBzLBQfP4EOg0bq2AGza/V72NaBECVBbsKQyxH+Ou24dG + -----END PRIVATE KEY----- + + peers: + - org1msp-peer0.kfs + - org1msp-peer1.kfs + orderers: [] + Org2MSP: + mspid: Org2MSP + cryptoPath: /tmp/cryptopath + users: + org2msp-admin-kfs: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIIB+DCCAZ6gAwIBAgIUeC3osmRBmiHEaDZ0TG3Uh3MqI/AwCgYIKoZIzj0EAwIw + ajELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEL + MAkGA1UEAxMCY2EwHhcNMjMwNTA2MTYzOTM5WhcNMjQwNTA2MTY0MDAwWjAgMQ4w + DAYDVQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggqhkjO + PQMBBwNCAAR6BXDePi1gvhz1YqSGFL6BQZp7stxt6xhP9OqaAqlI28j4u0/6RJf+ + vry+PPHRb07MQFpQMYAXvgcyMTV9QolGo2wwajAOBgNVHQ8BAf8EBAMCB4AwDAYD + VR0TAQH/BAIwADAdBgNVHQ4EFgQU23lb44thN/zVQvGrQJrKyp9A0vAwKwYDVR0j + BCQwIoAgzMkzMHcOi0Binawk6leQfuvCXJMXIJdzvBSrvAY5HugwCgYIKoZIzj0E + AwIDSAAwRQIhAKAFvPWHfQZhYrHNGnqI/iJN6deYulR6j8f4XKIiUhCuAiAnM4Gh + aVDNIcW18kZHeJ+U6O8Qj5ChYH3XzL6boBhzlQ== + -----END CERTIFICATE----- + + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgiRGcoR75Dwqb9hEO + vdldsOE7i74FTi1/SM78+6qCfQehRANCAAR6BXDePi1gvhz1YqSGFL6BQZp7stxt + 6xhP9OqaAqlI28j4u0/6RJf+vry+PPHRb07MQFpQMYAXvgcyMTV9QolG + -----END PRIVATE KEY----- + + org2msp-admin-tls-kfs: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIIB+jCCAaGgAwIBAgIUcOErCZSLmLjuPHGKJl5RO1Sdm1YwCgYIKoZIzj0EAwIw + bTELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEO + MAwGA1UEAxMFdGxzY2EwHhcNMjMwNTA2MTYzOTM5WhcNMjQwNTA2MTY0MDAwWjAg + MQ4wDAYDVQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggq + hkjOPQMBBwNCAAQeFpG6VwHyw3oW36/h7eaoeTli7XPxC81ZxtYsdM+stKFea6/D + /1mW8wcrEwh9XNPTo3wOTdFuGWiEt/yyZDxZo2wwajAOBgNVHQ8BAf8EBAMCB4Aw + DAYDVR0TAQH/BAIwADAdBgNVHQ4EFgQUF8/NDrd5bAPKtP2c12pxVSD396wwKwYD + VR0jBCQwIoAg7RUXKQWJtLv7sBgL1FxZcBiAK0PwlQTKmlx6laEIfiYwCgYIKoZI + zj0EAwIDRwAwRAIge2Fe8Zs5EvUbdGT5EBsABxzgD2Wint7Od/u9ko7GUY0CIBJv + ejcJaMFRsl8G4MgMAMaCq6FtAEhsPpx1ECEBpNq/ + -----END CERTIFICATE----- + + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgYxBCwB8YB/SkaN+a + /9GrbojSoppNpxPuNwhM9Wqb6LKhRANCAAQeFpG6VwHyw3oW36/h7eaoeTli7XPx + C81ZxtYsdM+stKFea6/D/1mW8wcrEwh9XNPTo3wOTdFuGWiEt/yyZDxZ + -----END PRIVATE KEY----- + + org2msp-client-kfs: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIIB+TCCAaCgAwIBAgIUCRGOS9HAGktnNOPTQ2x+rcgqzD8wCgYIKoZIzj0EAwIw + ajELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEL + MAkGA1UEAxMCY2EwHhcNMjMwNTA2MTYzOTM5WhcNMjQwNTA2MTY0MTAwWjAiMQ8w + DQYDVQQLEwZjbGllbnQxDzANBgNVBAMTBmNsaWVudDBZMBMGByqGSM49AgEGCCqG + SM49AwEHA0IABG8e9sM4EF8+PZFqWhvl55mjGnoa4SGbE+MbspJiOf997RK2qQs3 + iRzegIKtl1+ZCOc6L/TvWkKXaiBSDL0yR1ejbDBqMA4GA1UdDwEB/wQEAwIHgDAM + BgNVHRMBAf8EAjAAMB0GA1UdDgQWBBSxdvTIe0SLI9qnw28l3JM89HuAqTArBgNV + HSMEJDAigCDMyTMwdw6LQGKdrCTqV5B+68Jckxcgl3O8FKu8Bjke6DAKBggqhkjO + PQQDAgNHADBEAiBFX0n/e7/zoG+Tqsm8j9bb+98RgM+ScIjx6s2dsNmLGwIgVxh7 + /4pGO35qvqIe1oC8axfue2ZXwHOezkm1OKxpKtc= + -----END CERTIFICATE----- + + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgBQv6E4iU4NoIGs60 + Njv3Ygq+MgGsBEVUejKZLkF5aNahRANCAARvHvbDOBBfPj2Ralob5eeZoxp6GuEh + mxPjG7KSYjn/fe0StqkLN4kc3oCCrZdfmQjnOi/071pCl2ogUgy9MkdX + -----END PRIVATE KEY----- + + peers: + - org2msp-peer0.kfs + - org2msp-peer1.kfs + orderers: [] +orderers: + orderermsp-orderer0.kfs: + + url: grpcs://orderermsp-orderer0.kfs.localho.st:443 + + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICRDCCAeugAwIBAgIQfPjdsnW7wXXoJl+QjjROcTAKBggqhkjOPQQDAjBtMQsw + CQYDVQQGEwJFUzERMA8GA1UEBxMIQWxpY2FudGUxETAPBgNVBAkTCEFsaWNhbnRl + MRkwFwYDVQQKExBLdW5nIEZ1IFNvZnR3YXJlMQ0wCwYDVQQLEwRUZWNoMQ4wDAYD + VQQDEwV0bHNjYTAeFw0yMzA1MDYxNjMyMThaFw0zMzA1MDcxNjMyMThaMG0xCzAJ + BgNVBAYTAkVTMREwDwYDVQQHEwhBbGljYW50ZTERMA8GA1UECRMIQWxpY2FudGUx + GTAXBgNVBAoTEEt1bmcgRnUgU29mdHdhcmUxDTALBgNVBAsTBFRlY2gxDjAMBgNV + BAMTBXRsc2NhMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEV7TBTn6d+bhRWj+f + CHm646WduM7nBojl96NYFrfY+zgB48TUyl33zYBPNyhSQYBZO9IN7QrhSvwGYUfM + eewtv6NtMGswDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggr + BgEFBQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCC0FKAQuYPOiT2i1+7g + biqATcwii84VXwB/V4tC7ElJEzAKBggqhkjOPQQDAgNHADBEAiA7hwwQqCqZt3cG + 01zla1zO25ghCUOvTx1h0zUDgdkLYgIgYH7ggA6tcd/lLi6rz+yDniOvrR54m/Pz + jVukwWuG7wM= + -----END CERTIFICATE----- + + orderermsp-orderer1.kfs: + + url: grpcs://orderermsp-orderer1.kfs.localho.st:443 + + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICRDCCAeugAwIBAgIQfPjdsnW7wXXoJl+QjjROcTAKBggqhkjOPQQDAjBtMQsw + CQYDVQQGEwJFUzERMA8GA1UEBxMIQWxpY2FudGUxETAPBgNVBAkTCEFsaWNhbnRl + MRkwFwYDVQQKExBLdW5nIEZ1IFNvZnR3YXJlMQ0wCwYDVQQLEwRUZWNoMQ4wDAYD + VQQDEwV0bHNjYTAeFw0yMzA1MDYxNjMyMThaFw0zMzA1MDcxNjMyMThaMG0xCzAJ + BgNVBAYTAkVTMREwDwYDVQQHEwhBbGljYW50ZTERMA8GA1UECRMIQWxpY2FudGUx + GTAXBgNVBAoTEEt1bmcgRnUgU29mdHdhcmUxDTALBgNVBAsTBFRlY2gxDjAMBgNV + BAMTBXRsc2NhMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEV7TBTn6d+bhRWj+f + CHm646WduM7nBojl96NYFrfY+zgB48TUyl33zYBPNyhSQYBZO9IN7QrhSvwGYUfM + eewtv6NtMGswDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggr + BgEFBQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCC0FKAQuYPOiT2i1+7g + biqATcwii84VXwB/V4tC7ElJEzAKBggqhkjOPQQDAgNHADBEAiA7hwwQqCqZt3cG + 01zla1zO25ghCUOvTx1h0zUDgdkLYgIgYH7ggA6tcd/lLi6rz+yDniOvrR54m/Pz + jVukwWuG7wM= + -----END CERTIFICATE----- + + orderermsp-orderer2.kfs: + + url: grpcs://orderermsp-orderer2.kfs.localho.st:443 + + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICRDCCAeugAwIBAgIQfPjdsnW7wXXoJl+QjjROcTAKBggqhkjOPQQDAjBtMQsw + CQYDVQQGEwJFUzERMA8GA1UEBxMIQWxpY2FudGUxETAPBgNVBAkTCEFsaWNhbnRl + MRkwFwYDVQQKExBLdW5nIEZ1IFNvZnR3YXJlMQ0wCwYDVQQLEwRUZWNoMQ4wDAYD + VQQDEwV0bHNjYTAeFw0yMzA1MDYxNjMyMThaFw0zMzA1MDcxNjMyMThaMG0xCzAJ + BgNVBAYTAkVTMREwDwYDVQQHEwhBbGljYW50ZTERMA8GA1UECRMIQWxpY2FudGUx + GTAXBgNVBAoTEEt1bmcgRnUgU29mdHdhcmUxDTALBgNVBAsTBFRlY2gxDjAMBgNV + BAMTBXRsc2NhMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEV7TBTn6d+bhRWj+f + CHm646WduM7nBojl96NYFrfY+zgB48TUyl33zYBPNyhSQYBZO9IN7QrhSvwGYUfM + eewtv6NtMGswDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggr + BgEFBQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCC0FKAQuYPOiT2i1+7g + biqATcwii84VXwB/V4tC7ElJEzAKBggqhkjOPQQDAgNHADBEAiA7hwwQqCqZt3cG + 01zla1zO25ghCUOvTx1h0zUDgdkLYgIgYH7ggA6tcd/lLi6rz+yDniOvrR54m/Pz + jVukwWuG7wM= + -----END CERTIFICATE----- + +peers: + org1msp-peer0.kfs: + + url: grpcs://org1msp-peer0.kfs.localho.st:443 + + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICRzCCAeygAwIBAgIRAP4jNkJiKamOornKuig9xfIwCgYIKoZIzj0EAwIwbTEL + MAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGljYW50 + ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEOMAwG + A1UEAxMFdGxzY2EwHhcNMjMwNTA2MTYzNjQ0WhcNMzMwNTA3MTYzNjQ0WjBtMQsw + CQYDVQQGEwJFUzERMA8GA1UEBxMIQWxpY2FudGUxETAPBgNVBAkTCEFsaWNhbnRl + MRkwFwYDVQQKExBLdW5nIEZ1IFNvZnR3YXJlMQ0wCwYDVQQLEwRUZWNoMQ4wDAYD + VQQDEwV0bHNjYTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABNeOUp8wTF6are6G + 386SwwoHhsurBKLsW+rDeSryh6TOpAyB9jVS3J7Af8iDUvM5mjSMgtgZ1uwRaxZe + jvXiBa2jbTBrMA4GA1UdDwEB/wQEAwIBpjAdBgNVHSUEFjAUBggrBgEFBQcDAgYI + KwYBBQUHAwEwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQg4vRX3iv4VrfEWSRf + lAzoXbUblPwndcBsz5E6TmaoTHEwCgYIKoZIzj0EAwIDSQAwRgIhANz5Y3oTnth9 + 1q9jvYZX3LkwG565bZj534Fjr0vTKQacAiEA9BPyPwdwi2MBch5yTEFEil/fTrGS + 8mRncX20lEj8Jkw= + -----END CERTIFICATE----- + + org1msp-peer1.kfs: + + url: grpcs://org1msp-peer1.kfs.localho.st:443 + + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICRzCCAeygAwIBAgIRAP4jNkJiKamOornKuig9xfIwCgYIKoZIzj0EAwIwbTEL + MAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGljYW50 + ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEOMAwG + A1UEAxMFdGxzY2EwHhcNMjMwNTA2MTYzNjQ0WhcNMzMwNTA3MTYzNjQ0WjBtMQsw + CQYDVQQGEwJFUzERMA8GA1UEBxMIQWxpY2FudGUxETAPBgNVBAkTCEFsaWNhbnRl + MRkwFwYDVQQKExBLdW5nIEZ1IFNvZnR3YXJlMQ0wCwYDVQQLEwRUZWNoMQ4wDAYD + VQQDEwV0bHNjYTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABNeOUp8wTF6are6G + 386SwwoHhsurBKLsW+rDeSryh6TOpAyB9jVS3J7Af8iDUvM5mjSMgtgZ1uwRaxZe + jvXiBa2jbTBrMA4GA1UdDwEB/wQEAwIBpjAdBgNVHSUEFjAUBggrBgEFBQcDAgYI + KwYBBQUHAwEwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQg4vRX3iv4VrfEWSRf + lAzoXbUblPwndcBsz5E6TmaoTHEwCgYIKoZIzj0EAwIDSQAwRgIhANz5Y3oTnth9 + 1q9jvYZX3LkwG565bZj534Fjr0vTKQacAiEA9BPyPwdwi2MBch5yTEFEil/fTrGS + 8mRncX20lEj8Jkw= + -----END CERTIFICATE----- + + org2msp-peer0.kfs: + + url: grpcs://org2msp-peer0.kfs.localho.st:443 + + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICRDCCAeugAwIBAgIQVPjROMIeIG6Mw9C6UEsY1TAKBggqhkjOPQQDAjBtMQsw + CQYDVQQGEwJFUzERMA8GA1UEBxMIQWxpY2FudGUxETAPBgNVBAkTCEFsaWNhbnRl + MRkwFwYDVQQKExBLdW5nIEZ1IFNvZnR3YXJlMQ0wCwYDVQQLEwRUZWNoMQ4wDAYD + VQQDEwV0bHNjYTAeFw0yMzA1MDYxNjM5MzlaFw0zMzA1MDcxNjM5MzlaMG0xCzAJ + BgNVBAYTAkVTMREwDwYDVQQHEwhBbGljYW50ZTERMA8GA1UECRMIQWxpY2FudGUx + GTAXBgNVBAoTEEt1bmcgRnUgU29mdHdhcmUxDTALBgNVBAsTBFRlY2gxDjAMBgNV + BAMTBXRsc2NhMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEUUgH61R1DHQuQEcH + k+mzffLN3Ha0JS7SJc08MjHT4S9AowrOR44IbxnwIBtci+cKtAoAvWeNyPKa2iKM + bdnDs6NtMGswDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggr + BgEFBQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCDtFRcpBYm0u/uwGAvU + XFlwGIArQ/CVBMqaXHqVoQh+JjAKBggqhkjOPQQDAgNHADBEAiA+TlsZvNELp8ab + tV7NjExXUnUDiAxgplDvbqsSWBP1BgIgINhqvcbBc5yQ2IvMvinAZEmfMhEvyZml + SxcyPWoMz+s= + -----END CERTIFICATE----- + + org2msp-peer1.kfs: + + url: grpcs://org2msp-peer1.kfs.localho.st:443 + + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICRDCCAeugAwIBAgIQVPjROMIeIG6Mw9C6UEsY1TAKBggqhkjOPQQDAjBtMQsw + CQYDVQQGEwJFUzERMA8GA1UEBxMIQWxpY2FudGUxETAPBgNVBAkTCEFsaWNhbnRl + MRkwFwYDVQQKExBLdW5nIEZ1IFNvZnR3YXJlMQ0wCwYDVQQLEwRUZWNoMQ4wDAYD + VQQDEwV0bHNjYTAeFw0yMzA1MDYxNjM5MzlaFw0zMzA1MDcxNjM5MzlaMG0xCzAJ + BgNVBAYTAkVTMREwDwYDVQQHEwhBbGljYW50ZTERMA8GA1UECRMIQWxpY2FudGUx + GTAXBgNVBAoTEEt1bmcgRnUgU29mdHdhcmUxDTALBgNVBAsTBFRlY2gxDjAMBgNV + BAMTBXRsc2NhMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEUUgH61R1DHQuQEcH + k+mzffLN3Ha0JS7SJc08MjHT4S9AowrOR44IbxnwIBtci+cKtAoAvWeNyPKa2iKM + bdnDs6NtMGswDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggr + BgEFBQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCDtFRcpBYm0u/uwGAvU + XFlwGIArQ/CVBMqaXHqVoQh+JjAKBggqhkjOPQQDAgNHADBEAiA+TlsZvNELp8ab + tV7NjExXUnUDiAxgplDvbqsSWBP1BgIgINhqvcbBc5yQ2IvMvinAZEmfMhEvyZml + SxcyPWoMz+s= + -----END CERTIFICATE----- + +certificateAuthorities: + + orderermsp-ca.kfs: + + url: https://orderermsp-ca.kfs.localho.st:443 + + + registrar: + enrollId: enrollid + enrollSecret: 678n9fhkf5 + + caName: ca + tlsCACerts: + pem: + - | + -----BEGIN CERTIFICATE----- + MIIChjCCAi2gAwIBAgIQMOtQOb8Q1SvofCei2JLX3DAKBggqhkjOPQQDAjBSMRMw + EQYDVQQGEwpDYWxpZm9ybmlhMQkwBwYDVQQHEwAxCTAHBgNVBAkTADEUMBIGA1UE + ChMLSHlwZXJsZWRnZXIxDzANBgNVBAsTBkZhYnJpYzAeFw0yMzA1MDYxNjMyMTha + Fw0zMzA1MDcxNjMyMThaMFIxEzARBgNVBAYTCkNhbGlmb3JuaWExCTAHBgNVBAcT + ADEJMAcGA1UECRMAMRQwEgYDVQQKEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFi + cmljMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEms/YmVI8DsCIJrCNSv2OyOv4 + ryO9YSA5yL0aPAhtoar7kxMAzsCol6gmNCwy6fBQRdoemFf9eYIvXTTTF+KtDqOB + 5DCB4TAOBgNVHQ8BAf8EBAMCAaYwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUF + BwMBMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIHBqx0rHSIB1gE5xdX7hUZ6A + Nj/xDLsFyAoJnFMR/lj9MHQGA1UdEQRtMGuCHG9yZGVyZXJtc3AtY2Eua2ZzLmxv + Y2FsaG8uc3SCEW9yZGVyZXJtc3AtY2Eua2ZzgiNvcmRlcmVybXNwLWNhLmtmcy5z + dmMuY2x1c3Rlci5sb2NhbIINb3JkZXJlcm1zcC1jYYcEfwAAATAKBggqhkjOPQQD + AgNHADBEAiB9u79yjK8OgEHbqrgUz4uVjhdYME8W9/K/BsMmJFw1vwIgAupjti3l + MEvBFUKSf51IREDmHXHwe4//vShsvbF64Rg= + -----END CERTIFICATE----- + + + org1msp-ca.kfs: + + url: https://org1msp-ca.kfs.localho.st:443 + + + registrar: + enrollId: enrollid + enrollSecret: 25k2zk6kk9 + + caName: ca + tlsCACerts: + pem: + - | + -----BEGIN CERTIFICATE----- + MIICfDCCAiGgAwIBAgIQSpEAde7lhHiHQ/BxseX5nTAKBggqhkjOPQQDAjBSMRMw + EQYDVQQGEwpDYWxpZm9ybmlhMQkwBwYDVQQHEwAxCTAHBgNVBAkTADEUMBIGA1UE + ChMLSHlwZXJsZWRnZXIxDzANBgNVBAsTBkZhYnJpYzAeFw0yMzA1MDYxNjM2NDRa + Fw0zMzA1MDcxNjM2NDRaMFIxEzARBgNVBAYTCkNhbGlmb3JuaWExCTAHBgNVBAcT + ADEJMAcGA1UECRMAMRQwEgYDVQQKEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFi + cmljMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAUdVr1r6xw0c9BDOO69TE3ku + T7r279KsFskHzRmRMbrGe+sGIFWmO70fWGyKinj8+gH8DwNf4rGPOLOeZcPdSaOB + 2DCB1TAOBgNVHQ8BAf8EBAMCAaYwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUF + BwMBMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIIBmL74NoRnHMcqar1uN+MqR + qLLEAyGynmlAhLZNKUH4MGgGA1UdEQRhMF+CGW9yZzFtc3AtY2Eua2ZzLmxvY2Fs + aG8uc3SCDm9yZzFtc3AtY2Eua2ZzgiBvcmcxbXNwLWNhLmtmcy5zdmMuY2x1c3Rl + ci5sb2NhbIIKb3JnMW1zcC1jYYcEfwAAATAKBggqhkjOPQQDAgNJADBGAiEA2XK8 + ov7VBzNy+e4XMZxnjzZ22Ll9xQqINUV6Ec2paAECIQDvobxXcAXDOGET8NkFsVBE + z3/R3ZEQ6eil0FEi4nT/ew== + -----END CERTIFICATE----- + + + org2msp-ca.kfs: + + url: https://org2msp-ca.kfs.localho.st:443 + + + registrar: + enrollId: enrollid + enrollSecret: 9nu41y9hp9 + + caName: ca + tlsCACerts: + pem: + - | + -----BEGIN CERTIFICATE----- + MIICfDCCAiKgAwIBAgIRALl8XoTPwZHfqfodZFzrjfowCgYIKoZIzj0EAwIwUjET + MBEGA1UEBhMKQ2FsaWZvcm5pYTEJMAcGA1UEBxMAMQkwBwYDVQQJEwAxFDASBgNV + BAoTC0h5cGVybGVkZ2VyMQ8wDQYDVQQLEwZGYWJyaWMwHhcNMjMwNTA2MTYzOTM5 + WhcNMzMwNTA3MTYzOTM5WjBSMRMwEQYDVQQGEwpDYWxpZm9ybmlhMQkwBwYDVQQH + EwAxCTAHBgNVBAkTADEUMBIGA1UEChMLSHlwZXJsZWRnZXIxDzANBgNVBAsTBkZh + YnJpYzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABBJZoj+Z9vgyaZDcXPG+1r4H + D9H6Y9D/JdrTcSbbfTFhq1W6HcYG7Ypuu4nmt9Y8QY2YLH5h+w13ACr3e2K2ca6j + gdgwgdUwDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF + BQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCDEh4EV1Deyylqn8fo/I6x6 + 9She+80tH2XiJVDKjL5KqjBoBgNVHREEYTBfghlvcmcybXNwLWNhLmtmcy5sb2Nh + bGhvLnN0gg5vcmcybXNwLWNhLmtmc4Igb3JnMm1zcC1jYS5rZnMuc3ZjLmNsdXN0 + ZXIubG9jYWyCCm9yZzJtc3AtY2GHBH8AAAEwCgYIKoZIzj0EAwIDSAAwRQIgIEFv + JrRu/nYGn0s4cJmzd3IJ2yHXBFfEigtjcseQ1cICIQDd7cc4f3rVmcpj0v43MLCq + 9QGcAolItb6z4StF04d1Ww== + -----END CERTIFICATE----- + + + +channels: + development: + orderers: + - orderermsp-orderer0.kfs + - orderermsp-orderer1.kfs + - orderermsp-orderer2.kfs + peers: + org1msp-peer0.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + org1msp-peer1.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + org2msp-peer0.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + org2msp-peer1.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + extradev: + orderers: + - orderermsp-orderer0.kfs + - orderermsp-orderer1.kfs + - orderermsp-orderer2.kfs + peers: + org1msp-peer0.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + org1msp-peer1.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + org2msp-peer0.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + org2msp-peer1.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + staging: + orderers: + - orderermsp-orderer0.kfs + - orderermsp-orderer1.kfs + - orderermsp-orderer2.kfs + peers: + org1msp-peer0.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + org1msp-peer1.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + org2msp-peer0.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + org2msp-peer1.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + uat: + orderers: + - orderermsp-orderer0.kfs + - orderermsp-orderer1.kfs + - orderermsp-orderer2.kfs + peers: + org1msp-peer0.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + org1msp-peer1.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + org2msp-peer0.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + org2msp-peer1.kfs: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + diff --git a/kind-config.yaml b/kind-config.yaml new file mode 100644 index 00000000..f6d1f586 --- /dev/null +++ b/kind-config.yaml @@ -0,0 +1,10 @@ +kind: Cluster +apiVersion: kind.x-k8s.io/v1alpha4 +nodes: +- role: control-plane + image: kindest/node:v1.25.8 + extraPortMappings: + - containerPort: 30949 + hostPort: 80 + - containerPort: 30950 + hostPort: 443 diff --git a/kubectl-hlf/all.yaml b/kubectl-hlf/all.yaml new file mode 100644 index 00000000..b3757d26 --- /dev/null +++ b/kubectl-hlf/all.yaml @@ -0,0 +1,396 @@ +certificateAuthorities: + bwx-ca-bwfmsp-1eqe.hlf: + caName: ca + registrar: + enrollId: enroll + enrollSecret: enrollpw + tlsCACerts: + pem: + - | + -----BEGIN CERTIFICATE----- + MIICljCCAj2gAwIBAgIQHRcIMQ0p1Knz37W2nN4pOjAKBggqhkjOPQQDAjBaMQsw + CQYDVQQGEwJVUzERMA8GA1UEBxMIQnJ1c3NlbHMxETAPBgNVBAkTCEJydXNzZWxz + MRAwDgYDVQQKEwdGdWppdHN1MRMwEQYDVQQLEwpCbG9ja2NoYWluMB4XDTIyMDYz + MDA4NTgwNVoXDTMyMDcwMTA4NTgwNVowWjELMAkGA1UEBhMCVVMxETAPBgNVBAcT + CEJydXNzZWxzMREwDwYDVQQJEwhCcnVzc2VsczEQMA4GA1UEChMHRnVqaXRzdTET + MBEGA1UECxMKQmxvY2tjaGFpbjBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABKnq + Jx2fRcIRUfkvyBdn3DFbOfFcQF81K32MXX/ptl9Wapi7dpy9vIsCU55FDrvy0hc6 + D45RXnDGYi61SRXFv7qjgeQwgeEwDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQG + CCsGAQUFBwMCBggrBgEFBQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCAb + HjfFivBXLun79Hs7tb0h90zdV2qyZiemngjNCo4MKDB0BgNVHREEbTBrghZid3gt + Y2EtYndmbXNwLTFlcWUuaGxmghJid3gtY2EtYndmbXNwLTFlcWWCCWxvY2FsaG9z + dIImYnd4LWNhLWJ3Zm1zcC5obGYuYnd4LXVhdC5yZWRsZWRnZXIuZXWHBH8AAAGH + BAoHAAQwCgYIKoZIzj0EAwIDRwAwRAIgNgWxZpAmHDGm1CIXpfKOb5J2uMt2Q8J8 + KzxXSSioFxwCICT46X5Zmgwr17A/+DjT1n72BMH+ERlKY+qVfq7sDlwz + -----END CERTIFICATE----- + url: https://bwx-ca-bwfmsp.hlf.bwx-uat.redledger.eu:443 + bwx-ca-bwtmsp-9fae.hlf: + caName: ca + registrar: + enrollId: enroll + enrollSecret: enrollpw + tlsCACerts: + pem: + - | + -----BEGIN CERTIFICATE----- + MIICmDCCAj6gAwIBAgIRANLSCCkezKrG1glLmegxQXkwCgYIKoZIzj0EAwIwWjEL + MAkGA1UEBhMCVVMxETAPBgNVBAcTCEJydXNzZWxzMREwDwYDVQQJEwhCcnVzc2Vs + czEQMA4GA1UEChMHRnVqaXRzdTETMBEGA1UECxMKQmxvY2tjaGFpbjAeFw0yMjA2 + MzAwODQ0NDRaFw0zMjA3MDEwODQ0NDRaMFoxCzAJBgNVBAYTAlVTMREwDwYDVQQH + EwhCcnVzc2VsczERMA8GA1UECRMIQnJ1c3NlbHMxEDAOBgNVBAoTB0Z1aml0c3Ux + EzARBgNVBAsTCkJsb2NrY2hhaW4wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAR+ + dO+IlZE+3W0m1Dezsu7BS588iCBbQ9+Klm7q3bszlFEpLZpIThp+IH24zGw+fCjj + IcjzfqD0J2BduHS7Uhz1o4HkMIHhMA4GA1UdDwEB/wQEAwIBpjAdBgNVHSUEFjAU + BggrBgEFBQcDAgYIKwYBBQUHAwEwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQg + iNgKfHkFFIbdAyLoqYonefVeSNOTEraB8S3/phqU+ugwdAYDVR0RBG0wa4IWYnd4 + LWNhLWJ3dG1zcC05ZmFlLmhsZoISYnd4LWNhLWJ3dG1zcC05ZmFlgglsb2NhbGhv + c3SCJmJ3eC1jYS1id3Rtc3AuaGxmLmJ3eC11YXQucmVkbGVkZ2VyLmV1hwR/AAAB + hwQKBwAEMAoGCCqGSM49BAMCA0gAMEUCIAyt06brE3Gsle6v6aRQn/VajfRbr38r + brcPvRUe+YgRAiEAz7MIZOzMsx5/Lj3oqWIXPXR220Sqcpj0cGBXkUvgzpc= + -----END CERTIFICATE----- + url: https://bwx-ca-bwtmsp.hlf.bwx-uat.redledger.eu:443 + bwx-ca-bwxmsp-wus7.hlf: + caName: ca + registrar: + enrollId: enroll + enrollSecret: enrollpw + tlsCACerts: + pem: + - | + -----BEGIN CERTIFICATE----- + MIICljCCAj2gAwIBAgIQe6lVY/a6dwQ+SiZ6zaMCLTAKBggqhkjOPQQDAjBaMQsw + CQYDVQQGEwJVUzERMA8GA1UEBxMIQnJ1c3NlbHMxETAPBgNVBAkTCEJydXNzZWxz + MRAwDgYDVQQKEwdGdWppdHN1MRMwEQYDVQQLEwpCbG9ja2NoYWluMB4XDTIyMDYz + MDA4NDExOFoXDTMyMDcwMTA4NDExOFowWjELMAkGA1UEBhMCVVMxETAPBgNVBAcT + CEJydXNzZWxzMREwDwYDVQQJEwhCcnVzc2VsczEQMA4GA1UEChMHRnVqaXRzdTET + MBEGA1UECxMKQmxvY2tjaGFpbjBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJ/6 + PGmf/sWpX7iw0zKcmD6QhKq4U/kcHpZJqTGqWrDKaIwFN3I3sLmf/OTc3tOlNMzP + /l7UmvFTbiHqQ6G2jWijgeQwgeEwDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQG + CCsGAQUFBwMCBggrBgEFBQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCAI + koEnbF1SIHVdxKRlD8MY9e5zYqJJUhR6I99sMlHlUTB0BgNVHREEbTBrghZid3gt + Y2EtYnd4bXNwLXd1czcuaGxmghJid3gtY2EtYnd4bXNwLXd1czeCCWxvY2FsaG9z + dIImYnd4LWNhLWJ3eG1zcC5obGYuYnd4LXVhdC5yZWRsZWRnZXIuZXWHBH8AAAGH + BAoHAAQwCgYIKoZIzj0EAwIDRwAwRAIgOrY+oAP1Y7c6J1j1PIRr8mAmIv6FGnf1 + WplEQAXmWHUCIG86h7BHqZUNGvBFoEhKMVnz4IWADXMVWT/EqHhQiIDi + -----END CERTIFICATE----- + url: https://bwx-ca-bwxmsp.hlf.bwx-uat.redledger.eu:443 + bwx-ca-orderermsp-ue6v.hlf: + caName: ca + registrar: + enrollId: enroll + enrollSecret: enrollpw + tlsCACerts: + pem: + - | + -----BEGIN CERTIFICATE----- + MIICpTCCAkugAwIBAgIRAPCAD8dgUyynCB8Tj3ipGycwCgYIKoZIzj0EAwIwWjEL + MAkGA1UEBhMCVVMxETAPBgNVBAcTCEJydXNzZWxzMREwDwYDVQQJEwhCcnVzc2Vs + czEQMA4GA1UEChMHRnVqaXRzdTETMBEGA1UECxMKQmxvY2tjaGFpbjAeFw0yMjA2 + MzAwOTA1MjhaFw0zMjA3MDEwOTA1MjhaMFoxCzAJBgNVBAYTAlVTMREwDwYDVQQH + EwhCcnVzc2VsczERMA8GA1UECRMIQnJ1c3NlbHMxEDAOBgNVBAoTB0Z1aml0c3Ux + EzARBgNVBAsTCkJsb2NrY2hhaW4wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAS9 + n86JxeAUr+NMOEoGHb/ZVmEF5+BcIppNhCX1Gi02Qkyiku94/zMEHdS4xzkkORRg + CIH8HLzQsikIpuDjh72Lo4HxMIHuMA4GA1UdDwEB/wQEAwIBpjAdBgNVHSUEFjAU + BggrBgEFBQcDAgYIKwYBBQUHAwEwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQg + DudWSW3wGunBaBqTfMuGnil8upvjU82PvLr0E/rM6cAwgYAGA1UdEQR5MHeCGmJ3 + eC1jYS1vcmRlcmVybXNwLXVlNnYuaGxmghZid3gtY2Etb3JkZXJlcm1zcC11ZTZ2 + gglsb2NhbGhvc3SCKmJ3eC1jYS1vcmRlcmVybXNwLmhsZi5id3gtdWF0LnJlZGxl + ZGdlci5ldYcEfwAAAYcECgcABDAKBggqhkjOPQQDAgNIADBFAiEA127hPpImMJOt + gqoS3iZe+s81yZVweEQgKRCuQ8LFQO0CIHUTLlH4hhcgt66m3dPs4lztHbWJ69ap + 71V3We3Qft0D + -----END CERTIFICATE----- + url: https://bwx-ca-orderermsp.hlf.bwx-uat.redledger.eu:443 +channels: + bwx: + orderers: + - bwx-orderermsp-orderer0-5zlt.hlf + - bwx-orderermsp-orderer1-2rjs.hlf + - bwx-orderermsp-orderer2-3ejg.hlf + peers: + bwx-bwfmsp-peer0-wgsh.hlf: + chaincodeQuery: true + discover: true + endorsingPeer: true + eventSource: true + ledgerQuery: true + bwx-bwtmsp-peer0-riy3.hlf: + chaincodeQuery: true + discover: true + endorsingPeer: true + eventSource: true + ledgerQuery: true + bwx-bwxmsp-peer0-9qak.hlf: + chaincodeQuery: true + discover: true + endorsingPeer: true + eventSource: true + ledgerQuery: true +client: + organization: +name: hlf-network +orderers: + bwx-orderermsp-orderer0-5zlt.hlf: + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICQDCCAeagAwIBAgIRAI4kx6Ae8z2E7FULxJD9ZAUwCgYIKoZIzj0EAwIwajEL + MAkGA1UEBhMCQkUxETAPBgNVBAcTCEJydXNzZWxzMREwDwYDVQQJEwhCcnVzc2Vs + czEQMA4GA1UEChMHRnVqaXRzdTETMBEGA1UECxMKQmxvY2tjaGFpbjEOMAwGA1UE + AxMFdGxzY2EwHhcNMjIwNjMwMDkwNTI4WhcNMzIwNzAxMDkwNTI4WjBqMQswCQYD + VQQGEwJCRTERMA8GA1UEBxMIQnJ1c3NlbHMxETAPBgNVBAkTCEJydXNzZWxzMRAw + DgYDVQQKEwdGdWppdHN1MRMwEQYDVQQLEwpCbG9ja2NoYWluMQ4wDAYDVQQDEwV0 + bHNjYTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABKHtcl6OCOBsqbt4eCkl37Bd + 5+EIiWu6zx0YGOaxrCve4lNqoXuUUzhUFk40lS2jK+WSglRP6LJHhmXsHtW4yMGj + bTBrMA4GA1UdDwEB/wQEAwIBpjAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUH + AwEwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgsXwyD5XK2Xa+utk4cIFoLOLO + iXghm3zuC2NAqHBWc2YwCgYIKoZIzj0EAwIDSAAwRQIhAKT1BvyltvaoTSvlWYHW + RkgrmIalEIaKeyidluHCCEKkAiBYmsaeCmXvuSlfT52Yni07dbjTID4Ge+/wMct4 + XxTVBw== + -----END CERTIFICATE----- + url: grpcs://bwx-orderermsp-orderer0.hlf.bwx-uat.redledger.eu:443 + bwx-orderermsp-orderer1-2rjs.hlf: + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICQDCCAeagAwIBAgIRAI4kx6Ae8z2E7FULxJD9ZAUwCgYIKoZIzj0EAwIwajEL + MAkGA1UEBhMCQkUxETAPBgNVBAcTCEJydXNzZWxzMREwDwYDVQQJEwhCcnVzc2Vs + czEQMA4GA1UEChMHRnVqaXRzdTETMBEGA1UECxMKQmxvY2tjaGFpbjEOMAwGA1UE + AxMFdGxzY2EwHhcNMjIwNjMwMDkwNTI4WhcNMzIwNzAxMDkwNTI4WjBqMQswCQYD + VQQGEwJCRTERMA8GA1UEBxMIQnJ1c3NlbHMxETAPBgNVBAkTCEJydXNzZWxzMRAw + DgYDVQQKEwdGdWppdHN1MRMwEQYDVQQLEwpCbG9ja2NoYWluMQ4wDAYDVQQDEwV0 + bHNjYTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABKHtcl6OCOBsqbt4eCkl37Bd + 5+EIiWu6zx0YGOaxrCve4lNqoXuUUzhUFk40lS2jK+WSglRP6LJHhmXsHtW4yMGj + bTBrMA4GA1UdDwEB/wQEAwIBpjAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUH + AwEwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgsXwyD5XK2Xa+utk4cIFoLOLO + iXghm3zuC2NAqHBWc2YwCgYIKoZIzj0EAwIDSAAwRQIhAKT1BvyltvaoTSvlWYHW + RkgrmIalEIaKeyidluHCCEKkAiBYmsaeCmXvuSlfT52Yni07dbjTID4Ge+/wMct4 + XxTVBw== + -----END CERTIFICATE----- + url: grpcs://bwx-orderermsp-orderer1.hlf.bwx-uat.redledger.eu:443 + bwx-orderermsp-orderer2-3ejg.hlf: + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICQDCCAeagAwIBAgIRAI4kx6Ae8z2E7FULxJD9ZAUwCgYIKoZIzj0EAwIwajEL + MAkGA1UEBhMCQkUxETAPBgNVBAcTCEJydXNzZWxzMREwDwYDVQQJEwhCcnVzc2Vs + czEQMA4GA1UEChMHRnVqaXRzdTETMBEGA1UECxMKQmxvY2tjaGFpbjEOMAwGA1UE + AxMFdGxzY2EwHhcNMjIwNjMwMDkwNTI4WhcNMzIwNzAxMDkwNTI4WjBqMQswCQYD + VQQGEwJCRTERMA8GA1UEBxMIQnJ1c3NlbHMxETAPBgNVBAkTCEJydXNzZWxzMRAw + DgYDVQQKEwdGdWppdHN1MRMwEQYDVQQLEwpCbG9ja2NoYWluMQ4wDAYDVQQDEwV0 + bHNjYTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABKHtcl6OCOBsqbt4eCkl37Bd + 5+EIiWu6zx0YGOaxrCve4lNqoXuUUzhUFk40lS2jK+WSglRP6LJHhmXsHtW4yMGj + bTBrMA4GA1UdDwEB/wQEAwIBpjAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUH + AwEwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgsXwyD5XK2Xa+utk4cIFoLOLO + iXghm3zuC2NAqHBWc2YwCgYIKoZIzj0EAwIDSAAwRQIhAKT1BvyltvaoTSvlWYHW + RkgrmIalEIaKeyidluHCCEKkAiBYmsaeCmXvuSlfT52Yni07dbjTID4Ge+/wMct4 + XxTVBw== + -----END CERTIFICATE----- + url: grpcs://bwx-orderermsp-orderer2.hlf.bwx-uat.redledger.eu:443 +organizations: + bwfmsp: + cryptoPath: /tmp/cryptopath + mspid: bwfmsp + orderers: [] + peers: + - bwx-bwfmsp-peer0-wgsh.hlf + users: + admin: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIICTzCCAfagAwIBAgIUN2GU8FivHOjZ5xIZTIQCHze2pJQwCgYIKoZIzj0EAwIw + ZzELMAkGA1UEBhMCVVMxETAPBgNVBAcTCEJydXNzZWxzMREwDwYDVQQJEwhCcnVz + c2VsczEQMA4GA1UEChMHRnVqaXRzdTETMBEGA1UECxMKQmxvY2tjaGFpbjELMAkG + A1UEAxMCY2EwHhcNMjIwNjMwMDg1ODA1WhcNMjMwNzA0MDk1OTAwWjAgMQ4wDAYD + VQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggqhkjOPQMB + BwNCAARP/KUTkxfRWfVrKD9PX7fKv/GDAAVqft6HiL4LdH1RHx8xSOVosVru7xdf + ARdynrgUMKSGslb0X5ySuPZFg0eNo4HGMIHDMA4GA1UdDwEB/wQEAwIHgDAMBgNV + HRMBAf8EAjAAMB0GA1UdDgQWBBTpqJjwHFMI95eOFdweXPu4a59qiDArBgNVHSME + JDAigCBvFVnK0XnQaWMu/Q2cZWdpGNB5I7XkVPWwWpv9orbVnjBXBggqAwQFBgcI + AQRLeyJhdHRycyI6eyJoZi5BZmZpbGlhdGlvbiI6IiIsImhmLkVucm9sbG1lbnRJ + RCI6ImFkbWluIiwiaGYuVHlwZSI6ImFkbWluIn19MAoGCCqGSM49BAMCA0cAMEQC + IE3lhGUhjL8oXxF9lx3Fy/beJIuyMFAOQx7YPfpzSf+qAiBCk5ggSAW3e3FknHH+ + XYqaotf2IIpuM6LY+TflRMa5gQ== + -----END CERTIFICATE----- + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgRPMGV81yob+K03ie + WRvdOkaNVTr2/X2bRGLCEcj+tMehRANCAARP/KUTkxfRWfVrKD9PX7fKv/GDAAVq + ft6HiL4LdH1RHx8xSOVosVru7xdfARdynrgUMKSGslb0X5ySuPZFg0eN + -----END PRIVATE KEY----- + bwtmsp: + cryptoPath: /tmp/cryptopath + mspid: bwtmsp + orderers: [] + peers: + - bwx-bwtmsp-peer0-riy3.hlf + users: + admin: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIICUDCCAfagAwIBAgIUDVoP0dFRGI40u681NxklMYrMSGcwCgYIKoZIzj0EAwIw + ZzELMAkGA1UEBhMCVVMxETAPBgNVBAcTCEJydXNzZWxzMREwDwYDVQQJEwhCcnVz + c2VsczEQMA4GA1UEChMHRnVqaXRzdTETMBEGA1UECxMKQmxvY2tjaGFpbjELMAkG + A1UEAxMCY2EwHhcNMjIwNjMwMDg0NDQ0WhcNMjMwNzA0MDk1OTAwWjAgMQ4wDAYD + VQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggqhkjOPQMB + BwNCAAS5SVjJS5mDBS8uoY6oMX+NqjsoW33ywRJxeu34IL9oCo2zDLry2KD/Pcxx + 27WrDpecIAK/keDGGqZBySnVFRLGo4HGMIHDMA4GA1UdDwEB/wQEAwIHgDAMBgNV + HRMBAf8EAjAAMB0GA1UdDgQWBBRAp76sfITOSQ7/Jc//PLGxuOTS9DArBgNVHSME + JDAigCAZJWewTPF4f8i4bOtk3lQU418Uxu3vQ7glalSMUAwptjBXBggqAwQFBgcI + AQRLeyJhdHRycyI6eyJoZi5BZmZpbGlhdGlvbiI6IiIsImhmLkVucm9sbG1lbnRJ + RCI6ImFkbWluIiwiaGYuVHlwZSI6ImFkbWluIn19MAoGCCqGSM49BAMCA0gAMEUC + IQCG4JTMuJxDQkhxamIvxfsw97RmUYsLfvHoToltuW6igAIgO2jbOLvF4oENK7XF + 0V09EZF8tpxQYdImwy+8rmjHiIc= + -----END CERTIFICATE----- + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgnMIUhmQy04Od7NDp + Q634E3omMHwk4IArsQteTadofx2hRANCAAS5SVjJS5mDBS8uoY6oMX+NqjsoW33y + wRJxeu34IL9oCo2zDLry2KD/Pcxx27WrDpecIAK/keDGGqZBySnVFRLG + -----END PRIVATE KEY----- + bwxmsp: + cryptoPath: /tmp/cryptopath + mspid: bwxmsp + orderers: [] + peers: + - bwx-bwxmsp-peer0-9qak.hlf + users: + admin: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIICUDCCAfagAwIBAgIUZrTpDhj57iqZxfmSLw8Df4OMoZcwCgYIKoZIzj0EAwIw + ZzELMAkGA1UEBhMCVVMxETAPBgNVBAcTCEJydXNzZWxzMREwDwYDVQQJEwhCcnVz + c2VsczEQMA4GA1UEChMHRnVqaXRzdTETMBEGA1UECxMKQmxvY2tjaGFpbjELMAkG + A1UEAxMCY2EwHhcNMjIwNjMwMDg0MTE4WhcNMjMwNzA0MTAwMDAwWjAgMQ4wDAYD + VQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggqhkjOPQMB + BwNCAARqeebELEURHk+pl4pSNPULBxQ/KBCwVEkF5dPGY3bvSM6Cpzjeof65w40T + if1eVN74Fh1YSjaynh24tYxlEkzKo4HGMIHDMA4GA1UdDwEB/wQEAwIHgDAMBgNV + HRMBAf8EAjAAMB0GA1UdDgQWBBQpcCF3aS1TgHSkEPkvT47f1kF/KjArBgNVHSME + JDAigCAihViOUy141Q+Am1hjrSa8yUHEDLRBti05ZHNMi2+ERjBXBggqAwQFBgcI + AQRLeyJhdHRycyI6eyJoZi5BZmZpbGlhdGlvbiI6IiIsImhmLkVucm9sbG1lbnRJ + RCI6ImFkbWluIiwiaGYuVHlwZSI6ImFkbWluIn19MAoGCCqGSM49BAMCA0gAMEUC + IQCDZzgVv52dhmMTvtkFSIl2lnaAcqxCZomBFpjdvmlaYQIgCIajokc0hXNOcjhX + fvr7bx+frVYUIsnVscGSgEkg0hc= + -----END CERTIFICATE----- + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgWRDltLWiYogpmtxR + zklmVQfQJbm6XQuD8EewA1zXTsGhRANCAARqeebELEURHk+pl4pSNPULBxQ/KBCw + VEkF5dPGY3bvSM6Cpzjeof65w40Tif1eVN74Fh1YSjaynh24tYxlEkzK + -----END PRIVATE KEY----- + orderermsp: + cryptoPath: /tmp/cryptopath + mspid: orderermsp + orderers: + - bwx-orderermsp-orderer0-5zlt.hlf + - bwx-orderermsp-orderer1-2rjs.hlf + - bwx-orderermsp-orderer2-3ejg.hlf + peers: [] + users: + admin: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIICUDCCAfagAwIBAgIUQx1V2G/YJBpvIptJ4CTYNgYExZQwCgYIKoZIzj0EAwIw + ZzELMAkGA1UEBhMCVVMxETAPBgNVBAcTCEJydXNzZWxzMREwDwYDVQQJEwhCcnVz + c2VsczEQMA4GA1UEChMHRnVqaXRzdTETMBEGA1UECxMKQmxvY2tjaGFpbjELMAkG + A1UEAxMCY2EwHhcNMjIwNjMwMDkwNTI4WhcNMjMwNzA0MDk1NjAwWjAgMQ4wDAYD + VQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggqhkjOPQMB + BwNCAAQ9aOnUFq7xKK6sDuTS0HwoPEt7jagoVZ2Q0TsK5yTNFf2siEYbXXHLKHAZ + M4uT0FbOWH3m0XtHUEzoBjTikKDAo4HGMIHDMA4GA1UdDwEB/wQEAwIHgDAMBgNV + HRMBAf8EAjAAMB0GA1UdDgQWBBSs9m64XS6QuBP9qxrnoWY/L/dOGDArBgNVHSME + JDAigCDjVhj9UPsiuiPNEOcAMXNbiD7MShpFPKhVb3YNv4JPgjBXBggqAwQFBgcI + AQRLeyJhdHRycyI6eyJoZi5BZmZpbGlhdGlvbiI6IiIsImhmLkVucm9sbG1lbnRJ + RCI6ImFkbWluIiwiaGYuVHlwZSI6ImFkbWluIn19MAoGCCqGSM49BAMCA0gAMEUC + IQCg0n9VTi/Bv+9X7TMlgg3B44rnvuhSuoCNXPYnTNqQTQIgAJf+tWy3sA3JqgRP + spWVcEjAee5UABcO3mNC5Ob48iA= + -----END CERTIFICATE----- + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgmhERldxo96L94bzi + Pc4XCRuCzf2hj7LnDKlqrBc01tChRANCAAQ9aOnUFq7xKK6sDuTS0HwoPEt7jago + VZ2Q0TsK5yTNFf2siEYbXXHLKHAZM4uT0FbOWH3m0XtHUEzoBjTikKDA + -----END PRIVATE KEY----- +peers: + bwx-bwfmsp-peer0-wgsh.hlf: + grpcOptions: + allow-insecure: false + hostnameOverride: "" + ssl-target-name-override: "" + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICQDCCAeagAwIBAgIRAML9WIk2YVyWe3wJNKq2n0EwCgYIKoZIzj0EAwIwajEL + MAkGA1UEBhMCQkUxETAPBgNVBAcTCEJydXNzZWxzMREwDwYDVQQJEwhCcnVzc2Vs + czEQMA4GA1UEChMHRnVqaXRzdTETMBEGA1UECxMKQmxvY2tjaGFpbjEOMAwGA1UE + AxMFdGxzY2EwHhcNMjIwNjMwMDg1ODA1WhcNMzIwNzAxMDg1ODA1WjBqMQswCQYD + VQQGEwJCRTERMA8GA1UEBxMIQnJ1c3NlbHMxETAPBgNVBAkTCEJydXNzZWxzMRAw + DgYDVQQKEwdGdWppdHN1MRMwEQYDVQQLEwpCbG9ja2NoYWluMQ4wDAYDVQQDEwV0 + bHNjYTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABHRVqsNU1vOJXGju/N3fGs3j + nIVD+52OXT2jQnPwO0UBLYpsh6a50j2AuqzcN951dkzSLC7tuAo0y12WQAjjebSj + bTBrMA4GA1UdDwEB/wQEAwIBpjAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUH + AwEwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgFEAbLgQpYDu74iIjSdUsz7Tc + Iyyd6br/WoNMPO4u2lEwCgYIKoZIzj0EAwIDSAAwRQIhAO+5od+pY4LZpr12JZ4p + 23EYy9EJax8s4jW3rpW65klAAiAQ7Qt0q0+WyAKJKoIaaeGMaA9sGtn63h5G8LiO + sZleag== + -----END CERTIFICATE----- + url: grpcs://bwx-bwfmsp-peer0.hlf.bwx-uat.redledger.eu:443 + bwx-bwtmsp-peer0-riy3.hlf: + grpcOptions: + allow-insecure: false + hostnameOverride: "" + ssl-target-name-override: "" + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICQDCCAeWgAwIBAgIQY3voltJC6KodG2ddf3/KejAKBggqhkjOPQQDAjBqMQsw + CQYDVQQGEwJCRTERMA8GA1UEBxMIQnJ1c3NlbHMxETAPBgNVBAkTCEJydXNzZWxz + MRAwDgYDVQQKEwdGdWppdHN1MRMwEQYDVQQLEwpCbG9ja2NoYWluMQ4wDAYDVQQD + EwV0bHNjYTAeFw0yMjA2MzAwODQ0NDRaFw0zMjA3MDEwODQ0NDRaMGoxCzAJBgNV + BAYTAkJFMREwDwYDVQQHEwhCcnVzc2VsczERMA8GA1UECRMIQnJ1c3NlbHMxEDAO + BgNVBAoTB0Z1aml0c3UxEzARBgNVBAsTCkJsb2NrY2hhaW4xDjAMBgNVBAMTBXRs + c2NhMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEcjsjOM2yBm4P0efLRjDau+5C + zC1Dv1GnbOcxdJoJOGbRol+RwJSV+8iZVkQMDYOUXUH6SXwKjm0Wf4pBegTymKNt + MGswDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcD + ATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCBXlO3K91udjm3ecAcgWX1cl1/x + UnpJ2VA8CnlGI6gMRDAKBggqhkjOPQQDAgNJADBGAiEA1wUQg6naNagZ5poq0mlX + 4Cbsk0060M1iDgtiA/iP+u8CIQCPUcJ4xN0apKGWM5acL36hXJvm9oWx8wIQNuoo + nYHzRQ== + -----END CERTIFICATE----- + url: grpcs://bwx-bwtmsp-peer0.hlf.bwx-uat.redledger.eu:443 + bwx-bwxmsp-peer0-9qak.hlf: + grpcOptions: + allow-insecure: false + hostnameOverride: "" + ssl-target-name-override: "" + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICPzCCAeWgAwIBAgIQf1ZUX9THt8z5ZQ34SSnB0DAKBggqhkjOPQQDAjBqMQsw + CQYDVQQGEwJCRTERMA8GA1UEBxMIQnJ1c3NlbHMxETAPBgNVBAkTCEJydXNzZWxz + MRAwDgYDVQQKEwdGdWppdHN1MRMwEQYDVQQLEwpCbG9ja2NoYWluMQ4wDAYDVQQD + EwV0bHNjYTAeFw0yMjA2MzAwODQxMThaFw0zMjA3MDEwODQxMThaMGoxCzAJBgNV + BAYTAkJFMREwDwYDVQQHEwhCcnVzc2VsczERMA8GA1UECRMIQnJ1c3NlbHMxEDAO + BgNVBAoTB0Z1aml0c3UxEzARBgNVBAsTCkJsb2NrY2hhaW4xDjAMBgNVBAMTBXRs + c2NhMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE7kEtxJG84I4MGHfF0LUccFeZ + W1ErSdi7kE6admDqadA8QbiVXKwpTTutvYRBY20axwRPpRLBHafauxZ0tk/Y8aNt + MGswDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcD + ATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCBasL+kcvZ5k9CKl2lvcMCsxBCT + wuX81vq02zy5uITniDAKBggqhkjOPQQDAgNIADBFAiEA1v/qmFW2b7cpTffVmU2k + sS3BfdvaY6o5jUVwaPJ/Ff0CIGw1LupWFwYVRLqIfDsGaIBh6NlvE3LtdxTnGNK/ + LhxM + -----END CERTIFICATE----- + url: grpcs://bwx-bwxmsp-peer0.hlf.bwx-uat.redledger.eu:443 +version: 1.0.0 diff --git a/kubectl-hlf/bwx.json b/kubectl-hlf/bwx.json new file mode 100644 index 00000000..8730e7a4 --- /dev/null +++ b/kubectl-hlf/bwx.json @@ -0,0 +1,1076 @@ + [fabsdk/fab] 2022/09/01 16:19:29 UTC - fab.detectDeprecatedNetworkConfig -> WARN Getting orderers from endpoint config channels.orderer is deprecated, use entity matchers to override orderer configuration + [fabsdk/fab] 2022/09/01 16:19:29 UTC - fab.detectDeprecatedNetworkConfig -> WARN visit https://github.com/hyperledger/fabric-sdk-go/blob/master/test/fixtures/config/overrides/local_entity_matchers.yaml for samples +{ + "channel_group": { + "groups": { + "Application": { + "groups": { + "bwfmsp": { + "groups": {}, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwfmsp", + "role": "ADMIN" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Endorsement": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwfmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwfmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwfmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + } + }, + "values": { + "AnchorPeers": { + "mod_policy": "Admins", + "value": { + "anchor_peers": [ + { + "host": "bwx-bwfmsp-peer0.hlf.bwx-uat.redledger.eu", + "port": 443 + } + ] + }, + "version": "0" + }, + "MSP": { + "mod_policy": "Admins", + "value": { + "config": { + "admins": [], + "crypto_config": { + "identity_identifier_hash_function": "", + "signature_hash_family": "" + }, + "fabric_node_ous": { + "admin_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPRENDQWQrZ0F3SUJBZ0lRS29xWmtqTUIvSCtJYnl5UzJjRTJZVEFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTJNekF3T0RVNE1EVmFGdzB6TWpBM01ERXdPRFU0TURWYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFL25EbzJBTmJYb1lzdVAwWW9ORGFFMGRGdnFHMDdQMngKQzdKOEVMWDNOWHUxWkpqUnhxNlNHR3hiQm05NFhBVElwYVBMMlpVNzA4VnBUYmVpeHNXaEZLTnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0J2RlZuSzBYblFhV011L1EyY1pXZHBHTkI1STdYa1ZQV3cKV3B2OW9yYlZuakFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUJ4SXRKMjFEdGdTM0pKdlpIbDdtQnpUL1R4VmxCMApqc3dtdWFyYS9KZ1ZIUUlnZXVCVFBvMVo4M20zbUJWOXlWdTdvZWdCcUJSa21RWU9qU2ZYZUhtdHVwQT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "admin" + }, + "client_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPRENDQWQrZ0F3SUJBZ0lRS29xWmtqTUIvSCtJYnl5UzJjRTJZVEFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTJNekF3T0RVNE1EVmFGdzB6TWpBM01ERXdPRFU0TURWYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFL25EbzJBTmJYb1lzdVAwWW9ORGFFMGRGdnFHMDdQMngKQzdKOEVMWDNOWHUxWkpqUnhxNlNHR3hiQm05NFhBVElwYVBMMlpVNzA4VnBUYmVpeHNXaEZLTnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0J2RlZuSzBYblFhV011L1EyY1pXZHBHTkI1STdYa1ZQV3cKV3B2OW9yYlZuakFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUJ4SXRKMjFEdGdTM0pKdlpIbDdtQnpUL1R4VmxCMApqc3dtdWFyYS9KZ1ZIUUlnZXVCVFBvMVo4M20zbUJWOXlWdTdvZWdCcUJSa21RWU9qU2ZYZUhtdHVwQT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "client" + }, + "enable": true, + "orderer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPRENDQWQrZ0F3SUJBZ0lRS29xWmtqTUIvSCtJYnl5UzJjRTJZVEFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTJNekF3T0RVNE1EVmFGdzB6TWpBM01ERXdPRFU0TURWYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFL25EbzJBTmJYb1lzdVAwWW9ORGFFMGRGdnFHMDdQMngKQzdKOEVMWDNOWHUxWkpqUnhxNlNHR3hiQm05NFhBVElwYVBMMlpVNzA4VnBUYmVpeHNXaEZLTnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0J2RlZuSzBYblFhV011L1EyY1pXZHBHTkI1STdYa1ZQV3cKV3B2OW9yYlZuakFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUJ4SXRKMjFEdGdTM0pKdlpIbDdtQnpUL1R4VmxCMApqc3dtdWFyYS9KZ1ZIUUlnZXVCVFBvMVo4M20zbUJWOXlWdTdvZWdCcUJSa21RWU9qU2ZYZUhtdHVwQT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "orderer" + }, + "peer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPRENDQWQrZ0F3SUJBZ0lRS29xWmtqTUIvSCtJYnl5UzJjRTJZVEFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTJNekF3T0RVNE1EVmFGdzB6TWpBM01ERXdPRFU0TURWYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFL25EbzJBTmJYb1lzdVAwWW9ORGFFMGRGdnFHMDdQMngKQzdKOEVMWDNOWHUxWkpqUnhxNlNHR3hiQm05NFhBVElwYVBMMlpVNzA4VnBUYmVpeHNXaEZLTnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0J2RlZuSzBYblFhV011L1EyY1pXZHBHTkI1STdYa1ZQV3cKV3B2OW9yYlZuakFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUJ4SXRKMjFEdGdTM0pKdlpIbDdtQnpUL1R4VmxCMApqc3dtdWFyYS9KZ1ZIUUlnZXVCVFBvMVo4M20zbUJWOXlWdTdvZWdCcUJSa21RWU9qU2ZYZUhtdHVwQT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "peer" + } + }, + "intermediate_certs": [], + "name": "bwfmsp", + "organizational_unit_identifiers": [], + "revocation_list": [], + "root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPRENDQWQrZ0F3SUJBZ0lRS29xWmtqTUIvSCtJYnl5UzJjRTJZVEFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTJNekF3T0RVNE1EVmFGdzB6TWpBM01ERXdPRFU0TURWYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFL25EbzJBTmJYb1lzdVAwWW9ORGFFMGRGdnFHMDdQMngKQzdKOEVMWDNOWHUxWkpqUnhxNlNHR3hiQm05NFhBVElwYVBMMlpVNzA4VnBUYmVpeHNXaEZLTnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0J2RlZuSzBYblFhV011L1EyY1pXZHBHTkI1STdYa1ZQV3cKV3B2OW9yYlZuakFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUJ4SXRKMjFEdGdTM0pKdlpIbDdtQnpUL1R4VmxCMApqc3dtdWFyYS9KZ1ZIUUlnZXVCVFBvMVo4M20zbUJWOXlWdTdvZWdCcUJSa21RWU9qU2ZYZUhtdHVwQT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=" + ], + "signing_identity": null, + "tls_intermediate_certs": [], + "tls_root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNRRENDQWVhZ0F3SUJBZ0lSQU1MOVdJazJZVnlXZTN3Sk5LcTJuMEV3Q2dZSUtvWkl6ajBFQXdJd2FqRUwKTUFrR0ExVUVCaE1DUWtVeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFT01Bd0dBMVVFCkF4TUZkR3h6WTJFd0hoY05Nakl3TmpNd01EZzFPREExV2hjTk16SXdOekF4TURnMU9EQTFXakJxTVFzd0NRWUQKVlFRR0V3SkNSVEVSTUE4R0ExVUVCeE1JUW5KMWMzTmxiSE14RVRBUEJnTlZCQWtUQ0VKeWRYTnpaV3h6TVJBdwpEZ1lEVlFRS0V3ZEdkV3BwZEhOMU1STXdFUVlEVlFRTEV3cENiRzlqYTJOb1lXbHVNUTR3REFZRFZRUURFd1YwCmJITmpZVEJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUFCSFJWcXNOVTF2T0pYR2p1L04zZkdzM2oKbklWRCs1Mk9YVDJqUW5Qd08wVUJMWXBzaDZhNTBqMkF1cXpjTjk1MWRrelNMQzd0dUFvMHkxMldRQWpqZWJTagpiVEJyTUE0R0ExVWREd0VCL3dRRUF3SUJwakFkQmdOVkhTVUVGakFVQmdnckJnRUZCUWNEQWdZSUt3WUJCUVVICkF3RXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QXBCZ05WSFE0RUlnUWdGRUFiTGdRcFlEdTc0aUlqU2RVc3o3VGMKSXl5ZDZici9Xb05NUE80dTJsRXdDZ1lJS29aSXpqMEVBd0lEU0FBd1JRSWhBTys1b2QrcFk0TFpwcjEySlo0cAoyM0VZeTlFSmF4OHM0alczcnBXNjVrbEFBaUFRN1F0MHEwK1d5QUtKS29JYWFlR01hQTlzR3RuNjNoNUc4TGlPCnNabGVhZz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + ] + }, + "type": 0 + }, + "version": "0" + } + }, + "version": "1" + }, + "bwtmsp": { + "groups": {}, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwtmsp", + "role": "ADMIN" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Endorsement": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwtmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwtmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwtmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + } + }, + "values": { + "AnchorPeers": { + "mod_policy": "Admins", + "value": { + "anchor_peers": [ + { + "host": "bwx-bwtmsp-peer0.hlf.bwx-uat.redledger.eu", + "port": 443 + } + ] + }, + "version": "0" + }, + "MSP": { + "mod_policy": "Admins", + "value": { + "config": { + "admins": [], + "crypto_config": { + "identity_identifier_hash_function": "", + "signature_hash_family": "" + }, + "fabric_node_ous": { + "admin_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPakNDQWVDZ0F3SUJBZ0lSQU5mL1BncklxdGpQcFFNdkp3TEpYYmt3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdOak13TURnME5EUTBXaGNOTXpJd056QXhNRGcwTkRRMFdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk9GRy9nTUI5UWJVbnN6cGxLdG5FTEcrc1Q0ZlRPNU4KQVJ2V3lJT25RSTN1ck9CVjkwQ3BCdGJjNDRMMURrNER0VzlpVEJYSUNReW5FSGNrKzBxeDM0K2piVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnR1NWbnNFenhlSC9JdUd6clpONVVGT05mRk1idDcwTzQKSldwVWpGQU1LYll3Q2dZSUtvWkl6ajBFQXdJRFNBQXdSUUlnSitGWjFFeS82dWtzclI5OVZaY0JicTVHNlg0Mwo1UzJZNVRzeTdTQWtGZGdDSVFEMDRhOEh1Ym43R2xCQ3NCOGdqemtkMDhJam91VTUxYy9Jdy9aSzdkd0Uxdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "admin" + }, + "client_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPakNDQWVDZ0F3SUJBZ0lSQU5mL1BncklxdGpQcFFNdkp3TEpYYmt3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdOak13TURnME5EUTBXaGNOTXpJd056QXhNRGcwTkRRMFdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk9GRy9nTUI5UWJVbnN6cGxLdG5FTEcrc1Q0ZlRPNU4KQVJ2V3lJT25RSTN1ck9CVjkwQ3BCdGJjNDRMMURrNER0VzlpVEJYSUNReW5FSGNrKzBxeDM0K2piVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnR1NWbnNFenhlSC9JdUd6clpONVVGT05mRk1idDcwTzQKSldwVWpGQU1LYll3Q2dZSUtvWkl6ajBFQXdJRFNBQXdSUUlnSitGWjFFeS82dWtzclI5OVZaY0JicTVHNlg0Mwo1UzJZNVRzeTdTQWtGZGdDSVFEMDRhOEh1Ym43R2xCQ3NCOGdqemtkMDhJam91VTUxYy9Jdy9aSzdkd0Uxdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "client" + }, + "enable": true, + "orderer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPakNDQWVDZ0F3SUJBZ0lSQU5mL1BncklxdGpQcFFNdkp3TEpYYmt3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdOak13TURnME5EUTBXaGNOTXpJd056QXhNRGcwTkRRMFdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk9GRy9nTUI5UWJVbnN6cGxLdG5FTEcrc1Q0ZlRPNU4KQVJ2V3lJT25RSTN1ck9CVjkwQ3BCdGJjNDRMMURrNER0VzlpVEJYSUNReW5FSGNrKzBxeDM0K2piVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnR1NWbnNFenhlSC9JdUd6clpONVVGT05mRk1idDcwTzQKSldwVWpGQU1LYll3Q2dZSUtvWkl6ajBFQXdJRFNBQXdSUUlnSitGWjFFeS82dWtzclI5OVZaY0JicTVHNlg0Mwo1UzJZNVRzeTdTQWtGZGdDSVFEMDRhOEh1Ym43R2xCQ3NCOGdqemtkMDhJam91VTUxYy9Jdy9aSzdkd0Uxdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "orderer" + }, + "peer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPakNDQWVDZ0F3SUJBZ0lSQU5mL1BncklxdGpQcFFNdkp3TEpYYmt3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdOak13TURnME5EUTBXaGNOTXpJd056QXhNRGcwTkRRMFdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk9GRy9nTUI5UWJVbnN6cGxLdG5FTEcrc1Q0ZlRPNU4KQVJ2V3lJT25RSTN1ck9CVjkwQ3BCdGJjNDRMMURrNER0VzlpVEJYSUNReW5FSGNrKzBxeDM0K2piVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnR1NWbnNFenhlSC9JdUd6clpONVVGT05mRk1idDcwTzQKSldwVWpGQU1LYll3Q2dZSUtvWkl6ajBFQXdJRFNBQXdSUUlnSitGWjFFeS82dWtzclI5OVZaY0JicTVHNlg0Mwo1UzJZNVRzeTdTQWtGZGdDSVFEMDRhOEh1Ym43R2xCQ3NCOGdqemtkMDhJam91VTUxYy9Jdy9aSzdkd0Uxdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "peer" + } + }, + "intermediate_certs": [], + "name": "bwtmsp", + "organizational_unit_identifiers": [], + "revocation_list": [], + "root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPakNDQWVDZ0F3SUJBZ0lSQU5mL1BncklxdGpQcFFNdkp3TEpYYmt3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdOak13TURnME5EUTBXaGNOTXpJd056QXhNRGcwTkRRMFdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk9GRy9nTUI5UWJVbnN6cGxLdG5FTEcrc1Q0ZlRPNU4KQVJ2V3lJT25RSTN1ck9CVjkwQ3BCdGJjNDRMMURrNER0VzlpVEJYSUNReW5FSGNrKzBxeDM0K2piVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnR1NWbnNFenhlSC9JdUd6clpONVVGT05mRk1idDcwTzQKSldwVWpGQU1LYll3Q2dZSUtvWkl6ajBFQXdJRFNBQXdSUUlnSitGWjFFeS82dWtzclI5OVZaY0JicTVHNlg0Mwo1UzJZNVRzeTdTQWtGZGdDSVFEMDRhOEh1Ym43R2xCQ3NCOGdqemtkMDhJam91VTUxYy9Jdy9aSzdkd0Uxdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + ], + "signing_identity": null, + "tls_intermediate_certs": [], + "tls_root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNRRENDQWVXZ0F3SUJBZ0lRWTN2b2x0SkM2S29kRzJkZGYzL0tlakFLQmdncWhrak9QUVFEQWpCcU1Rc3cKQ1FZRFZRUUdFd0pDUlRFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVE0d0RBWURWUVFECkV3VjBiSE5qWVRBZUZ3MHlNakEyTXpBd09EUTBORFJhRncwek1qQTNNREV3T0RRME5EUmFNR294Q3pBSkJnTlYKQkFZVEFrSkZNUkV3RHdZRFZRUUhFd2hDY25WemMyVnNjekVSTUE4R0ExVUVDUk1JUW5KMWMzTmxiSE14RURBTwpCZ05WQkFvVEIwWjFhbWwwYzNVeEV6QVJCZ05WQkFzVENrSnNiMk5yWTJoaGFXNHhEakFNQmdOVkJBTVRCWFJzCmMyTmhNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVjanNqT00yeUJtNFAwZWZMUmpEYXUrNUMKekMxRHYxR25iT2N4ZEpvSk9HYlJvbCtSd0pTVis4aVpWa1FNRFlPVVhVSDZTWHdLam0wV2Y0cEJlZ1R5bUtOdApNR3N3RGdZRFZSMFBBUUgvQkFRREFnR21NQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUZCUWNECkFUQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01Da0dBMVVkRGdRaUJDQlhsTzNLOTF1ZGptM2VjQWNnV1gxY2wxL3gKVW5wSjJWQThDbmxHSTZnTVJEQUtCZ2dxaGtqT1BRUURBZ05KQURCR0FpRUExd1VRZzZuYU5hZ1o1cG9xMG1sWAo0Q2JzazAwNjBNMWlEZ3RpQS9pUCt1OENJUUNQVWNKNHhOMGFwS0dXTTVhY0wzNmhYSnZtOW9XeDh3SVFOdW9vCm5ZSHpSUT09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + ] + }, + "type": 0 + }, + "version": "0" + } + }, + "version": "1" + }, + "bwxmsp": { + "groups": {}, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwxmsp", + "role": "ADMIN" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Endorsement": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwxmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwxmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwxmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + } + }, + "values": { + "AnchorPeers": { + "mod_policy": "Admins", + "value": { + "anchor_peers": [ + { + "host": "bwx-bwxmsp-peer0.hlf.bwx-uat.redledger.eu", + "port": 443 + } + ] + }, + "version": "0" + }, + "MSP": { + "mod_policy": "Admins", + "value": { + "config": { + "admins": [], + "crypto_config": { + "identity_identifier_hash_function": "", + "signature_hash_family": "" + }, + "fabric_node_ous": { + "admin_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQU9rM08zM25nMnNhamlGQ041MXZoRkl3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdOak13TURnME1URTRXaGNOTXpJd056QXhNRGcwTVRFNFdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk1aSFZOWHNtSVlrdFpYRG85ZzBETU5NdjF5bkdjdU8KR283bFZIQzcxUFB2ZEV4VElkVVAvOG40Z2FVRk9nMjhkLytmMUU3MzdER3Q0L3M3WVhXQkVIeWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnSW9WWWpsTXRlTlVQZ0p0WVk2MG12TWxCeEF5MFFiWXQKT1dSelRJdHZoRVl3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUlQMi9hcXdDdnZLS3pGQ284MmttTVFOWEwrVwppYXhTcittblY4cHdablpjQWlFQXcycVYyU2JDNVFtT1FjblVmZURPcVJ5YmJmYUVjYlF5ZVEzemhHRmZIdlk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "admin" + }, + "client_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQU9rM08zM25nMnNhamlGQ041MXZoRkl3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdOak13TURnME1URTRXaGNOTXpJd056QXhNRGcwTVRFNFdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk1aSFZOWHNtSVlrdFpYRG85ZzBETU5NdjF5bkdjdU8KR283bFZIQzcxUFB2ZEV4VElkVVAvOG40Z2FVRk9nMjhkLytmMUU3MzdER3Q0L3M3WVhXQkVIeWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnSW9WWWpsTXRlTlVQZ0p0WVk2MG12TWxCeEF5MFFiWXQKT1dSelRJdHZoRVl3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUlQMi9hcXdDdnZLS3pGQ284MmttTVFOWEwrVwppYXhTcittblY4cHdablpjQWlFQXcycVYyU2JDNVFtT1FjblVmZURPcVJ5YmJmYUVjYlF5ZVEzemhHRmZIdlk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "client" + }, + "enable": true, + "orderer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQU9rM08zM25nMnNhamlGQ041MXZoRkl3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdOak13TURnME1URTRXaGNOTXpJd056QXhNRGcwTVRFNFdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk1aSFZOWHNtSVlrdFpYRG85ZzBETU5NdjF5bkdjdU8KR283bFZIQzcxUFB2ZEV4VElkVVAvOG40Z2FVRk9nMjhkLytmMUU3MzdER3Q0L3M3WVhXQkVIeWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnSW9WWWpsTXRlTlVQZ0p0WVk2MG12TWxCeEF5MFFiWXQKT1dSelRJdHZoRVl3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUlQMi9hcXdDdnZLS3pGQ284MmttTVFOWEwrVwppYXhTcittblY4cHdablpjQWlFQXcycVYyU2JDNVFtT1FjblVmZURPcVJ5YmJmYUVjYlF5ZVEzemhHRmZIdlk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "orderer" + }, + "peer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQU9rM08zM25nMnNhamlGQ041MXZoRkl3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdOak13TURnME1URTRXaGNOTXpJd056QXhNRGcwTVRFNFdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk1aSFZOWHNtSVlrdFpYRG85ZzBETU5NdjF5bkdjdU8KR283bFZIQzcxUFB2ZEV4VElkVVAvOG40Z2FVRk9nMjhkLytmMUU3MzdER3Q0L3M3WVhXQkVIeWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnSW9WWWpsTXRlTlVQZ0p0WVk2MG12TWxCeEF5MFFiWXQKT1dSelRJdHZoRVl3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUlQMi9hcXdDdnZLS3pGQ284MmttTVFOWEwrVwppYXhTcittblY4cHdablpjQWlFQXcycVYyU2JDNVFtT1FjblVmZURPcVJ5YmJmYUVjYlF5ZVEzemhHRmZIdlk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "peer" + } + }, + "intermediate_certs": [], + "name": "bwxmsp", + "organizational_unit_identifiers": [], + "revocation_list": [], + "root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQU9rM08zM25nMnNhamlGQ041MXZoRkl3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdOak13TURnME1URTRXaGNOTXpJd056QXhNRGcwTVRFNFdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk1aSFZOWHNtSVlrdFpYRG85ZzBETU5NdjF5bkdjdU8KR283bFZIQzcxUFB2ZEV4VElkVVAvOG40Z2FVRk9nMjhkLytmMUU3MzdER3Q0L3M3WVhXQkVIeWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnSW9WWWpsTXRlTlVQZ0p0WVk2MG12TWxCeEF5MFFiWXQKT1dSelRJdHZoRVl3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUlQMi9hcXdDdnZLS3pGQ284MmttTVFOWEwrVwppYXhTcittblY4cHdablpjQWlFQXcycVYyU2JDNVFtT1FjblVmZURPcVJ5YmJmYUVjYlF5ZVEzemhHRmZIdlk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + ], + "signing_identity": null, + "tls_intermediate_certs": [], + "tls_root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNQekNDQWVXZ0F3SUJBZ0lRZjFaVVg5VEh0OHo1WlEzNFNTbkIwREFLQmdncWhrak9QUVFEQWpCcU1Rc3cKQ1FZRFZRUUdFd0pDUlRFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVE0d0RBWURWUVFECkV3VjBiSE5qWVRBZUZ3MHlNakEyTXpBd09EUXhNVGhhRncwek1qQTNNREV3T0RReE1UaGFNR294Q3pBSkJnTlYKQkFZVEFrSkZNUkV3RHdZRFZRUUhFd2hDY25WemMyVnNjekVSTUE4R0ExVUVDUk1JUW5KMWMzTmxiSE14RURBTwpCZ05WQkFvVEIwWjFhbWwwYzNVeEV6QVJCZ05WQkFzVENrSnNiMk5yWTJoaGFXNHhEakFNQmdOVkJBTVRCWFJzCmMyTmhNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUU3a0V0eEpHODRJNE1HSGZGMExVY2NGZVoKVzFFclNkaTdrRTZhZG1EcWFkQThRYmlWWEt3cFRUdXR2WVJCWTIwYXh3UlBwUkxCSGFmYXV4WjB0ay9ZOGFOdApNR3N3RGdZRFZSMFBBUUgvQkFRREFnR21NQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUZCUWNECkFUQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01Da0dBMVVkRGdRaUJDQmFzTCtrY3ZaNWs5Q0tsMmx2Y01Dc3hCQ1QKd3VYODF2cTAyenk1dUlUbmlEQUtCZ2dxaGtqT1BRUURBZ05JQURCRkFpRUExdi9xbUZXMmI3Y3BUZmZWbVUyawpzUzNCZmR2YVk2bzVqVVZ3YVBKL0ZmMENJR3cxTHVwV0Z3WVZSTHFJZkRzR2FJQmg2Tmx2RTNMdGR4VG5HTksvCkxoeE0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=" + ] + }, + "type": 0 + }, + "version": "0" + } + }, + "version": "1" + } + }, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwxmsp", + "role": "ADMIN" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Endorsement": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "MAJORITY", + "sub_policy": "Endorsement" + } + }, + "version": "0" + }, + "LifecycleEndorsement": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "MAJORITY", + "sub_policy": "Endorsement" + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Readers" + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Writers" + } + }, + "version": "0" + } + }, + "values": { + "ACLs": { + "mod_policy": "Admins", + "value": { + "acls": { + "_lifecycle/CheckCommitReadiness": { + "policy_ref": "/Channel/Application/Writers" + }, + "_lifecycle/CommitChaincodeDefinition": { + "policy_ref": "/Channel/Application/Writers" + }, + "_lifecycle/QueryChaincodeDefinition": { + "policy_ref": "/Channel/Application/Writers" + }, + "_lifecycle/QueryChaincodeDefinitions": { + "policy_ref": "/Channel/Application/Writers" + }, + "cscc/GetChannelConfig": { + "policy_ref": "/Channel/Application/Readers" + }, + "cscc/GetConfigBlock": { + "policy_ref": "/Channel/Application/Readers" + }, + "event/Block": { + "policy_ref": "/Channel/Application/Readers" + }, + "event/FilteredBlock": { + "policy_ref": "/Channel/Application/Readers" + }, + "lscc/ChaincodeExists": { + "policy_ref": "/Channel/Application/Readers" + }, + "lscc/GetChaincodeData": { + "policy_ref": "/Channel/Application/Readers" + }, + "lscc/GetDeploymentSpec": { + "policy_ref": "/Channel/Application/Readers" + }, + "lscc/GetInstantiatedChaincodes": { + "policy_ref": "/Channel/Application/Readers" + }, + "peer/ChaincodeToChaincode": { + "policy_ref": "/Channel/Application/Writers" + }, + "peer/Propose": { + "policy_ref": "/Channel/Application/Writers" + }, + "qscc/GetBlockByHash": { + "policy_ref": "/Channel/Application/Readers" + }, + "qscc/GetBlockByNumber": { + "policy_ref": "/Channel/Application/Readers" + }, + "qscc/GetBlockByTxID": { + "policy_ref": "/Channel/Application/Readers" + }, + "qscc/GetChainInfo": { + "policy_ref": "/Channel/Application/Readers" + }, + "qscc/GetTransactionByID": { + "policy_ref": "/Channel/Application/Readers" + } + } + }, + "version": "1" + }, + "Capabilities": { + "mod_policy": "Admins", + "value": { + "capabilities": { + "V2_0": {} + } + }, + "version": "0" + } + }, + "version": "0" + }, + "Orderer": { + "groups": { + "orderermsp": { + "groups": {}, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "orderermsp", + "role": "ADMIN" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Endorsement": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "orderermsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "orderermsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "orderermsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + } + }, + "values": { + "Endpoints": { + "mod_policy": "Admins", + "value": { + "addresses": [ + "bwx-orderermsp-orderer1.hlf.bwx-uat.redledger.eu:443", + "bwx-orderermsp-orderer2.hlf.bwx-uat.redledger.eu:443", + "bwx-orderermsp-orderer0.hlf.bwx-uat.redledger.eu:443" + ] + }, + "version": "0" + }, + "MSP": { + "mod_policy": "Admins", + "value": { + "config": { + "admins": [], + "crypto_config": { + "identity_identifier_hash_function": "", + "signature_hash_family": "" + }, + "fabric_node_ous": { + "admin_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPVENDQWQrZ0F3SUJBZ0lRQnBZZXpXcHR3N3BkWkVtYnEzNFdPekFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTJNekF3T1RBMU1qaGFGdzB6TWpBM01ERXdPVEExTWpoYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFb1p5NmhWUkZ5YkUyRnk5cWJZRjVwWnNlUjhKVVdkTzEKcjJpZFVpSWtsRmQ3TzRlSFI5OVFHM3ZmY0RHTVRUemwwTzhPSFpiYmx0eVQvRnRtZXFRMis2TnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0RqVmhqOVVQc2l1aVBORU9jQU1YTmJpRDdNU2hwRlBLaFYKYjNZTnY0SlBnakFLQmdncWhrak9QUVFEQWdOSUFEQkZBaUFEVGZsalhaellDVndFUGo0dXBXMDQraysrNk4wWQpNWGVha3ZOWG9Lc1U5UUloQUpCbW5YUGRpbmxLTlZIc2xPTERoU3d4YWVxcHVZZXhJZnAxaFJlVThIVHgKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "admin" + }, + "client_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPVENDQWQrZ0F3SUJBZ0lRQnBZZXpXcHR3N3BkWkVtYnEzNFdPekFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTJNekF3T1RBMU1qaGFGdzB6TWpBM01ERXdPVEExTWpoYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFb1p5NmhWUkZ5YkUyRnk5cWJZRjVwWnNlUjhKVVdkTzEKcjJpZFVpSWtsRmQ3TzRlSFI5OVFHM3ZmY0RHTVRUemwwTzhPSFpiYmx0eVQvRnRtZXFRMis2TnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0RqVmhqOVVQc2l1aVBORU9jQU1YTmJpRDdNU2hwRlBLaFYKYjNZTnY0SlBnakFLQmdncWhrak9QUVFEQWdOSUFEQkZBaUFEVGZsalhaellDVndFUGo0dXBXMDQraysrNk4wWQpNWGVha3ZOWG9Lc1U5UUloQUpCbW5YUGRpbmxLTlZIc2xPTERoU3d4YWVxcHVZZXhJZnAxaFJlVThIVHgKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "client" + }, + "enable": true, + "orderer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPVENDQWQrZ0F3SUJBZ0lRQnBZZXpXcHR3N3BkWkVtYnEzNFdPekFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTJNekF3T1RBMU1qaGFGdzB6TWpBM01ERXdPVEExTWpoYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFb1p5NmhWUkZ5YkUyRnk5cWJZRjVwWnNlUjhKVVdkTzEKcjJpZFVpSWtsRmQ3TzRlSFI5OVFHM3ZmY0RHTVRUemwwTzhPSFpiYmx0eVQvRnRtZXFRMis2TnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0RqVmhqOVVQc2l1aVBORU9jQU1YTmJpRDdNU2hwRlBLaFYKYjNZTnY0SlBnakFLQmdncWhrak9QUVFEQWdOSUFEQkZBaUFEVGZsalhaellDVndFUGo0dXBXMDQraysrNk4wWQpNWGVha3ZOWG9Lc1U5UUloQUpCbW5YUGRpbmxLTlZIc2xPTERoU3d4YWVxcHVZZXhJZnAxaFJlVThIVHgKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "orderer" + }, + "peer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPVENDQWQrZ0F3SUJBZ0lRQnBZZXpXcHR3N3BkWkVtYnEzNFdPekFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTJNekF3T1RBMU1qaGFGdzB6TWpBM01ERXdPVEExTWpoYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFb1p5NmhWUkZ5YkUyRnk5cWJZRjVwWnNlUjhKVVdkTzEKcjJpZFVpSWtsRmQ3TzRlSFI5OVFHM3ZmY0RHTVRUemwwTzhPSFpiYmx0eVQvRnRtZXFRMis2TnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0RqVmhqOVVQc2l1aVBORU9jQU1YTmJpRDdNU2hwRlBLaFYKYjNZTnY0SlBnakFLQmdncWhrak9QUVFEQWdOSUFEQkZBaUFEVGZsalhaellDVndFUGo0dXBXMDQraysrNk4wWQpNWGVha3ZOWG9Lc1U5UUloQUpCbW5YUGRpbmxLTlZIc2xPTERoU3d4YWVxcHVZZXhJZnAxaFJlVThIVHgKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "peer" + } + }, + "intermediate_certs": [], + "name": "orderermsp", + "organizational_unit_identifiers": [], + "revocation_list": [], + "root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPVENDQWQrZ0F3SUJBZ0lRQnBZZXpXcHR3N3BkWkVtYnEzNFdPekFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTJNekF3T1RBMU1qaGFGdzB6TWpBM01ERXdPVEExTWpoYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFb1p5NmhWUkZ5YkUyRnk5cWJZRjVwWnNlUjhKVVdkTzEKcjJpZFVpSWtsRmQ3TzRlSFI5OVFHM3ZmY0RHTVRUemwwTzhPSFpiYmx0eVQvRnRtZXFRMis2TnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0RqVmhqOVVQc2l1aVBORU9jQU1YTmJpRDdNU2hwRlBLaFYKYjNZTnY0SlBnakFLQmdncWhrak9QUVFEQWdOSUFEQkZBaUFEVGZsalhaellDVndFUGo0dXBXMDQraysrNk4wWQpNWGVha3ZOWG9Lc1U5UUloQUpCbW5YUGRpbmxLTlZIc2xPTERoU3d4YWVxcHVZZXhJZnAxaFJlVThIVHgKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=" + ], + "signing_identity": null, + "tls_intermediate_certs": [], + "tls_root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNRRENDQWVhZ0F3SUJBZ0lSQUk0a3g2QWU4ejJFN0ZVTHhKRDlaQVV3Q2dZSUtvWkl6ajBFQXdJd2FqRUwKTUFrR0ExVUVCaE1DUWtVeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFT01Bd0dBMVVFCkF4TUZkR3h6WTJFd0hoY05Nakl3TmpNd01Ea3dOVEk0V2hjTk16SXdOekF4TURrd05USTRXakJxTVFzd0NRWUQKVlFRR0V3SkNSVEVSTUE4R0ExVUVCeE1JUW5KMWMzTmxiSE14RVRBUEJnTlZCQWtUQ0VKeWRYTnpaV3h6TVJBdwpEZ1lEVlFRS0V3ZEdkV3BwZEhOMU1STXdFUVlEVlFRTEV3cENiRzlqYTJOb1lXbHVNUTR3REFZRFZRUURFd1YwCmJITmpZVEJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUFCS0h0Y2w2T0NPQnNxYnQ0ZUNrbDM3QmQKNStFSWlXdTZ6eDBZR09heHJDdmU0bE5xb1h1VVV6aFVGazQwbFMyaksrV1NnbFJQNkxKSGhtWHNIdFc0eU1HagpiVEJyTUE0R0ExVWREd0VCL3dRRUF3SUJwakFkQmdOVkhTVUVGakFVQmdnckJnRUZCUWNEQWdZSUt3WUJCUVVICkF3RXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QXBCZ05WSFE0RUlnUWdzWHd5RDVYSzJYYSt1dGs0Y0lGb0xPTE8KaVhnaG0zenVDMk5BcUhCV2MyWXdDZ1lJS29aSXpqMEVBd0lEU0FBd1JRSWhBS1QxQnZ5bHR2YW9UU3ZsV1lIVwpSa2dybUlhbEVJYUtleWlkbHVIQ0NFS2tBaUJZbXNhZUNtWHZ1U2xmVDUyWW5pMDdkYmpUSUQ0R2UrL3dNY3Q0Clh4VFZCdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + ] + }, + "type": 0 + }, + "version": "0" + } + }, + "version": "0" + } + }, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "MAJORITY", + "sub_policy": "Admins" + } + }, + "version": "0" + }, + "BlockValidation": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Writers" + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Readers" + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Writers" + } + }, + "version": "0" + } + }, + "values": { + "BatchSize": { + "mod_policy": "Admins", + "value": { + "absolute_max_bytes": 1048576, + "max_message_count": 100, + "preferred_max_bytes": 524288 + }, + "version": "0" + }, + "BatchTimeout": { + "mod_policy": "Admins", + "value": { + "timeout": "2s" + }, + "version": "0" + }, + "Capabilities": { + "mod_policy": "Admins", + "value": { + "capabilities": { + "V2_0": {} + } + }, + "version": "0" + }, + "ChannelRestrictions": { + "mod_policy": "Admins", + "value": null, + "version": "0" + }, + "ConsensusType": { + "mod_policy": "Admins", + "value": { + "metadata": { + "consenters": [ + { + "client_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM0VENDQW9pZ0F3SUJBZ0lVTWd6eUU1TjBvM2NsV0xkdnpZRGVPTk9FRndnd0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd05qTXdNRGt3TlRJNFdoY05Nak13TnpBeE1Ea3dOakF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFUWwwUnN6VFg0TmJ2bHl5TzA1K1g1dG1lUEdEN0Q1RFNwSSs1QTFyS0lueEdWenY3ClIwKzFOWGNmNGY5WTB1ZStrSURBNHVPdUlWTEZIcmRUMmRKditLT0NBVkF3Z2dGTU1BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVTi9QZ0NwK1A0YXlScjFBaHp1TC9QamtoTyt3d0t3WURWUjBqQkNRd0lvQWdzWHd5CkQ1WEsyWGErdXRrNGNJRm9MT0xPaVhnaG0zenVDMk5BcUhCV2MyWXdnY0FHQTFVZEVRU0J1RENCdFlJd1luZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pFdWFHeG1MbUozZUMxMVlYUXVjbVZrYkdWa1oyVnlMbVYxZ2lCaQpkM2d0YjNKa1pYSmxjbTF6Y0MxdmNtUmxjbVZ5TVMweWNtcHpMbWhzWm9JY1luZDRMVzl5WkdWeVpYSnRjM0F0CmIzSmtaWEpsY2pFdE1uSnFjNElKYkc5allXeG9iM04wZ2paaFpHMXBiaTFpZDNndGIzSmtaWEpsY20xemNDMXYKY21SbGNtVnlNUzVvYkdZdVluZDRMWFZoZEM1eVpXUnNaV1JuWlhJdVpYVXdDZ1lJS29aSXpqMEVBd0lEUndBdwpSQUlnRm1XUnhWTlljV05QdzRYZjVxSklaeUo2eFZXRWxDRGNLTHRaRDJ1Mkdtd0NJSEFpVjA4UnRtZkxQdHByCnB5K1YyaG8xbk5ESDJjcUkwck1PWXY0YXhjcUkKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "host": "bwx-orderermsp-orderer1.hlf.bwx-uat.redledger.eu", + "port": 443, + "server_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM0VENDQW9pZ0F3SUJBZ0lVTWd6eUU1TjBvM2NsV0xkdnpZRGVPTk9FRndnd0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd05qTXdNRGt3TlRJNFdoY05Nak13TnpBeE1Ea3dOakF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFUWwwUnN6VFg0TmJ2bHl5TzA1K1g1dG1lUEdEN0Q1RFNwSSs1QTFyS0lueEdWenY3ClIwKzFOWGNmNGY5WTB1ZStrSURBNHVPdUlWTEZIcmRUMmRKditLT0NBVkF3Z2dGTU1BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVTi9QZ0NwK1A0YXlScjFBaHp1TC9QamtoTyt3d0t3WURWUjBqQkNRd0lvQWdzWHd5CkQ1WEsyWGErdXRrNGNJRm9MT0xPaVhnaG0zenVDMk5BcUhCV2MyWXdnY0FHQTFVZEVRU0J1RENCdFlJd1luZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pFdWFHeG1MbUozZUMxMVlYUXVjbVZrYkdWa1oyVnlMbVYxZ2lCaQpkM2d0YjNKa1pYSmxjbTF6Y0MxdmNtUmxjbVZ5TVMweWNtcHpMbWhzWm9JY1luZDRMVzl5WkdWeVpYSnRjM0F0CmIzSmtaWEpsY2pFdE1uSnFjNElKYkc5allXeG9iM04wZ2paaFpHMXBiaTFpZDNndGIzSmtaWEpsY20xemNDMXYKY21SbGNtVnlNUzVvYkdZdVluZDRMWFZoZEM1eVpXUnNaV1JuWlhJdVpYVXdDZ1lJS29aSXpqMEVBd0lEUndBdwpSQUlnRm1XUnhWTlljV05QdzRYZjVxSklaeUo2eFZXRWxDRGNLTHRaRDJ1Mkdtd0NJSEFpVjA4UnRtZkxQdHByCnB5K1YyaG8xbk5ESDJjcUkwck1PWXY0YXhjcUkKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=" + }, + { + "client_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM0VENDQW9pZ0F3SUJBZ0lVRVE2VythVk9NY1ZlQVorRzZzRms1UnVZdVlvd0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd05qTXdNRGt3TlRJNFdoY05Nak13TnpBeE1Ea3dOakF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFQnh4ZkZ0dzNhK1NpS3JIMUIraGovYkphU0xHMS91cGlxSnJJeHRHS3hyQ2tHVy8rCjVvbzBYRTdHQ1BxZldTVWJlVFlxRXlBV0dzclFjTUZaWmhFSWlhT0NBVkF3Z2dGTU1BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVM05kem5vTTNkazVyUTlVWlBod05jSnZZY0VFd0t3WURWUjBqQkNRd0lvQWdzWHd5CkQ1WEsyWGErdXRrNGNJRm9MT0xPaVhnaG0zenVDMk5BcUhCV2MyWXdnY0FHQTFVZEVRU0J1RENCdFlJd1luZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pJdWFHeG1MbUozZUMxMVlYUXVjbVZrYkdWa1oyVnlMbVYxZ2lCaQpkM2d0YjNKa1pYSmxjbTF6Y0MxdmNtUmxjbVZ5TWkwelpXcG5MbWhzWm9JY1luZDRMVzl5WkdWeVpYSnRjM0F0CmIzSmtaWEpsY2pJdE0yVnFaNElKYkc5allXeG9iM04wZ2paaFpHMXBiaTFpZDNndGIzSmtaWEpsY20xemNDMXYKY21SbGNtVnlNaTVvYkdZdVluZDRMWFZoZEM1eVpXUnNaV1JuWlhJdVpYVXdDZ1lJS29aSXpqMEVBd0lEUndBdwpSQUlnZHFOd2FrRGdlQndDM3pXeEpsOXA1Q2FiNWRKTEtLTXlCNEhGY1k5ZXpPVUNJRm1XNmZLa3JpREcvZDlECnd0d2hXTThYNC9WWWRiZ2E1VkxGOWNzY1NxUHkKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "host": "bwx-orderermsp-orderer2.hlf.bwx-uat.redledger.eu", + "port": 443, + "server_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM0VENDQW9pZ0F3SUJBZ0lVRVE2VythVk9NY1ZlQVorRzZzRms1UnVZdVlvd0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd05qTXdNRGt3TlRJNFdoY05Nak13TnpBeE1Ea3dOakF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFQnh4ZkZ0dzNhK1NpS3JIMUIraGovYkphU0xHMS91cGlxSnJJeHRHS3hyQ2tHVy8rCjVvbzBYRTdHQ1BxZldTVWJlVFlxRXlBV0dzclFjTUZaWmhFSWlhT0NBVkF3Z2dGTU1BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVM05kem5vTTNkazVyUTlVWlBod05jSnZZY0VFd0t3WURWUjBqQkNRd0lvQWdzWHd5CkQ1WEsyWGErdXRrNGNJRm9MT0xPaVhnaG0zenVDMk5BcUhCV2MyWXdnY0FHQTFVZEVRU0J1RENCdFlJd1luZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pJdWFHeG1MbUozZUMxMVlYUXVjbVZrYkdWa1oyVnlMbVYxZ2lCaQpkM2d0YjNKa1pYSmxjbTF6Y0MxdmNtUmxjbVZ5TWkwelpXcG5MbWhzWm9JY1luZDRMVzl5WkdWeVpYSnRjM0F0CmIzSmtaWEpsY2pJdE0yVnFaNElKYkc5allXeG9iM04wZ2paaFpHMXBiaTFpZDNndGIzSmtaWEpsY20xemNDMXYKY21SbGNtVnlNaTVvYkdZdVluZDRMWFZoZEM1eVpXUnNaV1JuWlhJdVpYVXdDZ1lJS29aSXpqMEVBd0lEUndBdwpSQUlnZHFOd2FrRGdlQndDM3pXeEpsOXA1Q2FiNWRKTEtLTXlCNEhGY1k5ZXpPVUNJRm1XNmZLa3JpREcvZDlECnd0d2hXTThYNC9WWWRiZ2E1VkxGOWNzY1NxUHkKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=" + }, + { + "client_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM0VENDQW9pZ0F3SUJBZ0lVYmZ1ekx4cUdoakt6K1VPc1dtNWM2ZmNteGg4d0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd05qTXdNRGt3TlRJNFdoY05Nak13TnpBeE1Ea3dOakF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFQXBtTE1qZE5kb2dxeXZaWU1zazFwdUJHb3lpbEpyOFE1eCszWTZEd3N0YTJwRnpHCnh1QldnS2h2aWFCN2JLNGFOR0EwcHNXRGo1L0w4eHBpeGlHUzE2T0NBVkF3Z2dGTU1BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVYjFqUUE3NDhFVlJLU2pvaWpnL1ptWkhzcWNZd0t3WURWUjBqQkNRd0lvQWdzWHd5CkQ1WEsyWGErdXRrNGNJRm9MT0xPaVhnaG0zenVDMk5BcUhCV2MyWXdnY0FHQTFVZEVRU0J1RENCdFlJd1luZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pBdWFHeG1MbUozZUMxMVlYUXVjbVZrYkdWa1oyVnlMbVYxZ2lCaQpkM2d0YjNKa1pYSmxjbTF6Y0MxdmNtUmxjbVZ5TUMwMWVteDBMbWhzWm9JY1luZDRMVzl5WkdWeVpYSnRjM0F0CmIzSmtaWEpsY2pBdE5YcHNkSUlKYkc5allXeG9iM04wZ2paaFpHMXBiaTFpZDNndGIzSmtaWEpsY20xemNDMXYKY21SbGNtVnlNQzVvYkdZdVluZDRMWFZoZEM1eVpXUnNaV1JuWlhJdVpYVXdDZ1lJS29aSXpqMEVBd0lEUndBdwpSQUlnSTlqdGtFYzh6Z3prRDNJelVNeWhKV2FnMTZZcGs1UkYzVDEzSjI3UTRzc0NJRDYwT2hVQzlCeGFaNzBVClc4RndtNytlRXZzVkVFOEl2YVZndWkxaUZoa1oKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "host": "bwx-orderermsp-orderer0.hlf.bwx-uat.redledger.eu", + "port": 443, + "server_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM0VENDQW9pZ0F3SUJBZ0lVYmZ1ekx4cUdoakt6K1VPc1dtNWM2ZmNteGg4d0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd05qTXdNRGt3TlRJNFdoY05Nak13TnpBeE1Ea3dOakF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFQXBtTE1qZE5kb2dxeXZaWU1zazFwdUJHb3lpbEpyOFE1eCszWTZEd3N0YTJwRnpHCnh1QldnS2h2aWFCN2JLNGFOR0EwcHNXRGo1L0w4eHBpeGlHUzE2T0NBVkF3Z2dGTU1BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVYjFqUUE3NDhFVlJLU2pvaWpnL1ptWkhzcWNZd0t3WURWUjBqQkNRd0lvQWdzWHd5CkQ1WEsyWGErdXRrNGNJRm9MT0xPaVhnaG0zenVDMk5BcUhCV2MyWXdnY0FHQTFVZEVRU0J1RENCdFlJd1luZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pBdWFHeG1MbUozZUMxMVlYUXVjbVZrYkdWa1oyVnlMbVYxZ2lCaQpkM2d0YjNKa1pYSmxjbTF6Y0MxdmNtUmxjbVZ5TUMwMWVteDBMbWhzWm9JY1luZDRMVzl5WkdWeVpYSnRjM0F0CmIzSmtaWEpsY2pBdE5YcHNkSUlKYkc5allXeG9iM04wZ2paaFpHMXBiaTFpZDNndGIzSmtaWEpsY20xemNDMXYKY21SbGNtVnlNQzVvYkdZdVluZDRMWFZoZEM1eVpXUnNaV1JuWlhJdVpYVXdDZ1lJS29aSXpqMEVBd0lEUndBdwpSQUlnSTlqdGtFYzh6Z3prRDNJelVNeWhKV2FnMTZZcGs1UkYzVDEzSjI3UTRzc0NJRDYwT2hVQzlCeGFaNzBVClc4RndtNytlRXZzVkVFOEl2YVZndWkxaUZoa1oKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=" + } + ], + "options": { + "election_tick": 10, + "heartbeat_tick": 1, + "max_inflight_blocks": 5, + "snapshot_interval_size": 16777216, + "tick_interval": "500ms" + } + }, + "state": "STATE_NORMAL", + "type": "etcdraft" + }, + "version": "0" + } + }, + "version": "0" + } + }, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "MAJORITY", + "sub_policy": "Admins" + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Readers" + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Writers" + } + }, + "version": "0" + } + }, + "values": { + "BlockDataHashingStructure": { + "mod_policy": "Admins", + "value": { + "width": 4294967295 + }, + "version": "0" + }, + "Capabilities": { + "mod_policy": "Admins", + "value": { + "capabilities": { + "V2_0": {} + } + }, + "version": "0" + }, + "HashingAlgorithm": { + "mod_policy": "Admins", + "value": { + "name": "SHA256" + }, + "version": "0" + } + }, + "version": "0" + }, + "sequence": "4" +} diff --git a/kubectl-hlf/fraktion.json b/kubectl-hlf/fraktion.json new file mode 100644 index 00000000..9fd58e9b --- /dev/null +++ b/kubectl-hlf/fraktion.json @@ -0,0 +1,1090 @@ + [fabsdk/fab] 2022/09/01 16:09:56 UTC - fab.detectDeprecatedNetworkConfig -> WARN Getting orderers from endpoint config channels.orderer is deprecated, use entity matchers to override orderer configuration + [fabsdk/fab] 2022/09/01 16:09:56 UTC - fab.detectDeprecatedNetworkConfig -> WARN visit https://github.com/hyperledger/fabric-sdk-go/blob/master/test/fixtures/config/overrides/local_entity_matchers.yaml for samples +{ + "channel_group": { + "groups": { + "Application": { + "groups": { + "bwfmsp": { + "groups": {}, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwfmsp", + "role": "ADMIN" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Endorsement": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwfmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwfmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwfmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + } + }, + "values": { + "AnchorPeers": { + "mod_policy": "Admins", + "value": { + "anchor_peers": [ + { + "host": "bwx-bwfmsp-peer0.hlf.bwx-prod.redledger.eu", + "port": 443 + } + ] + }, + "version": "0" + }, + "MSP": { + "mod_policy": "Admins", + "value": { + "config": { + "admins": [], + "crypto_config": { + "identity_identifier_hash_function": "", + "signature_hash_family": "" + }, + "fabric_node_ous": { + "admin_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQVBna29ZYm4wN3JWRmViU3d3TytyRjh3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFd05EUXlXaGNOTXpJd09EQTBNVEV3TkRReVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk9kZDNzQ2ZOcitiT0pkNWlMTTRYZGE0SGY2ajBTdFkKdFVqTzZkQkZKZ0l2bVlidHgvM0J2MEJWUlBlVGVxRDBZOFlxcUJCMTFLTjZPQWx5MlJnWWluYWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnWGVtL1ZRVDFqZDlCYzhlMFhFNHhPRGFDNFdheUtJREUKem5jSUlyTjhXaEl3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUo2blpEb1BUMFM2QytBemNaS1cvS3RFNTQyaAo3R0tpbHJTdnRkZGxObmh3QWlFQWkrSzJuditMVm1GcGhTdW91TFJkWDY4aTVjZmFRSENZZXBRT1BxcmozQjA9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "admin" + }, + "client_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQVBna29ZYm4wN3JWRmViU3d3TytyRjh3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFd05EUXlXaGNOTXpJd09EQTBNVEV3TkRReVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk9kZDNzQ2ZOcitiT0pkNWlMTTRYZGE0SGY2ajBTdFkKdFVqTzZkQkZKZ0l2bVlidHgvM0J2MEJWUlBlVGVxRDBZOFlxcUJCMTFLTjZPQWx5MlJnWWluYWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnWGVtL1ZRVDFqZDlCYzhlMFhFNHhPRGFDNFdheUtJREUKem5jSUlyTjhXaEl3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUo2blpEb1BUMFM2QytBemNaS1cvS3RFNTQyaAo3R0tpbHJTdnRkZGxObmh3QWlFQWkrSzJuditMVm1GcGhTdW91TFJkWDY4aTVjZmFRSENZZXBRT1BxcmozQjA9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "client" + }, + "enable": true, + "orderer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQVBna29ZYm4wN3JWRmViU3d3TytyRjh3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFd05EUXlXaGNOTXpJd09EQTBNVEV3TkRReVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk9kZDNzQ2ZOcitiT0pkNWlMTTRYZGE0SGY2ajBTdFkKdFVqTzZkQkZKZ0l2bVlidHgvM0J2MEJWUlBlVGVxRDBZOFlxcUJCMTFLTjZPQWx5MlJnWWluYWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnWGVtL1ZRVDFqZDlCYzhlMFhFNHhPRGFDNFdheUtJREUKem5jSUlyTjhXaEl3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUo2blpEb1BUMFM2QytBemNaS1cvS3RFNTQyaAo3R0tpbHJTdnRkZGxObmh3QWlFQWkrSzJuditMVm1GcGhTdW91TFJkWDY4aTVjZmFRSENZZXBRT1BxcmozQjA9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "orderer" + }, + "peer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQVBna29ZYm4wN3JWRmViU3d3TytyRjh3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFd05EUXlXaGNOTXpJd09EQTBNVEV3TkRReVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk9kZDNzQ2ZOcitiT0pkNWlMTTRYZGE0SGY2ajBTdFkKdFVqTzZkQkZKZ0l2bVlidHgvM0J2MEJWUlBlVGVxRDBZOFlxcUJCMTFLTjZPQWx5MlJnWWluYWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnWGVtL1ZRVDFqZDlCYzhlMFhFNHhPRGFDNFdheUtJREUKem5jSUlyTjhXaEl3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUo2blpEb1BUMFM2QytBemNaS1cvS3RFNTQyaAo3R0tpbHJTdnRkZGxObmh3QWlFQWkrSzJuditMVm1GcGhTdW91TFJkWDY4aTVjZmFRSENZZXBRT1BxcmozQjA9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "peer" + } + }, + "intermediate_certs": [], + "name": "bwfmsp", + "organizational_unit_identifiers": [], + "revocation_list": [], + "root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQVBna29ZYm4wN3JWRmViU3d3TytyRjh3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFd05EUXlXaGNOTXpJd09EQTBNVEV3TkRReVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQk9kZDNzQ2ZOcitiT0pkNWlMTTRYZGE0SGY2ajBTdFkKdFVqTzZkQkZKZ0l2bVlidHgvM0J2MEJWUlBlVGVxRDBZOFlxcUJCMTFLTjZPQWx5MlJnWWluYWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnWGVtL1ZRVDFqZDlCYzhlMFhFNHhPRGFDNFdheUtJREUKem5jSUlyTjhXaEl3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUo2blpEb1BUMFM2QytBemNaS1cvS3RFNTQyaAo3R0tpbHJTdnRkZGxObmh3QWlFQWkrSzJuditMVm1GcGhTdW91TFJkWDY4aTVjZmFRSENZZXBRT1BxcmozQjA9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + ], + "signing_identity": null, + "tls_intermediate_certs": [], + "tls_root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNRVENDQWVhZ0F3SUJBZ0lSQU9tNmtyNytISW56aEFvM1JCcW1pT013Q2dZSUtvWkl6ajBFQXdJd2FqRUwKTUFrR0ExVUVCaE1DUWtVeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFT01Bd0dBMVVFCkF4TUZkR3h6WTJFd0hoY05Nakl3T0RBek1URXdORFF5V2hjTk16SXdPREEwTVRFd05EUXlXakJxTVFzd0NRWUQKVlFRR0V3SkNSVEVSTUE4R0ExVUVCeE1JUW5KMWMzTmxiSE14RVRBUEJnTlZCQWtUQ0VKeWRYTnpaV3h6TVJBdwpEZ1lEVlFRS0V3ZEdkV3BwZEhOMU1STXdFUVlEVlFRTEV3cENiRzlqYTJOb1lXbHVNUTR3REFZRFZRUURFd1YwCmJITmpZVEJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUFCQmFmdTY1RjJtc1JIelJIUmdEcXhGMWYKTEU3ellERnRPalg3a2RrbEN3SnkzNHh5YnVGMldUSncxQ0FMZWhpRFc1MHJOYStRdWI0dXFwV2U2TklmVCtxagpiVEJyTUE0R0ExVWREd0VCL3dRRUF3SUJwakFkQmdOVkhTVUVGakFVQmdnckJnRUZCUWNEQWdZSUt3WUJCUVVICkF3RXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QXBCZ05WSFE0RUlnUWdlM2hPNTc3THJ5WHpTSnYzS1hPbExSL0UKQmFXZVdTQmw3Sjg3eDRqOWFiVXdDZ1lJS29aSXpqMEVBd0lEU1FBd1JnSWhBT09YN0hMWmovZkJSckNWSWhoYgpGT21iZHJYSXJpekUwR01TUVhZbytMYzFBaUVBaWdndDJTdE9WVTJzdGh3bE9zd1krSy80eWQ1RVpDbTQxdENWCnpIUVJoc3M9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + ] + }, + "type": 0 + }, + "version": "0" + } + }, + "version": "1" + }, + "bwtmsp": { + "groups": {}, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwtmsp", + "role": "ADMIN" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Endorsement": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwtmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwtmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwtmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + } + }, + "values": { + "AnchorPeers": { + "mod_policy": "Admins", + "value": { + "anchor_peers": [ + { + "host": "bwx-bwtmsp-peer0.hlf.bwx-prod.redledger.eu", + "port": 443 + } + ] + }, + "version": "0" + }, + "MSP": { + "mod_policy": "Admins", + "value": { + "config": { + "admins": [], + "crypto_config": { + "identity_identifier_hash_function": "", + "signature_hash_family": "" + }, + "fabric_node_ous": { + "admin_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQUxsbUlVaHBtbU96SHdPYVkzV1lvVm93Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFeU5ETXlXaGNOTXpJd09EQTBNVEV5TkRNeVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQkJvZERIdndpRzB2cXNCSll5RWwxWm11NUFuS011TTcKRjc5L1JFcWVwei9PeGgvR2U0cEFqQU9EK2JQeXBmWjFLZVNBdzdHaUJLU1JjL2RWQlBHcDN1K2piVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnV1JOR3ZvYlE2WlZIazlPK2dkcFlScDlUcUIvS0VMdDkKVnEydm50Wm56VlF3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUw1ZzQ0ZDNHMGpBQnIxNlRpNWxHc1gzenhlaAplN1laSi9objFqdGxZM2J4QWlFQXdaeTVhOFNEZ2RvZjdmNWFyRjA0TUNtSzZMazRCT09NRjExR3dPeVJDbUU9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "admin" + }, + "client_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQUxsbUlVaHBtbU96SHdPYVkzV1lvVm93Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFeU5ETXlXaGNOTXpJd09EQTBNVEV5TkRNeVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQkJvZERIdndpRzB2cXNCSll5RWwxWm11NUFuS011TTcKRjc5L1JFcWVwei9PeGgvR2U0cEFqQU9EK2JQeXBmWjFLZVNBdzdHaUJLU1JjL2RWQlBHcDN1K2piVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnV1JOR3ZvYlE2WlZIazlPK2dkcFlScDlUcUIvS0VMdDkKVnEydm50Wm56VlF3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUw1ZzQ0ZDNHMGpBQnIxNlRpNWxHc1gzenhlaAplN1laSi9objFqdGxZM2J4QWlFQXdaeTVhOFNEZ2RvZjdmNWFyRjA0TUNtSzZMazRCT09NRjExR3dPeVJDbUU9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "client" + }, + "enable": true, + "orderer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQUxsbUlVaHBtbU96SHdPYVkzV1lvVm93Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFeU5ETXlXaGNOTXpJd09EQTBNVEV5TkRNeVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQkJvZERIdndpRzB2cXNCSll5RWwxWm11NUFuS011TTcKRjc5L1JFcWVwei9PeGgvR2U0cEFqQU9EK2JQeXBmWjFLZVNBdzdHaUJLU1JjL2RWQlBHcDN1K2piVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnV1JOR3ZvYlE2WlZIazlPK2dkcFlScDlUcUIvS0VMdDkKVnEydm50Wm56VlF3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUw1ZzQ0ZDNHMGpBQnIxNlRpNWxHc1gzenhlaAplN1laSi9objFqdGxZM2J4QWlFQXdaeTVhOFNEZ2RvZjdmNWFyRjA0TUNtSzZMazRCT09NRjExR3dPeVJDbUU9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "orderer" + }, + "peer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQUxsbUlVaHBtbU96SHdPYVkzV1lvVm93Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFeU5ETXlXaGNOTXpJd09EQTBNVEV5TkRNeVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQkJvZERIdndpRzB2cXNCSll5RWwxWm11NUFuS011TTcKRjc5L1JFcWVwei9PeGgvR2U0cEFqQU9EK2JQeXBmWjFLZVNBdzdHaUJLU1JjL2RWQlBHcDN1K2piVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnV1JOR3ZvYlE2WlZIazlPK2dkcFlScDlUcUIvS0VMdDkKVnEydm50Wm56VlF3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUw1ZzQ0ZDNHMGpBQnIxNlRpNWxHc1gzenhlaAplN1laSi9objFqdGxZM2J4QWlFQXdaeTVhOFNEZ2RvZjdmNWFyRjA0TUNtSzZMazRCT09NRjExR3dPeVJDbUU9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "organizational_unit_identifier": "peer" + } + }, + "intermediate_certs": [], + "name": "bwtmsp", + "organizational_unit_identifiers": [], + "revocation_list": [], + "root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPekNDQWVDZ0F3SUJBZ0lSQUxsbUlVaHBtbU96SHdPYVkzV1lvVm93Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFeU5ETXlXaGNOTXpJd09EQTBNVEV5TkRNeVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQkJvZERIdndpRzB2cXNCSll5RWwxWm11NUFuS011TTcKRjc5L1JFcWVwei9PeGgvR2U0cEFqQU9EK2JQeXBmWjFLZVNBdzdHaUJLU1JjL2RWQlBHcDN1K2piVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnV1JOR3ZvYlE2WlZIazlPK2dkcFlScDlUcUIvS0VMdDkKVnEydm50Wm56VlF3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUw1ZzQ0ZDNHMGpBQnIxNlRpNWxHc1gzenhlaAplN1laSi9objFqdGxZM2J4QWlFQXdaeTVhOFNEZ2RvZjdmNWFyRjA0TUNtSzZMazRCT09NRjExR3dPeVJDbUU9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + ], + "signing_identity": null, + "tls_intermediate_certs": [], + "tls_root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNRVENDQWVhZ0F3SUJBZ0lSQUlZRUhkcjZNM3JaV0tDVHZ5RXRXTk13Q2dZSUtvWkl6ajBFQXdJd2FqRUwKTUFrR0ExVUVCaE1DUWtVeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFT01Bd0dBMVVFCkF4TUZkR3h6WTJFd0hoY05Nakl3T0RBek1URXlORE15V2hjTk16SXdPREEwTVRFeU5ETXlXakJxTVFzd0NRWUQKVlFRR0V3SkNSVEVSTUE4R0ExVUVCeE1JUW5KMWMzTmxiSE14RVRBUEJnTlZCQWtUQ0VKeWRYTnpaV3h6TVJBdwpEZ1lEVlFRS0V3ZEdkV3BwZEhOMU1STXdFUVlEVlFRTEV3cENiRzlqYTJOb1lXbHVNUTR3REFZRFZRUURFd1YwCmJITmpZVEJaTUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdFSEEwSUFCTk1QQnFGTWc0Q3Qva2Z3Q0t2a24yNHMKN09Zek9GeC9YaUVwMU1kTGkyUHBHcW5zNG9WTXgvZkJPV2RjOXFzVE9CQVNkWlR6bnJ5aTdKM1ZwY1lxUTdXagpiVEJyTUE0R0ExVWREd0VCL3dRRUF3SUJwakFkQmdOVkhTVUVGakFVQmdnckJnRUZCUWNEQWdZSUt3WUJCUVVICkF3RXdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QXBCZ05WSFE0RUlnUWdoUllQRTNQNWJMNVdrQlNnek0rSTNDZngKeGxPamdCdmZwTitXVkpXQ1hhMHdDZ1lJS29aSXpqMEVBd0lEU1FBd1JnSWhBSzQ2L25NS1BxemUvTlR5a3lLVgpocC9tbFRCeVYxYkQ3cDJ1TVk5RFM5bndBaUVBcHI3U0JacXR4Q28vQ2k5MlFqQTZyUFNVSUwvcHpQbEMvY1RZCjNwVFFZeUk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + ] + }, + "type": 0 + }, + "version": "0" + } + }, + "version": "1" + }, + "bwxmsp": { + "groups": {}, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwxmsp", + "role": "ADMIN" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Endorsement": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwxmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwxmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwxmsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + } + }, + "values": { + "AnchorPeers": { + "mod_policy": "Admins", + "value": { + "anchor_peers": [ + { + "host": "bwx-bwxmsp-peer0.hlf.bwx-prod.redledger.eu", + "port": 443 + } + ] + }, + "version": "0" + }, + "MSP": { + "mod_policy": "Admins", + "value": { + "config": { + "admins": [], + "crypto_config": { + "identity_identifier_hash_function": "", + "signature_hash_family": "" + }, + "fabric_node_ous": { + "admin_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPRENDQWQrZ0F3SUJBZ0lRU1VGZy8zbE1kKzlUZVhORFBXRy9SekFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTRNRE14TURJMk1EbGFGdzB6TWpBNE1EUXhNREkyTURsYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFZWlyQ2RlMENUMno5NTRNY1U3Wi9sZjVNaHBlSU96WTEKTGh2TDJrKzhOcThsMFdHRHJ4UFFaWjRNaFRwczh0ZGc2V2l2dHc3Z2l3RHpEZDhVck1WaWZhTnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0NxMUVmRExKdHZHSHI0SU9aVlVMczhQcmpCNWdiLys2R3MKSlV5dTlrOUlDVEFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUF2bW44akpVVlpxMnc3SDZ2cmtLY2dHd04wR1pDMQpzazFkZitVQ0VRaGNlZ0lnUjkzVkhNMWdnMG5GbTJzNmdxRUp5a01ueWUrbGp2RzVoZ3NjMEV6RDdHUT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "admin" + }, + "client_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPRENDQWQrZ0F3SUJBZ0lRU1VGZy8zbE1kKzlUZVhORFBXRy9SekFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTRNRE14TURJMk1EbGFGdzB6TWpBNE1EUXhNREkyTURsYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFZWlyQ2RlMENUMno5NTRNY1U3Wi9sZjVNaHBlSU96WTEKTGh2TDJrKzhOcThsMFdHRHJ4UFFaWjRNaFRwczh0ZGc2V2l2dHc3Z2l3RHpEZDhVck1WaWZhTnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0NxMUVmRExKdHZHSHI0SU9aVlVMczhQcmpCNWdiLys2R3MKSlV5dTlrOUlDVEFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUF2bW44akpVVlpxMnc3SDZ2cmtLY2dHd04wR1pDMQpzazFkZitVQ0VRaGNlZ0lnUjkzVkhNMWdnMG5GbTJzNmdxRUp5a01ueWUrbGp2RzVoZ3NjMEV6RDdHUT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "client" + }, + "enable": true, + "orderer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPRENDQWQrZ0F3SUJBZ0lRU1VGZy8zbE1kKzlUZVhORFBXRy9SekFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTRNRE14TURJMk1EbGFGdzB6TWpBNE1EUXhNREkyTURsYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFZWlyQ2RlMENUMno5NTRNY1U3Wi9sZjVNaHBlSU96WTEKTGh2TDJrKzhOcThsMFdHRHJ4UFFaWjRNaFRwczh0ZGc2V2l2dHc3Z2l3RHpEZDhVck1WaWZhTnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0NxMUVmRExKdHZHSHI0SU9aVlVMczhQcmpCNWdiLys2R3MKSlV5dTlrOUlDVEFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUF2bW44akpVVlpxMnc3SDZ2cmtLY2dHd04wR1pDMQpzazFkZitVQ0VRaGNlZ0lnUjkzVkhNMWdnMG5GbTJzNmdxRUp5a01ueWUrbGp2RzVoZ3NjMEV6RDdHUT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "orderer" + }, + "peer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPRENDQWQrZ0F3SUJBZ0lRU1VGZy8zbE1kKzlUZVhORFBXRy9SekFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTRNRE14TURJMk1EbGFGdzB6TWpBNE1EUXhNREkyTURsYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFZWlyQ2RlMENUMno5NTRNY1U3Wi9sZjVNaHBlSU96WTEKTGh2TDJrKzhOcThsMFdHRHJ4UFFaWjRNaFRwczh0ZGc2V2l2dHc3Z2l3RHpEZDhVck1WaWZhTnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0NxMUVmRExKdHZHSHI0SU9aVlVMczhQcmpCNWdiLys2R3MKSlV5dTlrOUlDVEFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUF2bW44akpVVlpxMnc3SDZ2cmtLY2dHd04wR1pDMQpzazFkZitVQ0VRaGNlZ0lnUjkzVkhNMWdnMG5GbTJzNmdxRUp5a01ueWUrbGp2RzVoZ3NjMEV6RDdHUT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "peer" + } + }, + "intermediate_certs": [], + "name": "bwxmsp", + "organizational_unit_identifiers": [], + "revocation_list": [], + "root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPRENDQWQrZ0F3SUJBZ0lRU1VGZy8zbE1kKzlUZVhORFBXRy9SekFLQmdncWhrak9QUVFEQWpCbk1Rc3cKQ1FZRFZRUUdFd0pWVXpFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVFzd0NRWURWUVFECkV3SmpZVEFlRncweU1qQTRNRE14TURJMk1EbGFGdzB6TWpBNE1EUXhNREkyTURsYU1HY3hDekFKQmdOVkJBWVQKQWxWVE1SRXdEd1lEVlFRSEV3aENjblZ6YzJWc2N6RVJNQThHQTFVRUNSTUlRbkoxYzNObGJITXhFREFPQmdOVgpCQW9UQjBaMWFtbDBjM1V4RXpBUkJnTlZCQXNUQ2tKc2IyTnJZMmhoYVc0eEN6QUpCZ05WQkFNVEFtTmhNRmt3CkV3WUhLb1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFZWlyQ2RlMENUMno5NTRNY1U3Wi9sZjVNaHBlSU96WTEKTGh2TDJrKzhOcThsMFdHRHJ4UFFaWjRNaFRwczh0ZGc2V2l2dHc3Z2l3RHpEZDhVck1WaWZhTnRNR3N3RGdZRApWUjBQQVFIL0JBUURBZ0dtTUIwR0ExVWRKUVFXTUJRR0NDc0dBUVVGQndNQ0JnZ3JCZ0VGQlFjREFUQVBCZ05WCkhSTUJBZjhFQlRBREFRSC9NQ2tHQTFVZERnUWlCQ0NxMUVmRExKdHZHSHI0SU9aVlVMczhQcmpCNWdiLys2R3MKSlV5dTlrOUlDVEFLQmdncWhrak9QUVFEQWdOSEFEQkVBaUF2bW44akpVVlpxMnc3SDZ2cmtLY2dHd04wR1pDMQpzazFkZitVQ0VRaGNlZ0lnUjkzVkhNMWdnMG5GbTJzNmdxRUp5a01ueWUrbGp2RzVoZ3NjMEV6RDdHUT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=" + ], + "signing_identity": null, + "tls_intermediate_certs": [], + "tls_root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNQekNDQWVXZ0F3SUJBZ0lRTHFlNUFkd2pmL3RQZGttQjJxcXpCVEFLQmdncWhrak9QUVFEQWpCcU1Rc3cKQ1FZRFZRUUdFd0pDUlRFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVE0d0RBWURWUVFECkV3VjBiSE5qWVRBZUZ3MHlNakE0TURNeE1ESTJNRGxhRncwek1qQTRNRFF4TURJMk1EbGFNR294Q3pBSkJnTlYKQkFZVEFrSkZNUkV3RHdZRFZRUUhFd2hDY25WemMyVnNjekVSTUE4R0ExVUVDUk1JUW5KMWMzTmxiSE14RURBTwpCZ05WQkFvVEIwWjFhbWwwYzNVeEV6QVJCZ05WQkFzVENrSnNiMk5yWTJoaGFXNHhEakFNQmdOVkJBTVRCWFJzCmMyTmhNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUViNi83NzRQdGVUUkFwejQ3QWo4RzJ6My8KRmNBdndvMngweG1kTWZYU1dkZXQ4UEJ5S2Q3VU56b3FNZGt2MzE5NHIzTDY4a3crNWpnQjVaakJTYy9FSUtOdApNR3N3RGdZRFZSMFBBUUgvQkFRREFnR21NQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUZCUWNECkFUQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01Da0dBMVVkRGdRaUJDQXpGS1Q3bkdnN3cwdXkxeVU2ZGlIdDI2dzgKS202Sm51czZZcFhyRURHM1d6QUtCZ2dxaGtqT1BRUURBZ05JQURCRkFpQnFYWkp5NGNaYmkwbzdLN2k3MS94NwpnbnNTeGdYOUFIWDY4cVhNdjRSVG1RSWhBSi9CY1laaGlHSGVVOFRxbWM3TFB2bStjTW5QMmRnS0dCUmg1eUgwCk9JMnYKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=" + ] + }, + "type": 0 + }, + "version": "0" + } + }, + "version": "1" + } + }, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "bwtmsp", + "role": "ADMIN" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Endorsement": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "MAJORITY", + "sub_policy": "Endorsement" + } + }, + "version": "0" + }, + "LifecycleEndorsement": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "MAJORITY", + "sub_policy": "Endorsement" + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Readers" + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Writers" + } + }, + "version": "0" + } + }, + "values": { + "ACLs": { + "mod_policy": "Admins", + "value": { + "acls": { + "_lifecycle/CheckCommitReadiness": { + "policy_ref": "/Channel/Application/Writers" + }, + "_lifecycle/CommitChaincodeDefinition": { + "policy_ref": "/Channel/Application/Writers" + }, + "_lifecycle/QueryChaincodeDefinition": { + "policy_ref": "/Channel/Application/Writers" + }, + "_lifecycle/QueryChaincodeDefinitions": { + "policy_ref": "/Channel/Application/Writers" + }, + "cscc/GetChannelConfig": { + "policy_ref": "/Channel/Application/Readers" + }, + "cscc/GetConfigBlock": { + "policy_ref": "/Channel/Application/Readers" + }, + "event/Block": { + "policy_ref": "/Channel/Application/Readers" + }, + "event/FilteredBlock": { + "policy_ref": "/Channel/Application/Readers" + }, + "lscc/ChaincodeExists": { + "policy_ref": "/Channel/Application/Readers" + }, + "lscc/GetChaincodeData": { + "policy_ref": "/Channel/Application/Readers" + }, + "lscc/GetDeploymentSpec": { + "policy_ref": "/Channel/Application/Readers" + }, + "lscc/GetInstantiatedChaincodes": { + "policy_ref": "/Channel/Application/Readers" + }, + "peer/ChaincodeToChaincode": { + "policy_ref": "/Channel/Application/Writers" + }, + "peer/Propose": { + "policy_ref": "/Channel/Application/Writers" + }, + "qscc/GetBlockByHash": { + "policy_ref": "/Channel/Application/Readers" + }, + "qscc/GetBlockByNumber": { + "policy_ref": "/Channel/Application/Readers" + }, + "qscc/GetBlockByTxID": { + "policy_ref": "/Channel/Application/Readers" + }, + "qscc/GetChainInfo": { + "policy_ref": "/Channel/Application/Readers" + }, + "qscc/GetTransactionByID": { + "policy_ref": "/Channel/Application/Readers" + } + } + }, + "version": "0" + }, + "Capabilities": { + "mod_policy": "Admins", + "value": { + "capabilities": { + "V2_0": {} + } + }, + "version": "0" + } + }, + "version": "0" + }, + "Orderer": { + "groups": { + "orderermsp": { + "groups": {}, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "orderermsp", + "role": "ADMIN" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Endorsement": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "orderermsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "orderermsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 1, + "value": { + "identities": [ + { + "principal": { + "msp_identifier": "orderermsp", + "role": "MEMBER" + }, + "principal_classification": "ROLE" + } + ], + "rule": { + "n_out_of": { + "n": 1, + "rules": [ + { + "signed_by": 0 + } + ] + } + }, + "version": 0 + } + }, + "version": "0" + } + }, + "values": { + "Endpoints": { + "mod_policy": "Admins", + "value": { + "addresses": [ + "bwx-orderermsp-orderer2.hlf.bwx-prod.redledger.eu:443", + "bwx-orderermsp-orderer0.hlf.bwx-prod.redledger.eu:443", + "bwx-orderermsp-orderer1.hlf.bwx-prod.redledger.eu:443", + "bwx-orderermsp-orderer3.hlf.bwx-prod.redledger.eu:443", + "bwx-orderermsp-orderer4.hlf.bwx-prod.redledger.eu:443" + ] + }, + "version": "0" + }, + "MSP": { + "mod_policy": "Admins", + "value": { + "config": { + "admins": [], + "crypto_config": { + "identity_identifier_hash_function": "", + "signature_hash_family": "" + }, + "fabric_node_ous": { + "admin_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPVENDQWVDZ0F3SUJBZ0lSQUpzSDF1OEphMHB2YWxlQmhiVDBBS0F3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFeU9UTTFXaGNOTXpJd09EQTBNVEV5T1RNMVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQkoyTkl1QmloRmlIWFYrWFRRTVVHOVhVVHBON2VZeHgKbEtNQTc0L1lHSFFKb0RSVm4yNjZycnp3RzEwLzBwMEhTbWJsaXZYeDJzNm5qMXlqaFJZRy9TcWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnWFFjaFBLSHFDd0paV1ZIK01Zdzd2L2RMdDRHREsybFMKOVBwNU5sNVlxcGd3Q2dZSUtvWkl6ajBFQXdJRFJ3QXdSQUlnSXhxbEFTcHVBWnFFTFJoMG1jME1ENmR0Z0ZUSwp4MEdVZkxZbXNzY3p6ZjRDSUNTMm1HVVNndkJRUlNQMCsrS056QmFpZHRZd29VQk9rdTU2ZmJ0dlI3NzEKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "admin" + }, + "client_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPVENDQWVDZ0F3SUJBZ0lSQUpzSDF1OEphMHB2YWxlQmhiVDBBS0F3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFeU9UTTFXaGNOTXpJd09EQTBNVEV5T1RNMVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQkoyTkl1QmloRmlIWFYrWFRRTVVHOVhVVHBON2VZeHgKbEtNQTc0L1lHSFFKb0RSVm4yNjZycnp3RzEwLzBwMEhTbWJsaXZYeDJzNm5qMXlqaFJZRy9TcWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnWFFjaFBLSHFDd0paV1ZIK01Zdzd2L2RMdDRHREsybFMKOVBwNU5sNVlxcGd3Q2dZSUtvWkl6ajBFQXdJRFJ3QXdSQUlnSXhxbEFTcHVBWnFFTFJoMG1jME1ENmR0Z0ZUSwp4MEdVZkxZbXNzY3p6ZjRDSUNTMm1HVVNndkJRUlNQMCsrS056QmFpZHRZd29VQk9rdTU2ZmJ0dlI3NzEKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "client" + }, + "enable": true, + "orderer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPVENDQWVDZ0F3SUJBZ0lSQUpzSDF1OEphMHB2YWxlQmhiVDBBS0F3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFeU9UTTFXaGNOTXpJd09EQTBNVEV5T1RNMVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQkoyTkl1QmloRmlIWFYrWFRRTVVHOVhVVHBON2VZeHgKbEtNQTc0L1lHSFFKb0RSVm4yNjZycnp3RzEwLzBwMEhTbWJsaXZYeDJzNm5qMXlqaFJZRy9TcWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnWFFjaFBLSHFDd0paV1ZIK01Zdzd2L2RMdDRHREsybFMKOVBwNU5sNVlxcGd3Q2dZSUtvWkl6ajBFQXdJRFJ3QXdSQUlnSXhxbEFTcHVBWnFFTFJoMG1jME1ENmR0Z0ZUSwp4MEdVZkxZbXNzY3p6ZjRDSUNTMm1HVVNndkJRUlNQMCsrS056QmFpZHRZd29VQk9rdTU2ZmJ0dlI3NzEKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "orderer" + }, + "peer_ou_identifier": { + "certificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPVENDQWVDZ0F3SUJBZ0lSQUpzSDF1OEphMHB2YWxlQmhiVDBBS0F3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFeU9UTTFXaGNOTXpJd09EQTBNVEV5T1RNMVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQkoyTkl1QmloRmlIWFYrWFRRTVVHOVhVVHBON2VZeHgKbEtNQTc0L1lHSFFKb0RSVm4yNjZycnp3RzEwLzBwMEhTbWJsaXZYeDJzNm5qMXlqaFJZRy9TcWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnWFFjaFBLSHFDd0paV1ZIK01Zdzd2L2RMdDRHREsybFMKOVBwNU5sNVlxcGd3Q2dZSUtvWkl6ajBFQXdJRFJ3QXdSQUlnSXhxbEFTcHVBWnFFTFJoMG1jME1ENmR0Z0ZUSwp4MEdVZkxZbXNzY3p6ZjRDSUNTMm1HVVNndkJRUlNQMCsrS056QmFpZHRZd29VQk9rdTU2ZmJ0dlI3NzEKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=", + "organizational_unit_identifier": "peer" + } + }, + "intermediate_certs": [], + "name": "orderermsp", + "organizational_unit_identifiers": [], + "revocation_list": [], + "root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNPVENDQWVDZ0F3SUJBZ0lSQUpzSDF1OEphMHB2YWxlQmhiVDBBS0F3Q2dZSUtvWkl6ajBFQXdJd1p6RUwKTUFrR0ExVUVCaE1DVlZNeEVUQVBCZ05WQkFjVENFSnlkWE56Wld4ek1SRXdEd1lEVlFRSkV3aENjblZ6YzJWcwpjekVRTUE0R0ExVUVDaE1IUm5WcWFYUnpkVEVUTUJFR0ExVUVDeE1LUW14dlkydGphR0ZwYmpFTE1Ba0dBMVVFCkF4TUNZMkV3SGhjTk1qSXdPREF6TVRFeU9UTTFXaGNOTXpJd09EQTBNVEV5T1RNMVdqQm5NUXN3Q1FZRFZRUUcKRXdKVlV6RVJNQThHQTFVRUJ4TUlRbkoxYzNObGJITXhFVEFQQmdOVkJBa1RDRUp5ZFhOelpXeHpNUkF3RGdZRApWUVFLRXdkR2RXcHBkSE4xTVJNd0VRWURWUVFMRXdwQ2JHOWphMk5vWVdsdU1Rc3dDUVlEVlFRREV3SmpZVEJaCk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3RUhBMElBQkoyTkl1QmloRmlIWFYrWFRRTVVHOVhVVHBON2VZeHgKbEtNQTc0L1lHSFFKb0RSVm4yNjZycnp3RzEwLzBwMEhTbWJsaXZYeDJzNm5qMXlqaFJZRy9TcWpiVEJyTUE0RwpBMVVkRHdFQi93UUVBd0lCcGpBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFnWUlLd1lCQlFVSEF3RXdEd1lEClZSMFRBUUgvQkFVd0F3RUIvekFwQmdOVkhRNEVJZ1FnWFFjaFBLSHFDd0paV1ZIK01Zdzd2L2RMdDRHREsybFMKOVBwNU5sNVlxcGd3Q2dZSUtvWkl6ajBFQXdJRFJ3QXdSQUlnSXhxbEFTcHVBWnFFTFJoMG1jME1ENmR0Z0ZUSwp4MEdVZkxZbXNzY3p6ZjRDSUNTMm1HVVNndkJRUlNQMCsrS056QmFpZHRZd29VQk9rdTU2ZmJ0dlI3NzEKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=" + ], + "signing_identity": null, + "tls_intermediate_certs": [], + "tls_root_certs": [ + "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNQekNDQWVXZ0F3SUJBZ0lRTThKMytKTVF3ZWZxdXNmNlA2Z2toREFLQmdncWhrak9QUVFEQWpCcU1Rc3cKQ1FZRFZRUUdFd0pDUlRFUk1BOEdBMVVFQnhNSVFuSjFjM05sYkhNeEVUQVBCZ05WQkFrVENFSnlkWE56Wld4egpNUkF3RGdZRFZRUUtFd2RHZFdwcGRITjFNUk13RVFZRFZRUUxFd3BDYkc5amEyTm9ZV2x1TVE0d0RBWURWUVFECkV3VjBiSE5qWVRBZUZ3MHlNakE0TURNeE1USTVNelZhRncwek1qQTRNRFF4TVRJNU16VmFNR294Q3pBSkJnTlYKQkFZVEFrSkZNUkV3RHdZRFZRUUhFd2hDY25WemMyVnNjekVSTUE4R0ExVUVDUk1JUW5KMWMzTmxiSE14RURBTwpCZ05WQkFvVEIwWjFhbWwwYzNVeEV6QVJCZ05WQkFzVENrSnNiMk5yWTJoaGFXNHhEakFNQmdOVkJBTVRCWFJzCmMyTmhNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVRLzhFbXBOcEFZeXF2cFExcnZKQkl2V0sKRkU4YkJHQXFnK2VYaUdGR1Q5amdZWndra0s5MWtxUWNUTnlrQ2EyN1RjcWY2SkFnMHlCVnNMQy9pc0lsRWFOdApNR3N3RGdZRFZSMFBBUUgvQkFRREFnR21NQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUZCUWNECkFUQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01Da0dBMVVkRGdRaUJDRHFzRUh6d29EM2RUcTJ6ZVZDT0tEeTdDWHQKVWRHT1RlcUswVk1lbUdEMjV6QUtCZ2dxaGtqT1BRUURBZ05JQURCRkFpRUEvTVVsZ3dxTWRyM3NnVGJvMG9rSwpSN3BwMnU1eWVGOG50cWNnWmN2QjN5c0NJQ0F0T1JsQWhYY3lCVHd4YkdLb1NnYmFxU01uc0RUTWkyRFRxUndmCk5rVkwKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=" + ] + }, + "type": 0 + }, + "version": "0" + } + }, + "version": "0" + } + }, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "MAJORITY", + "sub_policy": "Admins" + } + }, + "version": "0" + }, + "BlockValidation": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Writers" + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Readers" + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Writers" + } + }, + "version": "0" + } + }, + "values": { + "BatchSize": { + "mod_policy": "Admins", + "value": { + "absolute_max_bytes": 1048576, + "max_message_count": 100, + "preferred_max_bytes": 524288 + }, + "version": "0" + }, + "BatchTimeout": { + "mod_policy": "Admins", + "value": { + "timeout": "2s" + }, + "version": "0" + }, + "Capabilities": { + "mod_policy": "Admins", + "value": { + "capabilities": { + "V2_0": {} + } + }, + "version": "0" + }, + "ChannelRestrictions": { + "mod_policy": "Admins", + "value": null, + "version": "0" + }, + "ConsensusType": { + "mod_policy": "Admins", + "value": { + "metadata": { + "consenters": [ + { + "client_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM0ekNDQW9xZ0F3SUJBZ0lVQUtkK2tqbnhEd25tNDVNSzZJd0lDTG5ZdVc4d0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd09EQXpNVEV5T1RNMVdoY05Nak13T0RBME1URXpNREF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFaEtMcjdCam9yeDdINFkwV2xpVWZJRFF4TUJzUWIwTUdNVG1UaVF3V25McFdBMElrCnJlejZwSzFMNjg1Q2RHL0w1U2QyMFR0SlhYZ0xnNXl4dlNhdUZLT0NBVkl3Z2dGT01BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVaXF1Q1pMNU5tbU96MjlsUk9GNHZUenBEOU1Vd0t3WURWUjBqQkNRd0lvQWc2ckJCCjg4S0E5M1U2dHMzbFFqaWc4dXdsN1ZIUmprM3FpdEZUSHBoZzl1Y3dnY0lHQTFVZEVRU0J1akNCdDRJeFluZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pJdWFHeG1MbUozZUMxd2NtOWtMbkpsWkd4bFpHZGxjaTVsZFlJZwpZbmQ0TFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pJdFoySmhkaTVvYkdhQ0hHSjNlQzF2Y21SbGNtVnliWE53CkxXOXlaR1Z5WlhJeUxXZGlZWGFDQ1d4dlkyRnNhRzl6ZElJM1lXUnRhVzR0WW5kNExXOXlaR1Z5WlhKdGMzQXQKYjNKa1pYSmxjakl1YUd4bUxtSjNlQzF3Y205a0xuSmxaR3hsWkdkbGNpNWxkVEFLQmdncWhrak9QUVFEQWdOSApBREJFQWlCbGVlR1Jyd1A0ZElyc0dYN1IxcjRwaWUxNmRsUDBzUmpqdDBpVkQ0RmNqd0lnRzF1UTNuWnJwTGJsCmtUdzlBdVhVUmZxQmthTmdRRWRoejArNURFcXVxSTg9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "host": "bwx-orderermsp-orderer2.hlf.bwx-prod.redledger.eu", + "port": 443, + "server_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM0ekNDQW9xZ0F3SUJBZ0lVQUtkK2tqbnhEd25tNDVNSzZJd0lDTG5ZdVc4d0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd09EQXpNVEV5T1RNMVdoY05Nak13T0RBME1URXpNREF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFaEtMcjdCam9yeDdINFkwV2xpVWZJRFF4TUJzUWIwTUdNVG1UaVF3V25McFdBMElrCnJlejZwSzFMNjg1Q2RHL0w1U2QyMFR0SlhYZ0xnNXl4dlNhdUZLT0NBVkl3Z2dGT01BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVaXF1Q1pMNU5tbU96MjlsUk9GNHZUenBEOU1Vd0t3WURWUjBqQkNRd0lvQWc2ckJCCjg4S0E5M1U2dHMzbFFqaWc4dXdsN1ZIUmprM3FpdEZUSHBoZzl1Y3dnY0lHQTFVZEVRU0J1akNCdDRJeFluZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pJdWFHeG1MbUozZUMxd2NtOWtMbkpsWkd4bFpHZGxjaTVsZFlJZwpZbmQ0TFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pJdFoySmhkaTVvYkdhQ0hHSjNlQzF2Y21SbGNtVnliWE53CkxXOXlaR1Z5WlhJeUxXZGlZWGFDQ1d4dlkyRnNhRzl6ZElJM1lXUnRhVzR0WW5kNExXOXlaR1Z5WlhKdGMzQXQKYjNKa1pYSmxjakl1YUd4bUxtSjNlQzF3Y205a0xuSmxaR3hsWkdkbGNpNWxkVEFLQmdncWhrak9QUVFEQWdOSApBREJFQWlCbGVlR1Jyd1A0ZElyc0dYN1IxcjRwaWUxNmRsUDBzUmpqdDBpVkQ0RmNqd0lnRzF1UTNuWnJwTGJsCmtUdzlBdVhVUmZxQmthTmdRRWRoejArNURFcXVxSTg9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + }, + { + "client_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM1RENDQW9xZ0F3SUJBZ0lVYVVIRnNhV1J2YmRjdTQ2U0MvR1M0OUNIdHF3d0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd09EQXpNVEV5T1RNMVdoY05Nak13T0RBME1URXpNREF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFaWFjSEJDeVphQWhuRTZXbmVBVHRmYlZXUHllSU1nSVFlVTlMVzF0R3FCY3k3OHRjCjJIT1JieXRJNG05djVsRiszcWM3Zlo1OEQxWDNHRGhGNCtYWDFxT0NBVkl3Z2dGT01BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVbUtlRldOckZFNTZ2dkZBKzRqRWlrT055WUNjd0t3WURWUjBqQkNRd0lvQWc2ckJCCjg4S0E5M1U2dHMzbFFqaWc4dXdsN1ZIUmprM3FpdEZUSHBoZzl1Y3dnY0lHQTFVZEVRU0J1akNCdDRJeFluZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pBdWFHeG1MbUozZUMxd2NtOWtMbkpsWkd4bFpHZGxjaTVsZFlJZwpZbmQ0TFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pBdFpXOWpNaTVvYkdhQ0hHSjNlQzF2Y21SbGNtVnliWE53CkxXOXlaR1Z5WlhJd0xXVnZZektDQ1d4dlkyRnNhRzl6ZElJM1lXUnRhVzR0WW5kNExXOXlaR1Z5WlhKdGMzQXQKYjNKa1pYSmxjakF1YUd4bUxtSjNlQzF3Y205a0xuSmxaR3hsWkdkbGNpNWxkVEFLQmdncWhrak9QUVFEQWdOSQpBREJGQWlFQW9HUzVhck82U09YN3BWR3BnbVl5d2dFZHNKWnBPNURsdHNQRHBqNkV3Q2dDSUVob2ZuVFpuTW9aCjBMOG8rQURnVzgzN2JTNXlTdmFrblJuTVlNeWRlSHpyCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "host": "bwx-orderermsp-orderer0.hlf.bwx-prod.redledger.eu", + "port": 443, + "server_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM1RENDQW9xZ0F3SUJBZ0lVYVVIRnNhV1J2YmRjdTQ2U0MvR1M0OUNIdHF3d0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd09EQXpNVEV5T1RNMVdoY05Nak13T0RBME1URXpNREF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFaWFjSEJDeVphQWhuRTZXbmVBVHRmYlZXUHllSU1nSVFlVTlMVzF0R3FCY3k3OHRjCjJIT1JieXRJNG05djVsRiszcWM3Zlo1OEQxWDNHRGhGNCtYWDFxT0NBVkl3Z2dGT01BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVbUtlRldOckZFNTZ2dkZBKzRqRWlrT055WUNjd0t3WURWUjBqQkNRd0lvQWc2ckJCCjg4S0E5M1U2dHMzbFFqaWc4dXdsN1ZIUmprM3FpdEZUSHBoZzl1Y3dnY0lHQTFVZEVRU0J1akNCdDRJeFluZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pBdWFHeG1MbUozZUMxd2NtOWtMbkpsWkd4bFpHZGxjaTVsZFlJZwpZbmQ0TFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pBdFpXOWpNaTVvYkdhQ0hHSjNlQzF2Y21SbGNtVnliWE53CkxXOXlaR1Z5WlhJd0xXVnZZektDQ1d4dlkyRnNhRzl6ZElJM1lXUnRhVzR0WW5kNExXOXlaR1Z5WlhKdGMzQXQKYjNKa1pYSmxjakF1YUd4bUxtSjNlQzF3Y205a0xuSmxaR3hsWkdkbGNpNWxkVEFLQmdncWhrak9QUVFEQWdOSQpBREJGQWlFQW9HUzVhck82U09YN3BWR3BnbVl5d2dFZHNKWnBPNURsdHNQRHBqNkV3Q2dDSUVob2ZuVFpuTW9aCjBMOG8rQURnVzgzN2JTNXlTdmFrblJuTVlNeWRlSHpyCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + }, + { + "client_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM0ekNDQW9xZ0F3SUJBZ0lVSUZkYXo4YWhuRytHSEVQek9FUjYyWUxYbWVZd0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd09EQXpNVEV5T1RNMVdoY05Nak13T0RBME1URXpNREF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFV0t3dkw4NU51YUlGNW9mZWVmSVgrbE43NVljVVhpSUhHZUhhODFJZGN3a1ZwYXY2CjJRbmVFbEFIWU5RUTVrd3JoVEdIY2J4MWRxTU9BZmgwR2VPaU02T0NBVkl3Z2dGT01BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVRjBWU2M0ZWkwWXhLaGZMN0w4Mnc1RVppbFlNd0t3WURWUjBqQkNRd0lvQWc2ckJCCjg4S0E5M1U2dHMzbFFqaWc4dXdsN1ZIUmprM3FpdEZUSHBoZzl1Y3dnY0lHQTFVZEVRU0J1akNCdDRJeFluZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pFdWFHeG1MbUozZUMxd2NtOWtMbkpsWkd4bFpHZGxjaTVsZFlJZwpZbmQ0TFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pFdGQydDVZUzVvYkdhQ0hHSjNlQzF2Y21SbGNtVnliWE53CkxXOXlaR1Z5WlhJeExYZHJlV0dDQ1d4dlkyRnNhRzl6ZElJM1lXUnRhVzR0WW5kNExXOXlaR1Z5WlhKdGMzQXQKYjNKa1pYSmxjakV1YUd4bUxtSjNlQzF3Y205a0xuSmxaR3hsWkdkbGNpNWxkVEFLQmdncWhrak9QUVFEQWdOSApBREJFQWlBeUtpcnVEelcxdjdYZVh5R3lyMFExOGJkNjBwWGNGSndFRElSQ280NXJwUUlnR1IyUFlNZWRRdHRXCnFScnNnSy9xektFMzl5aDRDaU4zU0xZK2tvZkhlNFU9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "host": "bwx-orderermsp-orderer1.hlf.bwx-prod.redledger.eu", + "port": 443, + "server_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM0ekNDQW9xZ0F3SUJBZ0lVSUZkYXo4YWhuRytHSEVQek9FUjYyWUxYbWVZd0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd09EQXpNVEV5T1RNMVdoY05Nak13T0RBME1URXpNREF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFV0t3dkw4NU51YUlGNW9mZWVmSVgrbE43NVljVVhpSUhHZUhhODFJZGN3a1ZwYXY2CjJRbmVFbEFIWU5RUTVrd3JoVEdIY2J4MWRxTU9BZmgwR2VPaU02T0NBVkl3Z2dGT01BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVRjBWU2M0ZWkwWXhLaGZMN0w4Mnc1RVppbFlNd0t3WURWUjBqQkNRd0lvQWc2ckJCCjg4S0E5M1U2dHMzbFFqaWc4dXdsN1ZIUmprM3FpdEZUSHBoZzl1Y3dnY0lHQTFVZEVRU0J1akNCdDRJeFluZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pFdWFHeG1MbUozZUMxd2NtOWtMbkpsWkd4bFpHZGxjaTVsZFlJZwpZbmQ0TFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pFdGQydDVZUzVvYkdhQ0hHSjNlQzF2Y21SbGNtVnliWE53CkxXOXlaR1Z5WlhJeExYZHJlV0dDQ1d4dlkyRnNhRzl6ZElJM1lXUnRhVzR0WW5kNExXOXlaR1Z5WlhKdGMzQXQKYjNKa1pYSmxjakV1YUd4bUxtSjNlQzF3Y205a0xuSmxaR3hsWkdkbGNpNWxkVEFLQmdncWhrak9QUVFEQWdOSApBREJFQWlBeUtpcnVEelcxdjdYZVh5R3lyMFExOGJkNjBwWGNGSndFRElSQ280NXJwUUlnR1IyUFlNZWRRdHRXCnFScnNnSy9xektFMzl5aDRDaU4zU0xZK2tvZkhlNFU9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + }, + { + "client_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM0ekNDQW9xZ0F3SUJBZ0lVS3F1MEQrMHJHNW51ZVYxdGFhRWlTQUpMdUxvd0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd09EQXpNVEV5T1RNMVdoY05Nak13T0RBME1URXpNREF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFSWY5dGxKNTR0QnY5YjZEOHdjRTZzS3R5dzdTMExqN1B4NGVjZVMwSDJ3cXN0SVg2CktIczZINWlyYzExTTR4UHl2WjJJYUhtQUZNdlFWTnY3RExQVjJLT0NBVkl3Z2dGT01BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVdzhRNkFxbkdaV3Z3M3lwRUZBMUdpNmxWejI0d0t3WURWUjBqQkNRd0lvQWc2ckJCCjg4S0E5M1U2dHMzbFFqaWc4dXdsN1ZIUmprM3FpdEZUSHBoZzl1Y3dnY0lHQTFVZEVRU0J1akNCdDRJeFluZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pNdWFHeG1MbUozZUMxd2NtOWtMbkpsWkd4bFpHZGxjaTVsZFlJZwpZbmQ0TFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pNdE0zTTNkaTVvYkdhQ0hHSjNlQzF2Y21SbGNtVnliWE53CkxXOXlaR1Z5WlhJekxUTnpOM2FDQ1d4dlkyRnNhRzl6ZElJM1lXUnRhVzR0WW5kNExXOXlaR1Z5WlhKdGMzQXQKYjNKa1pYSmxjak11YUd4bUxtSjNlQzF3Y205a0xuSmxaR3hsWkdkbGNpNWxkVEFLQmdncWhrak9QUVFEQWdOSApBREJFQWlBOGhVY2tYUkVsV051WGN0Z2QzeEtNdlhqNUNlM3NQZmJHaVJDK1lnYjdtQUlnZTNZWlJFaWR5KzZ4Clk5R2xGRzVIc3AxZndYM1N5R2JKb2JMcStuLzNBVEE9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "host": "bwx-orderermsp-orderer3.hlf.bwx-prod.redledger.eu", + "port": 443, + "server_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM0ekNDQW9xZ0F3SUJBZ0lVS3F1MEQrMHJHNW51ZVYxdGFhRWlTQUpMdUxvd0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd09EQXpNVEV5T1RNMVdoY05Nak13T0RBME1URXpNREF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFSWY5dGxKNTR0QnY5YjZEOHdjRTZzS3R5dzdTMExqN1B4NGVjZVMwSDJ3cXN0SVg2CktIczZINWlyYzExTTR4UHl2WjJJYUhtQUZNdlFWTnY3RExQVjJLT0NBVkl3Z2dGT01BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVdzhRNkFxbkdaV3Z3M3lwRUZBMUdpNmxWejI0d0t3WURWUjBqQkNRd0lvQWc2ckJCCjg4S0E5M1U2dHMzbFFqaWc4dXdsN1ZIUmprM3FpdEZUSHBoZzl1Y3dnY0lHQTFVZEVRU0J1akNCdDRJeFluZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pNdWFHeG1MbUozZUMxd2NtOWtMbkpsWkd4bFpHZGxjaTVsZFlJZwpZbmQ0TFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pNdE0zTTNkaTVvYkdhQ0hHSjNlQzF2Y21SbGNtVnliWE53CkxXOXlaR1Z5WlhJekxUTnpOM2FDQ1d4dlkyRnNhRzl6ZElJM1lXUnRhVzR0WW5kNExXOXlaR1Z5WlhKdGMzQXQKYjNKa1pYSmxjak11YUd4bUxtSjNlQzF3Y205a0xuSmxaR3hsWkdkbGNpNWxkVEFLQmdncWhrak9QUVFEQWdOSApBREJFQWlBOGhVY2tYUkVsV051WGN0Z2QzeEtNdlhqNUNlM3NQZmJHaVJDK1lnYjdtQUlnZTNZWlJFaWR5KzZ4Clk5R2xGRzVIc3AxZndYM1N5R2JKb2JMcStuLzNBVEE9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + }, + { + "client_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM0ekNDQW9xZ0F3SUJBZ0lVWjg1b2hlTVI5WXZnUUx1N1RMN3RkR0Z0WThJd0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd09EQXpNVEV5T1RNMVdoY05Nak13T0RBME1URXpNREF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFR3lqa2VEMnpsY2luWU1VdVltWDFBekE3S3p6ZEZkS0xycTFoTEh0TTVuaG5CWVEyCjM1RGdQVUtlalRvb0E0YW10OVhHd2dmekNnNklYRkpLN2xZZEk2T0NBVkl3Z2dGT01BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVWkpxeUl6NzA0K1R1ZWE5anRXMXRyL24xTVJZd0t3WURWUjBqQkNRd0lvQWc2ckJCCjg4S0E5M1U2dHMzbFFqaWc4dXdsN1ZIUmprM3FpdEZUSHBoZzl1Y3dnY0lHQTFVZEVRU0J1akNCdDRJeFluZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pRdWFHeG1MbUozZUMxd2NtOWtMbkpsWkd4bFpHZGxjaTVsZFlJZwpZbmQ0TFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pRdE1YVTFZUzVvYkdhQ0hHSjNlQzF2Y21SbGNtVnliWE53CkxXOXlaR1Z5WlhJMExURjFOV0dDQ1d4dlkyRnNhRzl6ZElJM1lXUnRhVzR0WW5kNExXOXlaR1Z5WlhKdGMzQXQKYjNKa1pYSmxjalF1YUd4bUxtSjNlQzF3Y205a0xuSmxaR3hsWkdkbGNpNWxkVEFLQmdncWhrak9QUVFEQWdOSApBREJFQWlBUHFrZ3lvUncrek96bHFFSWxNVjh4eUdCa004U2VodDJ1dWQyUk5jejNqUUlnZU5UcjJwcWJwTWp5CnNPeGZ5cFQvK0lvcEVHTTNtTDQ2WlJsQnVjWW04bTg9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "host": "bwx-orderermsp-orderer4.hlf.bwx-prod.redledger.eu", + "port": 443, + "server_tls_cert": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM0ekNDQW9xZ0F3SUJBZ0lVWjg1b2hlTVI5WXZnUUx1N1RMN3RkR0Z0WThJd0NnWUlLb1pJemowRUF3SXcKYWpFTE1Ba0dBMVVFQmhNQ1FrVXhFVEFQQmdOVkJBY1RDRUp5ZFhOelpXeHpNUkV3RHdZRFZRUUpFd2hDY25WegpjMlZzY3pFUU1BNEdBMVVFQ2hNSFJuVnFhWFJ6ZFRFVE1CRUdBMVVFQ3hNS1FteHZZMnRqYUdGcGJqRU9NQXdHCkExVUVBeE1GZEd4elkyRXdIaGNOTWpJd09EQXpNVEV5T1RNMVdoY05Nak13T0RBME1URXpNREF3V2pBa01SQXcKRGdZRFZRUUxFd2R2Y21SbGNtVnlNUkF3RGdZRFZRUURFd2R2Y21SbGNtVnlNRmt3RXdZSEtvWkl6ajBDQVFZSQpLb1pJemowREFRY0RRZ0FFR3lqa2VEMnpsY2luWU1VdVltWDFBekE3S3p6ZEZkS0xycTFoTEh0TTVuaG5CWVEyCjM1RGdQVUtlalRvb0E0YW10OVhHd2dmekNnNklYRkpLN2xZZEk2T0NBVkl3Z2dGT01BNEdBMVVkRHdFQi93UUUKQXdJRHFEQWRCZ05WSFNVRUZqQVVCZ2dyQmdFRkJRY0RBUVlJS3dZQkJRVUhBd0l3REFZRFZSMFRBUUgvQkFJdwpBREFkQmdOVkhRNEVGZ1FVWkpxeUl6NzA0K1R1ZWE5anRXMXRyL24xTVJZd0t3WURWUjBqQkNRd0lvQWc2ckJCCjg4S0E5M1U2dHMzbFFqaWc4dXdsN1ZIUmprM3FpdEZUSHBoZzl1Y3dnY0lHQTFVZEVRU0J1akNCdDRJeFluZDQKTFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pRdWFHeG1MbUozZUMxd2NtOWtMbkpsWkd4bFpHZGxjaTVsZFlJZwpZbmQ0TFc5eVpHVnlaWEp0YzNBdGIzSmtaWEpsY2pRdE1YVTFZUzVvYkdhQ0hHSjNlQzF2Y21SbGNtVnliWE53CkxXOXlaR1Z5WlhJMExURjFOV0dDQ1d4dlkyRnNhRzl6ZElJM1lXUnRhVzR0WW5kNExXOXlaR1Z5WlhKdGMzQXQKYjNKa1pYSmxjalF1YUd4bUxtSjNlQzF3Y205a0xuSmxaR3hsWkdkbGNpNWxkVEFLQmdncWhrak9QUVFEQWdOSApBREJFQWlBUHFrZ3lvUncrek96bHFFSWxNVjh4eUdCa004U2VodDJ1dWQyUk5jejNqUUlnZU5UcjJwcWJwTWp5CnNPeGZ5cFQvK0lvcEVHTTNtTDQ2WlJsQnVjWW04bTg9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K" + } + ], + "options": { + "election_tick": 10, + "heartbeat_tick": 1, + "max_inflight_blocks": 5, + "snapshot_interval_size": 16777216, + "tick_interval": "500ms" + } + }, + "state": "STATE_NORMAL", + "type": "etcdraft" + }, + "version": "0" + } + }, + "version": "0" + } + }, + "mod_policy": "Admins", + "policies": { + "Admins": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "MAJORITY", + "sub_policy": "Admins" + } + }, + "version": "0" + }, + "Readers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Readers" + } + }, + "version": "0" + }, + "Writers": { + "mod_policy": "Admins", + "policy": { + "type": 3, + "value": { + "rule": "ANY", + "sub_policy": "Writers" + } + }, + "version": "0" + } + }, + "values": { + "BlockDataHashingStructure": { + "mod_policy": "Admins", + "value": { + "width": 4294967295 + }, + "version": "0" + }, + "Capabilities": { + "mod_policy": "Admins", + "value": { + "capabilities": { + "V2_0": {} + } + }, + "version": "0" + }, + "HashingAlgorithm": { + "mod_policy": "Admins", + "value": { + "name": "SHA256" + }, + "version": "0" + } + }, + "version": "0" + }, + "sequence": "3" +} diff --git a/metadata.json b/metadata.json new file mode 100644 index 00000000..c96a16e3 --- /dev/null +++ b/metadata.json @@ -0,0 +1,4 @@ +{ + "type": "ccaas", + "label": "asset" +} diff --git a/orderer-cert.pem b/orderer-cert.pem new file mode 100644 index 00000000..d09e49c5 --- /dev/null +++ b/orderer-cert.pem @@ -0,0 +1,18 @@ +-----BEGIN CERTIFICATE----- +MIIC9jCCAp2gAwIBAgIUMs3m2wECajVdk6uCRC2Lbdd7QB4wCgYIKoZIzj0EAwIw +bTELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj +YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEO +MAwGA1UEAxMFdGxzY2EwHhcNMjMxMjI5MjEzODQ0WhcNMjQxMjI5MjIwOTAwWjAk +MRAwDgYDVQQLEwdvcmRlcmVyMRAwDgYDVQQDEwdvcmRlcmVyMFkwEwYHKoZIzj0C +AQYIKoZIzj0DAQcDQgAEO/9uW1ZSbCIc043QZyVvkzxYqEWb8RLB0KM+Qq8l89eh +1cJSa3tPCoBXGiSNc68VgJGTEpfVq+luWi0NI4EB0KOCAWIwggFeMA4GA1UdDwEB +/wQEAwIDqDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDAYDVR0TAQH/ +BAIwADAdBgNVHQ4EFgQUuD1Mh3/6dw3cdnFTiVf1+Bp9WEgwKwYDVR0jBCQwIoAg +DPuwmQfFTdcJDMXeK54eGio4nDdr9c9mmBSte1I1qYcwdgYDVR0RBG8wbYIJbG9j +YWxob3N0gglvcmQtbm9kZTGCEW9yZC1ub2RlMS5kZWZhdWx0ghdvcmRlcmVyMC1v +cmQubG9jYWxoby5zdIIdYWRtaW4tb3JkZXJlcjAtb3JkLmxvY2FsaG8uc3SHBH8A +AAGHBKwSAAIwWwYIKgMEBQYHCAEET3siYXR0cnMiOnsiaGYuQWZmaWxpYXRpb24i +OiIiLCJoZi5FbnJvbGxtZW50SUQiOiJvcmRlcmVyIiwiaGYuVHlwZSI6Im9yZGVy +ZXIifX0wCgYIKoZIzj0EAwIDRwAwRAIgA/FEMe6l+mERxixQrA6IyUQff7ArHKr9 +XV/sLK4h8SMCIDuAKCFWZcTGYYL18LNHKwifRJzMdq8ghaoUKfZ7/+fE +-----END CERTIFICATE----- diff --git a/orderermsp.yaml b/orderermsp.yaml new file mode 100644 index 00000000..81b2a812 --- /dev/null +++ b/orderermsp.yaml @@ -0,0 +1,24 @@ +cert: + pem: | + -----BEGIN CERTIFICATE----- + MIICVTCCAfygAwIBAgIUPr4KLvauZugfzahrxNDCh+485YIwCgYIKoZIzj0EAwIw + bTELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEO + MAwGA1UEAxMFdGxzY2EwHhcNMjMxMTEyMTMzNDEyWhcNMjQxMTEyMTMzOTAwWjAg + MQ4wDAYDVQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggq + hkjOPQMBBwNCAAS2OryJs2JOTNQuHpDBR6UZpEoq0kyXOedpbTJP/8pZXp6dXeVv + vNxus2llLpKpafWj/pzTY7BOKUptZH9p48GZo4HGMIHDMA4GA1UdDwEB/wQEAwIH + gDAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBR0GHcDoT7NzcZ1Grvxq6t9BqLf/DAr + BgNVHSMEJDAigCAR2n02mGUCxnfNZtpFVaA/9qHjx9o2wVGUE4UHo2LOHDBXBggq + AwQFBgcIAQRLeyJhdHRycyI6eyJoZi5BZmZpbGlhdGlvbiI6IiIsImhmLkVucm9s + bG1lbnRJRCI6ImFkbWluIiwiaGYuVHlwZSI6ImFkbWluIn19MAoGCCqGSM49BAMC + A0cAMEQCIG1DMRQ01s1wBtiO87qVQLINBndX04LUrl4LWk3GUZkQAiAVnqmyzqcL + myvkYPr3eS5hnbIAtHAK0db2H9v4GFo+Ng== + -----END CERTIFICATE----- +key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgNhA5flv/xo4rENRs + 6j1HrQIzWtZQ4zUNm2gdzv3XDGShRANCAAS2OryJs2JOTNQuHpDBR6UZpEoq0kyX + OedpbTJP/8pZXp6dXeVvvNxus2llLpKpafWj/pzTY7BOKUptZH9p48GZ + -----END PRIVATE KEY----- diff --git a/ordservice.yaml b/ordservice.yaml new file mode 100644 index 00000000..16d6168a --- /dev/null +++ b/ordservice.yaml @@ -0,0 +1,114 @@ +certificateAuthorities: + ord-ca.default: + caName: ca + registrar: + enrollId: enroll + enrollSecret: enrollpw + tlsCACerts: + pem: + - | + -----BEGIN CERTIFICATE----- + MIICWjCCAf+gAwIBAgIRAOd73ukd6jW1l5TBJ6PnAtgwCgYIKoZIzj0EAwIwUjET + MBEGA1UEBhMKQ2FsaWZvcm5pYTEJMAcGA1UEBxMAMQkwBwYDVQQJEwAxFDASBgNV + BAoTC0h5cGVybGVkZ2VyMQ8wDQYDVQQLEwZGYWJyaWMwHhcNMjMxMjI5MjEzODQ0 + WhcNMzMxMjMwMjEzODQ0WjBSMRMwEQYDVQQGEwpDYWxpZm9ybmlhMQkwBwYDVQQH + EwAxCTAHBgNVBAkTADEUMBIGA1UEChMLSHlwZXJsZWRnZXIxDzANBgNVBAsTBkZh + YnJpYzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABKihIBNrW3PV3HNPbr6IMmlh + zu0S5cHmIz/Qo/MafbDhs0ukvgnBvKXR/MX+DlK7f+6rYjH0tpkGMy5HtPWIhcSj + gbUwgbIwDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF + BQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCA+Se0vyERFCcppe7IkX3qo + 4nbdIU4Ss1i0qZeU/4xCkzBFBgNVHREEPjA8gglsb2NhbGhvc3SCBm9yZC1jYYIO + b3JkLWNhLmRlZmF1bHSCEW9yZC1jYS5sb2NhbGhvLnN0hwR/AAABMAoGCCqGSM49 + BAMCA0kAMEYCIQDUJZ2AuzR0PHd9KsAIwU+kTXvihyMAWo7yl4spIkpM9QIhAIej + G6omMibcuCQB2AIzgF0TaAh77bHS6RygWfV8nfn5 + -----END CERTIFICATE----- + url: https://ord-ca.localho.st:443 + org1-ca.default: + caName: ca + registrar: + enrollId: enroll + enrollSecret: enrollpw + tlsCACerts: + pem: + - | + -----BEGIN CERTIFICATE----- + MIICWzCCAgKgAwIBAgIRAJEifFJcmUoq33obZGuAxhQwCgYIKoZIzj0EAwIwUjET + MBEGA1UEBhMKQ2FsaWZvcm5pYTEJMAcGA1UEBxMAMQkwBwYDVQQJEwAxFDASBgNV + BAoTC0h5cGVybGVkZ2VyMQ8wDQYDVQQLEwZGYWJyaWMwHhcNMjMxMjI5MjEzNTEy + WhcNMzMxMjMwMjEzNTEyWjBSMRMwEQYDVQQGEwpDYWxpZm9ybmlhMQkwBwYDVQQH + EwAxCTAHBgNVBAkTADEUMBIGA1UEChMLSHlwZXJsZWRnZXIxDzANBgNVBAsTBkZh + YnJpYzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABL3p7UMzCLgb2o6HVVGJ5ENR + S5fTlEQgd7/fEjrPe8t69WBXdaWiTC7I69WhUvKhYVlAdeQpusukumh7rh9aZQCj + gbgwgbUwDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF + BQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCDHxzf68m9PmlD27UOQFXJI + pzZfSn5JiNSQNhwZ0UYr1DBIBgNVHREEQTA/gglsb2NhbGhvc3SCB29yZzEtY2GC + D29yZzEtY2EuZGVmYXVsdIISb3JnMS1jYS5sb2NhbGhvLnN0hwR/AAABMAoGCCqG + SM49BAMCA0cAMEQCIBzJkC36RXAE3PM5vBkTIBOUa4mpWKYhNytXX4RXBs+PAiBX + L/+li+AoNZM69Hn5YrazQmCeIqrmxxC2pr+KSazRCQ== + -----END CERTIFICATE----- + url: https://org1-ca.localho.st:443 +channels: + _default: + orderers: + - ord-node1.default + peers: {} +client: + organization: +name: hlf-network +orderers: + ord-node1.default: + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICRzCCAeygAwIBAgIRANNsqxLWOvYp2PhIhfeA/lgwCgYIKoZIzj0EAwIwbTEL + MAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGljYW50 + ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEOMAwG + A1UEAxMFdGxzY2EwHhcNMjMxMjI5MjEzODQ0WhcNMzMxMjMwMjEzODQ0WjBtMQsw + CQYDVQQGEwJFUzERMA8GA1UEBxMIQWxpY2FudGUxETAPBgNVBAkTCEFsaWNhbnRl + MRkwFwYDVQQKExBLdW5nIEZ1IFNvZnR3YXJlMQ0wCwYDVQQLEwRUZWNoMQ4wDAYD + VQQDEwV0bHNjYTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABAPSZDdIvROkKCyv + kqSRtbDWbS5DtTLCk4Zwz7g6NelwyaYDfz2Q/r18ee60lo0lCvMO1n+xImT72YIn + mltXMc2jbTBrMA4GA1UdDwEB/wQEAwIBpjAdBgNVHSUEFjAUBggrBgEFBQcDAgYI + KwYBBQUHAwEwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgDPuwmQfFTdcJDMXe + K54eGio4nDdr9c9mmBSte1I1qYcwCgYIKoZIzj0EAwIDSQAwRgIhAP9vHtYyCZl9 + 4qq9p+STioJ0EGq4OxUzf1Yq1U7wu2vAAiEA5H8BCEGneAxSTv9PD+rWFHV4cH0W + Ub1rvK/STlzolT4= + -----END CERTIFICATE----- + url: grpcs://orderer0-ord.localho.st:443 +organizations: + OrdererMSP: + cryptoPath: /tmp/cryptopath + mspid: OrdererMSP + orderers: + - ord-node1.default + peers: [] + users: + admin: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIICUzCCAfmgAwIBAgIUZDZBVjyo64g3DSbSq2KSzQLGFKgwCgYIKoZIzj0EAwIw + ajELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEL + MAkGA1UEAxMCY2EwHhcNMjMxMjI5MjEzODQ0WhcNMjQxMjI5MjE0MTAwWjAgMQ4w + DAYDVQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggqhkjO + PQMBBwNCAAS+ys0Yb8gp1XZoUwqqKWfdQIkbgtl8N3WL+uvE1fIKsAZHD1Zov3ta + oW9bCUVWE2vmLlhRjd2oCcgTV6thH3LSo4HGMIHDMA4GA1UdDwEB/wQEAwIHgDAM + BgNVHRMBAf8EAjAAMB0GA1UdDgQWBBQasilekA3WBMuWG8tkmbspDf5fDDArBgNV + HSMEJDAigCCDPkyJnDzLpDXc+5oCRYKB4Qob3MV/hXAL+U2vAbeXJjBXBggqAwQF + BgcIAQRLeyJhdHRycyI6eyJoZi5BZmZpbGlhdGlvbiI6IiIsImhmLkVucm9sbG1l + bnRJRCI6ImFkbWluIiwiaGYuVHlwZSI6ImFkbWluIn19MAoGCCqGSM49BAMCA0gA + MEUCIQD3Ctja+sPT94GdAGusxtaFoGOZ/yYKRedEu0NJIsWxzAIgLex9uKk9fEZi + C8koefLiVwAiDeuqsgJLgYW5k5R+y04= + -----END CERTIFICATE----- + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgP2TdYYQPhXdJAVTT + pNLk+lqY73H4Zx4llJMT6a9mf7mhRANCAAS+ys0Yb8gp1XZoUwqqKWfdQIkbgtl8 + N3WL+uvE1fIKsAZHD1Zov3taoW9bCUVWE2vmLlhRjd2oCcgTV6thH3LS + -----END PRIVATE KEY----- +peers: {} +version: 1.0.0 diff --git a/org1.yaml b/org1.yaml new file mode 100644 index 00000000..f729f580 --- /dev/null +++ b/org1.yaml @@ -0,0 +1,261 @@ + +name: hlf-network +version: 1.0.0 +client: + organization: "" +organizations: + + OrdererMSP: + mspid: OrdererMSP + cryptoPath: /tmp/cryptopath + users: {} + peers: [] + orderers: + - ord-node2.default + - ord-node1.default + - ord-node3.default + Org1MSP: + mspid: Org1MSP + cryptoPath: /tmp/cryptopath + users: + org1-admin-default: + cert: + pem: | + -----BEGIN CERTIFICATE----- + MIICUjCCAfmgAwIBAgIUGQmBPgWUrwtQDzMd3F5/VqGCM+UwCgYIKoZIzj0EAwIw + ajELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEL + MAkGA1UEAxMCY2EwHhcNMjQwMTA1MTc1NjIxWhcNMjUwMTA1MTgwMTAwWjAgMQ4w + DAYDVQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggqhkjO + PQMBBwNCAAQTDQ/m31mxVf2uw0D6BprL+Wb40oB4wyd4U6tpBYLr46sbdLL9O0br + YZ1grTzqeMwageeWzk81ZkPmDNSlWJ1vo4HGMIHDMA4GA1UdDwEB/wQEAwIHgDAM + BgNVHRMBAf8EAjAAMB0GA1UdDgQWBBTvMvH93u61ext1xkCYnGJAKR6nsTArBgNV + HSMEJDAigCBV70/B41Ts8sG06V44NOCZt89lUoPAjcE1f/wnGUrHPjBXBggqAwQF + BgcIAQRLeyJhdHRycyI6eyJoZi5BZmZpbGlhdGlvbiI6IiIsImhmLkVucm9sbG1l + bnRJRCI6ImFkbWluIiwiaGYuVHlwZSI6ImFkbWluIn19MAoGCCqGSM49BAMCA0cA + MEQCIDXwDN/r+t8yI41ywhEocD/VnFnpddKa6z4dr/8L2RQzAiA0bvK8s/vf41A1 + ulqmV+OK9wt/+kSFt+nt2amc9Ev/vQ== + -----END CERTIFICATE----- + + key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgrWTFQmzQxx2Zoob0 + o1Cg8lktHub4430O6h0AkdB7gnWhRANCAAQTDQ/m31mxVf2uw0D6BprL+Wb40oB4 + wyd4U6tpBYLr46sbdLL9O0brYZ1grTzqeMwageeWzk81ZkPmDNSlWJ1v + -----END PRIVATE KEY----- + + peers: + - org1-peer0.default + - org1-peer1.default + orderers: [] + +orderers: + ord-node2.default: + + url: grpcs://orderer1-ord.localho.st:443 + + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICRTCCAeygAwIBAgIRAMz/MPaNs3BjwrW84XFdNmowCgYIKoZIzj0EAwIwbTEL + MAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGljYW50 + ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEOMAwG + A1UEAxMFdGxzY2EwHhcNMjQwMTA1MTc1NzQwWhcNMzQwMTA2MTc1NzQwWjBtMQsw + CQYDVQQGEwJFUzERMA8GA1UEBxMIQWxpY2FudGUxETAPBgNVBAkTCEFsaWNhbnRl + MRkwFwYDVQQKExBLdW5nIEZ1IFNvZnR3YXJlMQ0wCwYDVQQLEwRUZWNoMQ4wDAYD + VQQDEwV0bHNjYTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABBnktKGcL4D+nLSP + QaghpefsTKWjSm50dWG2RiDWZDdJW5V1EVy04YpOhetEcsi3cyz2QRlY2vbQd7Rz + 4zDW3qCjbTBrMA4GA1UdDwEB/wQEAwIBpjAdBgNVHSUEFjAUBggrBgEFBQcDAgYI + KwYBBQUHAwEwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgIqxo9RIU3Ue56W6l + pDNFV7dcVPOvfhJwGphccDIYJZ4wCgYIKoZIzj0EAwIDRwAwRAIgFrOgLUFrjapn + h4b2D1HkADZQsqYEV6M2olsZhS7PXS4CIGYUf2ACLq3AyKpU0+z8qtOP9tQKQuPJ + ohiCq8hU20gm + -----END CERTIFICATE----- + + ord-node1.default: + + url: grpcs://orderer0-ord.localho.st:443 + + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICRTCCAeygAwIBAgIRAMz/MPaNs3BjwrW84XFdNmowCgYIKoZIzj0EAwIwbTEL + MAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGljYW50 + ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEOMAwG + A1UEAxMFdGxzY2EwHhcNMjQwMTA1MTc1NzQwWhcNMzQwMTA2MTc1NzQwWjBtMQsw + CQYDVQQGEwJFUzERMA8GA1UEBxMIQWxpY2FudGUxETAPBgNVBAkTCEFsaWNhbnRl + MRkwFwYDVQQKExBLdW5nIEZ1IFNvZnR3YXJlMQ0wCwYDVQQLEwRUZWNoMQ4wDAYD + VQQDEwV0bHNjYTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABBnktKGcL4D+nLSP + QaghpefsTKWjSm50dWG2RiDWZDdJW5V1EVy04YpOhetEcsi3cyz2QRlY2vbQd7Rz + 4zDW3qCjbTBrMA4GA1UdDwEB/wQEAwIBpjAdBgNVHSUEFjAUBggrBgEFBQcDAgYI + KwYBBQUHAwEwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgIqxo9RIU3Ue56W6l + pDNFV7dcVPOvfhJwGphccDIYJZ4wCgYIKoZIzj0EAwIDRwAwRAIgFrOgLUFrjapn + h4b2D1HkADZQsqYEV6M2olsZhS7PXS4CIGYUf2ACLq3AyKpU0+z8qtOP9tQKQuPJ + ohiCq8hU20gm + -----END CERTIFICATE----- + + ord-node3.default: + + url: grpcs://orderer2-ord.localho.st:443 + + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICRTCCAeygAwIBAgIRAMz/MPaNs3BjwrW84XFdNmowCgYIKoZIzj0EAwIwbTEL + MAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGljYW50 + ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEOMAwG + A1UEAxMFdGxzY2EwHhcNMjQwMTA1MTc1NzQwWhcNMzQwMTA2MTc1NzQwWjBtMQsw + CQYDVQQGEwJFUzERMA8GA1UEBxMIQWxpY2FudGUxETAPBgNVBAkTCEFsaWNhbnRl + MRkwFwYDVQQKExBLdW5nIEZ1IFNvZnR3YXJlMQ0wCwYDVQQLEwRUZWNoMQ4wDAYD + VQQDEwV0bHNjYTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABBnktKGcL4D+nLSP + QaghpefsTKWjSm50dWG2RiDWZDdJW5V1EVy04YpOhetEcsi3cyz2QRlY2vbQd7Rz + 4zDW3qCjbTBrMA4GA1UdDwEB/wQEAwIBpjAdBgNVHSUEFjAUBggrBgEFBQcDAgYI + KwYBBQUHAwEwDwYDVR0TAQH/BAUwAwEB/zApBgNVHQ4EIgQgIqxo9RIU3Ue56W6l + pDNFV7dcVPOvfhJwGphccDIYJZ4wCgYIKoZIzj0EAwIDRwAwRAIgFrOgLUFrjapn + h4b2D1HkADZQsqYEV6M2olsZhS7PXS4CIGYUf2ACLq3AyKpU0+z8qtOP9tQKQuPJ + ohiCq8hU20gm + -----END CERTIFICATE----- + + + +peers: + org1-peer0.default: + + url: grpcs://peer0-org1.localho.st:443 + + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICRjCCAeugAwIBAgIQKpOXEKiM1FWpFR2PnrCe8jAKBggqhkjOPQQDAjBtMQsw + CQYDVQQGEwJFUzERMA8GA1UEBxMIQWxpY2FudGUxETAPBgNVBAkTCEFsaWNhbnRl + MRkwFwYDVQQKExBLdW5nIEZ1IFNvZnR3YXJlMQ0wCwYDVQQLEwRUZWNoMQ4wDAYD + VQQDEwV0bHNjYTAeFw0yNDAxMDUxNzU2MjFaFw0zNDAxMDYxNzU2MjFaMG0xCzAJ + BgNVBAYTAkVTMREwDwYDVQQHEwhBbGljYW50ZTERMA8GA1UECRMIQWxpY2FudGUx + GTAXBgNVBAoTEEt1bmcgRnUgU29mdHdhcmUxDTALBgNVBAsTBFRlY2gxDjAMBgNV + BAMTBXRsc2NhMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEmKjvwj6ps1/LEK+C + JCFpgbz/jHXLspwsapyMo9BYkzeu9qXj8x/v4mB3IyYzpKTQSAYAS345H/z5kFKe + XvIRm6NtMGswDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggr + BgEFBQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCD222ZZ6T1kPORLvLV6 + QPltda+Xm0zghZsEMrLnIG64yjAKBggqhkjOPQQDAgNJADBGAiEA8WawdTdOhIx9 + rfn+FX9kSWjhu0hRwaAsSpiFqVpVi5QCIQC6x8/W7LCh7yqDuV9/V7ySEWcOMaHA + qk2E3W82I4+kAQ== + -----END CERTIFICATE----- + + org1-peer1.default: + + url: grpcs://peer1-org1.localho.st:443 + + grpcOptions: + allow-insecure: false + tlsCACerts: + pem: | + -----BEGIN CERTIFICATE----- + MIICRjCCAeugAwIBAgIQKpOXEKiM1FWpFR2PnrCe8jAKBggqhkjOPQQDAjBtMQsw + CQYDVQQGEwJFUzERMA8GA1UEBxMIQWxpY2FudGUxETAPBgNVBAkTCEFsaWNhbnRl + MRkwFwYDVQQKExBLdW5nIEZ1IFNvZnR3YXJlMQ0wCwYDVQQLEwRUZWNoMQ4wDAYD + VQQDEwV0bHNjYTAeFw0yNDAxMDUxNzU2MjFaFw0zNDAxMDYxNzU2MjFaMG0xCzAJ + BgNVBAYTAkVTMREwDwYDVQQHEwhBbGljYW50ZTERMA8GA1UECRMIQWxpY2FudGUx + GTAXBgNVBAoTEEt1bmcgRnUgU29mdHdhcmUxDTALBgNVBAsTBFRlY2gxDjAMBgNV + BAMTBXRsc2NhMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEmKjvwj6ps1/LEK+C + JCFpgbz/jHXLspwsapyMo9BYkzeu9qXj8x/v4mB3IyYzpKTQSAYAS345H/z5kFKe + XvIRm6NtMGswDgYDVR0PAQH/BAQDAgGmMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggr + BgEFBQcDATAPBgNVHRMBAf8EBTADAQH/MCkGA1UdDgQiBCD222ZZ6T1kPORLvLV6 + QPltda+Xm0zghZsEMrLnIG64yjAKBggqhkjOPQQDAgNJADBGAiEA8WawdTdOhIx9 + rfn+FX9kSWjhu0hRwaAsSpiFqVpVi5QCIQC6x8/W7LCh7yqDuV9/V7ySEWcOMaHA + qk2E3W82I4+kAQ== + -----END CERTIFICATE----- + +certificateAuthorities: + + org1-ca.default: + + url: https://org1-ca.localho.st:443 + + + registrar: + enrollId: enroll + enrollSecret: "enrollpw" + + caName: ca + tlsCACerts: + pem: + - | + -----BEGIN CERTIFICATE----- + MIICWjCCAgGgAwIBAgIQBNjpGR+oSck/YdTnL2xjAzAKBggqhkjOPQQDAjBSMRMw + EQYDVQQGEwpDYWxpZm9ybmlhMQkwBwYDVQQHEwAxCTAHBgNVBAkTADEUMBIGA1UE + ChMLSHlwZXJsZWRnZXIxDzANBgNVBAsTBkZhYnJpYzAeFw0yNDAxMDUxNzU2MjFa + Fw0zNDAxMDYxNzU2MjFaMFIxEzARBgNVBAYTCkNhbGlmb3JuaWExCTAHBgNVBAcT + ADEJMAcGA1UECRMAMRQwEgYDVQQKEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFi + cmljMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJ8NoIJZL97ECsrwfvcAQ+j4q + 1Ahk2UkELR3kgiQ61AX46grLHf0+vOSEj9Y4ysMeUWV+wDJAHvK5FLOMJ8xusaOB + uDCBtTAOBgNVHQ8BAf8EBAMCAaYwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUF + BwMBMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIMA2d8GK5ZMG8WilwY3ghBjl + Vgi33zMTJ4xuuVqO+TVUMEgGA1UdEQRBMD+CCWxvY2FsaG9zdIIHb3JnMS1jYYIP + b3JnMS1jYS5kZWZhdWx0ghJvcmcxLWNhLmxvY2FsaG8uc3SHBH8AAAEwCgYIKoZI + zj0EAwIDRwAwRAIgNR9Iq//BT6XIeWnJZPpL3fVNVOc3OdzuQvAj47+Jb9oCIEif + R8RB15gCEKO8dC8mReU2cwxTokVwSwSYZCFzDUaZ + -----END CERTIFICATE----- + + + ord-ca.default: + + url: https://ord-ca.localho.st:443 + + + registrar: + enrollId: enroll + enrollSecret: "enrollpw" + + caName: ca + tlsCACerts: + pem: + - | + -----BEGIN CERTIFICATE----- + MIICWDCCAf6gAwIBAgIQKWOrDnUPUlHn0rFgvgaLpzAKBggqhkjOPQQDAjBSMRMw + EQYDVQQGEwpDYWxpZm9ybmlhMQkwBwYDVQQHEwAxCTAHBgNVBAkTADEUMBIGA1UE + ChMLSHlwZXJsZWRnZXIxDzANBgNVBAsTBkZhYnJpYzAeFw0yNDAxMDUxNzU3NDBa + Fw0zNDAxMDYxNzU3NDBaMFIxEzARBgNVBAYTCkNhbGlmb3JuaWExCTAHBgNVBAcT + ADEJMAcGA1UECRMAMRQwEgYDVQQKEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFi + cmljMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENF9k9cob3/1LXVlV03Py8jJ/ + +R5D0rDW7kzq5SMRqB6mbcuOnBxtwwTgFRgs2LcJgMrFew1ViRleXdTJHYpunqOB + tTCBsjAOBgNVHQ8BAf8EBAMCAaYwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUF + BwMBMA8GA1UdEwEB/wQFMAMBAf8wKQYDVR0OBCIEIJ/cDOjNy/j/STLTIhyHweDy + ryrecB1fthsy8D+zxjQ3MEUGA1UdEQQ+MDyCCWxvY2FsaG9zdIIGb3JkLWNhgg5v + cmQtY2EuZGVmYXVsdIIRb3JkLWNhLmxvY2FsaG8uc3SHBH8AAAEwCgYIKoZIzj0E + AwIDSAAwRQIgW34jVMFdgfLnDl9P8GVnjVnWOW/z2oofRrmoU6B3UKwCIQDhG32h + oGZVM4UjZydl/giINs/utN1cN83hsvxw4bZ94w== + -----END CERTIFICATE----- + + + +channels: + demo: + + orderers: + - ord-node2.default + - ord-node1.default + - ord-node3.default + + peers: + org1-peer0.default: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + org1-peer1.default: + discover: true + endorsingPeer: true + chaincodeQuery: true + ledgerQuery: true + eventSource: true + diff --git a/org1msp-tlsca.yaml b/org1msp-tlsca.yaml new file mode 100644 index 00000000..7e88d64d --- /dev/null +++ b/org1msp-tlsca.yaml @@ -0,0 +1,24 @@ +cert: + pem: | + -----BEGIN CERTIFICATE----- + MIICVjCCAfygAwIBAgIUEUbHO2ismNaqAlPaYPblH2Jb7rcwCgYIKoZIzj0EAwIw + bTELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEO + MAwGA1UEAxMFdGxzY2EwHhcNMjMxMTEyMTMyNjQ5WhcNMjQxMTEyMTMzOTAwWjAg + MQ4wDAYDVQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggq + hkjOPQMBBwNCAAT8rC1SWPrViBz7xjFgoH0ZdxlOaaxk+puXtPV1vjSgsjCSMZuC + Gf0s0geqYcx0TSlbMhpxRDUCHsgO9nsGhoE7o4HGMIHDMA4GA1UdDwEB/wQEAwIH + gDAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBRAdqlX5wR5ZCZ3c20vJzUphtHb+TAr + BgNVHSMEJDAigCBcalrjVxGyLo6L8taEgjC3FjzrHSOxsQLscfn1HC+gizBXBggq + AwQFBgcIAQRLeyJhdHRycyI6eyJoZi5BZmZpbGlhdGlvbiI6IiIsImhmLkVucm9s + bG1lbnRJRCI6ImFkbWluIiwiaGYuVHlwZSI6ImFkbWluIn19MAoGCCqGSM49BAMC + A0gAMEUCIQD5auRcPH1WzKjK+q6RsAzofUURu/Hg7EdKNcrfe0wl6gIgXE7r2r8b + PC2M4c4aJoZNOXK7yNWjoWTiEHxCsdqqF9I= + -----END CERTIFICATE----- +key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg3gOILTNqBU7bwrBI + Q7dhPRP2tpnc/V8CK7HbI0yE6eehRANCAAT8rC1SWPrViBz7xjFgoH0ZdxlOaaxk + +puXtPV1vjSgsjCSMZuCGf0s0geqYcx0TSlbMhpxRDUCHsgO9nsGhoE7 + -----END PRIVATE KEY----- diff --git a/org1msp.yaml b/org1msp.yaml new file mode 100644 index 00000000..affa13f3 --- /dev/null +++ b/org1msp.yaml @@ -0,0 +1,24 @@ +cert: + pem: | + -----BEGIN CERTIFICATE----- + MIICUzCCAfmgAwIBAgIULkDAe9KfSaaNCq6xiJ9xPFpG+EkwCgYIKoZIzj0EAwIw + ajELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEL + MAkGA1UEAxMCY2EwHhcNMjMxMTEyMTMyNjQ5WhcNMjQxMTEyMTMzOTAwWjAgMQ4w + DAYDVQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggqhkjO + PQMBBwNCAARWxsZpLoX/yol7hug7r7dg41U1JKqiGvEqMCYmvrhCbEZTiP/Rkfnv + ydJR3beP7WrUKt+3ZG7PquPoLYjloFdvo4HGMIHDMA4GA1UdDwEB/wQEAwIHgDAM + BgNVHRMBAf8EAjAAMB0GA1UdDgQWBBQRYQK8rUabEVPtfAPNxTtaIyO2ljArBgNV + HSMEJDAigCAOzpcHHnZqW53GfXfu6mtHYAnbg37F/Y3FHMMU0dVELDBXBggqAwQF + BgcIAQRLeyJhdHRycyI6eyJoZi5BZmZpbGlhdGlvbiI6IiIsImhmLkVucm9sbG1l + bnRJRCI6ImFkbWluIiwiaGYuVHlwZSI6ImFkbWluIn19MAoGCCqGSM49BAMCA0gA + MEUCIQCz7MOkOBXd5u3yWgenqQ8gtZSZl8Krr+UehvVzvDv0rAIgF/Y5jChMnuIl + 1SMd9QL7n8/2hTF3QfWLgWmYuMV1C38= + -----END CERTIFICATE----- +key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg9nyvzi7+wmJ7mvVb + 6w6sT9IJrSLavN5SvYiCsgC7UemhRANCAARWxsZpLoX/yol7hug7r7dg41U1JKqi + GvEqMCYmvrhCbEZTiP/RkfnvydJR3beP7WrUKt+3ZG7PquPoLYjloFdv + -----END PRIVATE KEY----- diff --git a/peer-org1.yaml b/peer-org1.yaml new file mode 100644 index 00000000..70140902 --- /dev/null +++ b/peer-org1.yaml @@ -0,0 +1,24 @@ +cert: + pem: | + -----BEGIN CERTIFICATE----- + MIICUzCCAfmgAwIBAgIUc9eHZtY2lkp7XkC45b5B9s22kuAwCgYIKoZIzj0EAwIw + ajELMAkGA1UEBhMCRVMxETAPBgNVBAcTCEFsaWNhbnRlMREwDwYDVQQJEwhBbGlj + YW50ZTEZMBcGA1UEChMQS3VuZyBGdSBTb2Z0d2FyZTENMAsGA1UECxMEVGVjaDEL + MAkGA1UEAxMCY2EwHhcNMjMxMjI5MjEzNTEyWhcNMjQxMjI5MjE0MTAwWjAgMQ4w + DAYDVQQLEwVhZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggqhkjO + PQMBBwNCAATGKiHiOjOK1VYZDeOA9jDh/MHb7XmnqAXRpBxKpfFXMYpGi5ofZhJQ + 1jkOFE9LVshlPNJ0Wy8eA40yAyaF6xfgo4HGMIHDMA4GA1UdDwEB/wQEAwIHgDAM + BgNVHRMBAf8EAjAAMB0GA1UdDgQWBBT6/oUEsvsoa4xqyUYyaqkFV4IujjArBgNV + HSMEJDAigCALOKfRY9hD9jGf1zHX9FhTRifDhs9Qa9yImfq+apeh0zBXBggqAwQF + BgcIAQRLeyJhdHRycyI6eyJoZi5BZmZpbGlhdGlvbiI6IiIsImhmLkVucm9sbG1l + bnRJRCI6ImFkbWluIiwiaGYuVHlwZSI6ImFkbWluIn19MAoGCCqGSM49BAMCA0gA + MEUCIQCl4jU+uQz76dZsDzo2ueT7KsEcC9zqVlPuXeJF0MkK6wIgMJzBjGGgcOVQ + 9Aemo5oyinrnJl+syp3eYxvRPkWtQZQ= + -----END CERTIFICATE----- +key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQglrCxgJQxhPH56qNG + qsHHXtoQgscFe8ow744wQQTU7BGhRANCAATGKiHiOjOK1VYZDeOA9jDh/MHb7Xmn + qAXRpBxKpfFXMYpGi5ofZhJQ1jkOFE9LVshlPNJ0Wy8eA40yAyaF6xfg + -----END PRIVATE KEY----- diff --git a/template.yaml b/template.yaml new file mode 100644 index 00000000..9105afa0 --- /dev/null +++ b/template.yaml @@ -0,0 +1,22 @@ +apiVersion: hlf.kungfusoftware.es/v1alpha1 +kind: FabricChaincodeTemplate +metadata: + name: test-template + namespace: default +spec: + affinity: null + annotations: null + chaincodeServerPort: 7052 + credentials: null + env: + - name: FOO + value: "BAR" + imagePullPolicy: Always + imagePullSecrets: [] + labels: null + mspID: '' + podAnnotations: null + podLabels: null + replicas: 1 + resources: null + tolerations: [] diff --git a/testbft01_original.json b/testbft01_original.json new file mode 100644 index 00000000..e69de29b diff --git a/website-docs/channel.yaml b/website-docs/channel.yaml new file mode 100644 index 00000000..e69de29b diff --git a/website-docs/euipomsp.yaml b/website-docs/euipomsp.yaml new file mode 100644 index 00000000..a270fe25 --- /dev/null +++ b/website-docs/euipomsp.yaml @@ -0,0 +1,21 @@ +cert: + pem: | + -----BEGIN CERTIFICATE----- + MIIBsTCCAVegAwIBAgIUb++AkRRwi4+tYen+iKjZNRV+NLgwCgYIKoZIzj0EAwIw + LzERMA8GA1UEChMIZXVpcG9tc3AxDTALBgNVBAsTBFRlY2gxCzAJBgNVBAMTAmNh + MB4XDTIyMDMyMDA3MzQ1M1oXDTIzMDgyODE3MjUwMFowIDEOMAwGA1UECxMFYWRt + aW4xDjAMBgNVBAMTBWFkbWluMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEE7dd + Vco/Da6/JsQm0fSXgnZ/XRvjSF+2ooIrFdlKcRK7R6U1a+w6gckmb8rJ6fZcyCcA + qTpi3PdDUBpIbBwdv6NgMF4wDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB/wQCMAAw + HQYDVR0OBBYEFAO1eEv0ON/maLe7XsAPkbJzYUFrMB8GA1UdIwQYMBaAFBfvYGfL + V/nqmIWSSgSLntaUIyGqMAoGCCqGSM49BAMCA0gAMEUCIQDRpIjD2MIroftxVjzC + Wc7Nz83fkak1MKX9QHF35nUYvQIgPE0DOWtoKZWGqFFATqDneU+uFgKA6pjtK/MK + fBvCQVw= + -----END CERTIFICATE----- +key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgU5YDgyKjua9Z57Om + J5wTlvVCRUUSdiIWDJaUTxB7Ep6hRANCAAQTt11Vyj8Nrr8mxCbR9JeCdn9dG+NI + X7aigisV2UpxErtHpTVr7DqBySZvysnp9lzIJwCpOmLc90NQGkhsHB2/ + -----END PRIVATE KEY----- diff --git a/website-docs/example-config.json b/website-docs/example-config.json new file mode 100644 index 00000000..7185fa17 --- /dev/null +++ b/website-docs/example-config.json @@ -0,0 +1,28 @@ +{ + "hideMemberFields": [ + "TypeMeta" + ], + "hideTypePatterns": [ + "ParseError$", + "List$" + ], + "externalPackages": [ + { + "typeMatchPrefix": "^k8s\\.io/apimachinery/pkg/apis/meta/v1\\.Duration$", + "docsURLTemplate": "https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#Duration" + }, + { + "typeMatchPrefix": "^k8s\\.io/(api|apimachinery/pkg/apis)/", + "docsURLTemplate": "https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#{{lower .TypeIdentifier}}-{{arrIndex .PackageSegments -1}}-{{arrIndex .PackageSegments -2}}" + }, + { + "typeMatchPrefix": "^github\\.com/knative/pkg/apis/duck/", + "docsURLTemplate": "https://pkg.go.dev/github.com/knative/pkg/apis/duck/{{arrIndex .PackageSegments -1}}#{{.TypeIdentifier}}" + } + ], + "typeDisplayNamePrefixOverrides": { + "k8s.io/api/": "Kubernetes ", + "k8s.io/apimachinery/pkg/apis/": "Kubernetes " + }, + "markdownDisabled": false +} \ No newline at end of file diff --git a/website-docs/orderer-cert.pem b/website-docs/orderer-cert.pem new file mode 100644 index 00000000..eb49bade --- /dev/null +++ b/website-docs/orderer-cert.pem @@ -0,0 +1,15 @@ +-----BEGIN CERTIFICATE----- +MIICSjCCAfCgAwIBAgIUQLoXoW1S6elb3SyscOFgA1Z+Z1MwCgYIKoZIzj0EAwIw +NTEUMBIGA1UEChMLb3JkbXNwMDY4d2kxDTALBgNVBAsTBFRlY2gxDjAMBgNVBAMT +BXRsc2NhMB4XDTIyMDUxNTE0MzY1NVoXDTIzMDUxNTE0MzkwMFowJDEQMA4GA1UE +CxMHb3JkZXJlcjEQMA4GA1UEAxMHb3JkZXJlcjBZMBMGByqGSM49AgEGCCqGSM49 +AwEHA0IABPwFgfaEVb/W2dZ8cuY/kcYRrifLBFNzIPkKMrHvbjTZcZ1airRNYMdM +3h/H2HKszNsapTotwj2G6yFl/vnhLgajge4wgeswDgYDVR0PAQH/BAQDAgOoMB0G +A1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAMBgNVHRMBAf8EAjAAMB0GA1Ud +DgQWBBRj3gttBoaC/1uYq2x1WhJKbkA9BjAfBgNVHSMEGDAWgBQGaJTdpIymsRWh +PW7zl2+rhl3OTTBsBgNVHREEZTBjgiRvcmRlcmVyMC1vcmRtc3AwNjh3aS01dnBo +LmhsZi5rZnMuZXOCKmFkbWluLW9yZGVyZXIwLW9yZG1zcDA2OHdpLTV2cGguaGxm +Lmtmcy5lc4IJbG9jYWxob3N0hwR/AAABMAoGCCqGSM49BAMCA0gAMEUCIQDcvLEQ +4iKirpGUt4wZu0/VyuOi4gQ/TP1Wlj1AcFFgBwIgVfSWHDrKk3WqculbWJTcUbZc +t7ClE7ztZvrSln9F+dY= +-----END CERTIFICATE----- \ No newline at end of file diff --git a/website-docs/orderermsp-tls.yaml b/website-docs/orderermsp-tls.yaml new file mode 100644 index 00000000..aaf40347 --- /dev/null +++ b/website-docs/orderermsp-tls.yaml @@ -0,0 +1,21 @@ +cert: + pem: | + -----BEGIN CERTIFICATE----- + MIIBtjCCAV2gAwIBAgIUSJakrnBTLdYvOkEOg2nZw1XarVkwCgYIKoZIzj0EAwIw + NTEUMBIGA1UEChMLb3JkbXNwMDY4d2kxDTALBgNVBAsTBFRlY2gxDjAMBgNVBAMT + BXRsc2NhMB4XDTIyMDUxNTE0MzY1NVoXDTIzMDgyNjEyNDgwMFowIDEOMAwGA1UE + CxMFYWRtaW4xDjAMBgNVBAMTBWFkbWluMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcD + QgAEELCEn1dWGr/c1G+BncHgSQyyZbvBWiWmlsLP5Nwbm63JhVV3X8+rxMxBxbZi + llFYagJFJOhG+p9oShjah6nj8aNgMF4wDgYDVR0PAQH/BAQDAgeAMAwGA1UdEwEB + /wQCMAAwHQYDVR0OBBYEFJfSoI+zjYsUQ+9QCKymKUUl0l3vMB8GA1UdIwQYMBaA + FAZolN2kjKaxFaE9bvOXb6uGXc5NMAoGCCqGSM49BAMCA0cAMEQCIH9J8/XFNoZ2 + tjOul3Z0nG96yB/3VNelmN0OxG3JGE36AiB7PVLF4i/QdW92FzFv0i6HZEQMuJIS + NMUCt/JWD5fjsg== + -----END CERTIFICATE----- +key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgAu68vGC5Xt6l6wjD + SItiSb+oUmQBUxbvDSWi8usPB76hRANCAAQQsISfV1Yav9zUb4GdweBJDLJlu8Fa + JaaWws/k3BubrcmFVXdfz6vEzEHFtmKWUVhqAkUk6Eb6n2hKGNqHqePx + -----END PRIVATE KEY----- diff --git a/website-docs/orderermsp.yaml b/website-docs/orderermsp.yaml new file mode 100644 index 00000000..5b056d32 --- /dev/null +++ b/website-docs/orderermsp.yaml @@ -0,0 +1,21 @@ +cert: + pem: | + -----BEGIN CERTIFICATE----- + MIIBsjCCAVmgAwIBAgIUGv4HKZJXQ+su+8WEHtor6cj2pm4wCgYIKoZIzj0EAwIw + MTETMBEGA1UEChMKb3JkZXJlcm1zcDENMAsGA1UECxMEVGVjaDELMAkGA1UEAxMC + Y2EwHhcNMjIwMzIwMDczNjA1WhcNMjMwODI1MTIyOTAwWjAgMQ4wDAYDVQQLEwVh + ZG1pbjEOMAwGA1UEAxMFYWRtaW4wWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAASF + gLPPNQ0vWRWxiw2vrtizWVK4V/OMwgUT7mdcG3rc7E5nwnj4w0u/iRHpw4Zuz/8x + x6S+YiW4j2zminQuEfhUo2AwXjAOBgNVHQ8BAf8EBAMCB4AwDAYDVR0TAQH/BAIw + ADAdBgNVHQ4EFgQUqOsWCYTCGcIG5FAl+ODyVQCrDaYwHwYDVR0jBBgwFoAUDLxR + e43ZpS/t4YCa4Mu7NkP3v7gwCgYIKoZIzj0EAwIDRwAwRAIgbeHSl4tgAZhLxE36 + Btw3rEyp+IQTx7gwV5xSdKXJJ4gCICCejdeAMOmLEDgXh6vSdSJbg/gzFgp1dVL7 + ADJv8DiF + -----END CERTIFICATE----- +key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgc+8/RgIoic3ZHzKw + r+SH6JntZVaF1puXuVP1Kat/TeWhRANCAASFgLPPNQ0vWRWxiw2vrtizWVK4V/OM + wgUT7mdcG3rc7E5nwnj4w0u/iRHpw4Zuz/8xx6S+YiW4j2zminQuEfhU + -----END PRIVATE KEY----- diff --git a/website-docs/peermsp0utj4.yaml b/website-docs/peermsp0utj4.yaml new file mode 100644 index 00000000..ba4dec05 --- /dev/null +++ b/website-docs/peermsp0utj4.yaml @@ -0,0 +1,21 @@ +cert: + pem: | + -----BEGIN CERTIFICATE----- + MIIBtDCCAVugAwIBAgIUTyArjkBbXF4ckNzGN1XfCHij/JkwCgYIKoZIzj0EAwIw + MzEVMBMGA1UEChMMcGVlcm1zcDB1dGo0MQ0wCwYDVQQLEwRUZWNoMQswCQYDVQQD + EwJjYTAeFw0yMjA1MTUxNDM2NTVaFw0yMzA4MjYxMjQ4MDBaMCAxDjAMBgNVBAsT + BWFkbWluMQ4wDAYDVQQDEwVhZG1pbjBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IA + BPnzwEYPbjIaMSGROnj0BLEhSO5XzSbc+rN/1htsPNdscZPnDzJSIGVQiLcqIHnZ + pKGHWRmw1moS7U4jUpTxTLajYDBeMA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8E + AjAAMB0GA1UdDgQWBBTIRSW6nxsz4ocbKDVzvpwRDxffnDAfBgNVHSMEGDAWgBRe + RGoKYwfgA6snOIEsQWDGvWHHqTAKBggqhkjOPQQDAgNHADBEAiAC7RrGcvv8U0qn + oOJIsna9IPJkUpukdZk+6u2lSouwkAIgb7SE2d8YrDmv4qWKkYVGN2fpSEuEIxU5 + 0qby+KGMQiQ= + -----END CERTIFICATE----- +key: + pem: | + -----BEGIN PRIVATE KEY----- + MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgqUOKufJMVvbxCPH3 + 1d8xWr23PjG2/YQ61xFisRl/uMehRANCAAT588BGD24yGjEhkTp49ASxIUjuV80m + 3Pqzf9YbbDzXbHGT5w8yUiBlUIi3KiB52aShh1kZsNZqEu1OI1KU8Uy2 + -----END PRIVATE KEY-----