Agregación de organizaciones de Fabric a la red

En este tema, se incluye información sobre cómo unir organizaciones de Hyperledger Fabric a una red de Oracle Blockchain Platform.

Flujo de trabajo típico para unirse a una organización de Fabric en una red de Oracle Blockchain Platform

Estas son las tareas que una organización de Fabric y la organización fundadora de Oracle Blockchain Platform deben realizar para unirse a una organización de Fabric en la red de Oracle Blockchain Platform.

Tarea ¿Quién hace esto? Descripción Más información
Crear el archivo de certificado para la organización de Fabric Organización de Fabric Busque la información de certificado de administrador, CA y TLS de la organización de Fabric y utilícela para componer un archivo de certificados JSON. Creación de un archivo de certificados de Fabric Organization
Cargue el archivo de certificado de la organización de Fabric en la red de Oracle Blockchain Platform. Organización fundadora Use la consola para cargar e importar el archivo de certificado de la organización de Fabric para agregar la organización de Fabric a la red. Importación de certificados para agregar organizaciones a la red
Crear canal Organización fundadora Cree un nuevo canal y agregue la organización de Fabric a él. Crear Canal
Exportar la configuración del servicio de pedido del fundador Organización fundadora Ejecute la configuración de los servicios de pedido del fundador en un archivo JSON y envíe el archivo a la organización de Fabric. Unirse a los OSN participantes o escalados al servicio de pedidos del fundador
Redactar archivo de certificado de solicitante Organización de Fabric Cree un archivo denominado orderer.pem que incluya la información de tlscacert.

Vaya al archivo de configuración del servicio de orden exportado y copie la información de tlscacert. Después de pegar la información de tlscacert en el archivo orderer.pem, debe sustituir todas las instancias de \n por el carácter de nueva línea.

El archivo orderer.pem debe tener el siguiente formato:

-----BEGIN CERTIFICATE-----
... 
...
... 
-----END CERTIFICATE-----
Creación de un archivo de certificados de Fabric Organization
Proporcionar configuración de servicio de pedido Organización fundadora Abra el archivo de configuración del servicio de orden, busque la dirección y el puerto del servicio de orden y envíelos a la organización de Fabric. Por ejemplo:
"orderingServiceNodes": [
{
"address": "grpcs://example_address:7777",
...
}]
NA
Agregar la organización de Fabric a la red Organización de Fabric La organización de Fabric copia certificados en su entorno, configura variables de entorno, recupera el bloque de génesis, se une al canal e instala el código de cadenas. Preparación del entorno de Fabric para usar la red de Oracle Blockchain Platform

Creación de un archivo de certificados de Fabric Organization

Para que una organización de Fabric se una a una red de Oracle Blockchain Platform, debe escribir un archivo de certificados que contenga su información de administradores, cacerts y tlscacerts. La organización fundadora de Oracle Blockchain Platform importa este archivo para agregar la organización de Fabric a la red.

La información de los certificados de Fabric se almacena en archivos PEM ubicados en la carpeta MSP de la organización de Fabric. Por ejemplo, network_name_example/crypto-config/peerOrganizations/example_org.com/msp/.

El archivo de certificados debe estar escrito en JSON y debe contener los siguientes campos. Para todos los certificados, al copiar la información del certificado en el archivo JSON, debe reemplazar cada línea nueva por \n, de modo que la información esté en una línea sin espacios, como se muestra en el siguiente ejemplo.

  • mspid: especifica el nombre de la organización de Fabric.

  • type (Tipo): indica que la organización es un participante de la red. Este valor debe ser Participante.
  • admincert: contiene el contenido del archivo de certificados de administrador de la organización: Admin@example_org.com-cert.pem.

  • cacert: contiene el contenido del archivo de certificados de CA de la organización: ca.example_org-cert.pem.

  • tlscacert: contiene el contenido del archivo de certificado TLS de la organización: tlsca.example_org-cert.pem.

  • intermediatecerts: este elemento opcional contiene el contenido de un archivo de certificados de CA intermedio. No especifique este elemento a menos que haya un archivo de certificados de CA intermedio.
  • nodeouidentifiercert: esta sección contiene certificados que identifican roles de OU de nodo.
  • adminouidentifiercert: contiene el contenido del archivo de certificado de la organización que se utiliza para identificar los roles de administrador de OU de nodo. Si no necesita el rol de administrador, puede utilizar el contenido del archivo cacert o el contenido del archivo de certificado intermedio como contenido del administrador.

  • clientouidentifiercert: contiene el contenido del archivo de certificado de la organización que se utiliza para identificar los roles de cliente de OU de nodo.

  • ordererouidentifiercert: contiene el contenido del archivo de certificado de la organización que se utiliza para identificar roles de solicitante de OU de nodo. Si no necesita el rol de solicitante, puede utilizar el contenido del archivo cacert, o el contenido del archivo de certificado intermedio, como el contenido de ordererouidentifier.

  • peerouidentifiercert: contiene el contenido del archivo de certificado de la organización utilizado para identificar roles de peer de OU de nodo.

