Как используется концепция TLS в первой сети образцов структуры hyperledger?

#hyperledger-fabric #hyperledger #blockchain

#hyperledger-fabric #hyperledger #блокчейн

Вопрос:

Как мы можем реализовать TLS в первой сети? я попытался, добавив приведенный ниже раздел в peers.Зачем настраивать одноранговые узлы с помощью Tls?

 CORE_PEER_TLS_ENABLED=true
CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/fabric/tls/server.crt
CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/fabric/tls/server.key
CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/fabric/tls/ca.crt
  

Я работаю над настройкой сети нескольких организаций с использованием первой сети образцов структуры. одна из организаций, по словам org1, создала канал, передав tls-сертификаты заказчика, другая организация org2 должна получить канал, созданный org1, и присоединиться к одноранговым узлам в канале.когда я выполняю действие выборки с использованием выборки по одноранговому каналу, передавая tls-сертификаты заказчика, я получаю ошибку типа

   peer channel fetch config-o orderer.example.com:7050 -c channelone1 -f --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem 
connection error: desc = "transport: Error while dialing dial tcp 98.124.199.121:7050: connect: connection refused". Reconnecting...
  

и в журналах упорядочения я получил ошибку как :

 TLS handshake failed with error tls: client didn't provide a certificate {"server": "Orderer", "remote address": "172.24.0.4:49608"} 
  

Создал канал, используя:

 peer channel create -o orderer.example.com:7050 -c channelone1 -f ./channel-artifacts/channel-one.tx --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem 
  

Вывод: принятый блок равен 0

Ответ №1:

По умолчанию первая сеть запускается с включенным TLS.

Четыре переменные среды, на которые вы ссылаетесь, включены в файл, base/peer-base.yaml файл одноранговой базы «включен» с помощью extends: и file: base/docker-compose-base.yaml

Комментарии:

1. @R Тэтчер .. Спасибо за ваш ответ. Я столкнулся с проблемой при попытке получить созданный канал. Я обнаружил ошибку в журналах docker для orderer, похожую на «Сбой TLS handshake с ошибкой remote error: tls: bad certifica te {«сервер»: «Заказчик», «удаленный адрес»: «192.168.0.77:34362″}». @Р. Тэтчер

2. Эта ошибка в журнале выполнения заказа говорит о том, что используемая вами команда (или функция) использует неправильный файл cafile — я предполагаю, что вы привязываетесь к использованию файла ca партнера при подключении к заказчику.

3. Я указал путь к файлу ca для заказчика. Тем не менее, я сталкиваюсь с той же проблемой. Есть ли какая-либо альтернатива для этого?

4. Пожалуйста, обновите свой вопрос точной командой / кодом / задачей, которую вы пытаетесь выполнить, в том числе, запускаетесь ли вы из другого контейнера (peer / cli?) и включите в вопрос ошибки терминала и исполнителя заказа.