I am using Hyperledger fabric in one of our project. I am using fabric sdk which acts like client to Hypereledger network and server for frontend. Now
Lets say, I am running the fabric network with 2 organisation, and i am hosting fabric sdkjs, i will call(middleware) which contains the connection.json to connect to hyperledger fabric network. Is it possible to add one more organisation third one to hyperledger fabric existing network. If its possible without stopping the network,do i need to update my connection.json of the middleware all the time if update the organsation. Means i need to stop the running farbric sdkjs middleware server, update connection.json then start it again.
Is it possible to install the chaincode to channel without been stop by hyper-ledger network.
Is there any support for Non fungible token ERC721 concept in hyperledger fabric.
#fama,
Next time if you would like to ask more than one question better ask separately in order to make it simple
Coming to your questions:
1) Ideally what so-called middleware (SDK App) should be per organization because you are dealing with crypto materials of a particular organization, if you planned to use one for all organizations then yes you have to update the latest organization details by stoping the middleware server
Some useful links for onboard nee organization https://developer.ibm.com/tutorials/cl-add-an-organization-to-your-hyperledger-fabric-blockchain/
2) Yes you do not need to stop consortium after you the onboard new organization you can do all operations based on policies
3) yes it has been supporting from 1.3 in beta stage but planned to support in full production-ready only in 2.0
Announced by Swetha from IBM on October 26, 2018
https://www.hyperledger.org/blog/2018/10/26/hyperledger-fabric-now-supports-ethereum
Related
I have made some changes to the fabric architecture (let's call it "myversion" of fabric) and now I want to check the tps of a network deployed on "myversion" with caliper. Is it possible to do so? And, if yes, how would I make caliper to use "myversion", in place of fabric?
If the official sdk is still compatible with the custom fabric, then we just have to point caliper to the endpoints of the deployed network. If you broke the API, then you'll have to write your own adapter for your new platform.
Here is the link to the same:
https://chat.hyperledger.org/channel/caliper?msg=EhTjHNuvjtsqimBzF
I am developing a project in Hyperledger Fabric using Composer tools. I want to know whether Composer can be used for production level projects or not. If so, then why one should develop their project in Fabric without Composer as building a project in Composer is comparatively simpler.
In production grade product you have:
Stability: Composer based on Hyperledger Fabric, so stability is equivalent to Hyperledger Fabric once it is up and running.
Security: Hyperledger Fabric passed a security audit, something that not done for Hyperledger Composer.
Hyperledger Fabric has been deployed on production by many companies around the world also in China while google search for "hyperledger composer production" gives you a post where it is says:
the answer to the below question is NO
Since the development of Composer is still in progress with the latest
version v0.18.0. The development team of Composer is very active and
the composer builds are deployed every week with some ‘Breaking
changes’. I would suggest keeping a track of the releases until
Version 1 of composer is released.
A message on LinkedIn says:
I'd probably recommend to keep Hyperledger Composer for the
prototyping phase only, and then consider other options moving forward
based on how fast you plan to be in production
After starting Hyperledger composer rest server, I could get all the REST API’s pertaining to my Business network definition. However, I would also like to query world state and other Fabric related features.
In this case, Should I use combination of both Fabric Rest Composer API + Fabric SDK APIs ?
The Composer REST Server is simply showing you the world state, just abstracting away the details of access so as a developer you only have to worry about CRUD operations.
If you're just doing CRUD, Composer should have you fully covered as their default implementation is CouchDB.
Not sure what other features you would want to use to require Fabric SDK. Composer has great documentation on using most Fabric features without going against the grain of Composer.
In addition to ChrisMcQueen answer ...
You can also write Queries in Composer to access the data via the REST server.
Composer has the concepts of Registries for Assets, Participants and Transactions - if you don't use Composer you will have to define, generate and manage these things yourself. You can't access these registries through the Fabric SDK.
Hello I am new to both HyperLedger Fabric and composer.I got confused with two terms. one is user in HyperLedger Fabric and another is participant in HyperLedger Composer.We have a set of users(including one administrator) in each organization along with peers in crypto-config.yaml file.
what is the roles and responsibilities of administrator user?
What is the roles and responsibilities of other users in crypto-config file?
It is said that a business network that is built using hyperledger composer can be deployed on hyperledger fabric network.What does business network contain and what does fabric network contain?
Difference between chaincode in fabric and transaction logic(which is written in javascript) in composer?
Admin credentials are used to create PeerAdmin card in composer which in turn is responsible for starting composer over fabric using your bna file and issue identity.
User is just extra set of credentials so that you will have some credentials initially to use the network. Later on you can issue new users using fabric CA.
Business network is nothing but a sort of abstraction over fabric using composer. Business network is deployed using bna file which has model file, transaction logic file, ACL file or query file. Fabric network is nothing but set of peers communicating with each other.
Chaincode is the smart contract which you directly deploy on fabric while the transaction logic used in composer is part of business network card which is deployed on fabric via composer. You cannot deploy standalone transaction logic on fabric, its deployed using composer with bna file, while chaincode you can deploy directly.
As far as I know, participant in hyperledger composer is identical to user in hyperledger fabric. However, in hyperledger fabric tutorials, they are mainly for testing mode. Thus, examples which you do are using cryptogen tool. This tool creates fix number of credentials based on "User" in your crypto-config.yaml. For instance, in the example about commercial paper 1, cryptogen creates 2 credentials for Admin and User1. Then, Isabella uses User1 credential (you can see in detail in code of addtoWallet.js). In the code, Isabella copies credential from User1 for making transaction.
Hyperledger composer looks like an abstraction running above Hyperledger fabric. It is more flexible when it allows to create credentials easily. When you create a participant and give them permission to access business network, you are generating credentials for them.
If we can build a business network in composer playground online(or) locally and then deploy network in fabric, make a REST call from an angular app (user facing) to connect to blockchain.
Do I still need to learn about the fabric implementation or its infrastructure, When composer has provided me with necessary toolings to work with blockchain.
What am I missing in this ?
ps:I am still in the early phase of learning hyperledger and so not very clear as to use which and when.
Composer just provide necessary tools to work with blockchain.
But if you want to build your own blockchain network, You need to learn about fabric.
In composer guide, it mainly showed two fabric networks: One organization Hyperledger Fabric and Two organizations Hyperledger Fabric.
Let's say if you want to add one more organization or add one more peer node for each organization. You can't implement the requirements just utilize composer.
I'm also quite new to this. So if I understand well your answer lissdy, if I follow the developer tutorial (https://hyperledger.github.io/composer/tutorials/developer-tutorial.html) my network will be deployed but with only one peer ? And I need to use fabric to go further ?