HL-клиент, использующий fabri c gateway API - PullRequest
0 голосов
/ 10 февраля 2020

Я пытаюсь перенести свое приложение из Fabri c SDK в шлюз Fabri c и пишу для него образец PO C. Поскольку я уже подключаюсь к блокчейну, используя fabri c java sdk, у меня уже есть настроенные сертификаты, ключи и необходимые средства безопасности. В шлюзе мы создаем кошельки, содержащие идентификационные данные пользователей, и передаем их объекту Gateway для доступа к сети. Я пытаюсь понять, как мне добиться успеха и создать экземпляр объекта Wallet, используя уже имеющиеся ключи и сертификаты. Например, если мне нужно использовать кошелек FileSystemStore, как показано ниже, который позже будет использоваться при подключении к шлюзу.

WalletStore walletStore = new FileSystemWalletStore(walletDirectory);   
WalletImpl wallet = new WalletImpl(walletStore);

Могут помочь любые указатели. Я использую java для написания клиентского приложения.

1 Ответ

0 голосов
/ 11 февраля 2020

Используя mspId, сертификат X509 и закрытый ключ вашего пользователя, вы можете создать X509Identity, поместить его в экземпляр кошелька и передать его вашему построителю шлюза:

Identity identity = Identities.newX509Identity(<msp_id>, <x509_certificate>, <private_key>);

Wallet wallet = Wallets.newFileSystemWallet(<path_to_wallet>);
wallet.put(<enrollment_id>, identity);

Gateway.Builder gatewayBuilder = Gateway.createBuilder();
Gateway gateway = gatewayBuilder
                        .identity(wallet, <enrollment_id>)
                        .networkConfig(<path_to_connection_profile>)
                        .discovery(<service_discovery_option>)
                        .connect();
...