Estructure el archivo de forma similar al siguiente ejemplo:
{
  "mspID": "examplemspID",
  "type":  "Participant",
  "certs": { 
   "admincert": "-----BEGIN CERTIFICATE-----\nexample_certificate\nexample_certificate==\n-----END CERTIFICATE-----\n",
   "cacert": "-----BEGIN CERTIFICATE-----\nexample_certificate\nexample_certificate==\n-----END CERTIFICATE-----\n",
   "tlscacert": "-----BEGIN CERTIFICATE-----\nexample_certificate\nexample_certificate==\n-----END CERTIFICATE-----\n"
   "nodeouidentifiercert": {
      "adminouidentifiercert": "-----BEGIN CERTIFICATE-----\nexample_certificate\nexample_certificate==\n-----END CERTIFICATE-----\n",
      "clientouidentifiercert": "-----BEGIN CERTIFICATE-----\nexample_certificate\nexample_certificate==\n-----END CERTIFICATE-----\n",
      "ordererouidentifiercert": "-----BEGIN CERTIFICATE-----\nexample_certificate\nexample_certificate==\n-----END CERTIFICATE-----\n",
      "peerouidentifiercert": "-----BEGIN CERTIFICATE-----\nexample_certificate\nexample_certificate==\n-----END CERTIFICATE-----\n"
    }
  }
} 
    

Preparación del entorno de Fabric para usar la red de Oracle Blockchain Platform

Debe modificar el entorno de la organización de Fabric para poder utilizar la red de Oracle Blockchain Platform.

Confirme que se hayan completado las siguientes tareas previas necesarias. Para obtener más información, consulte Typical Workflow to Join a Fabric Organization to an Oracle Blockchain Platform Network.

  • Se creó el archivo de certificado de la organización de Fabric y se envió al fundador de la red de Oracle Blockchain Platform.

  • El fundador de la red cargó el archivo de certificados para agregar la organización de Fabric a la red.

  • El fundador de la red creó un nuevo canal y le agregó la organización Fabric.

  • El fundador de la red descargó su configuración de servicio de pedido y la envió a la organización de Fabric.

  • La organización de Fabric creó el archivo de certificado del solicitante.

  • El fundador de la red proporcionó la dirección de servicio de orden y el puerto a la organización de Fabric.

Debe agregar la organización de Fabric e instalar y probar el código de cadenas.

  1. Navegue hasta el directorio de red de Fabric e inicie el contenedor de pares.

  2. Recupere el bloque de génesis del canal con este comando:

    peer channel fetch 0 mychannel.block -o ${orderer_addr}:${orderer_port} -c mychannel --tls --cafile orderer.pem --logging-level debug  

    Dónde:

    • {orderer_addr} es la dirección del solicitante del fundador.

    • {orderer_port} es el número de puerto del fundador.

    • -c mychannel es el nombre del canal que ha creado el fundador. Este es el canal en el que la organización de Fabric enviará y recibirá transacciones en la red de Oracle Blockchain Platform.

    • orderer.pem es el archivo de certificado del solicitante del fundador.

  3. Únase al canal con este comando:

    peer channel join -b mychannel.block -o ${orderer_addr}:${orderer_port} --tls --cafile orderer.pem --logging-level debug
  4. Instale el código de cadena con este comando:

    peer chaincode install -n mycc -v 1.0 -l "golang" -p ${CC_SRC_PATH}

    Donde CC_SRC_PATH es la carpeta que contiene el código de cadenas.

  5. Instancie el código de cadena con este comando:

    peer chaincode instantiate -o  ${orderer_addr}:${orderer_port} --tls --cafile orderer.pem -C mychannel -n mycc -l golang -v 1.0 -c '{"Args":["init","a","100","b","200"]}' -P <policy_string> --logging-level debug
  6. Llame al código de cadenas con este comando:

    peer chaincode invoke -o ${orderer_addr}:${orderer_port}  --tls true --cafile orderer.pem -C mychannel -n mycc -c '{"Args":["invoke","a","b","10"]}' --logging-level debug
  7. Consulte el código de cadenas con este comando:

    peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}'  --logging-level debug