Ошибка: требуется сертификат в кодировке PEM.

У меня возникла эта проблема при подключении к клиенту фабрики с помощью Node SDK. Я имею в виду эту Ошибка при добавлении нового однорангового узла в Hyperledger Fabric, и я думаю это тоже то, что мне нужно для решения моей проблемы. Однако я не понимаю, на какой файл PEM я должен указать. Будет полезно, если кто-нибудь сможет предоставить образец пути к файлу PEM. Спасибо. Надеюсь, что кто-то поможет.


person Jeson    schedule 18.09.2018    source источник
comment
столкнувшись с этим тоже.   -  person A.K.    schedule 10.01.2019


Ответы (1)


Полагаю, тогда вы нашли способ, но вот решение, которое я нашел:

Сертификат PEM, на который вы должны указать, находится внутри папки crypto-config для однорангового узла (я предполагаю, что вы используете здесь криптоген, как указано в учебнике по структуре)

Итак, файл должен располагаться так:

crypto-config / peerOrganizations / НАЗВАНИЕ ПЕРА / peers / НАЗВАНИЕ ПЕРА / msp / tlscacerts / tlsca. < strong> НАЗВАНИЕ СОВМЕСТНОЙ ОРГАНИЗАЦИИ -cert.pem

Чтобы быть более полным, кажется, что указание пути к сертификату в вызове newPeer (), как указано в найденный вами ответ не обрезает его, так как здесь требуется фактическое содержание файла.

Итак, вам нужно будет записать туда содержимое файла, сделав что-то вроде этого:

      var channel = fabric_client.newChannel(channel);

      const fs = require('fs');
      let serverCert = fs.readFileSync('PATH_TO_PEM_CERT');
      var peer = fabric_client.newPeer(peerAddr, { pem :  Buffer.from(serverCert).toString() });

      channel.addPeer(peer);
person Pierre Cluchet    schedule 26.04.2019