bur (Thu, 05 Mar 2020 00:04:54 GMT):
Has joined the channel.

bur (Thu, 05 Mar 2020 00:05:02 GMT):
hello world

rjones (Thu, 05 Mar 2020 00:19:41 GMT):
bur

rjones (Thu, 05 Mar 2020 00:20:54 GMT):
@MicBowman

MicBowman (Thu, 05 Mar 2020 00:20:54 GMT):
Has joined the channel.

rjones (Thu, 05 Mar 2020 00:21:59 GMT):
MicBowman

rjones (Thu, 05 Mar 2020 00:22:15 GMT):
Has left the channel.

bur (Thu, 05 Mar 2020 04:49:17 GMT):
User User_1 added by bur.

bur (Thu, 05 Mar 2020 04:49:17 GMT):
User User_2 added by bur.

bur (Thu, 05 Mar 2020 12:27:31 GMT):
User User_3 added by bur.

bur (Thu, 05 Mar 2020 12:27:37 GMT):
User User_4 added by bur.

bur (Thu, 05 Mar 2020 12:28:05 GMT):
User User_5 added by bur.

bur (Thu, 05 Mar 2020 12:28:05 GMT):
User User_6 added by bur.

bur (Thu, 05 Mar 2020 12:29:00 GMT):
https://github.com/hyperledger-labs/fabric-private-chaincode

bur (Thu, 05 Mar 2020 12:29:05 GMT):
https://github.com/hyperledger-labs/fabric-private-chaincode

bur (Thu, 05 Mar 2020 16:35:09 GMT):
https://www.ibm.com/blogs/research/2020/03/new-ibm-and-intel-blockchain-security-feature-targets-5g-auctions/

bur (Thu, 05 Mar 2020 16:35:09 GMT):
Read more about FPC on the IBM Research blob and watch our video! https://www.ibm.com/blogs/research/2020/03/new-ibm-and-intel-blockchain-security-feature-targets-5g-auctions/

MicBowman (Thu, 05 Mar 2020 16:48:59 GMT):
thanks @rjones

rjones (Thu, 05 Mar 2020 16:48:59 GMT):
Has joined the channel.

MHBauer (Thu, 05 Mar 2020 21:45:45 GMT):
:joy:

rjones (Thu, 05 Mar 2020 22:40:54 GMT):
uh oh what now

rjones (Thu, 05 Mar 2020 22:41:28 GMT):
whoever I was talking to: give me a GitHub ID directly?

bur (Thu, 05 Mar 2020 23:18:05 GMT):
User User_7 added by bur.

bigworld12 (Fri, 06 Mar 2020 01:15:09 GMT):
Has joined the channel.

bigworld12 (Fri, 06 Mar 2020 01:15:24 GMT):
heyy

bigworld12 (Fri, 06 Mar 2020 01:15:33 GMT):
congrats for the separate channel

bigworld12 (Fri, 06 Mar 2020 01:17:03 GMT):
also does the project work on Fabric V2

bigworld12 (Fri, 06 Mar 2020 01:17:03 GMT):
also does the project work on Fabric V2 ?

swetha (Fri, 06 Mar 2020 06:13:54 GMT):
@bigworld12 Not yet. The current code base works with Fabric 1.4

rjones (Fri, 06 Mar 2020 06:40:08 GMT):
Should I archive #private-data-objects ?

bur (Fri, 06 Mar 2020 06:45:53 GMT):
pleae keep it until @MicBowman says something else :D

bur (Fri, 06 Mar 2020 06:46:42 GMT):
we are working on this!

rjones (Fri, 06 Mar 2020 13:29:40 GMT):
OK. Archiving it doesn't delete it.

rjones (Fri, 06 Mar 2020 14:50:39 GMT):
Do any of you that are still here in PHX work closely with Angelo De Caro? I have a TSC token for him but I don't have a way to mail it to him.

bur (Fri, 06 Mar 2020 14:51:45 GMT):
sure, I can take it and drop it in his office

rjones (Fri, 06 Mar 2020 14:52:11 GMT):
thanks. When you see me around, ask and I'll give it to you.

bur (Fri, 06 Mar 2020 18:50:38 GMT):
User User_8 added by bur.

bur (Fri, 06 Mar 2020 19:06:20 GMT):
User User_9 added by bur.

bur (Fri, 06 Mar 2020 19:07:13 GMT):
Read more about FPC on the IBM Research blob and watch our video! https://www.ibm.com/blogs/research/2020/03/new-ibm-and-intel-blockchain-security-feature-targets-5g-auctions/

bur (Fri, 06 Mar 2020 19:07:31 GMT):
Read more about FPC on the IBM Research blog and watch our video! https://www.ibm.com/blogs/research/2020/03/new-ibm-and-intel-blockchain-security-feature-targets-5g-auctions/

MicBowman (Sat, 07 Mar 2020 21:16:17 GMT):
the labs project is still active, but we don't really use the channel...

MHBauer (Sat, 07 Mar 2020 22:44:41 GMT):
Great meeting a bunch of you in person in Phoenix.

braduf (Sat, 07 Mar 2020 23:38:28 GMT):
Has joined the channel.

bur (Sun, 08 Mar 2020 08:54:26 GMT):
likewise

muralisr (Mon, 09 Mar 2020 16:19:58 GMT):
@bur are there more current versions than these docs https://github.com/hyperledger-labs/fabric-private-chaincode/tree/new_design/docs ?

bur (Mon, 09 Mar 2020 16:20:29 GMT):
nope that is the "new" design :)

muralisr (Mon, 09 Mar 2020 16:20:34 GMT):
ah got it

muralisr (Mon, 09 Mar 2020 16:20:36 GMT):
thanks

MHBauer (Tue, 10 Mar 2020 03:24:28 GMT):
US recently entered Daylight Saving Time. How does that effect the meeting time?

msteiner (Tue, 10 Mar 2020 03:43:39 GMT):
https://lists.hyperledger.org/g/fabric/calendar is reference. In short, nothing should change for you (but marcus will have to pay attention the next two weeks)

MHBauer (Tue, 10 Mar 2020 05:17:46 GMT):
I was looking at the GMT calendar :facepalm:

MHBauer (Tue, 10 Mar 2020 05:17:55 GMT):
:ok now

MicBowman (Tue, 10 Mar 2020 16:46:44 GMT):
presentations from HGF: https://www.youtube.com/watch?v=Ibpp-Talq5w and https://www.youtube.com/watch?v=yRtlSvHFXcY

MicBowman (Tue, 10 Mar 2020 16:47:08 GMT):
and the IBM research video: https://www.youtube.com/watch?v=o427fPw6I80

MHBauer (Tue, 10 Mar 2020 17:19:56 GMT):
oh wow, they're up!

rjones (Tue, 10 Mar 2020 17:26:33 GMT):
https://www.youtube.com/playlist?list=PL0MZ85B_96CFY3isYUplorFSenn04WwBt

rjones (Tue, 10 Mar 2020 17:26:33 GMT):
[This is a playlist of the HGF videos](https://www.youtube.com/playlist?list=PL0MZ85B_96CFY3isYUplorFSenn04WwBt)

MicBowman (Tue, 10 Mar 2020 18:31:42 GMT):
thanks @rjones

MHBauer (Tue, 10 Mar 2020 19:10:24 GMT):
fantastic

annumberhocker (Tue, 10 Mar 2020 22:10:47 GMT):
Has joined the channel.

MHBauer (Thu, 12 Mar 2020 15:22:09 GMT):
FYI, plantuml in ubuntu 18.04 is way out of date, so I've installed the current version from https://plantuml.com/starting and copied the run script, so I can make it available in my environment.

msteiner (Thu, 12 Mar 2020 15:36:54 GMT):
didn't even realize there was an official plantuml in 18.04; i've always downloaded the version from the plantuml.com :-)

bur (Thu, 12 Mar 2020 17:04:04 GMT):
I did a `brew install plantuml` on a mac ... worked

MHBauer (Thu, 12 Mar 2020 17:40:37 GMT):
ooh, fancy mac man.

bur (Fri, 13 Mar 2020 18:00:19 GMT):
please check this here and provide comments; https://github.com/hyperledger-labs/fabric-private-chaincode/issues/251

jordy24 (Fri, 13 Mar 2020 19:19:01 GMT):
this did not work for me... it did install but I also had to download the file from there website...oh maybe i just don't know how to use it yet

bur (Tue, 17 Mar 2020 11:17:00 GMT):
this PR needs a review https://github.com/hyperledger-labs/fabric-private-chaincode/pull/259

bur (Tue, 17 Mar 2020 15:02:14 GMT):
FPC call now

MHBauer (Thu, 19 Mar 2020 13:07:53 GMT):
illness really took me out for a couple days. didn't get any FPC done. Still catching up from even before HGF.

MHBauer (Thu, 19 Mar 2020 14:12:57 GMT):
thanks ry.

rjones (Thu, 19 Mar 2020 14:18:07 GMT):
Sure thing. It's tough all around

MHBauer (Thu, 19 Mar 2020 16:54:02 GMT):
https://github.com/golang/go/wiki/Modules#when-should-i-use-the-replace-directive

MHBauer (Thu, 19 Mar 2020 18:34:35 GMT):
@bur can you @ me in the slack.

bur (Thu, 19 Mar 2020 18:35:06 GMT):
I did

MHBauer (Thu, 19 Mar 2020 19:04:02 GMT):
tahnk you

MHBauer (Thu, 19 Mar 2020 19:04:04 GMT):
I have a commit

MHBauer (Thu, 19 Mar 2020 19:08:21 GMT):
https://github.com/mbrandenburger/fabric-secure-chaincode/pull/2

MHBauer (Thu, 19 Mar 2020 19:13:06 GMT):
I am @MHBauer on github.

bur (Thu, 19 Mar 2020 19:35:25 GMT):
thanks! merged it

MHBauer (Thu, 19 Mar 2020 19:39:30 GMT):
https://github.com/swetharepakula/Fabric101Workshop/blob/master/README.md this is our little Fab2.0 demo to understand the ChainCode lifecycle.

MHBauer (Thu, 19 Mar 2020 19:40:08 GMT):
@msteiner was on and saw it work. two copies of the same thing. called getSPID and it returned "success".

MHBauer (Thu, 19 Mar 2020 19:40:51 GMT):
I'll leave @msteiner to fix the two new recursive makefiles I made. We can moduleize the plugins as needed now, along with any other code.

bur (Thu, 19 Mar 2020 19:44:25 GMT):
@msteiner so waiting for more PRs on my fork?! :D

MHBauer (Thu, 19 Mar 2020 20:33:52 GMT):
you do you!

bur (Thu, 19 Mar 2020 20:34:11 GMT):
eieieieieee

bur (Thu, 19 Mar 2020 21:12:23 GMT):
@MHBauer I was mentioned another go deps issue I have but we didn't have the time to talk about this

bur (Thu, 19 Mar 2020 21:13:15 GMT):
``` root@3e5390e302a4:/project/src/github.com/hyperledger-labs/fabric-private-chaincode/ecc# make go build -o ecc-vscc.so -buildmode=plugin vscc/ecc_validation_plugin.go vscc/ecc_validation_logic.go # command-line-arguments vscc/ecc_validation_plugin.go:30:9: cannot use &ECCValidation literal (type *ECCValidation) as type "github.com/hyperledger/fabric/core/handlers/validation/api".Plugin in return argument: *ECCValidation does not implement "github.com/hyperledger/fabric/core/handlers/validation/api".Plugin (wrong type for Validate method) have Validate(*"github.com/hyperledger/fabric-protos-go/common".Block, string, int, int, ..."github.com/hyperledger/fabric/core/handlers/validation/api".ContextDatum) error want Validate(*"github.com/hyperledger/fabric/vendor/github.com/hyperledger/fabric-protos-go/common".Block, string, int, int, ..."github.com/hyperledger/fabric/core/handlers/validation/api".ContextDatum) error vscc/ecc_validation_plugin.go:63:38: cannot use block (type *"github.com/hyperledger/fabric-protos-go/common".Block) as type *"github.com/hyperledger/fabric/vendor/github.com/hyperledger/fabric-protos-go/common".Block in argument to v.DefaultTxValidator.Validate Makefile:45: recipe for target 'vscc-plugin' failed make: *** [vscc-plugin] Error 2 ```

bur (Thu, 19 Mar 2020 21:14:10 GMT):
you should be able to redproduce this error with my PR #260

bur (Thu, 19 Mar 2020 21:14:10 GMT):
you should be able to redproduce this error with my PR 260 (https://github.com/hyperledger-labs/fabric-private-chaincode/pull/260)

bur (Thu, 19 Mar 2020 21:15:31 GMT):
note that it wants the validate interface from fabric vendored fabric-protos-go/common

bur (Thu, 19 Mar 2020 21:17:18 GMT):
I faced the same issue when trying to compile tlcc with the peer; fixed it by copying tlcc code into fabric repo ... not ideal I think

msteiner (Thu, 19 Mar 2020 21:19:40 GMT):
can't we for now just disable the validation plugins rather than also fix it in PR260? PR260 should not be the single pr fixing all of the concept-release 2.0 milestone ;-)

bur (Thu, 19 Mar 2020 21:22:47 GMT):
I think the issue above does not need to be fixed in PR260

MHBauer (Thu, 19 Mar 2020 22:26:12 GMT):
sorry, needed a break. wasn't blinking enough earlier. eyes are all bloodshot, lol..

MHBauer (Thu, 19 Mar 2020 22:26:34 GMT):
I will look at it in a bit.

MHBauer (Thu, 19 Mar 2020 22:57:04 GMT):
As few things as possible in a PR. makes it easy toreview.

bur (Thu, 19 Mar 2020 23:57:34 GMT):
260 is already too big

msteiner (Fri, 20 Mar 2020 00:54:38 GMT):
there is though also a lot of boilerplate change in 260 which really makes to sense across the board and so touches quite some files. I think given that it's not too bad and now builds and gives hopefully a good foundation for the fabric v2. I went through my comments and all are resolved except my concern regarding the go gets and versioning. But i think @MHBauer you will look into that ? (doesn't have to block this pr, though. also note as marcus pointed out, there is already an issue touching on this: https://github.com/hyperledger-labs/fabric-private-chaincode/issues/247. So i'm definitely for merging now as also travis succeeds

msteiner (Fri, 20 Mar 2020 00:54:38 GMT):
there is though also a lot of boilerplate change in 260, which really makes sense to do it across the board, and so touches quite some files. I think given that it's not too bad and now builds and gives hopefully a good foundation for the fabric v2. I went through my comments and all are resolved except my concern regarding the go gets and versioning. But i think @MHBauer you will look into that ? (doesn't have to block this pr, though. also note as marcus pointed out, there is already an issue touching on this: https://github.com/hyperledger-labs/fabric-private-chaincode/issues/247. So i'm definitely for merging now as also travis succeeds

msteiner (Fri, 20 Mar 2020 00:58:04 GMT):
@MHBauer if you can cross-check that your concerns are also addressed with 260, then marcus can do the autosquash his morning and we can merge then (our) morning?

msteiner (Fri, 20 Mar 2020 01:00:10 GMT):
(Sees i was referring to the wrong (although related) issue above; https://github.com/hyperledger-labs/fabric-private-chaincode/issues/94 was the one marcus meant)

MHBauer (Fri, 20 Mar 2020 01:14:40 GMT):
SGTM. almost back.

MHBauer (Fri, 20 Mar 2020 05:01:53 GMT):
well, I had some gopath trouble to start, so it could be some interfaces in the different versions of libraries are incompatible.

MHBauer (Fri, 20 Mar 2020 05:02:07 GMT):
Ithin k for this one I skipped the go get step if iexists.

MHBauer (Fri, 20 Mar 2020 05:03:25 GMT):
so, need to back up and fix those first

MHBauer (Fri, 20 Mar 2020 05:22:13 GMT):
need to either vendor in the repo or make sure to record exactly which version we want.

MHBauer (Fri, 20 Mar 2020 05:29:35 GMT):
and/org mudle it as well if itt'l change.

MHBauer (Fri, 20 Mar 2020 05:29:35 GMT):
and/or use modules as well if it is a possible change.

bur (Fri, 20 Mar 2020 14:02:33 GMT):
@muralisr how is it going with `fpc_hello_world`

bur (Fri, 20 Mar 2020 14:02:33 GMT):
@muralisr how is it going with `fpc_hello_world`?

MHBauer (Fri, 20 Mar 2020 18:15:59 GMT):
I need to make a list of all of the various main implementations and which are plugins system chaincodes vs user chaincodes, etc.

bur (Fri, 20 Mar 2020 19:09:57 GMT):
let me know if you need help

MHBauer (Fri, 20 Mar 2020 19:13:31 GMT):
is the ecc stuff above solved or moved around somewhere else?

MHBauer (Fri, 20 Mar 2020 19:14:16 GMT):
I see, commented out now, gh#242

bur (Fri, 20 Mar 2020 19:15:40 GMT):
ecc-vscc plugin issue is still there ... I just disabled plugin from building

MHBauer (Fri, 20 Mar 2020 19:15:46 GMT):
got it.

MHBauer (Fri, 20 Mar 2020 19:15:50 GMT):
so, my list, so far

MHBauer (Fri, 20 Mar 2020 19:16:10 GMT):
hmn, how can we look at this together

bur (Fri, 20 Mar 2020 19:18:25 GMT):
google docs?

bur (Fri, 20 Mar 2020 19:18:34 GMT):
share screen?

MHBauer (Fri, 20 Mar 2020 19:18:41 GMT):
I suppose, this is temporary, one sec.

MHBauer (Fri, 20 Mar 2020 19:18:46 GMT):
I can make a wiki at the end.

MHBauer (Fri, 20 Mar 2020 19:19:15 GMT):
https://docs.google.com/document/d/1TZ6mMXHsZaYiHT8B1fVmzzAxMxnIP9NyIg555BEexw0/edit?usp=sharing

MHBauer (Fri, 20 Mar 2020 19:22:44 GMT):
so I think I'm looking at https://github.com/hyperledger-labs/fabric-private-chaincode/issues/94

bur (Fri, 20 Mar 2020 19:22:48 GMT):
should I just write some comments inline?

MHBauer (Fri, 20 Mar 2020 19:22:59 GMT):
ah, please

MHBauer (Fri, 20 Mar 2020 19:23:03 GMT):
should have full access

MHBauer (Fri, 20 Mar 2020 19:23:58 GMT):
I see now, ercc_plugins directory

MHBauer (Fri, 20 Mar 2020 19:24:28 GMT):
need another coffee, brb

msteiner (Fri, 20 Mar 2020 19:25:09 GMT):
FYI: As discussed in last call, i've created a `feature`, I createda [MVP milestone]((https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/38), went through the [MVP list](https://docs.google.com/document/d/1ztdJykj4I-e9G-YGGnn2ExDVCQQHmbuhgdaA5HWkd9M) and created issues for alls "features", also updating google docs with links. Notes: - i did _not_ create issues of the list items which are more of a design decision rather than an feature, e.g., how to deal with syscc-to-cc and alike, also didn't include far-out stuff like alternate TEEs ..; - i currently kept features which we already implement (e.g., C/C++ chaincode, single channel) open for now to get the MVP decisions more explicit. As we get close to implement that milestone we of course should start closing ...

msteiner (Fri, 20 Mar 2020 19:25:09 GMT):
FYI: As discussed in last call, i've created a `feature`, I createda [MVP milestone]((https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/38), went through the [MVP list](https://docs.google.com/document/d/1ztdJykj4I-e9G-YGGnn2ExDVCQQHmbuhgdaA5HWkd9M) and created issues for alls "features", also updating google docs with links. Notes: - i did _not_ create issues of the list items which are more of a design decision rather than an feature, e.g., how to deal with syscc-to-cc and alike, also didn't include far-out stuff like alternate TEEs ..; - i currently kept features which we already implement (e.g., C/C++ chaincode, single channel) open for now to get the MVP decisions more explicit. As we get close to implement that milestone we of course should start closing ... - see also comments on issue [251](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/251)

MHBauer (Fri, 20 Mar 2020 19:28:15 GMT):
so ercc build plugins should be gone from that makefile now?

MHBauer (Fri, 20 Mar 2020 19:28:19 GMT):
moved to ercc_plugin?

MHBauer (Fri, 20 Mar 2020 19:28:37 GMT):
so, I'm trying to understand why those were in the same place.

MHBauer (Fri, 20 Mar 2020 19:29:05 GMT):
do they share code, or are they localized because they share concerns,

bur (Fri, 20 Mar 2020 19:33:21 GMT):
concerns .... everything in ercc is related to ercc (actual registry chaincode, its validation plugin, and bla bla)

bur (Fri, 20 Mar 2020 19:33:25 GMT):
same for ecc

bur (Fri, 20 Mar 2020 19:33:32 GMT):
ecc contains the chaincode

bur (Fri, 20 Mar 2020 19:33:40 GMT):
the vscc plugin

bur (Fri, 20 Mar 2020 19:33:54 GMT):
but! (here the difference) not the enclave code

bur (Fri, 20 Mar 2020 19:34:03 GMT):
as this is in ecc_enclave

MHBauer (Fri, 20 Mar 2020 19:34:18 GMT):
and that's the C++ part

MHBauer (Fri, 20 Mar 2020 19:34:42 GMT):
which may call backwards/upwards for fabric shim/stub calls

bur (Fri, 20 Mar 2020 19:34:59 GMT):
right

bur (Fri, 20 Mar 2020 19:35:32 GMT):
in order to make the confusion complete ... the actual c++ chaincode is then in examples ...

MHBauer (Fri, 20 Mar 2020 19:37:48 GMT):
trying to think if we should have a bunch of small go modules or one large one anchored at the repo.

bur (Fri, 20 Mar 2020 19:48:49 GMT):
I would say all the stuff in demo ... around the mock server would benefit from its own modules ... as this contains depencies which are only needed for this demo (e.g. the webservices, etc)

bur (Fri, 20 Mar 2020 19:50:31 GMT):
how many small go modules whould we need? one for ercc, ecc, and tlcc, demo/chaincode/go, demo/client/backend/mock

bur (Fri, 20 Mar 2020 19:50:44 GMT):
or even or each plugin

bur (Fri, 20 Mar 2020 19:51:12 GMT):
btw bruno is also working on a bigger redesign of ercc

bur (Fri, 20 Mar 2020 19:51:25 GMT):
this is not criticip for our current milestone

bur (Fri, 20 Mar 2020 19:51:41 GMT):
but I believe that ercc_vscc for instance will go away

bur (Fri, 20 Mar 2020 19:51:47 GMT):
same for decorators

bur (Fri, 20 Mar 2020 19:52:08 GMT):
@BrunoVavala WDYT?

bur (Fri, 20 Mar 2020 19:56:53 GMT):
@MHBauer done with comments on google docs

bur (Fri, 20 Mar 2020 19:57:00 GMT):
does this help now?

MHBauer (Fri, 20 Mar 2020 19:58:06 GMT):
okay, so maybe one top-level one for fpc artifacts, and one for demo stuff

MHBauer (Fri, 20 Mar 2020 19:58:16 GMT):
how much of the `go get` commands is for demo vs fpc?

bur (Fri, 20 Mar 2020 19:59:20 GMT):
demo: ``` $(GO) get github.com/gin-contrib/cors $(GO) get github.com/gin-gonic/gin $(GO) get github.com/dustin/go-broadcast ```

BrunoVavala (Fri, 20 Mar 2020 20:00:26 GMT):
that's correct, both of them will go away

bur (Fri, 20 Mar 2020 20:01:09 GMT):
this is MVP right?

MHBauer (Fri, 20 Mar 2020 20:01:24 GMT):
yes. I'll follow up if necessary

BrunoVavala (Fri, 20 Mar 2020 20:01:34 GMT):
yes

MHBauer (Fri, 20 Mar 2020 20:01:47 GMT):
very good

MHBauer (Fri, 20 Mar 2020 20:02:45 GMT):
okay, I may try a quick setup to have one big module and see what i can do real quick.

MHBauer (Fri, 20 Mar 2020 20:03:02 GMT):
maybe we end up putting the plugins back together,sorry

bur (Fri, 20 Mar 2020 20:03:05 GMT):
do you know the issue number? :D

MHBauer (Fri, 20 Mar 2020 20:05:04 GMT):
ack, of course, the issue being making sure an idividual chaincode builds when it is packaged.

MHBauer (Fri, 20 Mar 2020 20:10:43 GMT):
are the plugins also built by the peer? Or are they built ahead and given to the peer as "install this .so" ?

bur (Fri, 20 Mar 2020 20:11:36 GMT):
the latter

MHBauer (Fri, 20 Mar 2020 20:11:49 GMT):
okay ,so that eliminates some concern

MHBauer (Fri, 20 Mar 2020 20:12:04 GMT):
I think the CC packaging is the big "yuck" for us.

MHBauer (Fri, 20 Mar 2020 20:12:09 GMT):
need to tes.t

bur (Fri, 20 Mar 2020 20:18:52 GMT):
and could you document this already please :D

bur (Fri, 20 Mar 2020 20:18:52 GMT):
and could you document the plugin/decorator removal already please :D

MHBauer (Fri, 20 Mar 2020 21:10:58 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=rcrNHkTcP7SoX6Es7) is this done with? or is build for it disabled?

MHBauer (Fri, 20 Mar 2020 22:29:06 GMT):
I'm getting the vibe that everyone does the docker-build and noone does a natively build?

bur (Fri, 20 Mar 2020 22:34:02 GMT):
i am using docker-dev :D

bur (Fri, 20 Mar 2020 22:34:19 GMT):
the build above is just removed from make

bur (Fri, 20 Mar 2020 22:34:20 GMT):
do this

bur (Fri, 20 Mar 2020 22:34:25 GMT):
``` root@50cac1f84e93:/project/src/github.com/hyperledger-labs/fabric-private-chaincode# cd ecc root@50cac1f84e93:/project/src/github.com/hyperledger-labs/fabric-private-chaincode/ecc# go build -o ecc-vscc.so -buildmode=plugin vscc/ecc_validation_plugin.go vscc/ecc_validation_logic.go # command-line-arguments vscc/ecc_validation_plugin.go:30:9: cannot use &ECCValidation literal (type *ECCValidation) as type "github.com/hyperledger/fabric/core/handlers/validation/api".Plugin in return argument: *ECCValidation does not implement "github.com/hyperledger/fabric/core/handlers/validation/api".Plugin (wrong type for Validate method) have Validate(*"github.com/hyperledger/fabric-protos-go/common".Block, string, int, int, ..."github.com/hyperledger/fabric/core/handlers/validation/api".ContextDatum) error want Validate(*"github.com/hyperledger/fabric/vendor/github.com/hyperledger/fabric-protos-go/common".Block, string, int, int, ..."github.com/hyperledger/fabric/core/handlers/validation/api".ContextDatum) error vscc/ecc_validation_plugin.go:63:38: cannot use block (type *"github.com/hyperledger/fabric-protos-go/common".Block) as type *"github.com/hyperledger/fabric/vendor/github.com/hyperledger/fabric-protos-go/common".Block in argument to v.DefaultTxValidator.Validate ```

msteiner (Fri, 20 Mar 2020 22:43:27 GMT):
Hey, a gentle request: can we try to use threads and discussions more? It's nice to see all the activity recently. However, doing so mostly on the main channel makes it hard/almost impossible to understand/follow unless you read it in real-time. If I just don't know the power of rocket-chat and related BKMs (Intel-speak: Best-Known-Methods), if anybody has some pointer to a beginner's guide to not get lost in a busy rock-chat, then i'd appreciate this as well :-)

MHBauer (Fri, 20 Mar 2020 22:59:13 GMT):
I will try, but I generally treat these all like IRC, live is it.

MHBauer (Fri, 20 Mar 2020 23:00:05 GMT):
I also don't really understand that view, if you have an article or something to read, I'd like to get that perspective.

msteiner (Fri, 20 Mar 2020 23:03:19 GMT):
i'm really confused by rocket chat. in some cases i saw from threads only a thread-symbol but not actual text. your reply is now in the thread but still shows in full in the main channel with no indication that it is exactly the replies i see now attached to my post. Maybe rocketchat just is a s***y tool ;-) Did you ever use discussions, though? Maybe discussions might be the rocket-chat way to do threads?

MHBauer (Fri, 20 Mar 2020 23:03:43 GMT):
oh, I see a button,

MHBauer (Fri, 20 Mar 2020 23:03:48 GMT):
I imagine there's a setting

MHBauer (Fri, 20 Mar 2020 23:04:13 GMT):
I have to click to get here

MHBauer (Fri, 20 Mar 2020 23:04:39 GMT):
don't disagree withthis being a non-optimal tool.

msteiner (Fri, 20 Mar 2020 23:05:52 GMT):
Attempt to make my initial plea into a discussion ..

msteiner (Fri, 20 Mar 2020 23:05:52 GMT):
Hey, a gentle request: can we try to use threads and discussions more? It's nice to see all the activity recently. However, doing so mostly

MHBauer (Fri, 20 Mar 2020 23:10:32 GMT):
aiiiiiieeeeee, nothing yet, but more godeps handling

bur (Fri, 20 Mar 2020 23:11:54 GMT):
I've just found another deps issue

bur (Fri, 20 Mar 2020 23:11:58 GMT):
``` root@50cac1f84e93:/project/src/github.com/hyperledger-labs/fabric-private-chaincode/demo/client/backend/mock# make run-fpc go build -tags fpc env LD_LIBRARY_PATH=../../../../ecc_enclave/_build/lib::/opt/intel/sgxsdk/sdk_libs ./mock --debug panic: /debug/requests is already registered. You may have two independent copies of golang.org/x/net/trace in your binary, trying to maintain separate state. This may involve a vendored copy of golang.org/x/net/trace. goroutine 1 [running]: github.com/hyperledger/fabric/vendor/golang.org/x/net/trace.init.0() /project/src/github.com/hyperledger/fabric/vendor/golang.org/x/net/trace/trace.go:123 +0x1a5 Makefile:16: recipe for target 'run-fpc' failed make: *** [run-fpc] Error 2 ```

MHBauer (Fri, 20 Mar 2020 23:12:24 GMT):
and now it's impossible to view in a thread

MHBauer (Fri, 20 Mar 2020 23:12:28 GMT):
:-D

MHBauer (Fri, 20 Mar 2020 23:12:56 GMT):
curious what commit is 50cac1f84e93

MHBauer (Fri, 20 Mar 2020 23:12:58 GMT):
I don't have that

bur (Fri, 20 Mar 2020 23:13:38 GMT):
uh is local

MHBauer (Fri, 20 Mar 2020 23:13:57 GMT):
but not master

bur (Fri, 20 Mar 2020 23:14:13 GMT):
needed to fix go imports in `demo/client/backend/mock/chaincode/fpc_chaincode.go`

MHBauer (Fri, 20 Mar 2020 23:14:45 GMT):
oh man, now my proto lib is totally broke

MHBauer (Fri, 20 Mar 2020 23:15:12 GMT):
maybe the docker env is the best way to go

bur (Fri, 20 Mar 2020 23:16:33 GMT):
maybe ... at least we suffer all from from same problems in that env

bur (Fri, 20 Mar 2020 23:16:35 GMT):
hrrh

bur (Fri, 20 Mar 2020 23:17:35 GMT):
-- end thread --

MHBauer (Fri, 20 Mar 2020 23:18:52 GMT):
I want to say, it's friday night, go out, have fun, but ..... :sick: :mask:

bur (Fri, 20 Mar 2020 23:19:14 GMT):
ehm ... nothing open these days

bur (Fri, 20 Mar 2020 23:19:57 GMT):
@msteiner do you wanna keep the TODO as is in 302

bur (Fri, 20 Mar 2020 23:19:57 GMT):
@msteiner do you wanna keep the TODO as is in 302 (https://github.com/hyperledger-labs/fabric-private-chaincode/pull/302)

msteiner (Fri, 20 Mar 2020 23:22:34 GMT):
Hmm, you have to give me context (e.g., a thread would have been useful ... ;-)

bur (Fri, 20 Mar 2020 23:23:38 GMT):
I mean we have open PRs ... but no open bars/clubs

msteiner (Fri, 20 Mar 2020 23:24:55 GMT):
well, you didn't mention PR. I did reply to your comment on the PR, so not sure what your question here means?

msteiner (Fri, 20 Mar 2020 23:25:35 GMT):
The TOD header are meant to be instructions to whoever instantiates the template (and obviously should be deleted once addressed)

msteiner (Fri, 20 Mar 2020 23:27:20 GMT):
btw: you shouldn't work every day a night shift (unless you want to make us also work night shifts or at least give a bad conscience if we do not do night shifts :-))

bur (Fri, 20 Mar 2020 23:28:50 GMT):
regarding PR: I suggest to rebase/autosquash and I merge

msteiner (Fri, 20 Mar 2020 23:30:09 GMT):
ok. I'm also curious how the templates are actually presented when you create an issue. Don't really know. Maybe the templates turn out to be not-so-useful :-)

msteiner (Fri, 20 Mar 2020 23:30:54 GMT):
i like, though, the concept ...

msteiner (Fri, 20 Mar 2020 23:31:13 GMT):
btw; it seems you did spring-cleaning of your branches ;-)

bur (Fri, 20 Mar 2020 23:31:53 GMT):
I suggest to create a fresh thread for this conversation

MHBauer (Fri, 20 Mar 2020 23:32:18 GMT):
wow, the templates have gotten super advanced

MHBauer (Fri, 20 Mar 2020 23:32:27 GMT):
for example

MHBauer (Fri, 20 Mar 2020 23:32:30 GMT):
I go to https://github.com/kubernetes/kubernetes/issues

MHBauer (Fri, 20 Mar 2020 23:32:37 GMT):
then click the 'new issue' button

msteiner (Fri, 20 Mar 2020 23:32:41 GMT):
the springcleaning conversation ;-?

MHBauer (Fri, 20 Mar 2020 23:32:43 GMT):
leads to a page

MHBauer (Fri, 20 Mar 2020 23:32:46 GMT):
https://github.com/kubernetes/kubernetes/issues/new/choose

MHBauer (Fri, 20 Mar 2020 23:32:57 GMT):
click 'bug report' for example

MHBauer (Fri, 20 Mar 2020 23:33:06 GMT):
and it fills in the body of the new issue with the template.

msteiner (Fri, 20 Mar 2020 23:33:11 GMT):
anyway, autosquashed and pushed

MHBauer (Fri, 20 Mar 2020 23:33:17 GMT):
v nice.

msteiner (Fri, 20 Mar 2020 23:33:57 GMT):
soon to available also at FPC :-)

bur (Fri, 20 Mar 2020 23:34:36 GMT):
that's nice ... BUT @msteiner there you can see how they will look in action

bur (Fri, 20 Mar 2020 23:34:47 GMT):
wondering if a table is a good thing

msteiner (Fri, 20 Mar 2020 23:35:42 GMT):
i don't think it shows at table when you create issue; the table is the meta-data which shows up in the choose list (see morgan's pointer to kubernetes) and the preset labels

msteiner (Fri, 20 Mar 2020 23:35:59 GMT):
that's at least what i think. We will see as soon as you merge ...

MHBauer (Fri, 20 Mar 2020 23:36:14 GMT):
so right now, we get new versions of everything in the build for each "go get" modules will lock us to specific deps I've got an experiment, we can replace all of 'go get' with 'go mod download'

MHBauer (Fri, 20 Mar 2020 23:36:37 GMT):
running it through the build system now. pr soon if it works.

bur (Fri, 20 Mar 2020 23:39:00 GMT):
merged ...

msteiner (Fri, 20 Mar 2020 23:40:36 GMT):
seems my prediction was correct

msteiner (Fri, 20 Mar 2020 23:40:39 GMT):
no table ...

msteiner (Fri, 20 Mar 2020 23:41:28 GMT):
although the k8s way to handle instructions (as html comments seems better)

bur (Fri, 20 Mar 2020 23:41:29 GMT):
@msteiner do you also wanna create a PR template?

bur (Fri, 20 Mar 2020 23:42:35 GMT):
fabric uses something else for dep vendoring? not modules right?

bur (Fri, 20 Mar 2020 23:43:08 GMT):
wondering if we could somehow pin our deps to match Fabric deps

MHBauer (Fri, 20 Mar 2020 23:43:29 GMT):
not in a way that floats with their changes

msteiner (Fri, 20 Mar 2020 23:43:30 GMT):
presumably it does exist; can look for it. What would you like as content?

msteiner (Fri, 20 Mar 2020 23:44:02 GMT):
in that pr i could also change the italics to comments as k8s does which seems better (as if you don't remove it, it shouldn't show unless you edit ...)

MHBauer (Fri, 20 Mar 2020 23:44:06 GMT):
they have a vendor directory

MHBauer (Fri, 20 Mar 2020 23:44:14 GMT):
and I believe still rely on gopath

MHBauer (Fri, 20 Mar 2020 23:44:18 GMT):
it's not great

MHBauer (Fri, 20 Mar 2020 23:44:36 GMT):
I think they use 'dep' still

bur (Fri, 20 Mar 2020 23:46:33 GMT):
this is a good example for a choas in this channel ... to overlapping threads ...

msteiner (Fri, 20 Mar 2020 23:47:31 GMT):
you mean three ;-?

MHBauer (Fri, 20 Mar 2020 23:51:45 GMT):
okay, verified that for a packaged chaincode to work we must have the mod

bur (Fri, 20 Mar 2020 23:51:59 GMT):
PR type; brief text what the PR does/why we need it; link issues that it fixes

MHBauer (Fri, 20 Mar 2020 23:52:02 GMT):
as in,

MHBauer (Fri, 20 Mar 2020 23:52:09 GMT):
for ercc, must be in the ercc folder

bur (Fri, 20 Mar 2020 23:52:10 GMT):
similar examle: https://github.com/kubernetes/kubernetes/pull/89296

MHBauer (Fri, 20 Mar 2020 23:52:15 GMT):
having it one up does not succeed

bur (Fri, 20 Mar 2020 23:52:28 GMT):
aaaaaaaaaaaaaaaah

MHBauer (Fri, 20 Mar 2020 23:55:12 GMT):
still can't get the vscc failure

bur (Fri, 20 Mar 2020 23:55:45 GMT):
does it build for you?

bur (Fri, 20 Mar 2020 23:55:53 GMT):
or differnt error?

MHBauer (Fri, 20 Mar 2020 23:55:58 GMT):
yes, in module mode

MHBauer (Fri, 20 Mar 2020 23:56:04 GMT):
I will pr the change.

MHBauer (Fri, 20 Mar 2020 23:56:17 GMT):
unless you want to try before I do so?

MHBauer (Fri, 20 Mar 2020 23:57:00 GMT):
https://github.com/MHBauer/fabric-private-chaincode/tree/master-2019-03-20

MHBauer (Fri, 20 Mar 2020 23:57:21 GMT):
I see a button.

msteiner (Fri, 20 Mar 2020 23:57:32 GMT):
actually, just about to clone the template from kubernetes :-)

MHBauer (Fri, 20 Mar 2020 23:58:07 GMT):

Screenshot from 2020-03-20 16-57-31.png

MHBauer (Fri, 20 Mar 2020 23:58:16 GMT):
omg, there's a video record button

MHBauer (Fri, 20 Mar 2020 23:58:26 GMT):
and an audio record button

bur (Fri, 20 Mar 2020 23:59:07 GMT):
no button here

MHBauer (Fri, 20 Mar 2020 23:59:24 GMT):
no blue "19 replies"

bur (Fri, 20 Mar 2020 23:59:24 GMT):
github create isssue has now buttons

bur (Fri, 20 Mar 2020 23:59:25 GMT):
haha

MHBauer (Fri, 20 Mar 2020 23:59:27 GMT):
must be chaos

MHBauer (Sat, 21 Mar 2020 00:00:21 GMT):

Audio record.mp3

bur (Sat, 21 Mar 2020 00:00:36 GMT):
sounds great

MHBauer (Sat, 21 Mar 2020 00:00:41 GMT):
:-D

MHBauer (Sat, 21 Mar 2020 00:00:54 GMT):
seems pretty advanced too to me @msteiner

msteiner (Sat, 21 Mar 2020 00:00:58 GMT):
it seems it's definitely friday evening/night :-)

MHBauer (Sat, 21 Mar 2020 00:00:59 GMT):
tool*

MHBauer (Sat, 21 Mar 2020 00:07:21 GMT):
This should make it through the travis build. Not sure what deep-dark corners of the build still need to be tested. https://github.com/hyperledger-labs/fabric-private-chaincode/pull/304

bur (Sat, 21 Mar 2020 00:09:05 GMT):
> go mod init in base directory. ``` ➜ fabric-private-chaincode git:(master) go mod init go: cannot determine module path for source directory /tmp/fabric-private-chaincode (outside GOPATH, module path must be specified) Example usage: 'go mod init example.com/m' to initialize a v0 or v1 module 'go mod init example.com/m/v2' to initialize a v2 module Run 'go help mod init' for more information. ```

bur (Sat, 21 Mar 2020 00:09:31 GMT):
-- thread end --

bur (Sat, 21 Mar 2020 00:09:34 GMT):
> go mod init in base directory. ``` ➜ fabric-private-chaincode git:(master) go mod init go: cannot determine module path for source directory /tmp/fabric-private-chaincode (outside GOPATH, module path must be specified) Example usage: 'go mod init example.com/m' to initialize a v0 or v1 module 'go mod init example.com/m/v2' to initialize a v2 module Run 'go help mod init' for more information. ```

bur (Sat, 21 Mar 2020 00:10:00 GMT):
what is missing?

bur (Sat, 21 Mar 2020 00:10:05 GMT):
go mod init fpc?

MHBauer (Sat, 21 Mar 2020 00:10:06 GMT):
sigh

MHBauer (Sat, 21 Mar 2020 00:10:10 GMT):
yes, essentially.

MHBauer (Sat, 21 Mar 2020 00:10:16 GMT):
but must be

MHBauer (Sat, 21 Mar 2020 00:10:33 GMT):
`go mod init github.com/hyperledger-labs/fabric-private-chaincode`

MHBauer (Sat, 21 Mar 2020 00:11:55 GMT):
updated pr

bur (Sat, 21 Mar 2020 00:17:25 GMT):
``` ➜ ecc git:(master) ✗ make go build -o ecc-vscc.so -buildmode=plugin vscc/ecc_validation_plugin.go vscc/ecc_validation_logic.go ln -sfn ../../ecc_enclave/_build/lib enclave/ecc-enclave-lib ln -sfn ../../ecc_enclave/_build/include enclave/ecc-enclave-include ```

bur (Sat, 21 Mar 2020 00:18:06 GMT):
``` ➜ ecc git:(master) ✗ ll ecc-vscc.so -rw-r--r-- 1 marcusbrandenburger staff 29M Mar 21 01:16 ecc-vscc.so ```

bur (Sat, 21 Mar 2020 00:18:10 GMT):
nice

MHBauer (Sat, 21 Mar 2020 00:26:17 GMT):
¯\_(ツ)_/¯

bur (Sat, 21 Mar 2020 00:32:05 GMT):
here we have a new PR template ... please close all your open PRs and use the new template

bur (Sat, 21 Mar 2020 00:32:30 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=FRGSDhJmLrSdrZeMn) haha please dont do that

bur (Sat, 21 Mar 2020 00:33:20 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=pjoLjQwnqYwzYqYf5) we haven't really used quotes yet

MHBauer (Sat, 21 Mar 2020 00:33:56 GMT):
lol

bur (Sat, 21 Mar 2020 00:34:05 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=k5xS5C7szRDBtSuNW) how many levels can we get?

bur (Sat, 21 Mar 2020 00:34:17 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=ELpiu9HMGWDP2RvJk) one more?

bur (Sat, 21 Mar 2020 00:34:44 GMT):
boring - back to threads

MHBauer (Sat, 21 Mar 2020 00:42:27 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=TY6E3z7Xxr6BvKcyb) I prefer quoting therads

MHBauer (Sat, 21 Mar 2020 00:42:45 GMT):
weird

MHBauer (Sat, 21 Mar 2020 00:42:58 GMT):
so I can't quote or reply in threads

MHBauer (Sat, 21 Mar 2020 00:43:00 GMT):
BOO

MHBauer (Sat, 21 Mar 2020 00:43:03 GMT):
I hate threads

bur (Sat, 21 Mar 2020 00:43:39 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=akxCCsM7uLcYTSotQ) [ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=q6WAWaMuet4SW7rLA) you cant?

rjones (Sat, 21 Mar 2020 02:03:44 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=KjiHYY4oALECQ9Nfj) yeah probably a bug

MHBauer (Sat, 21 Mar 2020 04:37:02 GMT):
We're no entirely devoid of content on the home screen of this channel.

MHBauer (Mon, 23 Mar 2020 05:45:20 GMT):
hmn, why does the docker dev clone of the repo internally? we're already in the repo, why not mount it as a volume?

bur (Mon, 23 Mar 2020 09:20:29 GMT):
ack! that should be the default way

bur (Mon, 23 Mar 2020 09:21:09 GMT):
we have an issue for that already https://github.com/hyperledger-labs/fabric-private-chaincode/issues/269

bur (Mon, 23 Mar 2020 16:49:09 GMT):
@msteiner this PR wants your love! https://github.com/hyperledger-labs/fabric-private-chaincode/pull/270

bur (Mon, 23 Mar 2020 16:50:38 GMT):
please let me know if I should bring back the SGX patch ... but than we also need to update it :/

msteiner (Mon, 23 Mar 2020 17:00:11 GMT):
see my answer from friday

bur (Mon, 23 Mar 2020 17:00:57 GMT):
I remeber that we offline talked about it ... but I was not able to find it in rocket chat :/ nor in the PR

bur (Mon, 23 Mar 2020 17:01:03 GMT):
sorry

bur (Mon, 23 Mar 2020 19:07:57 GMT):
@MHBauer I assigned you Jordans PR regarding Fabric v2 config! Hope you like it :)

bur (Mon, 23 Mar 2020 19:09:15 GMT):
our contribution guidelines say: "Once sufficient reviewers have approved the PR ..." you can hit the `rebase and merge` button

MHBauer (Mon, 23 Mar 2020 19:23:15 GMT):
I've looked. Not much to say to it. I'll take another look.

msteiner (Mon, 23 Mar 2020 19:39:10 GMT):
there is one comment i referenced you now as you probably know well the solo vs kafka vs raft changes/differences (given that solo and kafka is supposedly deprecated now, we probably should change our configs to raft; and if i remember correctly then swetha mentioned that raft is actually faster than solo, so might be win-win to move to raft ...)

msteiner (Mon, 23 Mar 2020 19:39:34 GMT):
(of course, the real win-win for FPC is if we could to a BFT-secure orderer ... ;-) )

bur (Mon, 23 Mar 2020 19:41:47 GMT):
can you run single-node raft? I know it doesn't make sense .... but to run our integration tests this is soooo enough

bur (Mon, 23 Mar 2020 19:42:50 GMT):
for our dockerized FPC network there I see value using raft over solo ... but for our quick and dirty tests ...

msteiner (Mon, 23 Mar 2020 19:54:14 GMT):
this (single-node raft) seems possible from what i understood from Swetha. In fact, MS CCF does that also

MHBauer (Mon, 23 Mar 2020 20:03:28 GMT):
yes, single node raft. did it in the workshop.

MHBauer (Mon, 23 Mar 2020 20:03:42 GMT):
not sure what the current setup is based on. byfn? test-netwokr

MHBauer (Mon, 23 Mar 2020 20:03:44 GMT):
?

msteiner (Mon, 23 Mar 2020 20:08:33 GMT):
the integration test run a solo orderer directly on host (no docker-compose) based on the sampleconfig in 1.4.3 fabric (which more or less corresponded to config from byfn in old fabric-samples.git

MHBauer (Mon, 23 Mar 2020 20:23:26 GMT):
:ok_hand:

MHBauer (Tue, 24 Mar 2020 15:10:49 GMT):
got another meeting going on right now.

MHBauer (Tue, 24 Mar 2020 15:18:39 GMT):
What's that name he said? Someone else doing TEE work?

msteiner (Tue, 24 Mar 2020 15:19:19 GMT):
Mark Miller, distributed capabilities ...

MHBauer (Tue, 24 Mar 2020 15:19:32 GMT):
perfect, thanks.

msteiner (Tue, 24 Mar 2020 17:00:46 GMT):
a question: could we leave upgrading branch to master to owner of PR? I think it's a bit more robust. Has happened now a few times that i update my PR branch and then realize it has changed.

MHBauer (Tue, 24 Mar 2020 17:01:38 GMT):
not sure what you mean

msteiner (Tue, 24 Mar 2020 17:19:40 GMT):
some folks press the 'update branch' (or whather it's called in the github UI) when the PR is based on an outdated branch

msteiner (Tue, 24 Mar 2020 17:19:40 GMT):
some folks press the 'update branch' (or whather it's called in the github UI) when the PR is based on an outdated branch. And my suggestion would be to leave that ideally up to the PR owner unless there is a good reason to update (e.g., a good reason of course would be that the PR is approved and as a PR assignee you want to merge it)

MHBauer (Tue, 24 Mar 2020 17:55:56 GMT):
oh, okay, yea, I know how to use git, so I end up ignoring the buttons for the most part.

MHBauer (Tue, 24 Mar 2020 17:56:25 GMT):
but I also don't mind merge commits, so we should probably have the policy written down.

msteiner (Tue, 24 Mar 2020 17:56:42 GMT):
the challenge with the button is that others can mess with your own branch ;-)

MHBauer (Tue, 24 Mar 2020 17:57:01 GMT):
ya, thta does make me unhappy

rjones (Tue, 24 Mar 2020 18:29:44 GMT):
Has left the channel.

bur (Tue, 24 Mar 2020 19:32:44 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=TNaySX5bhXEcjjnKA) what about min. 2 approvals (excluding PR creator)? can this also be configured on github to enforce these policies?

msteiner (Tue, 24 Mar 2020 19:51:52 GMT):
do we really have to enforce this? Seems a convention is sufficient? imho it really depends on the PR and who are the stakeholder. E.g., i don't think you need #311 but then #307 definitely has multiple stake-holders (me being one because of external builder). What we probably should do, though, is that whoever creates a PR might want to prune down the list of reviewers (to whatever he thinks the stake-holders are) when creating it?

msteiner (Tue, 24 Mar 2020 19:51:52 GMT):
do we really have to enforce this? Seems a convention is sufficient? imho it really depends on the PR and who are the stakeholder. E.g., i don't think you need #311 but then #307 definitely has multiple stake-holders (me being one because of external builder). What we probably should do, though, is that whoever creates a PR might want to prune down the list of reviewers (to whatever he thinks the stake-holders are and/or at least a critical mass of reviewers given the type of PR) when creating it?

swetha (Tue, 24 Mar 2020 21:52:44 GMT):
@bur you should be able to configure those settings on github

MHBauer (Tue, 24 Mar 2020 22:08:34 GMT):
for required number, see https://help.github.com/en/github/administering-a-repository/enabling-required-reviews-for-pull-requests

bur (Wed, 25 Mar 2020 14:20:56 GMT):
ok I found it github settings, but I also agree with Michael that we dont need to be so strict at the moment;

bur (Wed, 25 Mar 2020 14:21:36 GMT):
on the other hand we still need to have this concention written down somewhere

msteiner (Wed, 25 Mar 2020 14:23:01 GMT):
i thought we did write the convention down in the google doc with the git workflow?

msteiner (Wed, 25 Mar 2020 14:23:15 GMT):
not that i have read it recently ;-)

bur (Wed, 25 Mar 2020 14:24:04 GMT):
recent question by @MHBauer tells me that it is not there ... because I assume that he read it :D

bur (Wed, 25 Mar 2020 14:24:07 GMT):
haha

bur (Wed, 25 Mar 2020 14:24:12 GMT):
(recently)

msteiner (Wed, 25 Mar 2020 15:16:39 GMT):
yep, it's not in that doc. We did establish some convention, see minutes from May 14, 2019 in https://docs.google.com/document/d/11wyn2uKx-UnhIw0XCogDwTDxW_IRqWiJ83HnY-kgBQ4/edit#

msteiner (Wed, 25 Mar 2020 15:17:25 GMT):
we might update them though (and add them to git workflow doc) in light of the codeowner prepopulation?

MHBauer (Wed, 25 Mar 2020 15:28:17 GMT):
git workflow doc?

msteiner (Wed, 25 Mar 2020 15:28:40 GMT):
https://docs.google.com/document/d/1sR7YV3pSYN3NEFiW-2fUqtpsJeJrpC0EWUVtEm0Blcg/edit

bur (Wed, 25 Mar 2020 15:28:44 GMT):
seems have you haven't read the FPC contribution guideleines .... eieieiee

msteiner (Wed, 25 Mar 2020 15:28:58 GMT):
(if you read the new PR template, you should have seen that url ;-))

MHBauer (Wed, 25 Mar 2020 15:29:06 GMT):
I did not.

bur (Wed, 25 Mar 2020 15:29:12 GMT):
we better revert 42b34e4

MHBauer (Wed, 25 Mar 2020 15:29:21 GMT):
but why a doc.....

MHBauer (Wed, 25 Mar 2020 15:29:37 GMT):
It's very long.

bur (Wed, 25 Mar 2020 15:29:52 GMT):
and very detailed

MHBauer (Wed, 25 Mar 2020 15:30:00 GMT):
I see now.

MHBauer (Wed, 25 Mar 2020 15:30:12 GMT):
somewhere in the readme hopefully.

MHBauer (Wed, 25 Mar 2020 15:30:31 GMT):
preferably should be in the repo, but for now, okay.

bur (Wed, 25 Mar 2020 15:30:52 GMT):
its linked in the CONTRIBUTING.md

bur (Wed, 25 Mar 2020 15:30:52 GMT):
https://github.com/hyperledger-labs/fabric-private-chaincode/blob/master/CONTRIBUTING.md

MHBauer (Wed, 25 Mar 2020 15:31:12 GMT):
so it is

bur (Wed, 25 Mar 2020 15:31:17 GMT):
it seems we should better highlight it

MHBauer (Wed, 25 Mar 2020 15:31:48 GMT):
ah, not sure, you'll always get some dopes like me who think they know what they're doing.

bur (Wed, 25 Mar 2020 15:34:16 GMT):
@MHBauer I looked into your ecc-vscc PR and reported some problems. I also continued on the ercc decorator thing and got to a similar problem where my local fabric peer build used slightly different deps as we use for our fpc compoents using go modules

MHBauer (Wed, 25 Mar 2020 15:34:42 GMT):
ya, just starting looking at that. thnaks for repro

MHBauer (Wed, 25 Mar 2020 15:34:56 GMT):
you're at fabric 2.0.1 locally?

bur (Wed, 25 Mar 2020 15:35:13 GMT):
yep; I am in the fpc docker-dev container

MHBauer (Wed, 25 Mar 2020 15:35:22 GMT):
naturally

bur (Wed, 25 Mar 2020 15:35:28 GMT):
double checkd that I am on the tag

MHBauer (Wed, 25 Mar 2020 15:35:41 GMT):
okay, I will attempt to align the deps

bur (Wed, 25 Mar 2020 15:36:00 GMT):
I tried to hack by create go mod inside fabric

MHBauer (Wed, 25 Mar 2020 15:36:06 GMT):
good to know how you tested it. thanks foor that.

MHBauer (Wed, 25 Mar 2020 15:36:15 GMT):
hmn?

MHBauer (Wed, 25 Mar 2020 15:36:25 GMT):
hacky hack?

bur (Wed, 25 Mar 2020 15:36:52 GMT):
and replace the fabric depency with my local fabric repo

bur (Wed, 25 Mar 2020 15:37:01 GMT):
to enforece that deps match

bur (Wed, 25 Mar 2020 15:37:06 GMT):
but

bur (Wed, 25 Mar 2020 15:37:10 GMT):
``` root@7984cc9a34dc:/project/src/github.com/hyperledger/fabric# go mod init github.com/hyperledger/fabric go: creating new go.mod: module github.com/hyperledger/fabric go: copying requirements from Gopkg.lock go: converting Gopkg.lock: stat github.com/pierrec/lz4@v2.2.3: github.com/pierrec/lz4@v2.2.3: invalid version: module contains a go.mod file, so major version must be compatible: should be v0 or v1, not v2 go: converting Gopkg.lock: stat github.com/cespare/xxhash@v2.1.0: github.com/cespare/xxhash@v2.1.0: invalid version: module contains a go.mod file, so major version must be compatible: should be v0 or v1, not v2```

MHBauer (Wed, 25 Mar 2020 15:37:43 GMT):
to much thread

bur (Wed, 25 Mar 2020 15:37:48 GMT):
argh

MHBauer (Wed, 25 Mar 2020 15:37:49 GMT):
I can't read that

bur (Wed, 25 Mar 2020 15:38:01 GMT):
will post here ``` root@7984cc9a34dc:/project/src/github.com/hyperledger/fabric# go mod init github.com/hyperledger/fabric go: creating new go.mod: module github.com/hyperledger/fabric go: copying requirements from Gopkg.lock go: converting Gopkg.lock: stat github.com/pierrec/lz4@v2.2.3: github.com/pierrec/lz4@v2.2.3: invalid version: module contains a go.mod file, so major version must be compatible: should be v0 or v1, not v2 go: converting Gopkg.lock: stat github.com/cespare/xxhash@v2.1.0: github.com/cespare/xxhash@v2.1.0: invalid version: module contains a go.mod file, so major version must be compatible: should be v0 or v1, not v2 ```

bur (Wed, 25 Mar 2020 15:38:41 GMT):
but than `make native` does not work anymore

bur (Wed, 25 Mar 2020 15:38:43 GMT):
:/

MHBauer (Wed, 25 Mar 2020 15:38:56 GMT):
ah, hehe, fabric mod, no bueno

bur (Wed, 25 Mar 2020 15:39:18 GMT):
y not?

MHBauer (Wed, 25 Mar 2020 15:39:42 GMT):
ah, I mainly mean they would have done it already if they were going to

bur (Wed, 25 Mar 2020 15:40:01 GMT):
right

bur (Wed, 25 Mar 2020 15:41:03 GMT):
could we also disable go modules for the validation plugins / decorator and build them the "normal / old-school" way?

bur (Wed, 25 Mar 2020 15:41:55 GMT):
but I guess since we have a go.mod in the root folder this does not work anymore?!

MHBauer (Wed, 25 Mar 2020 15:43:31 GMT):
I will look into it. brb

bur (Wed, 25 Mar 2020 15:43:50 GMT):
nice

bur (Wed, 25 Mar 2020 15:43:53 GMT):
thanks

bur (Wed, 25 Mar 2020 15:45:24 GMT):
also ... since we are going to patch fabric (for proxy and tlcc support) we need to find a way to build the plugins with the same codebase

bur (Wed, 25 Mar 2020 17:05:13 GMT):
deleting vendor folder in fabric works pretty well :D

bur (Wed, 25 Mar 2020 17:05:23 GMT):
I can also build native binaries

MHBauer (Wed, 25 Mar 2020 17:24:40 GMT):
wow, that was insanity

MHBauer (Wed, 25 Mar 2020 17:24:49 GMT):
I had really weird directories.

MHBauer (Wed, 25 Mar 2020 17:25:06 GMT):
does that mean vscc plugs in now?

MHBauer (Wed, 25 Mar 2020 17:28:09 GMT):
I should try to upstream that.

bur (Wed, 25 Mar 2020 17:29:24 GMT):
does not work yet as we need to pin deps to match everything that is used in fabric

bur (Wed, 25 Mar 2020 17:29:25 GMT):
:/

msteiner (Wed, 25 Mar 2020 17:33:01 GMT):
i guess you say that if you using go modules? Otherwise you just have to use the same GOROOT? If the former, it's kindof surprising as i would have assumed that with go modules you can have different one with different dependencies (for the same modules)? But then maybe this is an issue of mixing go modules with non-go-modules code. (Naively, i would have assumed though that old GOROOT code would just be an implicit anonymous go module ...)

bur (Wed, 25 Mar 2020 17:33:48 GMT):
using go modules now

bur (Wed, 25 Mar 2020 17:34:21 GMT):
I did a `go mod init github.com/hyperledger/fabric` and then `rm -rf vendor`

bur (Wed, 25 Mar 2020 17:34:52 GMT):
in ercc I added a replace for fabric pointing to my local fabric version

bur (Wed, 25 Mar 2020 17:35:15 GMT):
no I compile the ercc-decorator

bur (Wed, 25 Mar 2020 17:35:17 GMT):
and the peer

bur (Wed, 25 Mar 2020 17:35:27 GMT):
start the peer and see what dep does not match

bur (Wed, 25 Mar 2020 17:35:44 GMT):
then I do a go get DEP in fabric and ercc

bur (Wed, 25 Mar 2020 17:35:50 GMT):
rebuild

bur (Wed, 25 Mar 2020 17:35:55 GMT):
and next deps

bur (Wed, 25 Mar 2020 17:35:57 GMT):
uffffffffff

bur (Wed, 25 Mar 2020 17:36:01 GMT):
is there a better way?

msteiner (Wed, 25 Mar 2020 17:36:36 GMT):
hmm, using go mod with fabric package seems certainly a bit iffy given that fabric is not modularized

msteiner (Wed, 25 Mar 2020 17:37:49 GMT):
plugins where previously also not in fabric package?

bur (Wed, 25 Mar 2020 17:38:10 GMT):
HAAAAAAAAAAAAAAAAAAAAA works

bur (Wed, 25 Mar 2020 17:38:31 GMT):
decorator is loaded :D

bur (Wed, 25 Mar 2020 17:38:31 GMT):
nice

msteiner (Wed, 25 Mar 2020 17:38:52 GMT):
but did you build decorator as a module itself?

bur (Wed, 25 Mar 2020 17:39:02 GMT):
sure

bur (Wed, 25 Mar 2020 17:39:10 GMT):
ehm

bur (Wed, 25 Mar 2020 17:39:11 GMT):
no

bur (Wed, 25 Mar 2020 17:39:13 GMT):
yes

bur (Wed, 25 Mar 2020 17:39:15 GMT):
whooot

msteiner (Wed, 25 Mar 2020 17:39:58 GMT):
also i guess when you mention ercc above you meant ercc_plugins/ias_credentials? ercc should be irrelevant here?

bur (Wed, 25 Mar 2020 17:40:35 GMT):
yes, I am talking about this decorator ... but I moved it back to ercc/attestation

msteiner (Wed, 25 Mar 2020 17:41:41 GMT):
hmm, having the ercc CC alone in a module seemed to me to actually make sense

msteiner (Wed, 25 Mar 2020 17:41:52 GMT):
did you refactor the CC into a sub-dir of ercc?

bur (Wed, 25 Mar 2020 17:42:21 GMT):
no ... but I removed the circular depency caused by the provider

msteiner (Wed, 25 Mar 2020 17:42:30 GMT):
just to make sure we do not run again into cc install problems as before?

bur (Wed, 25 Mar 2020 17:43:01 GMT):
good point; need to double check that

msteiner (Wed, 25 Mar 2020 17:44:02 GMT):
in addition, i think keeping them in different sub-dirs also would add to clarity

bur (Wed, 25 Mar 2020 17:46:27 GMT):
you mean have ercc and ercc_plugins or previous structure?

MHBauer (Wed, 25 Mar 2020 17:50:08 GMT):
I think that rm of vendor is probably pretty key.

bur (Wed, 25 Mar 2020 17:58:54 GMT):
ercc-vscc plugin also loads but throws yet another error

MHBauer (Wed, 25 Mar 2020 18:07:06 GMT):
wow, you're the master now

msteiner (Wed, 25 Mar 2020 18:49:21 GMT):
prior structure didn't really have it as the cc was on the top-level of ercc. What i meant is something like ercc/{cc,decorator,validator} or alike. So each sub-directory would be self-contained

MHBauer (Wed, 25 Mar 2020 18:55:37 GMT):
seems to be mostly whack-a-mole with deps

MHBauer (Wed, 25 Mar 2020 19:27:43 GMT):
okay, I have ecc running in peer.

MHBauer (Wed, 25 Mar 2020 19:28:07 GMT):
some changes to fab, and some changes to our stuff. and I'm not sure this is going to be easy to do.

msteiner (Wed, 25 Mar 2020 20:05:59 GMT):
by running you mean install it in peer using new lifecycle (and beyond)?

MHBauer (Wed, 25 Mar 2020 20:07:00 GMT):
as in https://github.com/hyperledger-labs/fabric-private-chaincode/pull/310#pullrequestreview-381117296

msteiner (Wed, 25 Mar 2020 20:07:34 GMT):
as you are saying there are also considerable changes in fabric. For ecc i don't think this seems worth: In mid-term we will install it anyway using our external builders and we wouldn't build it on each isntall of a FPC chaincode (and also not by peer) and in short-term we can just do the same container switcheroo as before?

MHBauer (Wed, 25 Mar 2020 20:07:55 GMT):
sorry, escc-vcc

MHBauer (Wed, 25 Mar 2020 20:08:02 GMT):
ecc-vscc, that plugin

msteiner (Wed, 25 Mar 2020 20:08:32 GMT):
ah, ok. just was about to say that #310 touches to completely different aspects

msteiner (Wed, 25 Mar 2020 20:09:00 GMT):
plugins is of course a different story.

MHBauer (Wed, 25 Mar 2020 20:09:04 GMT):
I would imagine 310 would work as is for running the ecc

MHBauer (Wed, 25 Mar 2020 20:09:14 GMT):
well, is there an ecc ?

msteiner (Wed, 25 Mar 2020 20:09:30 GMT):
but for now we could potentially just disable the validation plugin? Although we would need eventually an answer for endorsement plugins

MHBauer (Wed, 25 Mar 2020 20:11:00 GMT):
probably best to delay it as it will be a big pain syncing deps with fabric.

MHBauer (Wed, 25 Mar 2020 20:11:28 GMT):
I think I have a better idea now, but phew, it took a while.

msteiner (Wed, 25 Mar 2020 20:11:29 GMT):
if we do not install ecc using the standard lifecycle commands (and that would be anyway given it's dependencies on sgx ...), then it's per-se not essential to have it as a module. And it did build before?

MHBauer (Wed, 25 Mar 2020 20:12:08 GMT):
seems that way, I am still learning how all the pieces go together.

MHBauer (Wed, 25 Mar 2020 20:12:37 GMT):
if the pr isn't going to go anywhere, I can close it.

msteiner (Wed, 25 Mar 2020 20:12:43 GMT):
maybe best level set tomorrow on the call that you and marcus can update us on all the challenges and issues around it. Would fit anyway in the discussion around how to do validation/MSP/etc we wanted to have tomorrow?

MHBauer (Wed, 25 Mar 2020 20:14:17 GMT):
yea, can do it then. Still, learned some things to try and take modules upstream.

msteiner (Wed, 25 Mar 2020 20:14:49 GMT):
sorry, didn't mean to say that your PR is not going anywhere. whether we can drop the plugins is an open question and having an ecc mod-ification certainly sounds nice. Just if it requires lots of changes in fabric and painful dependency tracking in our code with fabric dependencies then we might reconsider?

msteiner (Wed, 25 Mar 2020 20:15:17 GMT):
btw: do we know whether fabric has any plans to als mod-ify fabric core code?

MHBauer (Wed, 25 Mar 2020 20:15:38 GMT):
if plugins will remain around, it's going to be necessary to help people upstream.

msteiner (Wed, 25 Mar 2020 20:15:55 GMT):
probably all questions to ask Matt on Friday ...

MHBauer (Wed, 25 Mar 2020 20:16:05 GMT):
huh? modify fabric? it's always happening.

msteiner (Wed, 25 Mar 2020 20:16:45 GMT):
maybe i misunderstood you but i thought you said to make it work we would have to make our own changes (patches) to fabric ..

MHBauer (Wed, 25 Mar 2020 20:17:25 GMT):
for what? I think it would help if fabric was using go modules, but there are no code changes.

msteiner (Wed, 25 Mar 2020 20:19:05 GMT):
well you said "some changes to fab, and some changes to our stuff.", that made me conclude we would need our own patches to fabric to make plugins work. Completely agree regarding fabric using go modules. That's why i was wondering whether anybody has asked fabric maintainers/forum. We definitely should ask Matt on friday

MHBauer (Wed, 25 Mar 2020 20:19:26 GMT):
I mean the repo, sorry.

MHBauer (Wed, 25 Mar 2020 20:20:07 GMT):
I don't distinguish between the infrastructure and the code of the project. Tho I suppose dependencies are code in the end.

MHBauer (Wed, 25 Mar 2020 20:20:29 GMT):
In the end, I don't think it requires a change, but it would be nicer to have.

msteiner (Wed, 25 Mar 2020 20:20:35 GMT):
not sure what you meant with your 'i mean the repo' reply. were you referring to the some changes to fab and some changes to our stuff'? if so, i was always assuming these where changes to the two repos

MHBauer (Thu, 26 Mar 2020 16:54:50 GMT):
310 updated with makefile changes https://github.com/hyperledger-labs/fabric-private-chaincode/pull/310 green build

msteiner (Thu, 26 Mar 2020 17:14:22 GMT):
ok, will try to test Marcus scenario on jordan's pr based config ...

bur (Thu, 26 Mar 2020 18:20:49 GMT):
I killed the auction golang mock chaincode; please review and merge https://github.com/hyperledger-labs/fabric-private-chaincode/pull/316

msteiner (Thu, 26 Mar 2020 19:36:32 GMT):
bruno and approved it: @MHBauer , do you also want to cross-check and approve or should i (as assignee) just go ahead and merge it?

msteiner (Thu, 26 Mar 2020 20:32:24 GMT):
never mind, so now you also approved and hence i've merged it ...

msteiner (Thu, 26 Mar 2020 21:57:13 GMT):
we have since quite a few days the security warning on github regarding minimist. Following what marcus mentioned on March 17tn, i played around with npm outdated and npm update, but none touch minimist. As far as i can tell, Marcus already updated package.json with the latest version (which solved the last similar issue?). As it seems a minor vulnerability and currently we anyway do not have e2e secure code, should we just dismiss the issues, e.g. as 'risk is tolearble' or 'no bandwidth to fix this'?

MHBauer (Fri, 27 Mar 2020 16:49:22 GMT):
I've seen these before, they are only visible to the owners.

bur (Fri, 27 Mar 2020 17:14:30 GMT):
right! I updated all minimist deps possible ... no idea why this is still there

bur (Fri, 27 Mar 2020 17:14:43 GMT):
I vote for click ignore button as it addressses the demo only

MHBauer (Fri, 27 Mar 2020 17:16:14 GMT):
this is the 1.2.3 and earlier vulnerability?

msteiner (Fri, 27 Mar 2020 17:21:01 GMT):
i think it complains about 1.2.2 and earlier

MHBauer (Fri, 27 Mar 2020 17:21:49 GMT):
oky, I probably misread the vulerability report, but I see a 1.2.0 dependency in the repo.

msteiner (Fri, 27 Mar 2020 17:21:57 GMT):
btw: it's not only in demo but also in `utils/docker-compose/node-sdk` (not that this is automatically used, but it's use is in the docu ...)

MHBauer (Fri, 27 Mar 2020 17:25:41 GMT):
yes, I see three files with a reference ``` ```

MHBauer (Fri, 27 Mar 2020 17:25:41 GMT):
yes, I see three files with a reference ``` rg minimist utils/docker-compose/node-sdk/package-lock.json 1055: "minimist": { 1078: "minimist": "0.0.8" 1081: "minimist": { 1191: "minimist": "^1.2.0", 1726: "minimist": { 1728: "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 1738: "minimist": "0.0.8" demo/client/backend/fabric-gateway/package-lock.json 796: "minimist": { 819: "minimist": "0.0.8" 822: "minimist": { 932: "minimist": "^1.2.0", demo/client/frontend/package-lock.json 1498: "minimist": "^1.2.0", 5770: "minimist": { 5801: "minimist": "0.0.8" 5949: "minimist": "^1.2.0", 5953: "minimist": { 7448: "minimist": "^1.2.5" 7451: "minimist": { 7453: "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", 7660: "minimist": "^1.2.0" 8072: "minimist": { 8074: "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", 8205: "minimist": "0.0.8" 8208: "minimist": { 8210: "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 10230: "minimist": "^1.2.0", ➜ fabric-private-chaincode git:(reenable-ecc-vscc_plugin) ✗ ```

bur (Fri, 27 Mar 2020 17:26:31 GMT):
mhhh

msteiner (Fri, 27 Mar 2020 17:27:11 GMT):
yes, there are references. but they all seem indirectly referenced, so you cannot fix them by upgrading packages in package.json to the latest version (which they all already seem to be)

MHBauer (Fri, 27 Mar 2020 17:27:34 GMT):
:ok_hand:

msteiner (Fri, 27 Mar 2020 17:27:44 GMT):
the fabric node clients are not yet v2, but there doesn't seem to be yet a v2 npm file and in repo there only v2-beta tags ...

MHBauer (Fri, 27 Mar 2020 17:28:14 GMT):
I'm having bizzare internet problems today,

MHBauer (Fri, 27 Mar 2020 17:31:03 GMT):
I can't go get inside of docker, but I can outside.

msteiner (Fri, 27 Mar 2020 17:31:07 GMT):
i guess in bizarre days like these, you can expect bizarre things :-)

MHBauer (Fri, 27 Mar 2020 17:31:08 GMT):
so werid

msteiner (Fri, 27 Mar 2020 17:31:53 GMT):
i assume you are not behind a proxy (this is the usual failure here at intel ...)

MHBauer (Fri, 27 Mar 2020 17:34:13 GMT):
I mean, I'm at home, so

msteiner (Fri, 27 Mar 2020 17:35:45 GMT):
well, at intel you still have a proxy problem as the vpn usually is not in split-tunnel version ...

msteiner (Fri, 27 Mar 2020 17:35:56 GMT):
anyway, wan't an issue at ibm in the past ...

MHBauer (Fri, 27 Mar 2020 17:36:11 GMT):
oh right, your vpn, no I don't have that running at all right now, nothing I need in there.

MHBauer (Fri, 27 Mar 2020 17:36:24 GMT):
maybe I try a vm

msteiner (Fri, 27 Mar 2020 17:37:00 GMT):
normal network traffic works, though, in container? E.g., a wget / links / git clone /... ?

msteiner (Fri, 27 Mar 2020 17:37:44 GMT):
actually, does a `telnet 443` work?

MHBauer (Fri, 27 Mar 2020 17:37:49 GMT):
huhuhuh,

MHBauer (Fri, 27 Mar 2020 17:38:31 GMT):
hmn, why is DNS broken.

MHBauer (Fri, 27 Mar 2020 17:38:59 GMT):
maybe I don't remember how to use nslookup

MHBauer (Fri, 27 Mar 2020 17:39:06 GMT):
ooh, it's very slow

MHBauer (Fri, 27 Mar 2020 17:39:49 GMT):
I'll try restarting first.

msteiner (Fri, 27 Mar 2020 17:40:57 GMT):
oh, dns with docker & ubuntu had issues around systemd. but was only a real problem if you couldn't reach the google 8.8.8.8 dns server which are dockers fallback ..

MHBauer (Fri, 27 Mar 2020 17:44:45 GMT):
dns is normal speed now

bur (Mon, 30 Mar 2020 07:02:10 GMT):
@MHBauer are you happy with 318 and can merge it? https://github.com/hyperledger-labs/fabric-private-chaincode/pull/318

MHBauer (Mon, 30 Mar 2020 13:54:20 GMT):
yea, looks good, but I cannot merge it.

bur (Mon, 30 Mar 2020 14:07:20 GMT):
why not?

msteiner (Mon, 30 Mar 2020 14:08:47 GMT):
morgan is still not yet a member of the FPC github group

bur (Mon, 30 Mar 2020 14:19:03 GMT):
@swetha @MicBowman please add Morgan to fabric-private-chaincode-committers

bur (Mon, 30 Mar 2020 14:19:03 GMT):
@swetha @MicBowman please add Morgan to fabric-private-chaincode-committers; thanks

swetha (Mon, 30 Mar 2020 15:48:21 GMT):
@bur done! Morgan is added

swetha (Mon, 30 Mar 2020 15:48:59 GMT):
@MHBauer ^

bur (Mon, 30 Mar 2020 15:49:08 GMT):
thanks

bur (Mon, 30 Mar 2020 18:05:16 GMT):
@MHBauer try again! :D

MHBauer (Mon, 30 Mar 2020 18:35:04 GMT):
ach, sorry, rocket doesn't minimize on [X] it actually exits.

msteiner (Mon, 30 Mar 2020 18:39:58 GMT):
must be a linux feature. In windows it persists, just windows disappears ..

bur (Tue, 31 Mar 2020 13:05:09 GMT):
Ouch ``` Step 23/32 : RUN wget https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz && git clone --branch ${SGXSSL_VERSION} https://github.com/intel/intel-sgx-ssl.git && . $SGX_SDK/environment && (cd intel-sgx-ssl/openssl_source; mv /tmp/openssl-${OPENSSL_VERSION}.tar.gz . ) && (cd intel-sgx-ssl/Linux; make SGX_MODE=SIM DESTDIR=$SGX_SSL all test ) && (cd intel-sgx-ssl/Linux; make install ) && rm -rf /tmp/intel-sgx-ssl ---> Running in eb979ffa4e3d --2020-03-31 13:03:26-- https://www.openssl.org/source/openssl-1.1.0j.tar.gz Resolving www.openssl.org (www.openssl.org)... 104.83.84.113, 2a02:26f0:3000:28e::c1e, 2a02:26f0:3000:29f::c1e Connecting to www.openssl.org (www.openssl.org)|104.83.84.113|:443... connected. HTTP request sent, awaiting response... 404 Not Found 2020-03-31 13:03:27 ERROR 404: Not Found. ```

jrlinton (Tue, 31 Mar 2020 15:17:31 GMT):
Has joined the channel.

bur (Wed, 01 Apr 2020 17:41:47 GMT):
@here I suggest that we move the concept-release-v2 milestone deadline to mid april and make sure that we integration test run smoothly ... I dont see the need to rush now and push the concept-release-v2 out and sacrify testing/stability; wdyt?

bur (Wed, 01 Apr 2020 17:43:28 GMT):
this need one more review https://github.com/hyperledger-labs/fabric-private-chaincode/pull/319

bur (Wed, 01 Apr 2020 17:43:28 GMT):
this need one more review, please chek https://github.com/hyperledger-labs/fabric-private-chaincode/pull/319

msteiner (Wed, 01 Apr 2020 20:51:50 GMT):
we definitely shouldn't do any rush sacrificing testing/stability. Not sure changing the date matters. I still think we should move to the earliest stable version even, if as discussed, this might not yet have plugins, as long as the integration tests work

bur (Wed, 01 Apr 2020 20:54:07 GMT):
ack! our milestone deadline was yesterday and integration tests are not working at the moment; so let's move it;

msteiner (Wed, 01 Apr 2020 20:57:34 GMT):
BTW: triggered by an email i saw on the fabric ML i stumbled over https://hyperledger.github.io/fabric-sdk-node/master/tutorial-migration.html from which i have at least two important client-side take-aways for us: - the `fabric-client` apis we use in `demo` and in `utils/docker-compose/node-sdk` are now depricated and one should use `fabric-network` in turns, and - "SDK no longer aims to provide administrative and management capability. The command-line interface should be used for these operations." This means that for any admin stuff we will have to extend/modify CLI (and so probably for a MMVP doing `invoke` and `query` might be better than tackling right away node or go sdk for that. (assuming we can use native-code libs in node-sdk, then anything we do for cli should still be a building block for the client side sdks ...)

msteiner (Wed, 01 Apr 2020 21:06:47 GMT):
well, this date was really arbitrary. Anyway, i've moved it now to next tuesday. Hopefully that is achieveable, otherwise we'll move again.

msteiner (Wed, 01 Apr 2020 21:14:46 GMT):
fyi: i've updated relevant work-items accordingly. feel free to update/extend as appropriate ..

bur (Wed, 01 Apr 2020 21:52:15 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=dpfoFqxvYoxkB8SrW) thanks!

msteiner (Thu, 02 Apr 2020 22:46:23 GMT):
fyi: i've cleaned up the external builders PR, so please have a look and start reviewing it. thanks!

bur (Mon, 06 Apr 2020 20:07:44 GMT):
@msteiner looking in your PR and I get this here ```peer.sh: Installing ercc on channel 'mychannel' ... peer.sh: Packaging chaincode ... peer.sh: Installing chaincode ... Error: chaincode install failed with status: 500 - failed to invoke backing implementation of 'InstallChaincode': could not build chaincode: docker build failed: docker image build failed: docker build failed: Error returned from build: 2 "go: downloading github.com/hyperledger/fabric-protos-go v0.0.0-20200124220212-e9cfc186ba7b ```

bur (Mon, 06 Apr 2020 20:08:34 GMT):
I am running it from the dev docker container; this is not the kind of error you mentioned in the review notes?!?

msteiner (Mon, 06 Apr 2020 20:09:42 GMT):
hmm, do you have the docker daemon socket passed to your docker dev container? (e.g., does docker ps/docker images work)?

bur (Mon, 06 Apr 2020 20:09:50 GMT):
nope

msteiner (Mon, 06 Apr 2020 20:10:10 GMT):
well, then master wouldn't work either?

msteiner (Mon, 06 Apr 2020 20:10:29 GMT):
(ercc installation is still as before, using builtin legacy golang docker install)

bur (Mon, 06 Apr 2020 20:10:37 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=ngGJEnaPFN8wqFHXW) wait ... docker ps and docker images work indeed inside my dev container

msteiner (Mon, 06 Apr 2020 20:14:10 GMT):
what i did notice, though, is that there is some timeout when fabric builds container, so if build is slow, e.g., because lots dependencies have to be downloaded than it can fail. Curiously, though, the build continues and if you wait until the image shows up in docker images, then it will work

msteiner (Mon, 06 Apr 2020 20:14:41 GMT):
this seems a general fabric issue, nothing with fpc proper and even less with this PR (this timeout happened already beforehand)

msteiner (Mon, 06 Apr 2020 20:15:13 GMT):
i locally tried though and i could successfully run even after removing the image

bur (Mon, 06 Apr 2020 20:15:47 GMT):
let me run it again :)

bur (Mon, 06 Apr 2020 20:15:52 GMT):
BTW export FABRIC_LOGGING_SPEC=debug is insane!

bur (Mon, 06 Apr 2020 20:15:52 GMT):
BTW export FABRIC_LOGGING_SPEC=debug is insane mode!!!

msteiner (Mon, 06 Apr 2020 20:18:11 GMT):
well, this is for development/debugging?

bur (Mon, 06 Apr 2020 20:18:22 GMT):
:D

msteiner (Mon, 06 Apr 2020 20:18:30 GMT):
you can always filter/grep, but you cannot get the info out of thin air

msteiner (Mon, 06 Apr 2020 20:18:52 GMT):
but nothing should stop you to change that. it was only for convenience that i put it there ....

bur (Mon, 06 Apr 2020 20:19:05 GMT):
I think its good! :D

kumar89 (Tue, 07 Apr 2020 16:04:06 GMT):
Has joined the channel.

bur (Wed, 08 Apr 2020 17:14:24 GMT):
@jordy24 please review the feedback you got https://github.com/hyperledger-labs/fabric-private-chaincode/pull/324

jordy24 (Wed, 08 Apr 2020 20:02:03 GMT):
am working on it

bur (Wed, 08 Apr 2020 23:15:43 GMT):
this needs one more review please https://github.com/hyperledger-labs/fabric-private-chaincode/pull/322

msteiner (Thu, 09 Apr 2020 01:48:55 GMT):
if nobody is biting on this, i will merge later tonight ....

bur (Thu, 09 Apr 2020 18:18:34 GMT):
I promoted #323 to non-WIP as it made it though travis. Please have a look! https://github.com/hyperledger-labs/fabric-private-chaincode/pull/323

MHBauer (Thu, 09 Apr 2020 19:59:33 GMT):
oh no I clicked a button and I shouldn't be allowed to click buttons.

bur (Thu, 09 Apr 2020 20:01:34 GMT):
omg!

bur (Thu, 09 Apr 2020 20:01:36 GMT):
:D

bur (Thu, 09 Apr 2020 20:01:40 GMT):
nice so it's merged!

bur (Thu, 09 Apr 2020 20:01:42 GMT):
well done

bur (Thu, 09 Apr 2020 20:02:26 GMT):
@MHBauer can I assign this (https://github.com/hyperledger-labs/fabric-private-chaincode/pull/323) to you ... and you hit the button again once there are two green check marks? :D

MHBauer (Thu, 09 Apr 2020 20:02:39 GMT):
looking at it right now.

MHBauer (Thu, 09 Apr 2020 20:02:57 GMT):
it's amazing how +150-50 lines happens over 18 files.

bur (Thu, 09 Apr 2020 20:04:57 GMT):
haha ... what is the secret to make thoses changes smaller?

MHBauer (Thu, 09 Apr 2020 20:31:58 GMT):
reviewed 323, I can make some small updates if there are no objections.

bur (Thu, 09 Apr 2020 20:53:52 GMT):
please go ahead

bryangross (Fri, 10 Apr 2020 14:45:18 GMT):
Has joined the channel.

msteiner (Tue, 14 Apr 2020 23:35:40 GMT):
btw: as we touch on javascript foreign-code interface to c++ crypto/attestation lib: Seems the main API for node to use is N-API (https://nodejs.org/api/n-api.html). More interestingly, though, given that it is used already in PDO: Swig also has backends for go as well as node (http://www.swig.org/compare.html)!

BrunoVavala (Tue, 14 Apr 2020 23:53:23 GMT):
good observation, definitely worth taking a look at that!

bur (Wed, 15 Apr 2020 16:52:42 GMT):
Please have another look at my PR! I address all reviews and travis runs through now https://github.com/hyperledger-labs/fabric-private-chaincode/pull/323

msteiner (Wed, 15 Apr 2020 20:12:02 GMT):
something with the submodule is funky. I could initially check it out but noticed a difference in the git version of protos. so i went back to master, did `git pr clean` (i use git-extras) and then tried to checkout as `git pr 323 upstream` but got following error ``` fatal: not a git repository: tlcc_enclave/protos/fabric/../../../.git/modules/tlcc_enclave/protos/fabric fatal: not a git repository: tlcc_enclave/protos/fabric/../../../.git/modules/tlcc_enclave/protos/fabric ``` Using `--recurse-submodules` didn't change anything. What gives?

msteiner (Wed, 15 Apr 2020 20:32:19 GMT):
uff, finally managed to get it working. had to clean up some files which didn't show up in `git status`, e.g., `.git/modules` and the submodule directory itself ...

MHBauer (Wed, 15 Apr 2020 21:15:34 GMT):
ah, well, looks like it's done then. https://github.com/hyperledger/fabric/pull/1064

MHBauer (Wed, 15 Apr 2020 21:22:27 GMT):
dunno if it'll be 2.2 or 2.1.1 or what, but fabric seems moduley

MHBauer (Wed, 15 Apr 2020 23:18:54 GMT):
not in 2.1 I don't think, but `go get github.com/hyperledger/fabric@252795afdb080632fa14c1baa80f017a451ca264` is what we'll need.

msteiner (Thu, 16 Apr 2020 00:53:56 GMT):
cool. thanks also for the link, made me also find the instructions on setting up the fabric dev environment i was looking for earlier :-). Also seems Marcus was prescient in pushing for go 1.14 for fpc ... ;-)

MHBauer (Thu, 16 Apr 2020 21:15:30 GMT):
yay, 323 is travis-ing again

msteiner (Fri, 17 Apr 2020 00:35:33 GMT):
fyi: ubuntu 20.04 is (for now) not an (easy) option for SGX, in both build-from-software (compiler issue with LVI side-channel mitigation to blame ...) or binary-install version (with protobuf package dependency to blame). It's planned, though, see https://github.com/intel/linux-sgx/issues/523, but not something we can count on in short-term. BTW: ubuntu 20.04 has protobuf 3.6.1.3 as default as of now. ...

msteiner (Fri, 17 Apr 2020 03:26:03 GMT):
fyi: Fabric 2.1.0 was just announced: https://github.com/hyperledger/fabric/releases/tag/v2.1.0

msteiner (Fri, 17 Apr 2020 03:28:31 GMT):
don't see anything which should affect us (except that we have to bump go to 1.14_.1_ ;-). Raises the question, though, also whether we should upgrade to 2.1 as part of concept-release 2.0.1?)

msteiner (Fri, 17 Apr 2020 03:29:41 GMT):
@MHBauer @jordy24 fyi: some notes (as thread) on concept release

msteiner (Fri, 17 Apr 2020 03:30:11 GMT):
With the modification in the dev and peer Dockerfile Jordan showed this morning, `concept-release` does properly build on "native" ubuntu (and as part of the build also successfully runs the demo docker-compose network and the demo backend, i.e., fabric-gateway1).

msteiner (Fri, 17 Apr 2020 03:30:33 GMT):
However, there are some twists when you run it inside the dev container: The easy hurdles are that you will have to manually apt install the packages `psmisc` (some scripts use `killall`) and `docker-compose` (not by default installed but obviously needed). The more tricky one is that there are some scripts (build of fpc cc via cc-builder, run of frontend) which do call docker with volume mounts. However, as the docker daemon runs _outside_ of the dev components, the daemon looks for the paths at the wrong place, on the outside and not in the dev container!!! Iff you have the same outside paths like inside, i.e., fpc in `/project/src/github.com/hyperledger-labs/fabric-private-chaincode`) then it might work (but in a hacky way). Given that this code was done by Shweta and afaik she did use the dev container i wonder how exactly she had setup the container. Makes me also guess that @bur probably never run the demo with the real fabric network ;-)

msteiner (Fri, 17 Apr 2020 03:30:55 GMT):
The hacky solution seems to be to create a symlink outside from your GOPATH to /project. However, for jordan, though, i still suggest you look to get a Linux box or a VMM, e.g., VirtualBox, on your mac and install an ubuntu VM...

MHBauer (Fri, 17 Apr 2020 03:38:34 GMT):
20.04 is out?

MHBauer (Fri, 17 Apr 2020 03:39:15 GMT):
Upgrade sure. Heck, upgrade to the mobile version.

MHBauer (Fri, 17 Apr 2020 03:39:20 GMT):
🤣

msteiner (Fri, 17 Apr 2020 03:39:36 GMT):
"almost". i was testing with 20.04 final beta. Don't expect much to change until the official release

MHBauer (Fri, 17 Apr 2020 03:39:36 GMT):
Wow, these threads are awful on mobile.

MHBauer (Fri, 17 Apr 2020 03:40:54 GMT):
I would go back and check how long previous releases of Ubuntu took to become supported

msteiner (Fri, 17 Apr 2020 03:40:55 GMT):
well, if hyperledger would switch from rocketchat to something better like slack ... ;-)

MHBauer (Fri, 17 Apr 2020 03:41:06 GMT):
And definitely would not hold anything up for it

MHBauer (Fri, 17 Apr 2020 03:41:25 GMT):
Blech, riot baby.

MHBauer (Fri, 17 Apr 2020 03:41:35 GMT):
I should set up a server for us.

MHBauer (Fri, 17 Apr 2020 03:42:02 GMT):
Bare metal with sgx enabled!

msteiner (Fri, 17 Apr 2020 03:42:27 GMT):
the test was more to see whether we might get away with only one protobuf version on 20.04. Clearly that didn't work out. So for now i definitely would table the 20.04, just was updating what i figured out since what what we talked about it in the morning on the call ...

MHBauer (Fri, 17 Apr 2020 03:43:43 GMT):
I see. I'm not entirely sure if the differences. ABI changes? Header files?

MHBauer (Fri, 17 Apr 2020 03:44:06 GMT):
Seems like protos should be protos

bur (Fri, 17 Apr 2020 12:15:16 GMT):
let's upgrade whenever possible :)

bur (Fri, 17 Apr 2020 12:16:30 GMT):
haha! Hyperledger had slack before ...but only the free version ...

bur (Fri, 17 Apr 2020 12:18:59 GMT):
let me share my config.override.mk here ``` ➜ fabric-private-chaincode git:(enable-tlcc) ✗ cat config.override.mk SGX_MODE=SIM SGX_BUILD=DEBUG DOCKER_DEV_IMAGE_APT_ADD__PKGS="tmux psmisc" ```

MHBauer (Fri, 17 Apr 2020 13:26:24 GMT):
so, is 332 primarily focused on the gateway https://github.com/hyperledger-labs/fabric-private-chaincode/tree/concept-release/demo/client/backend/fabric-gateway ? I see what I expect in terms of config stuff with https://github.com/hyperledger-labs/fabric-private-chaincode/blob/concept-release/demo/client/backend/fabric-gateway/src/fabricClient.js, and serving the API defined in https://github.com/hyperledger-labs/fabric-private-chaincode/blob/concept-release/demo/client/backend/fabric-gateway/src/server.js @jordy24 @bur https://github.com/hyperledger-labs/fabric-private-chaincode/issues/332

MHBauer (Fri, 17 Apr 2020 14:01:05 GMT):
why add pmisc permanently then?

bur (Fri, 17 Apr 2020 14:02:30 GMT):
we could ... :) that would close https://github.com/hyperledger-labs/fabric-private-chaincode/issues/314

bur (Fri, 17 Apr 2020 14:17:18 GMT):
yes - the goal of 332 is to create a go-based gateway providing the same functionality as fabric-gateway already offers and the success critiria is to make it running with the demo :)

MHBauer (Fri, 17 Apr 2020 14:18:32 GMT):
okay, doesn't look too bad, but I haven't looked carefully at the API being served

bur (Fri, 17 Apr 2020 14:19:18 GMT):
have a look into the mock server

bur (Fri, 17 Apr 2020 14:19:37 GMT):
maybe this can be used as basis

bur (Fri, 17 Apr 2020 14:20:47 GMT):
https://github.com/hyperledger-labs/fabric-private-chaincode/tree/concept-release/demo/client/backend/mock

bur (Fri, 17 Apr 2020 14:22:11 GMT):
I guess 332 is take the mock server; remove the chaincode mock stub and replace it with go client sdk

bur (Fri, 17 Apr 2020 14:23:03 GMT):
ideally this can be structured in a way that we can easily extend the sdk layer with FPC specific logic such as encrypttion

MHBauer (Fri, 17 Apr 2020 14:27:12 GMT):
hmn, now I'm a bit lost

bur (Fri, 17 Apr 2020 14:27:33 GMT):
ah ok

bur (Fri, 17 Apr 2020 14:28:54 GMT):
fabric-gateway: bridges demo UI and fabric; by providing a web API and uses the nodejs fabric sdk to talk to a peer/chaincode

MHBauer (Fri, 17 Apr 2020 14:29:08 GMT):
ok

MHBauer (Fri, 17 Apr 2020 14:29:16 GMT):
and now the mock?

bur (Fri, 17 Apr 2020 14:29:20 GMT):
mock: bridges demo UI and a chaincode (without running a real peer)

MHBauer (Fri, 17 Apr 2020 14:30:28 GMT):
okay, so what's the suggestion to do from 332? mock or gateway?

bur (Fri, 17 Apr 2020 14:31:46 GMT):
I suggested to look into the mock and see what can be reused to create the fabric-gateway-go

bur (Fri, 17 Apr 2020 14:32:42 GMT):
in partcular, the web api exposed by the mock and gateway are the same

MHBauer (Fri, 17 Apr 2020 14:34:22 GMT):
oh, I see, got it,

MHBauer (Fri, 17 Apr 2020 14:34:44 GMT):
yes, if they serve the same, you could probably swap out a backend if it's well factored.

bur (Fri, 17 Apr 2020 14:36:06 GMT):
In Phoenix we also discussed if we could make the mock server a bit more generic and also use it somewhere else for easy fpc chaincode testing ...

bur (Fri, 17 Apr 2020 14:36:38 GMT):
it's nice to debug a fpc chaincode by running it without the need to setup a real network/peer

bur (Fri, 17 Apr 2020 14:37:41 GMT):
this is not part of 332 but with this in mind we would have a nice tool to test fpc chaincodes :D

MHBauer (Fri, 17 Apr 2020 14:48:44 GMT):
aahhhh, I have to read javascript

bur (Fri, 17 Apr 2020 14:50:17 GMT):
:)

MHBauer (Fri, 17 Apr 2020 14:51:34 GMT):
berak for :coffee:

bur (Fri, 17 Apr 2020 14:53:19 GMT):
haha ... I am already thinking about early dinner

MHBauer (Fri, 17 Apr 2020 14:57:35 GMT):
no coffee with dinner

MHBauer (Fri, 17 Apr 2020 14:57:44 GMT):
maybe after if you have to drive home

MHBauer (Fri, 17 Apr 2020 14:57:56 GMT):
but you do you.

msteiner (Fri, 17 Apr 2020 17:30:55 GMT):
ah!

msteiner (Fri, 17 Apr 2020 17:31:14 GMT):
if add psmisc, we might as well also add docker-compose?

msteiner (Fri, 17 Apr 2020 17:32:20 GMT):
except that of course some docker(-compose) parts don't (easily) work in dev-container: any thoughts on this @bur given that you are a long-term dev container user ...

msteiner (Fri, 17 Apr 2020 17:32:20 GMT):
except that of course some docker(-compose) parts don't (easily) work in dev-container: any thoughts on this, i.e., whether and how dev container should be considered a "full development environment", @bur given that you are a long-term dev container user ...

msteiner (Fri, 17 Apr 2020 17:37:14 GMT):
it's not only mock server but also fabric-gateway which could bring value to overall fabric when stripped/refactored of auction-specific parts, see https://github.com/hyperledger-labs/fabric-private-chaincode/issues/199

MHBauer (Fri, 17 Apr 2020 18:18:14 GMT):
323 looks close. I Have to pop out for lunch soon.

bur (Fri, 17 Apr 2020 18:21:12 GMT):
will do the rebase/squash now

bur (Fri, 17 Apr 2020 18:54:49 GMT):
one more approval and ready to merge! :D

bur (Fri, 17 Apr 2020 19:30:53 GMT):
uuuhh there it is :D

MHBauer (Fri, 17 Apr 2020 21:07:13 GMT):
oka;.. back

MHBauer (Fri, 17 Apr 2020 22:05:55 GMT):
:ok_hand:

msteiner (Sat, 18 Apr 2020 02:45:40 GMT):
btw: above i missed one thing necessary, even outside of the dev container: we _need_ a branch instead of a tag, or the peer container attempts to build with the wrong state (essentially master, even though reading from the local .git repo as the `git rev-parse --abbrev-ref HEAD` does not work. probably would be better to replace with `git rev-parse HEAD` and checkout commit, rather than branch ...)

MHBauer (Sat, 18 Apr 2020 21:12:33 GMT):
@msteiner I realized now I was conflating building a patched fabric with fabric as a dependency for plugin purposes. They still probably need to match until everything is the same modules version, but it has not strictly related. Good catch.

NewAlexandria (Sun, 19 Apr 2020 02:16:12 GMT):
Has joined the channel.

MHBauer (Mon, 20 Apr 2020 19:54:44 GMT):
@msteiner @jordy24 this thread?

bur (Mon, 20 Apr 2020 19:55:10 GMT):
yes this one

bur (Mon, 20 Apr 2020 19:57:44 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=wcZuTrsCdS452ZLet) @jordy24 I believe that this comment by @msteiner may help you to resolve the docker-related issue you asked me about today.

msteiner (Mon, 20 Apr 2020 20:03:58 GMT):
note the thread though included even more info ...

bur (Mon, 20 Apr 2020 20:06:19 GMT):
ack

bur (Mon, 20 Apr 2020 20:10:41 GMT):
I vote for adding psmisc, docker-compose, and tmux! :D

bur (Mon, 20 Apr 2020 20:15:57 GMT):
@msteiner I think the dev image is nice do build fpc components but I think it gets messy when we start other docker container from that dev environment

bur (Mon, 20 Apr 2020 20:17:50 GMT):
building the demo docker images from inside dev should be possible right? but then running it from the outside is probanbluy what @swetha did - but not sure

MHBauer (Mon, 20 Apr 2020 20:18:06 GMT):
omg, where is this discussion?

MHBauer (Mon, 20 Apr 2020 20:18:12 GMT):
I'm getting a notification, but I can't find it.

msteiner (Mon, 20 Apr 2020 20:20:27 GMT):
@MHBauer i think we should only pkg which are necessary, so definitely psmisc, maybe docker-compose (depending on whether we wan to cover the full set of tests/demos in dev). Tmux is definitely nice, but i think that should be handled via 'DOCKER_DEV_IMAGE_APT_ADD__PKGS' in your config.override.mk as this really gets quickly into personal preferences (i also like tmux but others like screen). in addition you might want also others, e.g., i have the following `DOCKER_DEV_IMAGE_APT_ADD__PKGS='git-extras vim gdb net-tools strace ltrace telnet net-tools vim dnsutils ed valgrind'`

MHBauer (Mon, 20 Apr 2020 20:21:03 GMT):
found you

msteiner (Mon, 20 Apr 2020 20:21:28 GMT):
@bur. you definitely can build from inside; you can even run from inside, just to get volume mapping working you have to same address space outside as inside (e.g., the symlink i've mentioned)

MHBauer (Mon, 20 Apr 2020 20:21:49 GMT):
ah, of course, a config.mk customization.

MHBauer (Mon, 20 Apr 2020 20:22:07 GMT):
I can gree to that, of course I forget it's existence first.

swetha (Mon, 20 Apr 2020 20:22:44 GMT):
Sorry, didn't follow the whole discussion. What was the question?

MHBauer (Mon, 20 Apr 2020 20:22:44 GMT):
I get curious, is makefiles everywhere an intel-ism, or something else in history that has determined this outcome? research?

swetha (Mon, 20 Apr 2020 20:23:26 GMT):
I used to build my peer images outside of my container

swetha (Mon, 20 Apr 2020 20:24:05 GMT):
And i ran everything outside of the dev container as well

swetha (Mon, 20 Apr 2020 20:25:25 GMT):
I only used the dev container when i needed to run the mock backend, which is why that was always a little trickier for me than running a real fabric network. I had to make sure i exposed the right ports, and volume mount the right files

swetha (Mon, 20 Apr 2020 20:25:51 GMT):
No longer have that laptop, so I am basing this off of memory, but unfortunately no way to check exactly what I did anymore

msteiner (Mon, 20 Apr 2020 20:26:32 GMT):
ah, so your pattern was to use dev container only for testing directly executing binary/writing go-code and alike but then did any docker compose stuff outside. But so you never could have done a 'make clean all' or alike but must have done much more selective commands?

swetha (Mon, 20 Apr 2020 20:28:24 GMT):
Usually didn't need to run make clean all because my environment was always fresh

swetha (Mon, 20 Apr 2020 20:28:44 GMT):
But i did run it enough times when integrating things

swetha (Mon, 20 Apr 2020 20:29:02 GMT):
Especially when we were adding the cleanup targets

swetha (Mon, 20 Apr 2020 20:29:17 GMT):
Otherwise yes I would clean and build only what i needed

swetha (Mon, 20 Apr 2020 20:29:24 GMT):
I didn't maintain a long term container

MHBauer (Mon, 20 Apr 2020 20:29:40 GMT):
kind of an oxymoron that one,

swetha (Mon, 20 Apr 2020 20:34:28 GMT):
I could see some people trying to maintain that container. Otherwise each change is difficult to test with how much setup was needed

bur (Mon, 20 Apr 2020 21:15:48 GMT):
thanks @swetha for this clarification! helps alot!

msteiner (Tue, 21 Apr 2020 01:11:19 GMT):
might be more correlated with age than intel, at least for me ;-) When i started, make was the only reasonable and general thing....

msteiner (Tue, 21 Apr 2020 01:11:19 GMT):
@MHBauer regarding your question on makefiles everywhere: might be more correlated with age than intel, at least for me ;-) When i started, make was the only reasonable and general thing (and that time wastly predates my time at Intel, even the 1.5 decades before at IBM ....)

MHBauer (Tue, 21 Apr 2020 14:54:46 GMT):
`die: command not found`

MHBauer (Tue, 21 Apr 2020 14:55:03 GMT):
where is that defined?

msteiner (Tue, 21 Apr 2020 15:49:02 GMT):
there is a function in `fabric/bin/lib/common_utils.sh`. but i suspect you run into the problem i mentioned in "my" thread that you need a branch on tag concept release or some docker images are based on the wrong code

MHBauer (Tue, 21 Apr 2020 17:20:53 GMT):
urgh, changes during the review.

msteiner (Tue, 21 Apr 2020 17:54:25 GMT):
well, at least it is a fixup commit, so you see the update (which tries to address marcus comments). but if you have any suggestion to more closely synchronize reviewing and updating of PRs to address prior comments, i'm all year.

MHBauer (Tue, 21 Apr 2020 18:52:10 GMT):
confused by this error on building

MHBauer (Tue, 21 Apr 2020 18:52:20 GMT):
``` /usr/bin/c++ -DENCLAVE_CODE -Denclave_EXPORTS -I/home/mhb/src/fabric-private-chaincode/examples/auction -I/home/mhb/src/fabric-private-chaincode/ecc_enclave/enclave/../../common -I/home/mhb/src/fabric-private-chaincode/ecc_enclave/enclave/../../common/json -I/home/mhb/src/fabric-private-chaincode/ecc_enclave/enclave/../../ecc_enclave/enclave -I/opt/intel/sgxsdk/include -I/opt/intel/sgxsdk/include/tlibc -I/opt/intel/sgxsdk/include/libcxx -m64 -O2 -nostdinc -fno-builtin -fvisibility=hidden -fpie -fstack-protector -std=c++11 -nostdinc++ -fPIC -o CMakeFiles/enclave.dir/auction_cc.cpp.o -c /home/mhb/src/fabric-private-chaincode/examples/auction/auction_cc.cpp In file included from /home/mhb/src/fabric-private-chaincode/examples/auction/auction_cc.cpp:7:0: /home/mhb/src/fabric-private-chaincode/examples/auction/auction_cc.h:9:10: fatal error: string: No such file or directory #include ```

MHBauer (Tue, 21 Apr 2020 18:52:38 GMT):
seems accurate that it wouldn't be found with the stdincludes turned off.

MHBauer (Tue, 21 Apr 2020 18:52:39 GMT):
oh

MHBauer (Tue, 21 Apr 2020 18:52:43 GMT):
opt/intel ?

msteiner (Tue, 21 Apr 2020 19:44:29 GMT):
can't remember having seen that problem. Which version of FPC? is that master in attempt of doing no-GOPATH build (given the path to your fpc repo)?

MHBauer (Tue, 21 Apr 2020 19:45:43 GMT):
I didn't install sgx to opt/intel

MHBauer (Tue, 21 Apr 2020 19:45:56 GMT):
cause that isn't mentioned in the official install.

MHBauer (Tue, 21 Apr 2020 19:46:07 GMT):
which is another reason to use the container builds

msteiner (Tue, 21 Apr 2020 19:46:21 GMT):
what do you mean it's not mentioned?

MHBauer (Tue, 21 Apr 2020 19:47:48 GMT):
could be setting the env-vars fixes it

msteiner (Tue, 21 Apr 2020 19:47:53 GMT):
interesting, though, that absence of /opt/intel/sgxsdk gives you this error

MHBauer (Tue, 21 Apr 2020 19:48:18 GMT):
I'm assuming it has it's own stdlib or equivalentt replacements included

MHBauer (Tue, 21 Apr 2020 19:48:40 GMT):
probably I/opt/intel/sgxsdk/include/tlibc -I/opt/intel/sgxsdk/include/libcxx

msteiner (Tue, 21 Apr 2020 19:49:21 GMT):
yep ```find /opt/intel/sgxsdk/ -name '*string*' /opt/intel/sgxsdk/include/tlibc/string.h /opt/intel/sgxsdk/include/libcxx/string /opt/intel/sgxsdk/include/libcxx/__refstring /opt/intel/sgxsdk/include/libcxx/experimental/string /opt/intel/sgxsdk/include/libcxx/experimental/string_view /opt/intel/sgxsdk/include/libcxx/cstring ```

MHBauer (Tue, 21 Apr 2020 19:58:53 GMT):
dang I'm good.

MHBauer (Tue, 21 Apr 2020 19:59:12 GMT):
can't find my drink tho, where did my water go

BrunoVavala (Tue, 21 Apr 2020 20:49:51 GMT):
you don't have to install the sgx sdk necessarily in `/opt ...`. That prefix comes from the `SGX_SDK` environment variable, which is set by source-ing the `environment` file in the sgx sdk folder.

MHBauer (Tue, 21 Apr 2020 20:52:09 GMT):
exactly so.

msteiner (Tue, 21 Apr 2020 20:52:22 GMT):
@MHBauer do you know by chance what has happened with dev mode in fabric v2.0? Corresponding docu page disappeared ...

MHBauer (Tue, 21 Apr 2020 20:54:27 GMT):
dev mode?

MHBauer (Tue, 21 Apr 2020 20:55:36 GMT):
I see https://hyperledger-fabric.readthedocs.io/en/release-2.0/prereqs.html as about usual to me.

MHBauer (Tue, 21 Apr 2020 20:55:55 GMT):
but being fabric everything is spread out over 17 pages.

msteiner (Tue, 21 Apr 2020 20:59:34 GMT):
https://hyperledger-fabric.readthedocs.io/en/release-1.4/peer-chaincode-devmode.html

msteiner (Tue, 21 Apr 2020 21:00:56 GMT):
i wanted to to debug the sgx problem with gdb but then discovered the docu was not there anymore. with external builder in fpc you have right away chaincode in host, so you can attach gdb/sgx_gdb to a running chaincode. So slightly less of an issue. But still would have been nice to start via gdb ..

msteiner (Tue, 21 Apr 2020 21:01:30 GMT):
https://hyperledger-fabric.readthedocs.io/en/release-1.4/peer-chaincode-devmode.html

MHBauer (Tue, 21 Apr 2020 21:01:40 GMT):
Ah, I see.

MHBauer (Tue, 21 Apr 2020 21:01:42 GMT):
I recall that now.

MHBauer (Tue, 21 Apr 2020 21:06:03 GMT):
replaced by https://hyperledger-fabric.readthedocs.io/en/release-2.0/chaincode4ade.html

MHBauer (Tue, 21 Apr 2020 21:06:24 GMT):
according to https://jira.hyperledger.org/browse/FAB-15715 anyway.

MHBauer (Tue, 21 Apr 2020 21:07:39 GMT):
not sure I entirely agree

MHBauer (Tue, 21 Apr 2020 21:08:55 GMT):
doesn't even mention the `--peer-chaincodedev` flag

msteiner (Tue, 21 Apr 2020 22:05:25 GMT):
yep, i also saw that link referenced but it doesn't really cover about dev mode as in the old doc

MHBauer (Tue, 21 Apr 2020 22:42:21 GMT):
you should file an issue

MHBauer (Thu, 23 Apr 2020 17:26:29 GMT):
@msteiner definitely doesn't seem like the gateway is running. https://github.com/hyperledger-labs/fabric-private-chaincode/issues/332

MHBauer (Thu, 23 Apr 2020 17:26:52 GMT):
or if it is, it is not relevant to the tests passing in CI

msteiner (Thu, 23 Apr 2020 18:08:13 GMT):
not sure why you say that: scenario-run triggered by make target test will trigger demo/scripts/startFPCAuctionNetwork.sh which in turn starts the fabric-gateway (as auction_client service in docker-compose.yaml). Note though all of that is run in some docker, not directly on your host ...

MHBauer (Thu, 23 Apr 2020 18:08:41 GMT):
so then there is no test that checks?

msteiner (Thu, 23 Apr 2020 18:09:07 GMT):
checks what?

msteiner (Thu, 23 Apr 2020 18:09:28 GMT):
it does check that the auction scenario successfully completed ...

MHBauer (Thu, 23 Apr 2020 18:09:29 GMT):
that the image runs and does what it needs to do?

MHBauer (Thu, 23 Apr 2020 18:09:32 GMT):
https://travis-ci.org/github/MHBauer/fabric-private-chaincode/builds/678682326

msteiner (Thu, 23 Apr 2020 18:09:39 GMT):
so fabric-gateway must have run in some form

MHBauer (Thu, 23 Apr 2020 18:09:52 GMT):
this *has NO implementation*

MHBauer (Thu, 23 Apr 2020 18:10:05 GMT):
but still it passed.

msteiner (Thu, 23 Apr 2020 18:56:19 GMT):
due to some outlook issue i only saw now your github comments. But why do you use travis to test that? Just run 'make' from top-level on your own machine and it should be all exercised? Also easiest way to manually checking on how and whether it works?

MHBauer (Thu, 23 Apr 2020 19:24:04 GMT):
running it locally or on travis is not relevant.

MHBauer (Thu, 23 Apr 2020 19:24:22 GMT):
it should do the same in both places, and it should not pass without an implementation.

MHBauer (Thu, 23 Apr 2020 19:24:34 GMT):
so it cannot be being run or being tested.

msteiner (Thu, 23 Apr 2020 19:27:53 GMT):
I am absolute sure it `make` runs fabric-gateway on concept-release, just confirmed from my make log-file.

MHBauer (Thu, 23 Apr 2020 19:28:03 GMT):
what's that look like?

msteiner (Thu, 23 Apr 2020 19:28:43 GMT):
well, i see auction_frontend built, auction_frontend started and then see the scenario script do all it's action which doesn't work if there is now auction_frontend

MHBauer (Thu, 23 Apr 2020 19:28:50 GMT):
and `concept-release` is before we started making changes?

MHBauer (Thu, 23 Apr 2020 19:28:56 GMT):
annd a tag?

msteiner (Thu, 23 Apr 2020 19:29:19 GMT):
this is concept-release with only changes as outlined last week. I.e., _no_ code change

MHBauer (Thu, 23 Apr 2020 19:29:27 GMT):
so youdevelop agianst that tag and then push to master?

msteiner (Thu, 23 Apr 2020 19:30:21 GMT):
well, i will eventually push this against a new concept-release-1.0 branch

msteiner (Thu, 23 Apr 2020 19:30:40 GMT):
but as you talked this morning already about changing code, i assumed you got it already working in the original version

MHBauer (Thu, 23 Apr 2020 19:31:13 GMT):
not sure what we mean original version.

msteiner (Thu, 23 Apr 2020 19:33:30 GMT):
the version tagged concept-release

MHBauer (Thu, 23 Apr 2020 19:33:45 GMT):
okay, I can rebase against that and watch it

msteiner (Thu, 23 Apr 2020 19:34:01 GMT):
(with no code change, only change of Dockerfile and branch on that tag so 'make' works)

msteiner (Thu, 23 Apr 2020 19:34:15 GMT):
why rebase?

MHBauer (Thu, 23 Apr 2020 19:34:32 GMT):
the particular change set

msteiner (Thu, 23 Apr 2020 19:34:41 GMT):
i have the feeling you have other changes which seem to bypass scenario-run

msteiner (Thu, 23 Apr 2020 19:35:07 GMT):
what happens in your version if you run manually 'make test' in `demo/client/scripting`

msteiner (Thu, 23 Apr 2020 19:36:23 GMT):
as fabric gateway runs in docker, could also be that for whatever reason your docker image with the fabric-gateway in it doesn't contain your changes.

MHBauer (Thu, 23 Apr 2020 19:38:10 GMT):
funny looking, ``` ```

MHBauer (Thu, 23 Apr 2020 19:38:10 GMT):
funny looking, ``` ./scenario-run.sh --bootstrap --non-interactive ../../scenario/script env: ‘NO’: No such file or directory env: ‘NO’: No such file or directory ```

msteiner (Thu, 23 Apr 2020 19:38:49 GMT):
in any case, i think it would be good that you can run that test _without_ your changeset to understand what the test does and how it does it. Then it will be easier to figure out why it doesn't work after your changes ...

msteiner (Thu, 23 Apr 2020 19:42:24 GMT):
might be something wrong with your environment. run with `bash -vx` prefixed probably should tell you more

msteiner (Thu, 23 Apr 2020 19:44:11 GMT):
do you have any paths with spaces?

MHBauer (Thu, 23 Apr 2020 19:44:23 GMT):
oooh, probably

msteiner (Thu, 23 Apr 2020 19:44:27 GMT):
actually, what is your SGX_MODE

MHBauer (Thu, 23 Apr 2020 19:44:28 GMT):
that was an issue before.

msteiner (Thu, 23 Apr 2020 19:44:52 GMT):
nope, i think i know the issue

MHBauer (Thu, 23 Apr 2020 19:45:15 GMT):
could be unset in this terminal, Iswitch around a lot

msteiner (Thu, 23 Apr 2020 19:45:18 GMT):
you run on a machine without sgx but your SGX_MODE is (probably implicitly, as it is the default) defined as HW

msteiner (Thu, 23 Apr 2020 19:46:06 GMT):
in that case utils/docker-compose/scripts/lib/common.sh on line 59 the scripts are looking but cannot find the sgx device

msteiner (Thu, 23 Apr 2020 19:46:33 GMT):
i think the "NO" you see is from the "ERROR: NO SGX DEVICE FOUND"

MHBauer (Thu, 23 Apr 2020 19:46:37 GMT):
lol

msteiner (Thu, 23 Apr 2020 19:48:23 GMT):
i'm surprised though that above was all the error you got. in general with 'try' it should on error also return the whole command which failed which should make it somewhat obvious

msteiner (Thu, 23 Apr 2020 19:50:07 GMT):
ah, i see: Swetha didn't use fabric/bin/lib/common_utils.sh, e.g., try, for demo/scripts/startFPCAuctionNetwork.sh. so you didn't get the failing command (same is true also in ../../../utils/docker-compose/scripts/start.sh)

MHBauer (Thu, 23 Apr 2020 19:57:00 GMT):
I'll try next. back on concept releaseto see what that does.

MHBauer (Thu, 23 Apr 2020 19:58:30 GMT):
hmn, server unhappy with it at ``` Step 31/32 : RUN cd $FABRIC_PATH && git config user.email "FPC" && git am $FPC_PATH/fabric/*patch && git config --unset user.email && GO_TAGS=pluginsenabled make peer orderer cryptogen configtxgen ---> Running in e0888b2304ec Applying: Integrate tlcc syscc Patch failed at 0001 Integrate tlcc syscc Use 'git am --show-current-patch' to see the failed patch error: internal/peer/node/start.go: does not exist in index The command '/bin/sh -c cd $FABRIC_PATH && git config user.email "FPC" && git am $FPC_PATH/fabric/*patch && git config --unset user.email && GO_TAGS=pluginsenabled make peer orderer cryptogen configtxgen' returned a non-zero code: 128 Makefile:100: recipe for target 'dev' failed ```

msteiner (Thu, 23 Apr 2020 20:01:47 GMT):
you did apply the changes to the two dockerfiles and created a branch? (i.e., what i listed last week in the concep-release thread on rocket-chat?)

MHBauer (Thu, 23 Apr 2020 20:02:36 GMT):
no, I probably missed it.

MHBauer (Thu, 23 Apr 2020 20:03:06 GMT):
really need to automate it and make a new tag/branch/release if these changes are required.

msteiner (Thu, 23 Apr 2020 20:03:49 GMT):
you didn't miss it, you actually replied on that thread. We actually discussed this thread and that you actually replied also earlier ...

msteiner (Thu, 23 Apr 2020 20:03:49 GMT):
you didn't miss it, you actually replied on that thread. We actually discussed this thread and that you actually replied also earlier this week (when this thread also came up on some slack discussion) ...

MHBauer (Thu, 23 Apr 2020 20:16:02 GMT):
I see this, but not the actual changes? What's the modification?

msteiner (Thu, 23 Apr 2020 20:18:09 GMT):
i think the diff was on the original thread but find it also here ``` diff --git a/utils/docker/dev/Dockerfile b/utils/docker/dev/Dockerfile index 167ecc1..10d0538 100644 --- a/utils/docker/dev/Dockerfile +++ b/utils/docker/dev/Dockerfile @@ -10,7 +10,7 @@ ARG NANOPB_VERSION=0.3.9.2 ARG FABRIC_REPO=https://github.com/hyperledger/fabric.git ARG FABRIC_VERSION=v1.4.3 ARG FPC_REPO_URL=https://github.com/hyperledger-labs/fabric-private-chaincode.git -ARG FPC_REPO_BRANCH=master +ARG FPC_REPO_BRANCH=concept-release ARG OPENSSL_VERSION=1.1.0j ARG SGXSSL_VERSION=v2.4.1 diff --git a/utils/docker/peer/Dockerfile b/utils/docker/peer/Dockerfile index 28104cd..7470ce3 100644 --- a/utils/docker/peer/Dockerfile +++ b/utils/docker/peer/Dockerfile @@ -10,7 +10,7 @@ ARG NANOPB_VERSION=0.3.9.2 ARG FABRIC_REPO=https://github.com/hyperledger/fabric.git ARG FABRIC_VERSION=v1.4.3 ARG FPC_REPO_URL=https://github.com/hyperledger-labs/fabric-private-chaincode.git -ARG FPC_REPO_BRANCH=master +ARG FPC_REPO_BRANCH=concept-release ARG OPENSSL_VERSION=1.1.0j ARG SGXSSL_VERSION=v2.4.1 ARG SGX_MODE=SIM ```

msteiner (Thu, 23 Apr 2020 20:18:41 GMT):
as mentioned above (and in the original thread ;-) you also have to create a branch on the tag (but that you might have now anyway)

msteiner (Thu, 23 Apr 2020 20:19:19 GMT):
i think that was it if you run it directly on the host. if you would have wanted it run in the dev container there were a few additional things

MHBauer (Thu, 23 Apr 2020 20:21:07 GMT):
Ah, I recall this. Very difficult conundrum.

MHBauer (Thu, 23 Apr 2020 20:22:23 GMT):
well maybe a different thing that what I remember.

MHBauer (Thu, 23 Apr 2020 20:22:30 GMT):
too complicated.

MHBauer (Thu, 23 Apr 2020 20:28:56 GMT):
only defined as input for peer, and not for dev.

MHBauer (Thu, 23 Apr 2020 20:29:16 GMT):
that ought to cause a warning.

bur (Thu, 23 Apr 2020 20:30:20 GMT):
@MHBauer ```Applying: Integrate tlcc syscc Patch failed at 0001 Integrate tlcc syscc ``` tells me that you try to apply a patch we pushed recently after the concept release

MHBauer (Thu, 23 Apr 2020 20:31:03 GMT):
Yea, I think that's that @msteiner was poiinting at, it's pulling 'master' even tho that's way in the future.

bur (Thu, 23 Apr 2020 20:31:04 GMT):
once you checked out concept-release make sure there are no untracked files

bur (Thu, 23 Apr 2020 20:31:10 GMT):
aha

bur (Thu, 23 Apr 2020 20:31:26 GMT):
sorry

MHBauer (Thu, 23 Apr 2020 20:31:36 GMT):
bat at some point, should make sure everything works out the box, without changes.

MHBauer (Thu, 23 Apr 2020 20:31:44 GMT):
otherwise nobody will try.

bur (Thu, 23 Apr 2020 20:31:48 GMT):
+!

bur (Thu, 23 Apr 2020 20:31:50 GMT):
+1

MHBauer (Thu, 23 Apr 2020 20:32:07 GMT):
and go to sleep.

MHBauer (Thu, 23 Apr 2020 20:32:16 GMT):
or have dinner, or something.

MHBauer (Thu, 23 Apr 2020 20:32:19 GMT):
:-D

bur (Thu, 23 Apr 2020 20:32:36 GMT):
:)

bur (Thu, 23 Apr 2020 20:32:44 GMT):
:woo:

bur (Thu, 23 Apr 2020 20:33:01 GMT):
just came back from kitchen :D

msteiner (Thu, 23 Apr 2020 20:33:59 GMT):
that's why you need two changes: explicitly mention concept release branch in dev and peer dockerfile and also need the branch. Actually, you probably can leave the peer dockerfile unmodifed, the makefile tries to devine the branch but that also works only on branches, not tags (as discussed also earlier week in some threads)

msteiner (Thu, 23 Apr 2020 20:54:42 GMT):
regarding working out of the box, i am working on a PR but as we also talked about versioning images and other stuff it's not just 2 min PR. that's why i was posting all my findings last week so you could replicate that manually for now and look at demo and gateway ....

MHBauer (Thu, 23 Apr 2020 20:55:51 GMT):
yea, I can see why it isn't a quick fix.

MHBauer (Thu, 23 Apr 2020 20:56:29 GMT):
lol, 503 to get the avatar.

MHBauer (Thu, 23 Apr 2020 20:57:16 GMT):
I give for now, but we'll have to talk next week.

msteiner (Thu, 23 Apr 2020 23:12:42 GMT):
as you mention that. Given that we anyway need a branch and obsolete current concept-release tag, we might as well bump the concept-release-1.0 branch to commit 82d600660d254a9013f5b5924f7bcbfe3d65e750

msteiner (Thu, 23 Apr 2020 23:13:52 GMT):
that commit does make avatars more robust (and is actually the last one before we started with re-org to fabric v2.0

msteiner (Thu, 23 Apr 2020 23:14:38 GMT):
swetha might have mixed feelings, though: she would get dropped as maintainer from concept-release :-)

swetha (Fri, 24 Apr 2020 18:45:47 GMT):
😂

MHBauer (Mon, 27 Apr 2020 19:54:53 GMT):
I think we're waiting for this to be finished: https://jira.hyperledger.org/browse/FABG-928 specifically: https://jira.hyperledger.org/browse/FABG-935

MHBauer (Mon, 27 Apr 2020 20:06:42 GMT):
short version being, node-gateway is it for now.

msteiner (Mon, 27 Apr 2020 20:29:39 GMT):
note the original idea was to add it to concept release (1.0) first, so that would still be the v1.4 programming model. As we got to v2.0, there is actually also a programming model/API change for the node sdk (see the corresponding reference to fabric-network in https://github.com/hyperledger-labs/fabric-private-chaincode/issues/165 )

MHBauer (Mon, 27 Apr 2020 21:12:45 GMT):
I see in `concept-release` use of wallet and gateway, which are 1.4 features, so I'm not sure what you are trying to say.

MHBauer (Mon, 27 Apr 2020 21:13:09 GMT):
@jordy24

msteiner (Mon, 27 Apr 2020 21:15:18 GMT):
the jira you referenced seem to apply to v2.0, so wouldn't seem relevant to 1.4?

MHBauer (Mon, 27 Apr 2020 21:15:45 GMT):
I mean, they do not exist in the go version as of 2.0, sure

MHBauer (Mon, 27 Apr 2020 21:15:53 GMT):
but they also didn't exist in the go version for 1.4

MHBauer (Mon, 27 Apr 2020 21:16:13 GMT):
they are predicting a fix in the 2.x time frame

MHBauer (Mon, 27 Apr 2020 21:16:20 GMT):
not that it's a 2.x feature

msteiner (Mon, 27 Apr 2020 21:18:08 GMT):
so there was no v1.4 client sdk in go?

msteiner (Mon, 27 Apr 2020 21:18:35 GMT):
(or only a radically different one to the 1.4 node sdk?)

MHBauer (Mon, 27 Apr 2020 21:20:02 GMT):
radically different one

MHBauer (Mon, 27 Apr 2020 21:20:16 GMT):
only supporting the unsupported cryptogen format

MHBauer (Mon, 27 Apr 2020 21:20:50 GMT):
which really kind of makes it a unsupported supported client, doesn't it.

msteiner (Mon, 27 Apr 2020 21:21:27 GMT):
whatever the unsupported cryptogen format is :-)

MHBauer (Mon, 27 Apr 2020 21:21:45 GMT):
it's the output of the cryptogen command which is touted as "not production ready"

msteiner (Mon, 27 Apr 2020 21:22:47 GMT):
production ready is all relative: i'd argue that without BFT-orderer nothing is production ready ;-)

MHBauer (Mon, 27 Apr 2020 21:23:02 GMT):
:rolling_eyes: :rofl:

MHBauer (Mon, 27 Apr 2020 21:27:14 GMT):
is that where @BrunoVavala will focus on becoming a maintainer?

BrunoVavala (Mon, 27 Apr 2020 21:30:00 GMT):
Marko is focusing on that with Mir-BFT https://arxiv.org/pdf/1906.05552.pdf

MHBauer (Mon, 27 Apr 2020 21:36:24 GMT):
nice,

bur (Tue, 28 Apr 2020 15:54:42 GMT):
@MHBauer @jordy24 https://github.com/hyperledger-labs/fabric-private-chaincode/blob/master/docs/design/fabric-v2%2B/fpc-cc-invocation.puml

MHBauer (Tue, 28 Apr 2020 15:55:08 GMT):
thanks, take a look.

bur (Tue, 28 Apr 2020 15:55:41 GMT):
in this diagram User Org1 is implemented by some fabric sdk

bur (Tue, 28 Apr 2020 15:56:35 GMT):
steps like arg encryption we would like to wrap in some kind of fpc layer for the client sdk

bur (Tue, 28 Apr 2020 15:56:43 GMT):
and hide it from the "real" user

MHBauer (Tue, 28 Apr 2020 20:24:18 GMT):
bur@zur, should go by burzur

msteiner (Tue, 28 Apr 2020 20:39:59 GMT):
the diagram doesn't currently distinguish between client the human and client the code it runs. As commented elsewhere, e.g., on bruno's PR regarding registration, i think we should make that distinction. It is certainly not the intention here that the human does the encryption :-)

bur (Tue, 28 Apr 2020 21:15:42 GMT):
tell me ... is a `replace github.com/hyperledger-labs/fabric-private-chaincode/ercc => ./ercc` in `go.mods` a bad thing?

bur (Tue, 28 Apr 2020 22:02:41 GMT):
PR 342 is ready for review. Thanks! https://github.com/hyperledger-labs/fabric-private-chaincode/pull/342

MHBauer (Wed, 29 Apr 2020 19:03:39 GMT):
I think I understand the issue, and I think we can get rid of it.

msteiner (Wed, 29 Apr 2020 19:07:02 GMT):
Can folks give some love to PR #339 and review it? In particular @MHBauer you were playing with concept release tag/branch and so should know the original issues.

msteiner (Wed, 29 Apr 2020 19:07:02 GMT):
Can folks give some love to [PR #339](https://github.com/hyperledger-labs/fabric-private-chaincode/pull/339) and review it? In particular @MHBauer you were playing with concept release tag/branch and so should know the original issues.

MHBauer (Wed, 29 Apr 2020 19:12:04 GMT):
oh, but I forgot ercc is a module itself, so that should be fine.

msteiner (Wed, 29 Apr 2020 19:14:24 GMT):
Note that the changes also will then have to be applied to master and affect work i will have to do on concept release 2.0.1, so i would appreciate if we could resolve this sooner than later. thanks

MHBauer (Wed, 29 Apr 2020 19:35:20 GMT):
something in clean seems to rely on sgx being set up

MHBauer (Wed, 29 Apr 2020 19:35:30 GMT):
so I get `env: ‘NO’: No such file or directory` with `make clobber`.

MHBauer (Wed, 29 Apr 2020 19:37:02 GMT):
and some stuff leftover for me to manually `sudo rm` due to using docker.

msteiner (Wed, 29 Apr 2020 20:48:00 GMT):
this is due to having SGX_MODE=HW defined which your platform presuamably does not support (or at least you haven't installed the PSW and kernel driver). There are two potential changes in mind we could do: (a) change the default of SGX_MODE from HW to SIM and/or (b) make the error message clearer (a quite fix is to replace in the source of the error mesage (line 55 in `utils/docker-compose/scripts/lib/common.sh`) the spaces after the NO with '_' and so the whole intended message is shown.

bur (Thu, 30 Apr 2020 17:52:34 GMT):
changing default to SGX_MODE=SIM would be another useful commit we can cherry pick in the cr1.0.1 release

bur (Thu, 30 Apr 2020 17:53:26 GMT):
also mounting the dev container to the local file sys by default would be helpful;

msteiner (Thu, 30 Apr 2020 18:00:25 GMT):
i added that already to 339, to be forward ported to master ...

msteiner (Thu, 30 Apr 2020 18:03:43 GMT):
regarding volume-mount on run, i actually just realize i'm stupid: the current CR version does _not_ yet do the volume mount on run, so obviously all the symlink hacks wouldn't have worked. So maybe the symlink hack after all _does_ indeed work (as it seemed at some point during testing)

msteiner (Thu, 30 Apr 2020 18:06:02 GMT):
That said, i don't want to wait for another two week to get that PR merged: are you fine if i backport volume-mount patch and fix the re-run issue with docker-container (by removing any already existing (but non-running!) dev docker-container instances)?

msteiner (Mon, 04 May 2020 17:09:29 GMT):
Update on PR #339: call for input and review

msteiner (Mon, 04 May 2020 17:09:29 GMT):
Update on PR [#339](https://github.com/hyperledger-labs/fabric-private-chaincode/pull/339): call for input and review

msteiner (Mon, 04 May 2020 17:11:50 GMT):
I have extended #339 to hopefully give now a a clean foundation for doing all development and testing inside a dev container, addressing hopefully addressing some of Matt's concern (see newly created [issue #348](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/348)

msteiner (Mon, 04 May 2020 17:13:28 GMT):
as i don't have access to a mac, i'd appreciate if @jordy24 could test the PR on a mac

msteiner (Mon, 04 May 2020 17:17:23 GMT):
the PR currently has quite a few commits (28, that is). some of them "pre-existing" and inherited from master (8) and some fixups (10). To make the PR a bit easier to review, i could (a) separate the first 8 pre-existing commits (i.e., advancing the concept-release-1.0 branch to a forking point including the improved avatar handling) which we when could quickly merge and (b) autosquash the fixups (unless you have already carefully looked at the commits, the fixups shouldn't give you much valuable info). Let me know if you would want me to do (a) and/or (b) ...

msteiner (Mon, 04 May 2020 17:23:01 GMT):
@MHBauer as you already had a look at it and also dabbled a bit with concept release and dev container, it would be great if you could have a look. thanks.

msteiner (Mon, 04 May 2020 17:25:24 GMT):
In any case, would be great if folks could review it today as I have to also forward-port it to master and other stuff in master/concept-release-2.0.1 will depend on this.

msteiner (Mon, 04 May 2020 17:29:16 GMT):
btw: even if you read the description of #339 before, you might want to re-read it again as i've updated it greatly ..

jordy24 (Mon, 04 May 2020 18:38:27 GMT):
I have tested PR #339 on mac using the docker dev container and the demo is running fine.... I execute all the scripts found in the demo readme inside the container

MHBauer (Tue, 05 May 2020 15:52:01 GMT):
@msteiner too hard on the search and replace hammer, I think.

MHBauer (Tue, 05 May 2020 15:52:36 GMT):
no, nevermind

MHBauer (Tue, 05 May 2020 15:52:39 GMT):
I'm a dope

MHBauer (Tue, 05 May 2020 15:54:16 GMT):
:ok_hand:

MicBowman (Thu, 07 May 2020 16:13:50 GMT):
@rjagadee i think @hartm will be able to come in and talk at the AWG meeting in two weeks about the problem we discussed of representing a ledger in a "computable" way for the purpose of automating trust

hartm (Thu, 07 May 2020 16:13:50 GMT):
Has joined the channel.

rjagadee (Thu, 07 May 2020 16:13:50 GMT):
Has joined the channel.

msteiner (Thu, 07 May 2020 22:51:54 GMT):
fyi: don't run `make clobber' or more specifically, don't try to rebuild the base image. Seems there is an github failure that various binary release packages, including protobuf, cannot be properly download (seems some "interesting" failure in the redirect from github the aws s3 which results in some xml signature failure andor/401 depending on how you try to access the package)

msteiner (Thu, 07 May 2020 22:57:20 GMT):
is fixed again.....

msteiner (Thu, 07 May 2020 22:57:36 GMT):
(https://github.com/docker/compose/issues/7433)

msteiner (Thu, 14 May 2020 20:45:37 GMT):
Tech Preview: Following today's discussion i took a initial stab on the Tech Preview milestone - i've created a new github milestone [Tech Preview](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/40) with a description which hopefully captures the minimal goal of what it should achieve and some issues which probably should be part of it. Clearly there will also have to be additional issues related to the MVP items so we can also meet the MVP deadline, but from a priority perspective i thought it's good to first list things which are on the critical path for this milestone. - Given that we didn't have anything related to the RFC, i've created a [RFC Feature](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/356), but obviously we will have to add additional work-items, e.g., the initial revision and alike. - for protocols i left the separate [Protocol & Architecture Specifications Milestone](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/9) but created an issue to explicitly link it to Tech Review mileston - Apropos milestones, what are we going to do with following milestones: - [Z - Parking Lot - Mature the Development Environment](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/30) - [Update Current Code Base](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/35) They are currently a bit confusing in the milestone view and i'm not sure if all are still useful/necessary. Do you see any use in the current milestones ore should we maybe just drop these milestones and redistribute the correspondings to over milestones and/or just label them to keep track on the nature of issue they are? (In that context, are we realistically going to do anything with [#251: New Tags for better issue structuring](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/251)? Otherwise we might better just close it and re-open if we think we ever want to revisit this) Anyway, please have a look at it, change as seem fit and/or discuss on github or here in rocketchat.

msteiner (Thu, 14 May 2020 20:48:51 GMT):
Tech Preview: Following today's discussion i took a initial stab on the Tech Preview milestone - i've created a new github milestone [Tech Preview](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/40) with a description which hopefully captures the minimal goal of what it should achieve and some issues which probably should be part of it. Clearly there will also have to be additional issues related to the MVP items so we can also meet the MVP deadline, but from a priority perspective i thought it's good to first list things which are on the critical path for this milestone. - Given that we didn't have anything related to the RFC, i've created a [RFC Feature](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/356), but obviously we will have to add additional work-items, e.g., the initial revision and alike. - for protocols i left the separate [Protocol & Architecture Specifications Milestone](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/9) but created an issue to explicitly link it to Tech Review mileston - Apropos milestones, what are we going to do with following milestones: - [Z - Parking Lot - Mature the Development Environment](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/30) - [Update Current Code Base](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/35) They are currently a bit confusing in the milestone view and i'm not sure if all are still useful/necessary. Do you see any use in the current milestones ore should we maybe just drop these milestones and redistribute the correspondings to over milestones and/or just label them to keep track on the nature of issue they are? (In that context, are we realistically going to do anything with [#251: New Tags for better issue structuring](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/251)? Otherwise we might better just close it and re-open if we think we ever want to revisit this) Anyway, please have a look at it, change as seem fit and/or discuss on github or here in rocketchat.

msteiner (Thu, 14 May 2020 20:48:51 GMT):
Tech Preview: Following today's discussion i took a initial stab on the Tech Preview milestone - i've created a new github milestone [Tech Preview](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/40) with a description which hopefully captures the minimal goal of what it should achieve and some issues which probably should be part of it. Clearly there will also have to be additional issues related to the MVP items so we can also meet the MVP deadline, but from a priority perspective i thought it's good to first list things which are on the critical path for this milestone. - Given that we didn't have anything related to the RFC, i've created a [RFC Feature](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/356), but obviously we will have to add additional work-items, e.g., the initial revision and alike. - for protocols i left the separate [Protocol & Architecture Specifications Milestone](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/9) but created an issue to explicitly link it to Tech Review mileston - Apropos milestones, what are we going to do with following milestones: - [Z - Parking Lot - Mature the Development Environment](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/30) - [Update Current Code Base](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/35) They are currently a bit confusing in the milestone view and i'm not sure if all are still useful/necessary. Do you see any use in the current milestones ore should we maybe just drop these milestones and redistribute the correspondings to over milestones and/or just label them to keep track on the nature of issue they are? (In that context, are we realistically going to do anything with [#251: New Tags for better issue structuring](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/251)? Otherwise we might better just close it and re-open if we think we ever want to revisit this) Anyway, please have a look at it, change as seem fit and/or discuss on github or here in rocketchat.

msteiner (Thu, 14 May 2020 20:48:51 GMT):
Tech Preview: Following today's discussion i took a initial stab on the Tech Preview milestone - i've created a new github milestone [Tech Preview](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/40) with a description which hopefully captures the minimal goal of what it should achieve and some issues which probably should be part of it. Clearly there will also have to be additional issues related to the MVP items so we can also meet the MVP deadline, but from a priority perspective i thought it's good to first list things which are on the critical path for this milestone. - Given that we didn't have anything related to the RFC, i've created a [RFC Feature](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/356), but obviously we will have to add additional work-items, e.g., the initial revision and alike. - for protocols i left the separate [Protocol & Architecture Specifications Milestone](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/9) but created an issue to explicitly link it to Tech Review mileston - Apropos milestones, what are we going to do with following milestones: * [Z - Parking Lot - Mature the Development Environment](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/30) * [Update Current Code Base](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/35) They are currently a bit confusing in the milestone view and i'm not sure if all are still useful/necessary. Do you see any use in the current milestones ore should we maybe just drop these milestones and redistribute the correspondings to over milestones and/or just label them to keep track on the nature of issue they are? (In that context, are we realistically going to do anything with [#251: New Tags for better issue structuring](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/251)? Otherwise we might better just close it and re-open if we think we ever want to revisit this) Anyway, please have a look at it, change as seem fit and/or discuss on github or here in rocketchat.

msteiner (Thu, 14 May 2020 20:48:51 GMT):
Tech Preview: Following today's discussion i took a initial stab on the Tech Preview milestone - i've created a new github milestone [Tech Preview](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/40) with a description which hopefully captures the minimal goal of what it should achieve and some issues which probably should be part of it. Clearly there will also have to be additional issues related to the MVP items so we can also meet the MVP deadline, but from a priority perspective i thought it's good to first list things which are on the critical path for this milestone. - Given that we didn't have anything related to the RFC, i've created a [RFC Feature](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/356), but obviously we will have to add additional work-items, e.g., the initial revision and alike. - for protocols i left the separate [Protocol & Architecture Specifications Milestone](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/9) but created an issue to explicitly link it to Tech Review mileston - Apropos milestones, what are we going to do with following milestones: - [Z - Parking Lot - Mature the Development Environment](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/30) - [Update Current Code Base](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/35) They are currently a bit confusing in the milestone view and i'm not sure if all are still useful/necessary. Do you see any use in the current milestones ore should we maybe just drop these milestones and redistribute the correspondings to over milestones and/or just label them to keep track on the nature of issue they are? (In that context, are we realistically going to do anything with [#251: New Tags for better issue structuring](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/251)? Otherwise we might better just close it and re-open if we think we ever want to revisit this) Anyway, please have a look at it, change as seem fit and/or discuss on github or here in rocketchat.

msteiner (Thu, 14 May 2020 20:48:51 GMT):
Tech Preview: Following today's discussion i took a initial stab on the Tech Preview milestone - i've created a new github milestone [Tech Preview](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/40) with a description which hopefully captures the minimal goal of what it should achieve and some issues which probably should be part of it. Clearly there will also have to be additional issues related to the MVP items so we can also meet the MVP deadline, but from a priority perspective i thought it's good to first list things which are on the critical path for this milestone. - Given that we didn't have anything related to the RFC, i've created a [RFC Feature](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/356), but obviously we will have to add additional work-items, e.g., the initial revision and alike. - for protocols i left the separate [Protocol & Architecture Specifications Milestone](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/9) but created an issue to explicitly link it to Tech Review mileston - Apropos milestones, what are we going to do with following milestones: - [Z - Parking Lot - Mature the Development Environment](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/30) - [Update Current Code Base](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/35) They are currently a bit confusing in the milestone view and i'm not sure if all are still useful/necessary. Do you see any use in the current milestones ore should we maybe just drop these milestones and redistribute the correspondings to over milestones and/or just label them to keep track on the nature of issue they are? (In that context, are we realistically going to do anything with [#251: New Tags for better issue structuring](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/251)? Otherwise we might better just close it and re-open if we think we ever want to revisit this) Anyway, please have a look at it, change as seem fit and/or discuss on github or here in rocketchat.

msteiner (Thu, 14 May 2020 20:48:51 GMT):
Tech Preview: Following today's discussion i took a initial stab on the Tech Preview milestone - i've created a new github milestone [Tech Preview](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/40) with a description which hopefully captures the minimal goal of what it should achieve and some issues which probably should be part of it. Clearly there will also have to be additional issues related to the MVP items so we can also meet the MVP deadline, but from a priority perspective i thought it's good to first list things which are on the critical path for this milestone. - Given that we didn't have anything related to the RFC, i've created a [RFC Feature](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/356), but obviously we will have to add additional work-items, e.g., the initial revision and alike. - for protocols i left the separate [Protocol & Architecture Specifications Milestone](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/9) but created an issue to explicitly link it to Tech Review mileston - Apropos milestones, what are we going to do with following milestones: - [Z - Parking Lot - Mature the Development Environment](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/30) - [Update Current Code Base](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/35) They are currently a bit confusing in the milestone view and i'm not sure if all are still useful/necessary. Do you see any use in the current milestones ore should we maybe just drop these milestones and redistribute the correspondings to over milestones and/or just label them to keep track on the nature of issue they are? (In that context, are we realistically going to do anything with [#251: New Tags for better issue structuring](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/251)? Otherwise we might better just close it and re-open if we think we ever want to revisit this) Anyway, please have a look at it, change as seem fit and/or discuss on github or here in rocketchat.

msteiner (Thu, 14 May 2020 20:48:51 GMT):
Tech Preview: Following today's discussion i took a initial stab on the Tech Preview milestone - i've created a new github milestone [Tech Preview](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/40) with a description which hopefully captures the minimal goal of what it should achieve and some issues which probably should be part of it. Clearly there will also have to be additional issues related to the MVP items so we can also meet the MVP deadline, but from a priority perspective i thought it's good to first list things which are on the critical path for this milestone. - Given that we didn't have anything related to the RFC, i've created a [RFC Feature](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/356), but obviously we will have to add additional work-items, e.g., the initial revision and alike. - for protocols i left the separate [Protocol & Architecture Specifications Milestone](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/9) but created an issue to explicitly link it to Tech Review mileston - Apropos milestones, what are we going to do with following milestones: - [Z - Parking Lot - Mature the Development Environment](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/30) - [Update Current Code Base](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/35) They are currently a bit confusing in the milestone view and i'm not sure if all are still useful/necessary. Do you see any use in the current milestones ore should we maybe just drop these milestones and redistribute the correspondings to over milestones and/or just label them to keep track on the nature of issue they are? (In that context, are we realistically going to do anything with [#251: New Tags for better issue structuring](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/251)? Otherwise we might better just close it and re-open if we think we ever want to revisit this) Anyway, please have a look at it, change as seem fit and/or discuss on github or here in rocketchat.

msteiner (Thu, 14 May 2020 20:48:51 GMT):
Tech Preview: Following today's discussion i took a initial stab on the Tech Preview milestone - i've created a new github milestone [Tech Preview](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/40) with a description which hopefully captures the minimal goal of what it should achieve and some issues which probably should be part of it. Clearly there will also have to be additional issues related to the MVP items so we can also meet the MVP deadline, but from a priority perspective i thought it's good to first list things which are on the critical path for this milestone. - Given that we didn't have anything related to the RFC, i've created a [RFC Feature](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/356), but obviously we will have to add additional work-items, e.g., the initial revision and alike. - for protocols i left the separate [Protocol & Architecture Specifications Milestone](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/9) but created an issue to explicitly link it to Tech Review mileston - Apropos milestones, what are we going to do with following milestones: - [Z - Parking Lot - Mature the Development Environment](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/30) - [Update Current Code Base](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/35) They are currently a bit confusing in the milestone view and i'm not sure if all are still useful/necessary. Do you see any use in the current milestones ore should we maybe just drop these milestones and redistribute the correspondings to over milestones and/or just label them to keep track on the nature of issue they are? (In that context, are we realistically going to do anything with [#251: New Tags for better issue structuring](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/251)? Otherwise we might better just close it and re-open if we think we ever want to revisit this) Anyway, please have a look at it, change as seem fit and/or discuss on github or here in rocketchat.

msteiner (Thu, 14 May 2020 20:48:51 GMT):
Tech Preview: Following today's discussion i took a initial stab on the Tech Preview milestone - i've created a new github milestone [Tech Preview](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/40) with a description which hopefully captures the minimal goal of what it should achieve and some issues which probably should be part of it. Clearly there will also have to be additional issues related to the MVP items so we can also meet the MVP deadline, but from a priority perspective i thought it's good to first list things which are on the critical path for this milestone. - Given that we didn't have anything related to the RFC, i've created a [RFC Feature](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/356), but obviously we will have to add additional work-items, e.g., the initial revision and alike. - for protocols i left the separate [Protocol & Architecture Specifications Milestone](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/9) but created an issue to explicitly link it to Tech Review mileston - Apropos milestones, what are we going to do with following milestones: * [Z - Parking Lot - Mature the Development Environment](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/30) * [Update Current Code Base](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/35) They are currently a bit confusing in the milestone view and i'm not sure if all are still useful/necessary. Do you see any use in the current milestones ore should we maybe just drop these milestones and redistribute the correspondings to over milestones and/or just label them to keep track on the nature of issue they are? (In that context, are we realistically going to do anything with [#251: New Tags for better issue structuring](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/251)? Otherwise we might better just close it and re-open if we think we ever want to revisit this) Anyway, please have a look at it, change as seem fit and/or discuss on github or here in rocketchat.

msteiner (Thu, 14 May 2020 20:48:51 GMT):
Tech Preview: Following today's discussion i took a initial stab on the Tech Preview milestone - i've created a new github milestone [Tech Preview](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/40) with a description which hopefully captures the minimal goal of what it should achieve and some issues which probably should be part of it. Clearly there will also have to be additional issues related to the MVP items so we can also meet the MVP deadline, but from a priority perspective i thought it's good to first list things which are on the critical path for this milestone. - Given that we didn't have anything related to the RFC, i've created a [RFC Feature](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/356), but obviously we will have to add additional work-items, e.g., the initial revision and alike. - for protocols i left the separate [Protocol & Architecture Specifications Milestone](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/9) but created an issue to explicitly link it to Tech Review mileston - Apropos milestones, what are we going to do with following milestones: * [Z - Parking Lot - Mature the Development Environment](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/30) * [Update Current Code Base](https://github.com/hyperledger-labs/fabric-private-chaincode/milestone/35) They are currently a bit confusing in the milestone view and i'm not sure if all are still useful/necessary. Do you see any use in the current milestones ore should we maybe just drop these milestones and redistribute the correspondings to over milestones and/or just label them to keep track on the nature of issue they are? (In that context, are we realistically going to do anything with [#251: New Tags for better issue structuring](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/251)? Otherwise we might better just close it and re-open if we think we ever want to revisit this) Anyway, please have a look at it, change as seem fit and/or discuss on github or here in rocketchat.

msteiner (Thu, 14 May 2020 20:55:39 GMT):
test - a list - a sub-list - another bullet of sub-list - second top-level item

msteiner (Thu, 14 May 2020 22:48:14 GMT):
btw: regarding the docker (credential) errors: while [this comment](https://github.com/docker/docker-credential-helpers/issues/103#issuecomment-576854271) claimed it was fixed in 18.04.3, i do have the updated latest version of 18.04(.4) and still see the error. I also noticed though also that according to [travis doc](https://docs.travis-ci.com/user/reference/bionic/) they might use their own version of docker, e.g., they say they use docker 18.06.0 whereas my 18.0.4 has 19.03.6 ..

bur (Fri, 15 May 2020 16:17:10 GMT):
I would vote for removing parking lot and update current code base milestones

msteiner (Fri, 15 May 2020 16:22:18 GMT):
removing was also my preferred choice, just was not sure what exactly do with the issues. I've done an earlier pass and moved some obvious ones. Maybe you could do also a pass through the issues and re-assign/de-milestone/re-label them as appropriate? BTW: please try to use threads. I know they are not great in rocket-chat but for any serious multi-round discussion i think it is essential to keep context ....

bur (Mon, 18 May 2020 06:56:02 GMT):
@BrunoVavala please have a look at this https://github.com/hyperledger-labs/fabric-private-chaincode/pull/360

msteiner (Mon, 18 May 2020 16:55:10 GMT):
@bur along these lines, can you have a look at #353 and #333? I did a review of them on friday but as you had also looked earlier at 333 and had concern it would be good if you could add your review. thanks

msteiner (Mon, 18 May 2020 18:03:18 GMT):
btw: please look at above notes of mine from friday regarding tech preview (and the related github issues) before tomorrow's call. any earlier feedback is of course welcome as well :-) thanks

bur (Tue, 19 May 2020 20:06:06 GMT):
I think the Tech Preview Milestone is very good start; in particular the link to the protocol spec/design makes sense; I have the feeling that we should focus now protocol and design and pause other implementation activities.

bur (Tue, 19 May 2020 20:06:50 GMT):
once the protocols and design is set we actually have a basis to continue to feed the RFC with more content

bur (Tue, 19 May 2020 20:08:08 GMT):
for the RFC the client-facing design is also relevant

BrunoVavala (Mon, 01 Jun 2020 19:38:16 GMT):
any reason why in the top makefile the "linter" target (1) depends on build, (2) runs last?

msteiner (Mon, 01 Jun 2020 19:40:42 GMT):
the dependence on build is as linter fails when not built, being last is a historical artifact of having in the past not being robust and failing some times. That said, to me it also has lower priority to pass than, say, tests, so (close to last) seems an appropriate place ...

BrunoVavala (Mon, 01 Jun 2020 20:43:51 GMT):
priority is low, but since it takes few seconds to run, it would be nice to run it immediately rather than possibly seeing it fail after a >30min build where tests succeed.

bur (Tue, 02 Jun 2020 07:02:10 GMT):
we added build dep to linter due to code generation

bur (Tue, 02 Jun 2020 07:03:09 GMT):
such as ercc ias provider

bur (Tue, 02 Jun 2020 07:03:30 GMT):
linting ercc will fail unless we have generated the provider.go with running build

bur (Tue, 02 Jun 2020 07:04:05 GMT):
but I agree with you that it would be nice to not force re-build when you just wanna run linting

bur (Wed, 10 Jun 2020 16:05:58 GMT):
@here please have a look at this and give a review https://github.com/hyperledger-labs/fabric-private-chaincode/pull/371

dtomczyk (Thu, 11 Jun 2020 15:48:41 GMT):
Has joined the channel.

msteiner (Thu, 11 Jun 2020 18:37:27 GMT):
given that we have two positive reviews for https://github.com/hyperledger-labs/fabric-private-chaincode/pull/369, i guess Marcus you can merge?

z3100 (Fri, 19 Jun 2020 04:46:44 GMT):
Has joined the channel.

MicBowman (Fri, 19 Jun 2020 23:07:01 GMT):
https://www.ibm.com/cloud/blog/enigma-and-ibm-cloud-are-protecting-human-lives-as-well-as-data-privacy

huxd (Sun, 28 Jun 2020 02:24:30 GMT):
Has joined the channel.

bur (Fri, 03 Jul 2020 06:21:03 GMT):
FPC Tech Preview / Concept Release 2.0.0 is out! https://github.com/hyperledger-labs/fabric-private-chaincode

msteiner (Thu, 09 Jul 2020 17:56:24 GMT):
FYI: the FPC community call on next Tuesday 7/14 will be shortened from 8:00-8:15 PDT as it overlaps with the SGX Community Workshop that day (and 7/15) from 8:00-12:30 PDT. (In case you are interested in the workshop and haven't already received a corresponding calendar invite, let me know and i'll forward it to you ...)

bur (Fri, 10 Jul 2020 07:31:46 GMT):
@msteiner I assigned this to you https://github.com/hyperledger-labs/fabric-private-chaincode/pull/396

bur (Fri, 10 Jul 2020 07:31:52 GMT):
:D

AshutoshKumar7 (Tue, 04 Aug 2020 14:58:38 GMT):
Has joined the channel.

guanzs (Thu, 27 Aug 2020 03:37:40 GMT):
Has joined the channel.

guanzs (Thu, 27 Aug 2020 03:37:41 GMT):
Hello, everyone, can you help me? I am new to Intel SGX and docker. I have built docker images as fabric-private-chaincode official documents, and want to run Hello-World example, but it reports 'cannot find -lshim' error in the container as follows: ``` [ 50%] Linking CXX shared library enclave.so /usr/bin/cmake -E cmake_link_script CMakeFiles/enclave.dir/link.txt --verbose=1 /usr/bin/c++ -fPIC -m64 -O2 -nostdinc -fno-builtin -fvisibility=hidden -fpie -fstack-protector -std=c++11 -nostdinc++ -shared -Wl,-soname,enclave.so -o enclave.so CMakeFiles/enclave.dir/helloworld_cc.cpp.o -m64 -O2 -Wl,--no-undefined -nostdlib -nodefaultlibs -nostartfiles -L/project/src/github.com/hyperledger-labs/fabric-private-chaincode/ecc_enclave/enclave/../../ecc_enclave/_build/lib -lshim -L/opt/intel/sgxssl/lib64 -Wl,--whole-archive -lsgx_tsgxssl -Wl,--no-whole-archive -lsgx_tsgxssl_crypto -L/opt/intel/sgxsdk/lib64 -Wl,--whole-archive -lsgx_trts_sim -Wl,--no-whole-archive -Wl,--start-group -lsgx_tstdc -lsgx_tcxx -lsgx_tcrypto -lsgx_tservice_sim -Wl,--end-group -Wl,-Bstatic -Wl,-Bsymbolic -Wl,--no-undefined -Wl,-pie,-eenclave_entry -Wl,--export-dynamic -Wl,--defsym,__ImageBase=0 -Wl,--version-script=/project/src/github.com/hyperledger-labs/fabric-private-chaincode/ecc_enclave/enclave/../../ecc_enclave/enclave/enclave.lds /usr/bin/ld: cannot find -lshim collect2: error: ld returned 1 exit status CMakeFiles/enclave.dir/build.make:97: recipe for target 'enclave.so' failed ``` I have tested different branches like concept-release-1.0, concept-release-2.0, and master, but it does not work. Thanks for your help!

msteiner (Thu, 27 Aug 2020 04:01:45 GMT):
can you give a bit more details on what exactly you did when you got above error? Did you do a build (e.g.,, `make` in $FPC_PATH) before trying to run the hello world example (and if so, did that make succeed?) Lastly, are you running that inside a development container or on "bare metal'?

guanzs (Thu, 27 Aug 2020 07:19:46 GMT):
I built docker images as [Option 1: Using the Docker-based FPC Development Environment](https://github.com/hyperledger-labs/fabric-private-chaincode/tree/concept-release-1.0#option-1-using-the-docker-based-fpc-development-environment) and run hello world example as [Hello World Tutorial](https://github.com/hyperledger-labs/fabric-private-chaincode/blob/concept-release-1.0/examples/README.md#hello-world-tutorial). On my localhost, I just install Fabric dependencies, and want to use official preconfigured Docker container development environment for FPC. Hence I download codes and checkout it at concept-release-1.0 branch; then `cd utils/docker; make dev` to build docker images and use it with `cd utils/docker; make run` which opens a shell inside the FPC development container; finally, in the above container, I want to run hello world example, but it reports the mentioned error. The operations are available at [Github](https://github.com/Agzs/fabric-private-chaincode/blob/concept-release-1.0/operations.log)

msteiner (Thu, 27 Aug 2020 15:53:24 GMT):
you have first to build FPC inside the developement container! I.e., you have to call `make` inside the development container (the shell you get after running `make run` on the host)!

guanzs (Fri, 28 Aug 2020 03:10:34 GMT):
OK. Thanks! I will try to do it

guanzs (Mon, 31 Aug 2020 01:33:50 GMT):
Hi, forgive me, I got another error when I `make` inside the development container. My localhost is Ubuntu 18.04.5 and I build images at `concept-release-1.0` branch, then run it, but it reports the errors, whose log is available at [GitHub](https://github.com/Agzs/fabric-private-chaincode/blob/concept-release-1.0/reportErrors.log) and the docker images are as follows: ``` ethtest@ethtest:docker$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE hyperledger/fabric-private-chaincode-dev cr1.0.1 485782e70144 52 minutes ago 1.94GB hyperledger/fabric-private-chaincode-dev latest 485782e70144 52 minutes ago 1.94GB hyperledger/fabric-private-chaincode-ccenv cr1.0.1 9c5c4b2fef01 About an hour ago 593MB hyperledger/fabric-private-chaincode-ccenv latest 9c5c4b2fef01 About an hour ago 593MB hyperledger/fabric-private-chaincode-base cr1.0.1 9c5c4b2fef01 About an hour ago 593MB hyperledger/fabric-private-chaincode-base latest 9c5c4b2fef01 About an hour ago 593MB ``` Thanks for your help!

bur (Mon, 31 Aug 2020 07:56:18 GMT):
Hi, it looks like, for some reason, your Fabric code (inside the dev container) has the wrong version. From the error message you posted on github, you can see that it cannot find `ccintf.CCID`. This was indeed removed/refactored with Fabric 2.0.

bur (Mon, 31 Aug 2020 07:59:08 GMT):
inside the dev container go to $GOPATH/src/hyperledger/fabric and make sure you are on v1.4.3 branch and not v2.x

bur (Mon, 31 Aug 2020 08:00:09 GMT):
note that FPC cr1.0.1 is using Fabric v1.4 and cr2.0.x works with Fabric 2.x

bur (Mon, 31 Aug 2020 08:00:41 GMT):
I would recommend to use the latest FPC release :)

bur (Mon, 31 Aug 2020 08:00:45 GMT):
hope this helps

weisstech (Mon, 31 Aug 2020 16:19:41 GMT):
Has joined the channel.

anweiss (Mon, 31 Aug 2020 16:25:33 GMT):
Has joined the channel.

guanzs (Fri, 04 Sep 2020 00:31:15 GMT):
I know it, when I got the errors, I checked related dependencies about the version, and their version is as follows:

guanzs (Mon, 07 Sep 2020 02:01:46 GMT):
I solved them by setting appropriate `GOPROXY` and `GO111MODULE`

bur (Mon, 07 Sep 2020 09:25:41 GMT):
oh cool! not yet clear to me how proxy and gomodule settings have helped with the errors you posted above.

guanzs (Mon, 14 Sep 2020 06:39:21 GMT):
When I execute `make` which also run `go get XXX`, but it reports `timeout` error, so I set ``` GO111MODULE=on ```

guanzs (Mon, 14 Sep 2020 06:39:21 GMT):
When I execute `make` which also run `go get XXX`, but it reports `timeout` error, to solve it, I set variables as follows: ``` GO111MODULE=on GOPROXY=https://goproxy.cn,direct ``` But when I execute `make` again, it cannot find `ccintf.CCID`. I check the version of FPC and fabric, and their version are as follows: ``` ```

guanzs (Mon, 14 Sep 2020 06:39:21 GMT):
When I execute `make` which also run `go get XXX`, but it reports `timeout` error, to solve it, I set variables as follows: ``` GO111MODULE=on GOPROXY=https://goproxy.cn,direct ``` Then when I execute `make` again, it cannot find `ccintf.CCID`. I check the version of FPC and fabric, and their version are as follows: ``` FPC: concept-release-1.0 fabric: 1.4.3 ``` but compiling FPC uses fabric-2.1.1 version ``` go: finding github.com/hyperledger/fabric v2.1.1+incompatible ``` that is caused by `GO111MODULE=on`. So, for me, I set `GO111MODULE=off` before config FPC (i.e., `make godeps`), while I set `GO111MODULE=off` before compiling FPC (i.e., `make plugins`)

cliveb (Tue, 29 Sep 2020 15:05:37 GMT):
Has joined the channel.

cliveb (Tue, 29 Sep 2020 15:05:38 GMT):
Does anyone have the FPC meetup passcode?

cliveb (Tue, 29 Sep 2020 15:09:32 GMT):
I found the passcode on the public calendar

cliveb (Tue, 29 Sep 2020 15:23:34 GMT):
https://research.nccgroup.com/2020/03/24/smart-contracts-inside-sgx-enclaves-common-security-bug-patterns/

anweiss (Tue, 06 Oct 2020 14:52:32 GMT):
hey all! I've code the latest code from `master` and am trying to build the `hyperledger/fabric-peer-fpc:latest` dev peer image using the `Makefile` in `utils/docker` ... the image builds without issues, but when attempting to start the image, the following error occurs: ``` /bin/sh: 1: [/project/src/github.com/hyperledger-labs/fabric-private-chaincode/fabric/bin/peer.sh: not found ``` double checked that the file exists in the image

anweiss (Tue, 06 Oct 2020 14:52:32 GMT):
hey all! I've got the latest code from `master` and am trying to build the `hyperledger/fabric-peer-fpc:latest` dev peer image using the `Makefile` in `utils/docker` ... the image builds without issues, but when attempting to start the image, the following error occurs: ``` /bin/sh: 1: [/project/src/github.com/hyperledger-labs/fabric-private-chaincode/fabric/bin/peer.sh: not found ``` double checked that the file exists in the image

msteiner (Tue, 06 Oct 2020 15:16:27 GMT):
to start did you do that via 'make run` (or `make -C util/docker run` from top-level)? That would be the preferred way to start docker image. And in that case i'm a bit puzzled why would get that error as that shouldn't involve `peer.sh`.

anweiss (Tue, 06 Oct 2020 17:54:50 GMT):
that works fine ... just interested in using the peer image

anweiss (Tue, 06 Oct 2020 17:55:07 GMT):
a simple `docker run -it --rm hyperledger/fabric-private-chaincode:latest` results in that `peer.sh not found` error

msteiner (Tue, 06 Oct 2020 18:35:57 GMT):
Ah, ok. Now the error makes more sense. If you want to run it this way you would have to define the environment variables which are defined in 'utils/docker-compose/network-config/docker-compose.yml' and, potentially some defined the scripts in 'utils/docker-compose/scripts/start.sh'. depending on how you setup your fabric network. In general, might be easier to stick with the scripts to setup/teardown fabric networks.

msteiner (Tue, 06 Oct 2020 18:38:11 GMT):
btw: unless you want to add a feature to core FPC, you might also be better to use 'cr2.0.0' release rather than 'master'. Right now 'master' should be stable but it is a moving target and quite a few things will change in the near feature ....

msteiner (Tue, 06 Oct 2020 18:38:11 GMT):
btw: unless you want to add a feature to core FPC, you might also be better off in using 'cr2.0.0' release rather than 'master'. Right now 'master' should be stable but it is a moving target and quite a few things will change in the near feature ....

ericmvaughn (Wed, 07 Oct 2020 13:55:13 GMT):
Has joined the channel.

anweiss (Thu, 08 Oct 2020 14:29:51 GMT):
thanks @msteiner ... In my case, I'm using the IBM Blockchain Platform which injects all of the environment variables into the peer node pod for me ... so I'm merely attempting to swap the included peer container image with the FPC container image

msteiner (Thu, 08 Oct 2020 15:33:51 GMT):
I haven't used IBM Blockchain Platform so cannot talk about specifics but FPC also requires some FPC-specific configurations so besides injecting the FPC peer image i would expect also some changes needed in the config injection process. Maybe some of the IBM FPC folks might have more insights here? If you can get that working that would of course be great and corresponding scripts/docu a great addition to our repo. To get there, probably still would be useful to start by closely studying our docker-compose files and deployment scripts. They are mostly based on the first-network scripts from fabric-samples git repo and so maybe there is some simularity on how the IBM Blockchain Platform does it?

anweiss (Thu, 08 Oct 2020 16:58:01 GMT):
ok thanks @msteiner ... that is very helpful ... will review some of the `docker-compose` files and configs

anweiss (Tue, 13 Oct 2020 18:39:25 GMT):
thanks @msteiner! ... if I use the `concept-release-2.0` tag and updating the last line in the peer Dockerfile to `CMD $FPC_CMDS/peer.sh node start` (changing exec form to shell form) it works!

anweiss (Tue, 13 Oct 2020 18:39:25 GMT):
thanks @msteiner! ... if I use the `concept-release-2.0` tag and update the last line in the peer Dockerfile to `CMD $FPC_CMDS/peer.sh node start` (changing exec form to shell form) it works!

rjones (Thu, 05 Nov 2020 14:59:07 GMT):
Has joined the channel.

rjones (Thu, 05 Nov 2020 14:59:07 GMT):
Hi - is this still a thing? should I cancel the meetings?

msteiner (Thu, 05 Nov 2020 15:25:37 GMT):
FPC is still alive and kicking and the Tuesday calls are also still active (i guess that's what you refer to by "meeting"?)

rjones (Thu, 05 Nov 2020 15:26:20 GMT):
ok, cool. Yes, it's the call I was asking about. I looked at the commit velocity and it seemed low

msteiner (Thu, 05 Nov 2020 16:06:29 GMT):
quality over quantity ;-)

nahidalim (Thu, 17 Dec 2020 19:23:41 GMT):
Has joined the channel.

nahidalim (Fri, 18 Dec 2020 20:08:25 GMT):
hi, I am new to fabric private chain codes. When I try running the auction example, orderer and ca containers are up and running but peer0 exits with code 111.

nahidalim (Fri, 18 Dec 2020 20:09:27 GMT):

Screen Shot 2020-12-18 at 3.08.47 PM.png

nahidalim (Fri, 18 Dec 2020 20:10:16 GMT):
I cannot even check the log

nahidalim (Fri, 18 Dec 2020 20:10:27 GMT):

Screen Shot 2020-12-18 at 3.10.05 PM.png

nahidalim (Fri, 18 Dec 2020 20:10:57 GMT):
Anyone has any idea why this happens?

nahidalim (Fri, 18 Dec 2020 20:11:33 GMT):
I managed to run the hello world example successfully, but this one does not work!

nahidalim (Fri, 18 Dec 2020 20:12:47 GMT):
Please help!

msteiner (Sat, 19 Dec 2020 06:42:11 GMT):
which version of the code are you using? And by auction example you mean the demo (stuff in `demo/...`) or the toy auction example in `examples/auction/..` ?

nahidalim (Mon, 21 Dec 2020 02:09:07 GMT):
I am using the "concept-release-2.0" of the Fabric Private Chaincode and version 2.0 of Hyperledger Fabric. Yes, I mean the demo.

msteiner (Tue, 22 Dec 2020 01:58:09 GMT):
Hmm, from the screenshot you sent it seems you are using the code from `master`. make sure you have `concept-release-2.0` branch. As i looked a found an issue when building from $FPC_PATH but it should be fixed in a commit i'm about to push. After that a `make -C $FPC_PATH clobber all` should have built all artifacts and you can run the auction demo via the scripts in `demo/scripts` or, if you want to run our pre-specified auction scenario via the script in `demo/client/scripting/scenario-run.sh`. BTW: for auction demo do not directly use the scripts in `utils/docker-compose`. They require some environment variables to be set (as done in the scripts in `demo`) or you might run with the wrong docker images (this is maybe what happened in your case?)

nahidalim (Tue, 22 Dec 2020 04:27:41 GMT):
Thank you so much for your help, I will check again.

alacambra (Wed, 23 Dec 2020 22:10:05 GMT):
Has joined the channel.

AfzaalLucky (Fri, 15 Jan 2021 07:31:11 GMT):
Has joined the channel.

munapower (Tue, 26 Jan 2021 19:23:11 GMT):
Has joined the channel.

munapower (Sat, 30 Jan 2021 15:38:22 GMT):
Hello, I am new to this and am trying to follow the lab. I want to go with option 1 Using the Docker-based FPC Development Environment, and it says that a docker image is provided. I have tried finding it unsuccessfully :-S ... I am a bit lost ...any pointers will be useful

BrunoVavala (Tue, 02 Feb 2021 02:20:45 GMT):
Hi, FPC provides ... a way to build and run the docker image you're referring to. Please keep reading Option 1 to find the details.

munapower (Tue, 02 Feb 2021 22:50:02 GMT):
I have followed the HelloWorld example and I get the following error after executing make from the helloworld directory. I am following the Option 1 using the docker image provided. I copied the Makefile from the auction folder to the helloworld folder. ``` /usr/bin/cmake -E cmake_link_script CMakeFiles/enclave.dir/link.txt --verbose=1 /usr/bin/c++ -fPIC -DDO_DEBUG=true -m64 -DSGX_SIM_MODE -O0 -g -nostdinc -fno-builtin -fvisibility=hidden -fpie -fstack-protector -std=c++11 -nostdinc++ -shared -Wl,-soname,enclave.so -o enclave.so CMakeFiles/enclave.dir/helloworld_cc.cpp.o -m64 -DSGX_SIM_MODE -O0 -g -Wl,--no-undefined -nostdlib -nodefaultlibs -nostartfiles -L/project/src/github.com/hyperledger-labs/fabric-private-chaincode/ecc_enclave/enclave/../../common/logging/_build -L/project/src/github.com/hyperledger-labs/fabric-private-chaincode/ecc_enclave/enclave/../../common/crypto/_build -L/project/src/github.com/hyperledger-labs/fabric-private-chaincode/ecc_enclave/enclave/../../ecc_enclave/_build/lib -Wl,--start-group -ltpdo-crypto -lshim -ltpdo-crypto-adapt -ltlogging -Wl,--end-group -L/opt/intel/sgxssl/lib64 -Wl,--whole-archive -lsgx_tsgxssl -Wl,--no-whole-archive -lsgx_tsgxssl_crypto -L/opt/intel/sgxsdk/lib64 -Wl,--whole-archive -lsgx_trts_sim -Wl,--no-whole-archive -Wl,--start-group -lsgx_tstdc -lsgx_tcxx -lsgx_tcrypto -lsgx_tservice_sim -Wl,--end-group -Wl,-Bstatic -Wl,-Bsymbolic -Wl,--no-undefined -Wl,-pie,-eenclave_entry -Wl,--export-dynamic -Wl,--defsym,__ImageBase=0 -Wl,--version-script=/project/src/github.com/hyperledger-labs/fabric-private-chaincode/ecc_enclave/enclave/../../ecc_enclave/enclave/enclave.lds /opt/intel/sgxsdk.extras/external/toolset/ubuntu18.04/ld: cannot find -ltpdo-crypto /opt/intel/sgxsdk.extras/external/toolset/ubuntu18.04/ld: cannot find -lshim /opt/intel/sgxsdk.extras/external/toolset/ubuntu18.04/ld: cannot find -ltpdo-crypto-adapt /opt/intel/sgxsdk.extras/external/toolset/ubuntu18.04/ld: cannot find -ltlogging collect2: error: ld returned 1 exit status CMakeFiles/enclave.dir/build.make:97: recipe for target 'enclave.so' failed make[3]: *** [enclave.so] Error 1 make[3]: Leaving directory '/project/src/github.com/hyperledger-labs/fabric-private-chaincode/examples/helloworld/_build' CMakeFiles/Makefile2:70: recipe for target 'CMakeFiles/enclave.dir/all' failed``` I have tried searching on the web for which library is missing but haven't been able to find an exact match ``` ```

bur (Wed, 03 Feb 2021 09:00:28 GMT):
Hi Maria, the error tells you that some libraries (pdo-crypto, shim, ...) are missing. Did you run `make build` inside the FPC docker dev container before building your example? You can try the following: ``` ```

bur (Wed, 03 Feb 2021 09:00:28 GMT):
Hi Maria, the error tells you that some libraries (pdo-crypto, shim, ...) are missing. Did you run `make build` inside the FPC docker dev container before building your example? You can try the following: ``` // start into the FPC dev container cd utils/docker && make run // inside the container make build // build hello wolrd cd examples/helloworld && make ``` The `make build` in the project root will build the missing libs.

munapower (Wed, 03 Feb 2021 12:22:19 GMT):
Thank you Bruno!

munapower (Wed, 03 Feb 2021 21:07:48 GMT):
yes I did that, I will retry it ...

munapower (Thu, 04 Feb 2021 16:07:15 GMT):
ok, so when I execute the make build I get this error: ``` make[1]: Entering directory '/project/src/github.com/hyperledger-labs/fabric-private-chaincode/protos' mkdir -p ../common/protos mkdir -p ../internal/protos ./generate_protos.sh No Fabric protos found! Try 'git pull --recurse-submodules' Makefile:13: recipe for target 'protos' failed make[1]: *** [protos] Error 1 make[1]: Leaving directory '/project/src/github.com/hyperledger-labs/fabric-private-chaincode/protos' Makefile:22: recipe for target 'build' failed make: *** [build] Error 2 ```

munapower (Thu, 04 Feb 2021 16:08:14 GMT):
I execute the git pull --recurse-submodules and it says that Already up to date.

munapower (Thu, 04 Feb 2021 22:10:15 GMT):
ok, so when I execute the make build I get this error: ``` make[1]: Entering directory '/project/src/github.com/hyperledger-labs/fabric-private-chaincode/protos' mkdir -p ../common/protos mkdir -p ../internal/protos ./generate_protos.sh No Fabric protos found! Try 'git pull --recurse-submodules' Makefile:13: recipe for target 'protos' failed make[1]: *** [protos] Error 1 make[1]: Leaving directory '/project/src/github.com/hyperledger-labs/fabric-private-chaincode/protos' Makefile:22: recipe for target 'build' failed make: *** [build] Error 2 `````` I execute the git pull --recurse-submodules and it says that Already up to date. ```

bur (Fri, 05 Feb 2021 07:53:25 GMT):
can you just try `git submodule update --init`

bur (Fri, 05 Feb 2021 07:53:25 GMT):
can you just try `git submodule update --init` from $FPC_PATH

bur (Fri, 05 Feb 2021 07:58:29 GMT):
I suspect that you have not cloned the FPC repo with the following command: `git clone --recursive https://github.com/hyperledger-labs/fabric-private-chaincode.git $GOPATH/src/github.com/hyperledger-labs/fabric-private-chaincode `, in particular you maybe missed the `--recursive` flag when cloning.

bur (Fri, 05 Feb 2021 07:58:29 GMT):
I suspect that you have not cloned the FPC repo with the following command: `git clone --recursive https://github.com/hyperledger-labs/fabric-private-chaincode.git $GOPATH/src/github.com/hyperledger-labs/fabric-private-chaincode`, in particular you maybe missed the `--recursive` flag when cloning.

bur (Fri, 05 Feb 2021 08:02:55 GMT):
See this (https://git-scm.com/book/en/v2/Git-Tools-Submodules) > If you already cloned the project and forgot --recurse-submodules, you can combine the git submodule init and git submodule update steps by running git submodule update --init. To also initialize, fetch and checkout any nested submodules, you can use the foolproof git submodule update --init --recursive.

munapower (Fri, 05 Feb 2021 14:17:00 GMT):
your suspicion is absolutely correct ... ok, let me look into that

munapower (Fri, 05 Feb 2021 20:55:21 GMT):
Ok, so now I got to the part where you run test.sh and there I get the following error:``` peer.sh: test failed: /project/src/github.com/hyperledger/fabric/build/bin/peer lifecycle chaincode approveformyorg -C mychannel --package-id helloworld_test:c705d5788f8eb1f9edbbec61b1016b5a6659b1a580c78cf99a7559ec00b5e2f9 --name helloworld_test --version 90C117BC16AFB16FFD55903A66BE132F2EE95AC28B88EB11D77EA709C0399101 --signature-policy OR('SampleOrg.member') test.sh: test failed: env FABRIC_CFG_PATH=/project/src/github.com/hyperledger-labs/fabric-private-chaincode/examples/helloworld/../../integration/config /project/src/github.com/hyperledger-labs/fabric-private-chaincode/examples/helloworld/../../fabric/bin//peer.sh lifecycle chaincode approveformyorg -C mychannel --package-id helloworld_test:c705d5788f8eb1f9edbbec61b1016b5a6659b1a580c78cf99a7559ec00b5e2f9 --name helloworld_test --version 90C117BC16AFB16FFD55903A66BE132F2EE95AC28B88EB11D77EA709C0399101 --signature-policy OR('SampleOrg.member') ```

munapower (Fri, 05 Feb 2021 20:55:21 GMT):
Ok, so now I got to the part where you run test.sh and there I get the following error:`````` test.sh: - install helloworld chaincode 2021-02-05 20:50:17.914 UTC [cli.lifecycle.chaincode] submitInstallProposal -> INFO 001 Installed remotely: response: 2021-02-05 20:50:17.921 UTC [cli.lifecycle.chaincode] submitInstallProposal -> INFO 002 Chaincode code package identifier: helloworld_test:c705d5788f8eb1f9edbbec61b1016b5a6659b1a580c78cf99a7559ec00b5e2f9 metadata.json metadata.json Error: no orderer endpoints retrieved for channel mychannel, pass orderer endpoint with -o flag instead Usage: peer lifecycle chaincode approveformyorg [flags] ``` peer.sh: test failed: /project/src/github.com/hyperledger/fabric/build/bin/peer lifecycle chaincode approveformyorg -C mychannel --package-id helloworld_test:c705d5788f8eb1f9edbbec61b1016b5a6659b1a580c78cf99a7559ec00b5e2f9 --name helloworld_test --version 90C117BC16AFB16FFD55903A66BE132F2EE95AC28B88EB11D77EA709C0399101 --signature-policy OR('SampleOrg.member') test.sh: test failed: env FABRIC_CFG_PATH=/project/src/github.com/hyperledger-labs/fabric-private-chaincode/examples/helloworld/../../integration/config /project/src/github.com/hyperledger-labs/fabric-private-chaincode/examples/helloworld/../../fabric/bin//peer.sh lifecycle chaincode approveformyorg -C mychannel --package-id helloworld_test:c705d5788f8eb1f9edbbec61b1016b5a6659b1a580c78cf99a7559ec00b5e2f9 --name helloworld_test --version 90C117BC16AFB16FFD55903A66BE132F2EE95AC28B88EB11D77EA709C0399101 --signature-policy OR('SampleOrg.member') ```

bur (Fri, 05 Feb 2021 21:25:45 GMT):
ohhh

bur (Fri, 05 Feb 2021 21:26:46 GMT):
I think in the hello world tutorial we are missing something

bur (Fri, 05 Feb 2021 21:27:12 GMT):
as described in the tutorial, `test.sh` contains the following: ``` try ${PEER_CMD} lifecycle chaincode approveformyorg -C ${CHAN_ID} --package-id ${PKG_ID} --name ${CC_ID} --version ${CC_VER} --signature-policy ${CC_EP} try ${PEER_CMD} lifecycle chaincode checkcommitreadiness -C ${CHAN_ID} --name ${CC_ID} --version ${CC_VER} --signature-policy ${CC_EP} try ${PEER_CMD} lifecycle chaincode commit -C ${CHAN_ID} --name ${CC_ID} --version ${CC_VER} --signature-policy ${CC_EP} ```

bur (Fri, 05 Feb 2021 21:27:43 GMT):
from the error you are posting you can see that the `try ${PEER_CMD} lifecycle chaincode approveformyorg` command misses the `-o` flag

bur (Fri, 05 Feb 2021 21:28:15 GMT):
if I compare our tutorial to our actual integration test, there we have the `-o` flag

bur (Fri, 05 Feb 2021 21:28:40 GMT):
see here an example

bur (Fri, 05 Feb 2021 21:28:41 GMT):
https://github.com/hyperledger-labs/fabric-private-chaincode/blob/master/integration/deployment_test.sh#L35

bur (Fri, 05 Feb 2021 21:28:56 GMT):
``` try ${PEER_CMD} lifecycle chaincode approveformyorg -o ${ORDERER_ADDR} -C ${CHAN_ID} ... ```

bur (Fri, 05 Feb 2021 21:29:14 GMT):
can you please try adding this flag to your test.sh

munapower (Fri, 05 Feb 2021 21:29:27 GMT):
aahhhh, yes I was going to see if in the customized scripts that are mentioned before there might be a detail of how to call the orderer

munapower (Fri, 05 Feb 2021 21:29:33 GMT):
I mean how to name it

munapower (Fri, 05 Feb 2021 21:30:01 GMT):
yes I will add the flag

bur (Fri, 05 Feb 2021 21:30:28 GMT):
cool

munapower (Fri, 05 Feb 2021 21:31:12 GMT):
yeap, that was it ...

bur (Fri, 05 Feb 2021 21:31:14 GMT):
if this works, I would appreciate if you can create a Pull Request to fix the tutorial by adding the missing flags

munapower (Fri, 05 Feb 2021 21:31:34 GMT):
jajaj but now it says that sequence is missing

bur (Fri, 05 Feb 2021 21:32:17 GMT):
`--sequence ${CC_SEQ}`

munapower (Fri, 05 Feb 2021 21:32:23 GMT):
and I see that in the other script it is there

munapower (Fri, 05 Feb 2021 21:32:29 GMT):
yeap, was going to add it too

bur (Fri, 05 Feb 2021 21:33:00 GMT):
I guess you also need to add ` CC_SEQ="1"` somewhere

munapower (Fri, 05 Feb 2021 21:33:17 GMT):
will do so

munapower (Fri, 05 Feb 2021 21:34:00 GMT):
added it after this part``` CC_ID=helloworld_test CC_VER="$(cat ${CC_PATH}/mrenclave)" CC_EP="OR('SampleOrg.member')" ```

munapower (Fri, 05 Feb 2021 21:35:43 GMT):
ok, so sequence is missing from the other commands too ... I will compare the integration one with mine and change accordingly

bur (Fri, 05 Feb 2021 21:37:20 GMT):
yes, that should probably work ... integration test scripts are actually the templates for the tutorial

bur (Fri, 05 Feb 2021 21:37:34 GMT):
but it really sucks that this is missing; we need to fix that

bur (Fri, 05 Feb 2021 21:37:38 GMT):
and probably more

munapower (Fri, 05 Feb 2021 21:39:02 GMT):
no it doesn't suck, cause that means that what I am doing is useful :joy:

munapower (Fri, 05 Feb 2021 21:40:27 GMT):
orderer is missing from chaincode commit too :-)

munapower (Fri, 05 Feb 2021 21:43:41 GMT):
this one is wrong too!``` try ${PEER_CMD} lifecycle chaincode initEnclave --name ${CC_ID} ```

munapower (Fri, 05 Feb 2021 21:45:28 GMT):
at last it worked!!!!

bur (Fri, 05 Feb 2021 22:02:06 GMT):
cool

bur (Fri, 05 Feb 2021 22:05:07 GMT):
with this we can go into the weekend! :)

munapower (Fri, 05 Feb 2021 22:05:42 GMT):
yes!!! Enjoy the weekend. I will document all the changes/corrections later :-)

bur (Fri, 05 Feb 2021 22:05:56 GMT):
awesome! thank you

joy.osive (Tue, 09 Mar 2021 22:17:25 GMT):
Has joined the channel.

joy.osive (Tue, 09 Mar 2021 22:19:24 GMT):

asus-tuf-F15-sgx-support.jpg

joy.osive (Tue, 09 Mar 2021 22:19:24 GMT):

asus-tuf-F15-sgx-support.jpg

munapower (Wed, 10 Mar 2021 17:32:04 GMT):
@BrunoVavala I added what the sections you have to complete and how many chars, in the google doc.

BrunoVavala (Wed, 10 Mar 2021 18:27:05 GMT):
thanks Maria! I am working on it

bur (Fri, 12 Mar 2021 16:29:08 GMT):
merged https://github.com/hyperledger/fabric-rfcs/pull/40 :woo: :champagne_glass:

joy.osive (Thu, 18 Mar 2021 17:26:13 GMT):
https://fpc.osive.com/

joy.osive (Thu, 18 Mar 2021 17:26:13 GMT):
We are sharing the link below which describes the error we've have encountered while following FPC readme (Option 1: using the Docker-based FPC Development Environment ) https://fpc.osive.com/

bur (Thu, 18 Mar 2021 17:35:19 GMT):
oh - did you run a simple `make build` in `$FPC_PATH` before calling `make` in `$FPC_PATH/examples` - assuming all this happens inside the docker dev container :)

ljsebald (Mon, 22 Mar 2021 02:36:28 GMT):
Has joined the channel.

saharshagrawal1 (Thu, 25 Mar 2021 20:28:53 GMT):
Has joined the channel.

munapower (Wed, 07 Apr 2021 11:44:21 GMT):
so I haven't been able to move on from ``` Step 21/21 : RUN git clone https://github.com/nanopb/nanopb.git ${NANOPB_PATH} && cd ${NANOPB_PATH} && git checkout nanopb-${NANOPB_VERSION} && cd generator/proto && make ---> Using cache ---> 1b0deef337df Successfully built 1b0deef337df Successfully tagged hyperledger/fabric-private-chaincode-base-dev:latest DOCKER_BUILDKIT=0 docker tag hyperledger/fabric-private-chaincode-base-dev hyperledger/fabric-private-chaincode-base-dev:master (cd ../.. &&\ DOCKER_BUILDKIT=0 docker build --build-arg FPC_VERSION=master -t hyperledger/fabric-private-chaincode-cc-builder\ --build-arg GIT_USER_NAME='Maria Munaro' --build-arg GIT_USER_EMAIL='mmunaro@hotmail.com'\ -f ./utils/docker/dev_peer_cc-builder/Dockerfile\ --target cc-builder \ --build-arg FPC_REPO_URL=file:///tmp/cloned-local-fpc-git-repo\ --build-arg FPC_REPO_BRANCH_TAG_OR_COMMIT=$(git rev-parse HEAD)\ --build-arg SGX_MODE=SIM\ . ) ```

munapower (Wed, 07 Apr 2021 15:35:19 GMT):
question for @BrunoVavala and @bur, what would you prefer for the go client sdk example:, that both the code as well as the test script be in a subdirectory

munapower (Wed, 07 Apr 2021 15:35:19 GMT):
question for @BrunoVavala and @bur, what would you prefer for the go client sdk example:``` 1) have both test scripts in the same directory``` 2) copy test script to subdirectory where go code is``` 3) make them change the test script consequently losing the other version ... ``` ``` ```

munapower (Wed, 07 Apr 2021 15:37:55 GMT):
personally I like the idea of putting go code and test script in same directory but it means tweeking the test script a bit more ...

munapower (Wed, 07 Apr 2021 19:06:48 GMT):
ok, so I finished the readme using 2) as the option. @bur should I create a PR or how so you can test it?

BrunoVavala (Wed, 07 Apr 2021 20:05:13 GMT):
not sure I get the options, but having tests in a separate folder seems desirable, as we may want to refactor the repo

munapower (Wed, 07 Apr 2021 21:08:46 GMT):
cool because in the end it's what I did. So the HelloWorld example can stay has it is and if the user wants to continue he can afterwards compare one version from the other ...

munapower (Thu, 08 Apr 2021 17:04:54 GMT):
I am doing a Hyperledger Indy course and found this text about the integration code available in the repo and thought it might be a good justification to why keep the FPC integration code when FPC is moved to the Fabric repo ``` A key part of the indy-sdk is the test suite that is automatically executed with each update to the repo. While it's comforting to know the test suite is executed (and updated) with each change, another very useful aspect of the suite for those new to Indy is that the tests are working code that can be used to understand how the indy-sdk works. Not sure what exactly are the parameters to a specific Indy call? Check out the test suite and you'll find a working instance to study. ```

BrunoVavala (Thu, 08 Apr 2021 22:16:34 GMT):
This is precisely why we want to keep that! There is however code that is not used in the integration. So it is possible that such code may not be maintained as required. The open question is whether we should keep this or not.

bur (Mon, 12 Apr 2021 07:48:43 GMT):
yes, please create a PR and add me as reviewer

bur (Mon, 12 Apr 2021 15:29:12 GMT):
@BrunoVavala I created a "main" branch to complete #533; waiting CI to complete; once this is done we can change in the github repo settings the new main branch to "main" and delete "master"

bur (Mon, 12 Apr 2021 15:29:12 GMT):
@BrunoVavala I created a "main" branch to complete [#533](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/533); waiting CI to complete; once this is done we can change in the github repo settings the new main branch to "main" and delete "master"

bur (Mon, 12 Apr 2021 15:29:12 GMT):
@BrunoVavala I created a "main" branch to complete [#533](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/533); waiting CI to complete; once this is done we can change in the github repo settings the new main branch to "main" and delete "master"~~

bur (Mon, 12 Apr 2021 15:29:12 GMT):
~@BrunoVavala I created a "main" branch to complete [#533](https://github.com/hyperledger-labs/fabric-private-chaincode/issues/533); waiting CI to complete; once this is done we can change in the github repo settings the new main branch to "main" and delete "master"~

bur (Mon, 12 Apr 2021 15:30:11 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=kQ5e3q9joT9eAebNp) open PRs will automatically change to be merged into main instead of master

bur (Mon, 12 Apr 2021 15:33:21 GMT):
also, once we switched to main, I will update https://docs.google.com/document/d/1sR7YV3pSYN3NEFiW-2fUqtpsJeJrpC0EWUVtEm0Blcg/

rjones (Mon, 12 Apr 2021 15:35:49 GMT):
when you want to rename `master` to `main`, please 1) submit a PR for [this file](https://github.com/hyperledger-labs/fabric-private-chaincode/blob/master/.github/settings.yaml) and don't merge the PR right away

rjones (Mon, 12 Apr 2021 15:36:00 GMT):
the whole "do the thing and do the thing" makes things worse

bur (Mon, 12 Apr 2021 15:53:56 GMT):
ok this is also done

bur (Mon, 12 Apr 2021 16:23:49 GMT):
renaming master to main is done

bur (Tue, 13 Apr 2021 09:06:03 GMT):
> It is our pleasure to inform you that we have accepted your submission, Fabric Private Chaincode Tutorial, and would like to welcome you as a speaker for Hyperledger Global Forum 2021.

munapower (Tue, 13 Apr 2021 14:12:56 GMT):
Yes!!!! I saw it!

munapower (Tue, 13 Apr 2021 14:13:23 GMT):
can we post it on LinkedIn?

bur (Tue, 13 Apr 2021 14:15:31 GMT):
I would wait until they have announced the full program

bur (Tue, 13 Apr 2021 14:15:52 GMT):
because then you can directly link to our session :)

munapower (Tue, 13 Apr 2021 14:17:05 GMT):
ok!

munapower (Sat, 17 Apr 2021 18:11:30 GMT):
So I am trying to test the changes suggested by Marcus and to do so I have to recreate my docker images. I ran into issues with docker that would crash all by itself. I had to use CleanMyMac and reset Docker (found that it appears to be an issue with updating BigSur). Anyway, was able to run make build in utils/docker ... took forever but it completed. Now when I am running make run in the root directory inside the docker image I get this error``` make[2]: Entering directory '/project/src/github.com/hyperledger-labs/fabric-private-chaincode/common/crypto' make --directory=_build make[3]: Entering directory '/project/src/github.com/hyperledger-labs/fabric-private-chaincode/common/crypto/_build' CMake Warning (dev) in CMakeLists.txt: No project() command is present. The top-level CMakeLists.txt file must contain a literal, direct call to the project() command. Add a line of code such as project(ProjectName) near the top of the file, but after cmake_minimum_required(). CMake is pretending there is a "project(Project)" command on the first line. This warning is for project developers. Use -Wno-dev to suppress it. -- SGX_COMMON_CFLAGS: -m64 -DSGX_SIM_MODE -O2 -- SGX_SDK: /opt/intel/sgxsdk -- SGX_MODE: SIM -- SGX_BUILD: PRERELEASE -- SGX_LIBRARY_PATH: /opt/intel/sgxsdk/lib64 -- SGX_ENCLAVE_SIGNER: /opt/intel/sgxsdk/bin/x64/sgx_sign -- SGX_EDGER8R: /opt/intel/sgxsdk/bin/x64/sgx_edger8r -- SGX_SSL: /opt/intel/sgxssl -- SGX_SSL_LIBRARY_PATH: /opt/intel/sgxssl/lib64 codcov disabled -- Compiling with optimizations (-O2). To use debug flags, set the DEBUG environment variable. CMake Error at pdo/common/CMakeVariables.txt:39 (message): PDO_ENCLAVE_CODE_SIGN_PEM environment variable not defined! Call Stack (most recent call first): CMakeLists.txt:101 (INCLUDE) -- Configuring incomplete, errors occurred! See also "/project/src/github.com/hyperledger-labs/fabric-private-chaincode/common/crypto/_build/CMakeFiles/CMakeOutput.log". make[3]: *** [Makefile:622: cmake_check_build_system] Error 1 make[3]: Leaving directory '/project/src/github.com/hyperledger-labs/fabric-private-chaincode/common/crypto/_build' make[2]: *** [Makefile:22: build] Error 2 make[2]: Leaving directory '/project/src/github.com/hyperledger-labs/fabric-private-chaincode/common/crypto' make[1]: *** [Makefile:11: build] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger-labs/fabric-private-chaincode/common' make: *** [Makefile:22: build] Error 2 root@docker-desktop:/project/src/github.com/hyperledger-labs/fabric-private-chai ncode# ``` help!!!!

munapower (Sat, 17 Apr 2021 22:32:57 GMT):
uf just reread what I posted ... I got the makes the other way round ... so make run ran fine, and the error is from make build

munapower (Sun, 18 Apr 2021 18:02:33 GMT):
@BrunoVavala I just read about this project in the HL messages digest. https://github.com/raftAtGit/hl-fabric-operator don't know if it will be useful for you or not ...

BrunoVavala (Sun, 18 Apr 2021 20:47:34 GMT):
thanks Maria, it's seems pretty related to BAF

bur (Wed, 21 Apr 2021 07:13:02 GMT):
I think this error was resolved by doing a `make clean` and then run `make` again right?

munapower (Wed, 21 Apr 2021 12:50:05 GMT):
it was solved going into the crypto dir and running those commands, yes

munapower (Wed, 21 Apr 2021 23:04:45 GMT):
Hello guys! A question I received during my presentation was if SGX is open source. I replied that the API we use the documentation is available for all and that they can see how FPC uses it but that I wasn't aware if it was open source or not.

BrunoVavala (Thu, 22 Apr 2021 23:22:49 GMT):
SGX is a hardware security technology on Intel processors, which includes a set of instructions that can be used by software to secure applications. In our case, we use the SGX SDK (and the driver) as a library/middleware which uses these instructions to create enclaves. This is open-source software created by Intel.

jbessa (Wed, 05 May 2021 23:35:11 GMT):
Has joined the channel.

munapower (Mon, 10 May 2021 14:31:58 GMT):
Hello! I am trying to get the test-network up and running and I am within the docker dev environment. I set the environment variables has stated and when I go to the make build I get this error:`Step 1/16 : ARG FPC_VERSION=latest Step 2/16 : FROM hyperledger/fabric-private-chaincode-ccenv:${FPC_VERSION} pull access denied for hyperledger/fabric-private-chaincode-ccenv, repository does not exist or may require 'docker login': denied: requested access to the resource is denied make[1]: *** [Makefile:62: docker-boilerplate-ecc] Error 1`. I thought it might be that I hadn't used the mock-enclave tags so I re ran the make build with those options but I still get the same error

munapower (Mon, 10 May 2021 14:31:58 GMT):
Hello! I am trying to get the test-network up and running and I am within the docker dev environment. I set the environment variables has stated and when I go to the make build I get this error:``` Step 1/16 : ARG FPC_VERSION=latest Step 2/16 : FROM hyperledger/fabric-private-chaincode-ccenv:${FPC_VERSION} pull access denied for hyperledger/fabric-private-chaincode-ccenv, repository does not exist or may require 'docker login': denied: requested access to the resource is denied make[1]: *** [Makefile:62: docker-boilerplate-ecc] Error 1 ``` . I thought it might be that I hadn't used the mock-enclave tags so I re ran the make build with those options but I still get the same error

bur (Tue, 11 May 2021 15:07:18 GMT):
can you run `make docker` from fpc root

munapower (Tue, 11 May 2021 15:07:58 GMT):
let me try

munapower (Tue, 11 May 2021 15:08:56 GMT):
yes, it ran successfully

munapower (Tue, 11 May 2021 15:12:22 GMT):
that worked! I was able to do the make build!!

munapower (Tue, 11 May 2021 16:13:10 GMT):
Running the test-network example, when I am trying to start the network I get an error creating the channel ``` Error: Post "https://localhost:7053/participation/v1/channels": dial tcp [::1]:7053: connect: connection refused ``` It turns out that the orderer was not listed when I did a docker ps. I was able to solve this executing ./network.sh down, and then re-running network.sh up and the createchannel

munapower (Tue, 11 May 2021 17:19:50 GMT):
Continuing with the sample test network when I am at the end of the section that starts the network where you have to run make ercc-ecc-start, that never returns the command prompt. I ended it using CTRL+z, and then when I try to execute 'CC_ID=echo ORG_NAME=Org1 go run . -withLifecycleInitEnclave' I get the following error:``` ercc.peer0.org1.example.com | 2021-05-11 16:11:32.199 UTC [ercc] main -> INFO 002 starting enclave registry (ercc_1.0:0919bd1be2e779a582a537da8e29fba241972c3531472006b170b0c26a1d71fb) ercc-ecc-stop down quit ^Z [1]+ Stopped make ercc-ecc-start root@docker-desktop:/project/src/github.com/hyperledger/fabric-private-chaincode/samples/deployment/test-network# cd $FPC_PATH/samples/deployment/test-network root@docker-desktop:/project/src/github.com/hyperledger/fabric-private-chaincode/samples/deployment/test-network# ./update-connection.sh root@docker-desktop:/project/src/github.com/hyperledger/fabric-private-chaincode/samples/deployment/test-network# cd $FPC_PATH/samples/application/simple-go root@docker-desktop:/project/src/github.com/hyperledger/fabric-private-chaincode/samples/application/simple-go# CC_ID=echo ORG_NAME=Org1 go run . -withLifecycleInitEnclave 2021-05-11 17:16:04.421 UTC [sdk-test] main -> FATA 001 failed to create sdk: failed to initialize configuration: unable to load config backend: loading config file failed: /project/src/github.com/hyperledger/fabric-private-chaincode/integration/test-network/fabric-samples/test-network/organizations/peerOrganizations/Org1.example.com/connection-Org1.yaml: open /project/src/github.com/hyperledger/fabric-private-chaincode/integration/test-network/fabric-samples/test-network/organizations/peerOrganizations/Org1.example.com/connection-Org1.yaml: no such file or directory exit status 1 ```

munapower (Tue, 11 May 2021 17:23:48 GMT):
I am guessing that line 109 of main.go is the issue ``` // we use the mspPath and connections profil provided by the fabric-samples test network if not specified by the user testNetworkPath := filepath.Join(fpcPath, "integration", "test-network", "fabric-samples", "test-network") ```

munapower (Tue, 11 May 2021 20:32:15 GMT):
That was the issue, it should be // we use the mspPath and connections profil provided by the fabric-samples test network if not specified by the user testNetworkPath := filepath.Join(fpcPath, "samples", "deployment", "test-network", "fabric-samples", "test-network")

munapower (Tue, 11 May 2021 20:47:48 GMT):
I created an issue and am waiting to speak with Marcus to create the PR

ikegawa.koshi (Wed, 12 May 2021 00:16:12 GMT):
Has joined the channel.

rjones (Wed, 12 May 2021 04:46:06 GMT):
Has left the channel.

bur (Wed, 12 May 2021 09:46:15 GMT):
please go ahead and create the PR for this! good catch Maria!

bur (Wed, 12 May 2021 09:48:37 GMT):
> where you have to run make ercc-ecc-start, that never returns the command prompt. I ended it using CTRL+z, This should be also added to the README. I would prefer to let the user open a second terminal an continue there, so the first terminal can show the chaincode activity.

bur (Wed, 12 May 2021 14:16:50 GMT):
merged :)

ikegawa.koshi (Thu, 13 May 2021 04:16:35 GMT):
Hello. I ran test-network and installed the chaincode for echo. Go to "$FPC_PATH/samples/application/simple-go" and type "CC_ID=echo MSP_ID=Org1MSP ORG_NAME=org1 go run . -withLifecycleInitEnclave" and confirmed that it works correctly. After running the above, I got the following error when running without the withLifecycleInitEnclave flag. ` [fabsdk/core] 2021/05/13 03:58:13 UTC - cryptosuite.GetDefault -> INFO No default cryptosuite found, using default SW implementation 2021-05-13 12:58:13.485 JST [sdk-test] main -> INFO 001 --> Invoke FPC chaincode: echo 2021-05-13 12:58:13.501 JST [sdk-test] main -> FATA 002 Failed to Submit transaction: Failed to evaluate: Transaction processing for endorser [localhost:7051]: Chaincode status Code: (500) UNKNOWN. Description: t.enclave.Invoke failed: pk decryption failed exit status 1 ` I want to try to invoke, how do I do that?

ikegawa.koshi (Thu, 13 May 2021 04:16:35 GMT):
Hello. I ran test-network and installed the chaincode for echo. Go to "$FPC_PATH/samples/application/simple-go" and type "CC_ID=echo MSP_ID=Org1MSP ORG_NAME=org1 go run . -withLifecycleInitEnclave" and confirmed that it works correctly. After running the above, I got the following error when running without the withLifecycleInitEnclave flag. `[fabsdk/core] 2021/05/13 03:58:13 UTC - cryptosuite.GetDefault -> INFO No default cryptosuite found, using default SW implementation 2021-05-13 12:58:13.485 JST [sdk-test] main -> INFO 001 --> Invoke FPC chaincode: echo 2021-05-13 12:58:13.501 JST [sdk-test] main -> FATA 002 Failed to Submit transaction: Failed to evaluate: Transaction processing for endorser [localhost:7051]: Chaincode status Code: (500) UNKNOWN. Description: t.enclave.Invoke failed: pk decryption failed exit status 1 ` I want to try to invoke, how do I do that?

ikegawa.koshi (Thu, 13 May 2021 04:16:35 GMT):
Hello. I ran test-network and installed the chaincode for echo. Go to "$FPC_PATH/samples/application/simple-go" and type "CC_ID=echo MSP_ID=Org1MSP ORG_NAME=org1 go run . -withLifecycleInitEnclave" and confirmed that it works correctly. After running the above, I got the following error when running without the withLifecycleInitEnclave flag. ` [fabsdk/core] 2021/05/13 03:58:13 UTC - cryptosuite.GetDefault -> INFO No default cryptosuite found, using default SW implementation 2021-05-13 12:58:13.485 JST [sdk-test] main -> INFO 001 --> Invoke FPC chaincode: echo 2021-05-13 12:58:13.501 JST [sdk-test] main -> FATA 002 Failed to Submit transaction: Failed to evaluate: Transaction processing for endorser [localhost:7051]: Chaincode status Code: (500) UNKNOWN. Description: t.enclave.Invoke failed: pk decryption failed exit status 1 ` I want to try to invoke, how do I do that?

ikegawa.koshi (Thu, 13 May 2021 04:16:35 GMT):
Hello. I ran test-network and installed the chaincode for echo. Go to "$FPC_PATH/samples/application/simple-go" and type "CC_ID=echo MSP_ID=Org1MSP ORG_NAME=org1 go run . -withLifecycleInitEnclave" and confirmed that it works correctly. After running the above, I got the following error when running without the withLifecycleInitEnclave flag. ``` [fabsdk/core] 2021/05/13 03:58:13 UTC - cryptosuite.GetDefault -> INFO No default cryptosuite found, using default SW implementation 2021-05-13 12:58:13.485 JST [sdk-test] main -> INFO 001 --> Invoke FPC chaincode: echo 2021-05-13 12:58:13.501 JST [sdk-test] main -> FATA 002 Failed to Submit transaction: Failed to evaluate: Transaction processing for endorser [localhost:7051]: Chaincode status Code: (500) UNKNOWN. Description: t.enclave.Invoke failed: pk decryption failed exit status 1 ``` I want to try to invoke, how do I do that?

ikegawa.koshi (Thu, 13 May 2021 04:16:35 GMT):
Hello. I ran test-network and installed the chaincode for echo. Go to `$FPC_PATH/samples/application/simple-go` and type `CC_ID=echo MSP_ID=Org1MSP ORG_NAME=org1 go run . -withLifecycleInitEnclave` and confirmed that it works correctly. After running the above, I got the following error when running without the withLifecycleInitEnclave flag. ``` [fabsdk/core] 2021/05/13 03:58:13 UTC - cryptosuite.GetDefault -> INFO No default cryptosuite found, using default SW implementation 2021-05-13 12:58:13.485 JST [sdk-test] main -> INFO 001 --> Invoke FPC chaincode: echo 2021-05-13 12:58:13.501 JST [sdk-test] main -> FATA 002 Failed to Submit transaction: Failed to evaluate: Transaction processing for endorser [localhost:7051]: Chaincode status Code: (500) UNKNOWN. Description: t.enclave.Invoke failed: pk decryption failed exit status 1 ``` I want to try to invoke, how do I do that?

bur (Mon, 17 May 2021 07:25:16 GMT):
hey, are you using the mock_enclave for some reason?

bur (Mon, 17 May 2021 07:25:16 GMT):
hey @ikegawa.koshi , are you using the mock_enclave for some reason?

bur (Mon, 17 May 2021 07:31:32 GMT):
let me rephrase .... did you use `make build GOTAGS="-tags mock_ecc"` when building echo chaincode?

ikegawa.koshi (Mon, 17 May 2021 09:12:08 GMT):
Thanks for the reply! Now, I'm running a mock on AWS which can not use SGX. I have tried this README (https://github.com/hyperledger/fabric-private-chaincode/blob/main/samples/deployment/test-network/README.md). I use `make build GOTAGS="-tags mock_ecc”` when building echo chaincode. I confirmed that the network was up and running and that able to install chaincode. After that, I ran the following command to make sure it worked correctly. ``` CC_ID=echo MSP_ID=Org1MSP ORG_NAME=org1 go run . -withLifecycleInitEnclave ``` Next, I want to try following commands (without withLifecycleInitEnclave flag). ``` cd $FPC_PATH/samples/application/simple-go CC_ID=echo ORG_NAME=Org1 go run . CC_ID=echo ORG_NAME=Org2 go run . ``` But, I got the error message…

ikegawa.koshi (Mon, 17 May 2021 09:21:52 GMT):
I see that simple-cli-go is used for K8s deployment, is it recommended to use simple-cli-go for test-network as well?

bur (Mon, 17 May 2021 09:36:31 GMT):
oh I see ... the ecc mock flag is used to use the implementation in `ecc/chaincode/enclave/mock_enclave.go`. That is, the fpc echo code is not used

bur (Mon, 17 May 2021 09:36:46 GMT):
this mock_enclave.go is mainly for debugging ecc components

bur (Mon, 17 May 2021 09:37:06 GMT):
for a non-sgx environment I recommend using sgx simulation mode

bur (Mon, 17 May 2021 09:42:17 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=yFuQfRjivnj3KkHQ8) this should also work; you just need to configure the simple-cli-go to use the correct msp credentials; see the env section in `org1-cli-deployment.yaml` as an example

ikegawa.koshi (Tue, 18 May 2021 09:44:54 GMT):
I set up test-network and configured fpcclient with reference to `org1-cli-deployment.yaml` and it worked correctly! Thank you! Shall I add the procedure for using fpcclient to the README of test-network?

bur (Tue, 18 May 2021 09:46:59 GMT):
awesome! glad that this worked! This is a good idea. I suggest to add another section after `Interact with the FPC Chaincode` and explain that as an alternative to the simple-go application one can also use the simple-cli-go

nnao (Tue, 18 May 2021 09:47:13 GMT):
Has joined the channel.

ikegawa.koshi (Tue, 18 May 2021 09:53:43 GMT):
Thanks for your suggestion! OK, I will add the usage of fpcclient to the README and create a pull request.

nao (Fri, 21 May 2021 14:07:45 GMT):
Has joined the channel.

munapower (Tue, 25 May 2021 12:00:27 GMT):
I am trying to run make run in utils/docker and I get the following error. There appears to be an issue with some of the sgx libraries? I found the instruction generating the error in the DockerFile in the base-rt subdirectory ``` Get:19 http://ports.ubuntu.com/ubuntu-ports focal-security/restricted arm64 Packages [2244 B] Fetched 16.2 MB in 13s (1224 kB/s) Reading package lists... Reading package lists... Building dependency tree... Reading state information... E: Unable to locate package libsgx-urts E: Unable to locate package libsgx-launch E: Unable to locate package libsgx-epid The command '/bin/sh -c echo "deb [arch=amd64] https://download.01.org/intel-sgx/sgx_repo/ubuntu ${UBUNTU_NAME} main" >> /etc/apt/sources.list && wget -qO - https://download.01.org/intel-sgx/sgx_repo/ubuntu/intel-sgx-deb.key | apt-key add - && apt-get update -q && env DEBIAN_FRONTEND="noninteractive" TZ="UTC" apt-get install -y -q --no-install-recommends libssl-dev libcurl4-openssl-dev libprotobuf-dev make libsgx-urts libsgx-launch libsgx-epid' returned a non-zero code: 100 make: *** [base-rt] Error 100 ```

bur (Wed, 26 May 2021 12:15:40 GMT):
It seems I have the same issue running on a M1 Mac

bur (Wed, 26 May 2021 12:18:36 GMT):
on my Intel Mac this is working

munapower (Wed, 26 May 2021 19:02:57 GMT):
uf :-( ok, so I am going to have to use my old mac stripped of all the rest and see if that way it works

ikegawa.koshi (Thu, 27 May 2021 05:01:24 GMT):
I tried HW SGX mode on the Microsoft Azure DC series instance that has an SGX environment. I have added `export SGX_MODE=HW` to `$FPC_PATH/config.override.mk`. I have confirmed that the build of `$FPC_PATH/utils/docker` is successful. I ran the `fpc-development-main` bash and ran make in the `$FPC_PATH` directory. However, I got the following error message... ``` make[4]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make -C _build test || \ (echo "PDO crypto tests failed. Define PDO_DEBUG_BUILD=1 environment for enabling logging in tests." && exit 1) make[3]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' Running tests... Test project /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build Start 1: utest 1/3 Test #1: utest ............................ Passed 0.20 sec Start 2: ttest 2/3 Test #2: ttest ............................ Passed 0.24 sec Start 3: attested_evidence_test.sh 3/3 Test #3: attested_evidence_test.sh ........***Failed 0.14 sec 67% tests passed, 1 tests failed out of 3 Total Test time (real) = 0.58 sec The following tests FAILED: 3 - attested_evidence_test.sh (Failed) Errors while running CTest make[3]: *** [Makefile:84: test] Error 8 make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' PDO crypto tests failed. Define PDO_DEBUG_BUILD=1 environment for enabling logging in tests. make[2]: *** [Makefile:25: test] Error 1 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto' make[1]: *** [Makefile:11: test] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common' make: *** [Makefile:22: test] Error 2 root@ike-dev:/project/src/github.com/hyperledger/fabric-private-chaincode# ``` Next, I defined PDO_DEBUG_BUILD=1 environment and retry make. But, I get same error message... Does anybody have an idea?

bur (Thu, 27 May 2021 07:01:40 GMT):
can you set `SGX_BUILD=DEBUG` in your `config.override.mk` and see that this helps? You can also try to run the attestation test manually, it is in `common/crytpo/attestation-api/test`, thinking about the attestation test failed ... did you register at Intel IAS and added your API_KEY, SPID_TYPE, and SPID in $FPC_PATH/config?

bur (Thu, 27 May 2021 07:13:27 GMT):
also, can you double check that on the host and inside the fpc docker dev container the sgx device is available (/dev/isgx/ or /dev/sgx)

bur (Thu, 27 May 2021 07:39:26 GMT):
the reason for this issue is that on a M1 Mac your docker image is build for aarch64 not amd64 architecture. that results in the error when installing the sgx libs

bur (Thu, 27 May 2021 07:42:55 GMT):
`_ docker git:(main) _ docker run -it ubuntu:20.04 /bin/bash root@ade7cb2d75f5:/# uname -a Linux ade7cb2d75f5 5.10.25-linuxkit #1 SMP PREEMPT Tue Mar 23 09:24:45 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux`

bur (Thu, 27 May 2021 07:42:55 GMT):
``` _ docker git:(main) _ docker run -it ubuntu:20.04 /bin/bash root@ade7cb2d75f5:/# uname -a Linux ade7cb2d75f5 5.10.25-linuxkit #1 SMP PREEMPT Tue Mar 23 09:24:45 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux ```

bur (Thu, 27 May 2021 07:53:59 GMT):
``` root@b986ab736d02:/# apt-cache show libsgx-urts N: Unable to locate package libsgx-urts E: No packages found ```

bur (Thu, 27 May 2021 07:54:29 GMT):
``` root@b986ab736d02:/# apt-cache show libsgx-urts:amd64 Package: libsgx-urts Version: 2.13.103.1-focal1 Architecture: amd64 Maintainer: Installed-Size: 250 Depends: libc6 (>= 2.14), libgcc-s1 (>= 3.0), libstdc++6 (>= 5.2), libsgx-enclave-common (>= 2.13.103.1-focal1) Section: libs Priority: optional Homepage: https://github.com/intel/linux-sgx Description: Intel(R) Software Guard Extensions uRTS Description-md5: 608441907c2646dfe106f1acf72b63ed Filename: pool/main/libs/libsgx-urts/libsgx-urts_2.13.103.1-focal1_amd64.deb Size: 64522 MD5sum: 7c619752f9ed445f357e3e3a921ef6ed SHA1: 07223744c5de26fdcb9e84c2ddf6b530f5d032aa SHA256: d2e617ded63fdd715d7fbe16c4fd49b76d509c397f492831b7bcebcec935a491 Package: libsgx-urts Version: 2.13.100.4-focal1 Architecture: amd64 Maintainer: Installed-Size: 250 Depends: libc6 (>= 2.14), libgcc-s1 (>= 3.0), libstdc++6 (>= 5.2), libsgx-enclave-common (>= 2.13.100.4-focal1) Section: libs Priority: optional Homepage: https://github.com/intel/linux-sgx Description: Intel(R) Software Guard Extensions uRTS Description-md5: 608441907c2646dfe106f1acf72b63ed Filename: pool/main/libs/libsgx-urts/libsgx-urts_2.13.100.4-focal1_amd64.deb Size: 64314 MD5sum: a3588609616889a91fb4c3da7874eb4a SHA1: fe06d1632e16e6183d550bba09c60c83b136edaf SHA256: e9771475e8f7f1b7d4077ece8bbdf34123c14fb48343545b8e29645176167363 Package: libsgx-urts Version: 2.12.100.3-focal1 Architecture: amd64 Maintainer: Installed-Size: 250 Depends: libc6 (>= 2.14), libgcc-s1 (>= 3.0), libstdc++6 (>= 5.2), libsgx-enclave-common (>= 2.12.100.3-focal1) Section: libs Priority: optional Homepage: https://github.com/intel/linux-sgx Description: Intel(R) Software Guard Extensions uRTS Description-md5: 608441907c2646dfe106f1acf72b63ed Filename: pool/main/libs/libsgx-urts/libsgx-urts_2.12.100.3-focal1_amd64.deb Size: 64242 MD5sum: 60a7fc2d8a7dbe894758351ca500dcee SHA1: 5f1e5d2b50bc5a827308145dc08039d5d3f14a49 SHA256: 42c6eff2fa457bc41bf74b4c62e81e8364192ed4af874c6143a054d9ff189045 ```

bur (Thu, 27 May 2021 09:32:51 GMT):
@munapower can you please try to add `DOCKER_BUILD_OPTS=--platform linux/amd64` to your `config.override.mk`

bur (Thu, 27 May 2021 09:33:44 GMT):
this tells docker to use amd64 platform and libsgx-* packages are installed

bur (Thu, 27 May 2021 10:39:32 GMT):
FYI building sgx-ssl takes ages ... still building

bur (Thu, 27 May 2021 12:01:47 GMT):
building sgx-ssl failed

bur (Thu, 27 May 2021 12:02:07 GMT):
after more then an hour compiling

BrunoVavala (Thu, 27 May 2021 17:34:36 GMT):
One more thing. You should consider that FPC does not support SGX DCAP attestation yet, but just EPID-based attestation. It is possible that Azure only supports the former.

munapower (Thu, 27 May 2021 20:31:23 GMT):
yes, the same happened to me it fails when it starts running the test scripts``` make[2]: Entering directory '/tmp/intel-sgx-ssl/Linux/sgx/test_app' /usr/bin/make -f sgx_u.mk test make[3]: Entering directory '/tmp/intel-sgx-ssl/Linux/sgx/test_app' token_path: /root/enclave.token Error: Unexpected error occurred. make[3]: *** [sgx_u.mk:108: test] Error 1 make[3]: Leaving directory '/tmp/intel-sgx-ssl/Linux/sgx/test_app' make[2]: *** [Makefile:38: test] Error 2 make[2]: Leaving directory '/tmp/intel-sgx-ssl/Linux/sgx/test_app' make[1]: *** [Makefile:74: test] Error 2 make[1]: Leaving directory '/tmp/intel-sgx-ssl/Linux/sgx' make: *** [Makefile:58: test] Error 2 The command '/bin/sh -c git clone 'https://github.com/intel/intel-sgx-ssl.git' && cd intel-sgx-ssl && . /opt/intel/sgxsdk/environment && git checkout lin_${SGXSSL} && cd openssl_source && wget -q https://www.openssl.org/source/openssl-${OPENSSL}.tar.gz && cd ../Linux && make SGX_MODE=SIM DESTDIR=${SGX_SSL} all test && make install' returned a non-zero code: 2 make: *** [base-dev] Error 2 ``` @BrunoVavala do you have any ideas?

BrunoVavala (Thu, 27 May 2021 20:59:39 GMT):
I guess you are using your M1 machine, right? I suppose you are running in a fundamental error, for which there may not be an easy fix. Here is my theory. Although you can compile successfully SGXSSL and its tests, the applications still have dependencies on the SGX SDK. However, the SGX SDK is not compiled. Rather, we download and use the binaries -- which is faster and just works! Most importantly, these are x86 binaries, and I rather doubt that there is a translation layer.

BrunoVavala (Thu, 27 May 2021 21:07:05 GMT):
A possible fix is to switch to SGX SDK source code, and try to compile it.

ikegawa.koshi (Fri, 28 May 2021 10:01:32 GMT):
@bur Thank you for your comment! After adding the following to config.override.mk, I tried run `make run` in the `$FPC_PATH/utils/docker` directory. ``` # My config.override.mk DOCKER_BUILD_OPTS=--build-arg UBUNTU_VERSION=20.04 --build-arg UBUNTU_NAME=focal export SGX_MODE=HW export SGX_BUILD=DEBUG ``` However, `SGX_BUILD=DEBUG` was not added to the environment variable of fpc-development-main. ``` # check environment variable $ env | grep -i SGX PKG_CONFIG_PATH=:/opt/intel/sgxsdk/pkgconfig SGX_MODE=HW SGXSSL_VERSION= SGX_SSL=/opt/intel/sgxssl SGX_SDK=/opt/intel/sgxsdk LD_LIBRARY_PATH=:/opt/intel/sgxsdk/sdk_libs PATH=/project/bin:/usr/local/go/bin:/opt/intel/sgxsdk.extras/external/toolset/ubuntu20.04:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/s bin:/bin:/opt/intel/sgxsdk/bin:/opt/intel/sgxsdk/bin/x64 ``` Therefore, I manually defined `SGX_BUILD=DEBUG` in fpc-development-main container. ``` $ export SGX_BUILD=DEBUG ``` After that, I tried to make again, but there was no change in the error message displayed. (There were no additional debug messages.) --- I also re-obtained Intel EPID. I created both linkable and unlinkable, configured both and tried them. However, it never worked correctly. I will try `common/crytpo/attestation-api/test` manually. If I get more info, I will share!

ikegawa.koshi (Fri, 28 May 2021 10:01:32 GMT):
@BrunoVavala Thank you for your comment! I will check that Azure is supports them... There is one thing I would like you to tell me. What environment are the this community members running SGX HW on?

ikegawa.koshi (Fri, 28 May 2021 10:01:32 GMT):
@bur Thank you for your comment! After adding the following to config.override.mk, I tried run `make run` in the `$FPC_PATH/utils/docker` directory. ``` # My config.override.mk DOCKER_BUILD_OPTS=--build-arg UBUNTU_VERSION=20.04 --build-arg UBUNTU_NAME=focal export SGX_MODE=HW export SGX_BUILD=DEBUG ``` However, `SGX_BUILD=DEBUG` was not added to the environment variable of fpc-development-main. ``` # check environment variable $ env | grep -i SGX PKG_CONFIG_PATH=:/opt/intel/sgxsdk/pkgconfig SGX_MODE=HW SGXSSL_VERSION= SGX_SSL=/opt/intel/sgxssl SGX_SDK=/opt/intel/sgxsdk LD_LIBRARY_PATH=:/opt/intel/sgxsdk/sdk_libs PATH=/project/bin:/usr/local/go/bin:/opt/intel/sgxsdk.extras/external/toolset/ubuntu20.04:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/s bin:/bin:/opt/intel/sgxsdk/bin:/opt/intel/sgxsdk/bin/x64 ``` Therefore, I manually defined `SGX_BUILD=DEBUG` in fpc-development-main container. ``` $ export SGX_BUILD=DEBUG ``` After that, I tried to make again, but there was no change in the error message displayed. (There were no additional debug messages.) --- I also re-obtained Intel EPID. I created both linkable and unlinkable, configured both and tried them. However, it never worked correctly. I will try `common/crytpo/attestation-api/test` manually. If I get more info, I will share!

ikegawa.koshi (Fri, 28 May 2021 10:03:11 GMT):
@BrunoVavala Thank you for your comment! I will check that Azure is supports them... There is one thing I would like you to tell me. What environment are the this community members running SGX HW on?

bur (Fri, 28 May 2021 13:56:31 GMT):
I have an old Dell Optiplex 5040 under my desk and a bunch of supermicros 5019-MR

bur (Fri, 28 May 2021 13:56:57 GMT):
unfortunately, both, are not supporting dcap

bur (Fri, 28 May 2021 13:57:55 GMT):
maybe you can look at this list https://github.com/ayeks/SGX-hardware

BrunoVavala (Fri, 28 May 2021 18:09:45 GMT):
We used/tested FPC in SGX HW mode on different hardware, Namely client processors, for instance i5's 10th gen Comet Lake, 6th gen Skylake, 8th gen Coffee Lake, Pentium Gemini Lake, and server processors, for instance Xeon's E Coffee Lake. While some of these support DCAP, they are still capable of running FPC with EPID-based attestation.

ikegawa.koshi (Mon, 31 May 2021 01:37:18 GMT):
@bur @BrunoVavala Thank you! I see... Does anyone has the experience to use SGX mode using a cloud service? I already tried to use that checker on my Azure instance. This instance have Intel Xeon E-2288G CPU. Here's the result. ``` eax: 906ed ebx: 1040800 ecx: feda3203 edx: 1f8bfbff stepping 13 model 14 family 6 processor type 0 extended model 9 extended family 0 smx: 0 Extended feature bits (EAX=07H, ECX=0H) eax: 0 ebx: 9c6fbd ecx: 40000000 edx: 400 sgx available: 1 sgx launch control: 1 CPUID Leaf 12H, Sub-Leaf 0 of Intel SGX Capabilities (EAX=12H,ECX=0) eax: 1 ebx: 0 ecx: 0 edx: 241f sgx 1 supported: 1 sgx 2 supported: 0 MaxEnclaveSize_Not64: 1f MaxEnclaveSize_64: 24 CPUID Leaf 12H, Sub-Leaf 1 of Intel SGX Capabilities (EAX=12H,ECX=1) eax: 36 ebx: 0 ecx: 1f edx: 0 CPUID Leaf 12H, Sub-Leaf 2 of Intel SGX Capabilities (EAX=12H,ECX=2) eax: c0200001 ebx: 4 ecx: 6e00001 edx: 0 size of EPC section in Processor Reserved Memory, 110 M CPUID Leaf 12H, Sub-Leaf 3 of Intel SGX Capabilities (EAX=12H,ECX=3) eax: c7200001 ebx: 4 ecx: 200001 edx: 0 size of EPC section in Processor Reserved Memory, 2 M CPUID Leaf 12H, Sub-Leaf 4 of Intel SGX Capabilities (EAX=12H,ECX=4) eax: 0 ebx: 0 ecx: 0 edx: 0 size of EPC section in Processor Reserved Memory, 0 M CPUID Leaf 12H, Sub-Leaf 5 of Intel SGX Capabilities (EAX=12H,ECX=5) eax: 0 ebx: 0 ecx: 0 edx: 0 size of EPC section in Processor Reserved Memory, 0 M CPUID Leaf 12H, Sub-Leaf 6 of Intel SGX Capabilities (EAX=12H,ECX=6) eax: 0 ebx: 0 ecx: 0 edx: 0 size of EPC section in Processor Reserved Memory, 0 M CPUID Leaf 12H, Sub-Leaf 7 of Intel SGX Capabilities (EAX=12H,ECX=7) eax: 0 ebx: 0 ecx: 0 edx: 0 size of EPC section in Processor Reserved Memory, 0 M CPUID Leaf 12H, Sub-Leaf 8 of Intel SGX Capabilities (EAX=12H,ECX=8) eax: 0 ebx: 0 ecx: 0 edx: 0 size of EPC section in Processor Reserved Memory, 0 M CPUID Leaf 12H, Sub-Leaf 9 of Intel SGX Capabilities (EAX=12H,ECX=9) eax: 0 ebx: 0 ecx: 0 edx: 0 size of EPC section in Processor Reserved Memory, 0 M ```

bur (Mon, 31 May 2021 14:05:27 GMT):
>sgx available: 1 >sgx launch control: 1

bur (Mon, 31 May 2021 14:05:58 GMT):
this looks like you have dcap support on that box

bur (Mon, 31 May 2021 14:09:21 GMT):
we have dcap support already on our agenda https://github.com/hyperledger/fabric-private-chaincode/issues/175

avadam (Mon, 31 May 2021 18:21:11 GMT):
Has joined the channel.

BrunoVavala (Wed, 02 Jun 2021 15:29:55 GMT):
That's right. In theory, the machine should be able to perform an EPID attestation. However, the SGX driver may not be the right one, and it should be checked whether you could replace it and whether you could provision the platform.

munapower (Tue, 08 Jun 2021 15:24:46 GMT):
sorry guys! I am watching the key notes session!

munapower (Tue, 08 Jun 2021 15:25:00 GMT):
forgot about the weekly meetin

munapower (Tue, 08 Jun 2021 15:25:00 GMT):
forgot about the weekly meeting

bur (Tue, 08 Jun 2021 15:56:36 GMT):
no problem

bur (Tue, 08 Jun 2021 15:56:48 GMT):
we canceled it for today

bur (Tue, 08 Jun 2021 15:57:17 GMT):
since everyone should have a chance to listen in for the HLGF keynote

ksanjayk (Tue, 08 Jun 2021 18:37:50 GMT):
Has joined the channel.

MicBowman (Tue, 08 Jun 2021 19:11:14 GMT):
nice talk!

bur (Wed, 09 Jun 2021 09:10:29 GMT):
Interesting talk ... very similar to our sealed auction last year https://hgf2021.sched.com/event/j3fJ/re-engineering-election-process-with-blockchain-and-confidential-computing-shivendra-yadav-vikram-sharma-hcl-technologies-ltd?linkback=grid&iframe=no

bur (Wed, 09 Jun 2021 16:26:03 GMT):
another interesting talk by @ikegawa.koshi https://hgf2021.sched.com/event/jfmJ?iframe=no

munapower (Wed, 09 Jun 2021 18:44:39 GMT):

Lab Contributions

munapower (Wed, 09 Jun 2021 18:44:40 GMT):
David Enyeart just mentioned us in the session Project Demo: Fabric

bur (Thu, 10 Jun 2021 08:40:28 GMT):
Great to see that they are using FPC store protect metadata in the blockchain for a genomic data use-case

bur (Thu, 10 Jun 2021 08:40:28 GMT):
Great to see that they are using FPC to store protect metadata in the blockchain for a genomic data use-case

bur (Thu, 10 Jun 2021 08:41:12 GMT):
@ikegawa.koshi can you share the slides with us? I can't find them on sched yet

ikegawa.koshi (Thu, 10 Jun 2021 08:46:29 GMT):
Thank you for listening my session! The slides were uploaded at the last minute, so they haven't been reflected yet...... I will share my slide in this chat!

ikegawa.koshi (Thu, 10 Jun 2021 08:47:00 GMT):

HGF2021-ikegawa.pdf

munapower (Mon, 14 Jun 2021 17:01:54 GMT):
Yesterday I wanted to test the readmes that I have modified so I brought everything down and started from util/dockers ... and then went to test-network to do the make build there. My environment got stuck again on the ecc docker build like before the HGF event. This time I checked and I did have the ccenv image in my docker repository. I restarted my laptop just in case. Went thru the steps again and again stuck in that ecc docker build. Only way to get out of there was to do a make build in utils/docker. I do not know if that is what is supposed to be done ... but if so, it isn't mentioned in any of the readmes ... don't know if this is a general issue or just my screwed up laptop that wants to retire.

angelparrales (Tue, 15 Jun 2021 22:32:52 GMT):
Has joined the channel.

bur (Wed, 16 Jun 2021 06:38:39 GMT):
thanks for creating the issue https://github.com/hyperledger/fabric-private-chaincode/issues/603

munapower (Tue, 22 Jun 2021 18:36:16 GMT):
Youtube link to presentation @ hyperledger global forum of UMBC and @BrunoVavala https://youtu.be/MU4BpZp8A1Y

munapower (Tue, 22 Jun 2021 19:25:35 GMT):
Youtube link to Demo @ hyperledger global forum https://youtu.be/byHV7ydwHoY

KameshPalani (Thu, 24 Jun 2021 04:34:35 GMT):
Has joined the channel.

KameshPalani (Thu, 24 Jun 2021 04:56:24 GMT):
Hi Team, Rgarding https://jira.hyperledger.org/browse/FABCG-23

KameshPalani (Thu, 24 Jun 2021 04:56:24 GMT):
Hi Team, Need help regarding https://jira.hyperledger.org/browse/FABCG-23 *Issue: *Unable to get Transaction Details with GetTransactionByID qscc call from another chaincode *Description: * We recently upgraded our Fabric version from 1.4 to 2.3. In our Chaincode we have business logic to verify a txnId is present in ledger or not. With Fabric 2.3 upgrade we are getting below error. If this is a limitation from added in 2.x to avoid deadlock situation, can you let us know the approaches to get transaction details for a given transaction ID from a chaincode? Code: chainCodeArgs := toChaincodeArgs("GetTransactionByID", stub.GetChannelID(), tid) response := stub.InvokeChaincode("qscc", chainCodeArgs, stub.GetChannelID()) Error: Rejecting invoke of QSCC from another chaincode because of potential for deadlocks, original invocation for 'testcc'

bur (Thu, 24 Jun 2021 08:14:00 GMT):
Hi @KameshPalani, this is the Fabric Private Chaincode channel. I think you question can be better answered in #fabric-chaincode-dev

KameshPalani (Thu, 24 Jun 2021 10:33:03 GMT):
Thanks

bur (Thu, 24 Jun 2021 16:25:15 GMT):
@BrunoVavala have a look at this https://hgf2021.sched.com/event/j3fJ/re-engineering-election-process-with-blockchain-and-confidential-computing-shivendra-yadav-vikram-sharma-hcl-technologies-ltd?iframe=no

AjayKalola (Fri, 25 Jun 2021 12:38:18 GMT):
Has joined the channel.

AjayKalola (Fri, 25 Jun 2021 12:39:43 GMT):
Hello Team, I'm facing the issue while updating the chaincode. Can anyone help me to resolve it. `2021-06-25 12:16:55.458 UTC [msp/identity] Sign -> DEBU 0bf Sign: plaintext: 0A90090A7008031A0C08B792D7860610...324D53500A04657363630A0476736363 2021-06-25 12:16:55.459 UTC [msp/identity] Sign -> DEBU 0c0 Sign: digest: CA0260CE12250C900C831C630D58FC50CAE8296D79C754CAD8A61E4B96039C48 2021-06-25 12:16:55.466 UTC [chaincodeCmd] upgrade -> DEBU 0c1 endorse upgrade proposal, get response Error: could not assemble transaction, err proposal response was not successful, error code 500, msg instantiation policy violation: signature set did not satisfy policy` Thanks.

bur (Fri, 25 Jun 2021 16:01:46 GMT):
oh interesting - FPC does not really support upgrading change at the moment - Technically it is possible to do that, particularly, updating the FPC chaincode which results in a new version (mrenclave). Using lifecycle commands to upgrade should therefore be straight forward, but the enclave registry is not yet equipped with the logic to pre-provision the updated enclave.

bur (Fri, 25 Jun 2021 16:01:46 GMT):
oh interesting - FPC does not really support upgrading chaincode at the moment - Technically it is possible to do that, particularly, updating the FPC chaincode which results in a new version (mrenclave). Using lifecycle commands to upgrade should therefore be straight forward, but the enclave registry is not yet equipped with the logic to pre-provision the updated enclave.

bur (Fri, 25 Jun 2021 16:02:06 GMT):
However, the error you have posted may have other reasons

bur (Fri, 25 Jun 2021 16:02:16 GMT):
maybe you are using non-admin credentials?

bur (Fri, 25 Jun 2021 16:02:48 GMT):
or not enough approveformyorg transactions?!

bur (Fri, 25 Jun 2021 16:02:50 GMT):
not sure

AjayKalola (Tue, 29 Jun 2021 04:35:51 GMT):
Hello @bur ``` I'm using the valid CA credentials(ca-orderer) i have checked that and i'm trying to update chaincode via below command``` peer chaincode upgrade \ --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA \ --clientauth --keyfile ${KEYFILE} \ --certfile ${CERTFILE} \ -n $CHAINCODE_NAME -v $VERSION -c '{"Args":[""]}' -C CHANNEL_NAME -P "AND ('oderer1MSP.member','orderer2MSP.member')" ``` ```

bur (Tue, 29 Jun 2021 08:14:21 GMT):
Are you using Fabric Private Chaincode?

AjayKalola (Tue, 29 Jun 2021 08:55:17 GMT):
Yes

bur (Wed, 30 Jun 2021 11:59:31 GMT):
Hi @AjayKalola we discussed your issue on our community talk yesterday. The team came to the conclusion that, Fabric Private Chaincode currently does not yet support the chaincode upgrade operation. The issue you are posting here, though, is not related to FPC but certainly related to some lifecycle policy. Note that for FPC, upgrading private chaincode is challenging as it requires to create a new enclave and provision it with the correspnding cryptographic material to continue working with existing world state for that chaincode. Please feel free to create a feature request on our github for FPC chaincode upgrade. This way we can better plan and put this feature on our roadmap. Thank you

AjayKalola (Thu, 01 Jul 2021 04:08:58 GMT):
Okay, Thanks for the update.

angelparrales (Tue, 06 Jul 2021 14:40:51 GMT):
@BrunoVavala, Wont be able to attend today's meeting

bur (Tue, 06 Jul 2021 15:22:12 GMT):
https://github.com/ayeks/SGX-hardware#cloud-vendors

ikegawa.koshi (Thu, 08 Jul 2021 05:38:58 GMT):
Hi FPC Team, I've confirmed that FPC runs in Microsoft Azure DCsv2 Series instances! There are two problems. The first problem was my mistake that aesmd-service had not been installed correctly. I solved the problem by building and installing linux-sgx. The second problem is that an error occurs when running attacked_evidence_test.sh. The following is an error when executing `make` in fpc-development-main. ``` make -C _build test || \ (echo "PDO crypto tests failed. Define PDO_DEBUG_BUILD=1 environment for enabling logging in tests." && exit 1) make[3]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' Running tests... Test project /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build Start 1: utest 1/3 Test #1: utest ............................ Passed 0.17 sec Start 2: ttest 2/3 Test #2: ttest ............................ Passed 0.30 sec Start 3: attested_evidence_test.sh 3/3 Test #3: attested_evidence_test.sh ........***Failed 0.68 sec 67% tests passed, 1 tests failed out of 3 Total Test time (real) = 1.16 sec The following tests FAILED: 3 - attested_evidence_test.sh (Failed) Errors while running CTest make[3]: *** [Makefile:84: test] Error 8 make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' PDO crypto tests failed. Define PDO_DEBUG_BUILD=1 environment for enabling logging in tests. make[2]: *** [Makefile:25: test] Error 1 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto' make[1]: *** [Makefile:11: test] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common' make: *** [Makefile:22: test] Error 2 ``` When I run `attacked_evidence_test.sh` by only itself, I get the following error. ```shell ERROR (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:154) error at /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:154: invalid quote status ERROR (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/verify_evidence_app/test.cpp:54) error at /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/verify_evidence_app/test.cpp:54: correct evidence failed ``` After commenting out lines 154-156 of `verify-evidence.cpp` and running make, the docker image was created correctly. Do you have any thoughts?

bur (Thu, 08 Jul 2021 13:19:02 GMT):
oh very interesting!

bur (Thu, 08 Jul 2021 13:19:30 GMT):
FPC currently only support EPID attestation. And as far as I know, Azure does not support EPID, only DCAP

bur (Thu, 08 Jul 2021 13:19:52 GMT):
this may be the reason why the attested_evidence_test fails

bur (Thu, 08 Jul 2021 13:21:21 GMT):
We already have an issue for DCAP support https://github.com/hyperledger/fabric-private-chaincode/issues/175

bur (Thu, 08 Jul 2021 13:22:22 GMT):
We should revamp these efforts and build it for FPC

bur (Thu, 08 Jul 2021 13:23:22 GMT):
Can you maybe drop a comment on 175 that you would like to run FPC on Azure and therefore DCAP support is a MUST

ikegawa.koshi (Fri, 09 Jul 2021 01:00:20 GMT):
Thank you for your interest. I thought that if Azure really doesn't support EPID, then now version FPC can't be run, is that not the case? I confirmed we can create test-network using FPC on Azure and invoke/query transactions. # By the way, do you know how to check whether the machine (or VM) supports EPID or not?

ikegawa.koshi (Fri, 09 Jul 2021 01:00:20 GMT):
@bur Thank you for your interest! I thought that if Azure really doesn't support EPID, then now version FPC can't be run, is that not the case? I confirmed we can create test-network using FPC on Azure and invoke/query transactions. # By the way, do you know how to check whether the machine (or VM) supports EPID or not?

bur (Fri, 09 Jul 2021 10:38:06 GMT):
>I confirmed we can create test-network using FPC on Azure and invoke/query transactions. I would have expected that the init enclave call would fail. Maybe there is a bug? @BrunoVavala WDYT?

bur (Fri, 09 Jul 2021 10:45:43 GMT):
> # By the way, do you know how to check whether the machine (or VM) supports EPID or not? Mh not really clear for me. According to this page attestation via IAS is possible (this used EPID) https://docs.microsoft.com/en-us/azure/confidential-computing/attestation But there are not examples on azure websites how to do that. The teaclave project, on the other hand, has a sample where apparently EPID-based attestation is running on Azure https://teaclave.apache.org/docs/azure-confidential-computing/

munapower (Fri, 09 Jul 2021 17:55:52 GMT):
So I was able to get path the make build of utils/docker. There seems to be an issue with the latest docker desktop version for Mac. I uninstalled and went back to version 3.3.2. When I ran the make build in util/dockers I got ```make -C $FPC_PATH/utils/docker build make: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/utils/docker' DOCKER_BUILDKIT=1 docker build --build-arg FPC_VERSION=main -t hyperledger/fabric-private-chaincode-base-rt base-rt [+] Building 1.0s (3/3) FINISHED => [internal] load build definition from Dockerfile 0.0s => => transferring dockerfile: 5.95kB 0.0s => [internal] load .dockerignore 0.0s => => transferring context: 2B 0.0s => ERROR [internal] load metadata for docker.io/library/ubuntu:20.04 0.8s ------ > [internal] load metadata for docker.io/library/ubuntu:20.04: ------ failed to solve with frontend dockerfile.v0: failed to create LLB definition: rpc error: code = Unknown desc = error getting credentials - err: exec: "docker-credential-desktop": executable file not found in $PATH, out: `` make: *** [Makefile:175: base-rt] Error 1 make: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/utils/docker'``` and googled and followed recommendation to set buildkit to 0 and also COMPOSE_DOCKER_CLI_BUILD to 0. It worked!!!!

munapower (Fri, 09 Jul 2021 17:55:52 GMT):
So I was able to get path the make build of utils/docker. There seems to be an issue with the latest docker desktop version for Mac. I uninstalled and went back to version 3.3.2. When I ran the make build in util/dockers I got ```make -C $FPC_PATH/utils/docker build make: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/utils/docker' DOCKER_BUILDKIT=1 docker build --build-arg FPC_VERSION=main -t hyperledger/fabric-private-chaincode-base-rt base-rt [+] Building 1.0s (3/3) FINISHED => [internal] load build definition from Dockerfile 0.0s => => transferring dockerfile: 5.95kB 0.0s => [internal] load .dockerignore 0.0s => => transferring context: 2B 0.0s => ERROR [internal] load metadata for docker.io/library/ubuntu:20.04 0.8s ------ > [internal] load metadata for docker.io/library/ubuntu:20.04: ------ failed to solve with frontend dockerfile.v0: failed to create LLB definition: rpc error: code = Unknown desc = error getting credentials - err: exec: "docker-credential-desktop": executable file not found in $PATH, out: `` make: *** [Makefile:175: base-rt] Error 1 make: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/utils/docker'``` and googled and followed recommendation to set buildkit to 0 and also COMPOSE_DOCKER_CLI_BUILD to 0. It worked!!!! Still now I get stuck/hung in the build inside the test-network on the boilerplate-ecc build ... just like before

munapower (Fri, 09 Jul 2021 19:00:26 GMT):
this last set I was able to solve setting BUILD_OPTS to no-cache .... so definitely a docker issue

bur (Mon, 12 Jul 2021 14:40:21 GMT):
> err: exec: "docker-credential-desktop": executable file not found in $PATH, out: `` make: *** I encountered this error recently as well. By default, we are loading your host docker configuration into the dev container you could use the same settings. However, since your host is macos, which uses the docker-credential-desktop app as default to store docker related credentials, this command is not availble inside the docker dev container

bur (Mon, 12 Jul 2021 14:41:05 GMT):
I solved the issue by removing `"credsStore" : "desktop"` from `~/.docker.config.json`

munapower (Tue, 13 Jul 2021 00:17:33 GMT):
ah! interesting! will move to the latest version 3.5.2 that someone replied to one of my posts and send that they had the same issued and it was solved with that version

ikegawa.koshi (Wed, 14 Jul 2021 06:28:33 GMT):
Hi FPC team, I have a question. In FPC, can we install and run multiple chaincodes? For example, can I install and run echo, and then install and run auction or helloworld chaincodes?

bur (Wed, 14 Jul 2021 06:40:41 GMT):
yes that works

bur (Wed, 14 Jul 2021 06:41:07 GMT):
each FPC chaincode runs in its own enclave on a peer

bur (Wed, 14 Jul 2021 06:49:39 GMT):
our sample deployment with the test-network, though, only demonstrates a setup with a single chaincode

bur (Wed, 14 Jul 2021 06:50:36 GMT):
that is, you can only define a single CC_ID / CC_PATH that is going to be installed and started with `make ercc-ecc-start `

bur (Wed, 14 Jul 2021 06:50:36 GMT):
that is, you can only define a single CC_ID / CC_PATH that is going to be installed and started with `make ercc-ecc-start`

bur (Wed, 14 Jul 2021 06:52:46 GMT):
I think you just need to modify `installFPC.sh` and the `docker-compose.yml` in the test-network folder to make it more flexible; so far we tried to keep test-network simple

ikegawa.koshi (Wed, 14 Jul 2021 07:56:18 GMT):
@bur Thank you for answering! Am I correct in assuming that there is only one ercc-container and multi chaincode-containers?

bur (Wed, 14 Jul 2021 07:57:34 GMT):
correct ... you only need a single ercc per channel, which maintains all FPC chaincodes installed on that channel

bur (Wed, 14 Jul 2021 08:00:13 GMT):
look at `$FPC_PATH/samples/deployment/test-network/docker-compose.yml`

bur (Wed, 14 Jul 2021 08:00:31 GMT):
every peer has a ercc and ecc container

bur (Wed, 14 Jul 2021 08:01:04 GMT):
to run more than one FPC chaincode just add another ecc for the other chaincode

bur (Wed, 14 Jul 2021 08:01:30 GMT):
better give them other names than `ecc.peer0.org1.example.com`

bur (Wed, 14 Jul 2021 08:01:59 GMT):
something like `echo.peer0.org1.example.com` and `auction.peer0.org1.example.com`

ikegawa.koshi (Wed, 14 Jul 2021 08:34:08 GMT):
OK, I understand! I will try and share the result here! Thanks!

BrunoVavala (Wed, 14 Jul 2021 19:33:43 GMT):
@ikegawa.koshi The tests that you did may actually prove that the EPID attestation is working on Azure. Would you be willing to share the following file? (common/crypto/_build/tests/verify_evidence_input.txt) (It contains the verification report from IAS, something like: `{"attestation_type":"epid-linkable","evidence":"{\"iasSignature\":\"...`) @bur I would agree with you on the initEnclave argument. However, according to what he reported, the verify_evidence fails in getting the quote status, but it seems to succeed in verifying the IAS signature. Hence, there may simply be another quote status, which we reject. Depending on that status, we could discuss whether to accept it or not.

BrunoVavala (Wed, 14 Jul 2021 19:33:43 GMT):
@ikegawa.koshi The tests that you did may actually prove that the EPID attestation is working on Azure. Would you be willing to share the following file? (`common/crypto/_build/tests/verify_evidence_input.txt`) (It contains the verification report from IAS, something like: `{"attestation_type":"epid-linkable","evidence":"{\"iasSignature\":\"...`) @bur I would agree with you on the initEnclave argument. However, according to what he reported, the verify_evidence fails in getting the quote status, but it seems to succeed in verifying the IAS signature. Hence, there may simply be another quote status, which we reject. Depending on that status, we could discuss whether to accept it or not.

bur (Thu, 15 Jul 2021 06:56:23 GMT):
if that works, that would be fantastic!

bur (Thu, 15 Jul 2021 06:58:03 GMT):
@BrunoVavala I wondering why the test is failing but initEnclave, or in particular, verification at ercc is not

ikegawa.koshi (Thu, 15 Jul 2021 11:32:29 GMT):

verify_evidence_input.txt

ikegawa.koshi (Thu, 15 Jul 2021 11:33:43 GMT):
@BrunoVavala I shared the file (`common/crypto/_build/tests/verify_evidence_input.txt`)!

bur (Thu, 15 Jul 2021 12:24:24 GMT):
oh interessting ... IAS retruned "`isvEnclaveQuoteStatus\\\":\\\"SW_HARDENING_NEEDED\\\"`

bur (Thu, 15 Jul 2021 12:25:26 GMT):
seems to be an issue with azure according to https://docs.microsoft.com/en-us/answers/questions/63421/azure-confidential-computing-machines-affected-by.html

BrunoVavala (Thu, 15 Jul 2021 22:32:44 GMT):
Thanks @ikegawa.koshi , that confirms what I said. EPID works, but FPC does not accept that quote status. We have to update the quote verification library.

bur (Fri, 16 Jul 2021 13:40:37 GMT):
The Fabric Smart Client Example shown yesterday from Angelo can be found here: https://github.com/hyperledger-labs/fabric-smart-client/blob/4a178ae47e0d34a814c99939fdec7fe560c58379/integration/fabric/atsa/chaincode/views/seller.go#L27

bur (Fri, 16 Jul 2021 13:41:19 GMT):
An issue to add FPC support to FSC is here: https://github.com/hyperledger-labs/fabric-smart-client/issues/23

ikegawa.koshi (Tue, 20 Jul 2021 00:34:56 GMT):
@BrunoVavala Thanks! Does that mean I should build and update this source? (https://github.com/intel/SGXDataCenterAttestationPrimitives)

munapower (Tue, 20 Jul 2021 15:20:39 GMT):
```make[3]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' CMake Warning (dev) in CMakeLists.txt: No project() command is present. The top-level CMakeLists.txt file must contain a literal, direct call to the project() command. Add a line of code such as project(ProjectName) near the top of the file, but after cmake_minimum_required(). CMake is pretending there is a "project(Project)" command on the first line. This warning is for project developers. Use -Wno-dev to suppress it. -- SGX_COMMON_CFLAGS: -m64 -DSGX_SIM_MODE -O2 -- SGX_SDK: /opt/intel/sgxsdk -- SGX_MODE: SIM -- SGX_BUILD: PRERELEASE -- SGX_LIBRARY_PATH: /opt/intel/sgxsdk/lib64 -- SGX_ENCLAVE_SIGNER: /opt/intel/sgxsdk/bin/x64/sgx_sign -- SGX_EDGER8R: /opt/intel/sgxsdk/bin/x64/sgx_edger8r -- SGX_SSL: /opt/intel/sgxssl -- SGX_SSL_LIBRARY_PATH: /opt/intel/sgxssl/lib64 codcov disabled -- Compiling with optimizations (-O2). To use debug flags, set the DEBUG environment variable. CMake Error at pdo/common/CMakeVariables.txt:39 (message): PDO_ENCLAVE_CODE_SIGN_PEM environment variable not defined! Call Stack (most recent call first): CMakeLists.txt:107 (INCLUDE) -- Configuring incomplete, errors occurred! See also "/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build/CMakeFiles/CMakeOutput.log". make[3]: *** [Makefile:622: cmake_check_build_system] Error 1 make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[2]: *** [Makefile:22: build] Error 2 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto' make[1]: *** [Makefile:11: build] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common' make: *** [Makefile:22: build] Error 2 root@docker-desktop:/project/src/github.com/hyperledger/fabric-private-chaincode ```

bur (Tue, 20 Jul 2021 15:28:06 GMT):
https://nomadic-dmitry.medium.com/apple-silicon-m1-how-to-run-x86-and-arm-virtual-machines-on-it-cdd9d9054483

BrunoVavala (Wed, 21 Jul 2021 01:47:36 GMT):
[ ](https://chat.hyperledger.org/channel/fabric-private-chaincode?msg=bku7NfrapWrJBs4zy) No, that's for DCAP, and it's not integrated with FPC yet. FPC uses the quote verification library of PDO. If you're curious, you can see here (https://github.com/hyperledger-labs/private-data-objects/blob/75467684cda0ca6abb10154e3f45f97e9784ed54/common/crypto/verify_ias_report/verify-report.cpp#L218) why the quote status that you reported is not working -- the verification logic only accepts "OK" or "GROUP_OUT_OF_DATE". I am going to push some modifications to enable a more extended verification -- including "SW_HARDENING_NEEDED".

bur (Wed, 21 Jul 2021 07:44:30 GMT):
this error was resolved by running `make clean` and then `make` again.

bur (Wed, 21 Jul 2021 15:05:15 GMT):
@BrunoVavala question related to IAS certificate verification. According to https://api.trustedservices.intel.com/documents/IAS-API-Spec-rev-4.0.pdf, the report comes with a *Attestation Report Signing Certificate* and *Attestation Report Signing CA Certificate*. The document also states: > Attestation Report Signing CA Certificate (available to download upon successful registration to IAS) In the PDO code I found that this Signing CA cert is downloaded via `wget https://certificates.trustedservices.intel.com/Intel_SGX_Attestation_RootCA.pem`. Is this downloaded cert equivalent to the CA cert attached to the report?

bur (Wed, 21 Jul 2021 15:08:07 GMT):
Or is the Signing CA Cert attached to the report an intermediate cert? In `verify-evidence.cpp` I can see that the downloaded cert is used to validate both, the Signing Cert and Signing CA Cert. But I don't see that the Signing CA Cert is also used to validate the Siging Cert.

bur (Wed, 21 Jul 2021 15:08:12 GMT):
thanks

BrunoVavala (Wed, 21 Jul 2021 15:17:01 GMT):
Yes - otherwise it would fail

BrunoVavala (Wed, 21 Jul 2021 15:24:50 GMT):
No, the signing CA cert is the root certificate. The downloaded one and the received one should be the same. Also, since they are self-signed, then one must verify the other -- same as "it must verify itself". Hence, once the root is validated, and this certifies the intermediate cert, we're done.

ikegawa.koshi (Mon, 26 Jul 2021 07:08:13 GMT):
@BrunoVavala Thanks, it was very helpful. I know this is still under discussion, but is "SW_HARDENING_NEEDED" acceptable in testing? If it's acceptable, I'm very happy to verify it in Azure.

ikegawa.koshi (Mon, 26 Jul 2021 07:08:24 GMT):
Hi, FPC Team. I have a question. It seems that SGX is being abolished and TDX is being introduced in the 11th generation intel CPUs. Are there any plans for FPC to support TDX in the future?

bur (Mon, 26 Jul 2021 09:14:29 GMT):
Hi Koshi, Intel SGX and TDX are targeting different use cases and usage models. SGX is designed to protect an application on a host, whereas TDX focuses on the protection of an entire VM in a hypervisor environment. To execute chaincode securely, SGX seems the better fit. However, I can also imaging that FPC chaincode may run a TDX-based VM. We are definitely looking in alternative TEE support for FPC. For TDX there are no concrete plans at the moment, but happy to discuss.

bur (Mon, 26 Jul 2021 09:19:51 GMT):
Note that the architecture of FPC is designed with extending support for other TEEs in mind. For instance, attestation infrastructure is flexible in that sense abstracts the actual TEE technology away and thereby allows adding new types, e.g., for TDX attestation. Deployment may look different though. https://software.intel.com/content/dam/develop/external/us/en/documents/tdx-whitepaper-v4.pdf

BrunoVavala (Mon, 26 Jul 2021 19:04:43 GMT):
In testing, I don't see any issue with that. In production, the user should be empowered to make the decision whether it is acceptable or not. From the SGX attestation API spec (https://api.trustedservices.intel.com/documents/sgx-attestation-api-spec.pdf): `SW_HARDENING_NEEDED – the EPID signature of the ISV enclave QUOTE has been verified correctly but due to certain issues affecting the platform, additional SW Hardening in the attesting SGX enclaves may be needed. The relying party should evaluate the potential risk of an attack leveraging the relevant issues on the attesting enclave, and whether the attesting enclave employs adequate software hardening to mitigate the risk.`

ikegawa.koshi (Tue, 27 Jul 2021 09:07:45 GMT):
Thank you for sharing this information. It would be very helpful to be able to work with HW, even if only for testing.

ikegawa.koshi (Tue, 27 Jul 2021 09:07:56 GMT):
I understand! Thank you for sharing this information. If SGX is no longer available in the future, we will need to do something about it...

ikegawa.koshi (Tue, 27 Jul 2021 09:08:29 GMT):
Hi FPC Team. The IBM cloud bare metal server seems to work SGX. Does anyone know if it works with FPC?

BrunoVavala (Tue, 27 Jul 2021 17:51:16 GMT):
It should work. I have successfully run simple SGX tests on a kubernetes cluster on IBM cloud -- specifically on a Xeon E-2174G processor. So: for Kubernetes deployments, I would just expect some tuning required to our documentation; for bare metal (EPID-based SGX capable) server, I don't expect any issue.

bur (Fri, 30 Jul 2021 14:34:09 GMT):
@BrunoVavala @ikegawa.koshi Can you please comment on my new issue regarding new docker flow to publish FPC docker images. I already had a quick discussion with @munapower on that topic. Thank you! https://github.com/hyperledger/fabric-private-chaincode/issues/611

bur (Fri, 30 Jul 2021 14:39:48 GMT):
@ikegawa.koshi See the corresponding PR https://github.com/hyperledger/fabric-private-chaincode/pull/610

ikegawa.koshi (Mon, 02 Aug 2021 03:59:04 GMT):
@bur Thank you! Is this PR a WIP and if I integrate it into main it will not work? I try fetched the PR #610 and built it. Of couse, I also fetched PDO's PR #326. However, I cannot make fpc-development-main container. Error message is following. ```shell make --directory=_build make[3]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[4]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[5]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' Scanning dependencies of target tpdo-crypto-adapt make[5]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[5]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' [ 1%] Building CXX object CMakeFiles/tpdo-crypto-adapt.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/base64/base64.cpp.o [ 2%] Building CXX object CMakeFiles/tpdo-crypto-adapt.dir/attestation-api/evidence/verify-evidence.cpp.o In file included from /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:14: /project/src/github.com/hyperledger/fabric-private-chaincode/common/error.h:9: warning: "COND2ERR" redefined 9 | #define COND2ERR(b) \ | In file included from /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo/common/crypto/crypto.h:29, from /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:13: /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo/common/crypto/verify_ias_report/verify-report.h:42: note: this is the location of the previous definition 42 | #define COND2ERR(b) \ | /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp: In function 'bool verify_ias_evidence(ByteArray&, ByteArray&, ByteArray&)': /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:153:36: error: 'QSF_ACCEPT_GROUP_OUT_OF_DATE' was not declared in this scope 153 | const unsigned int flags = QSF_ACCEPT_GROUP_OUT_OF_DATE | QSF_ACCEPT_CONFIGURATION_NEEDED | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:153:67: error: 'QSF_ACCEPT_CONFIGURATION_NEEDED' was not declared in this scope 153 | const unsigned int flags = QSF_ACCEPT_GROUP_OUT_OF_DATE | QSF_ACCEPT_CONFIGURATION_NEEDED | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:154:36: error: 'QSF_ACCEPT_SW_HARDENING_NEEDED' was not declared in this scope 154 | QSF_ACCEPT_SW_HARDENING_NEEDED | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:155:36: error: 'QSF_ACCEPT_CONFIGURATION_AND_SW_HARDENING_NEEDED' was not declared in this scope 155 | QSF_ACCEPT_CONFIGURATION_AND_SW_HARDENING_NEEDED; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ make[5]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[4]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[5]: *** [CMakeFiles/tpdo-crypto-adapt.dir/build.make:76: CMakeFiles/tpdo-crypto-adapt.dir/attestation-api/evidence/verify-evidence.cpp.o] Error 1 make[4]: *** [CMakeFiles/Makefile2:187: CMakeFiles/tpdo-crypto-adapt.dir/all] Error 2 make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[3]: *** [Makefile:95: all] Error 2 make[2]: *** [Makefile:22: build] Error 2 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto' make[1]: *** [Makefile:11: build] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common' make: *** [Makefile:52: fpc-peer] Error 2 The command '/bin/sh -c cd ${FPC_PATH} && make fpc-peer && make fpc-peer-cli' returned a non-zero code: 2 make: *** [Makefile:211: dev] Error 2 ```

bur (Mon, 02 Aug 2021 09:29:42 GMT):
it seems we are missing the import for pdo-crypto `common/crypto/verify_ias_report/verify-report.h` where `QSF_*` flags are defined

bur (Mon, 02 Aug 2021 09:35:28 GMT):
ok, I'm wrong. the function `verify_enclave_quote_status' is defined in `verify-report.h` ... so it should be there

bur (Mon, 02 Aug 2021 09:35:59 GMT):
double check the you really got the PDO PR code in your local repo

bur (Mon, 02 Aug 2021 09:36:37 GMT):
However, maybe Bruno has more insights what this PR needs to be tested. :)

BrunoVavala (Mon, 02 Aug 2021 15:57:30 GMT):
That's right. FPC#610 is WIP because it's missing the PDO crypto update. But FPC#610 should work with PDO#326

ikegawa.koshi (Tue, 03 Aug 2021 07:39:24 GMT):
@bur @BrunoVavala Thanks. I confirmed that the FPC and PDO have been changed to the contents of the pull request. These are the detailed commands that I entered. ```shell cd $FPC_PATH git branch pr610 git checkout pr610 git pull origin pull/610/head cd $FPC_PATH/common/crypto/pdo git branch pr326 git checkout pr326 git pull origin pull/326/head cd $FPC_PATH/utils/docker make run ``` I tried it again and got the same error message. ```shell:Error_messages make[3]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[4]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[5]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' Scanning dependencies of target tpdo-crypto-adapt make[5]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[5]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' [ 1%] Building CXX object CMakeFiles/tpdo-crypto-adapt.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/base64/base64.cpp.o [ 2%] Building CXX object CMakeFiles/tpdo-crypto-adapt.dir/attestation-api/evidence/verify-evidence.cpp.o In file included from /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:14: /project/src/github.com/hyperledger/fabric-private-chaincode/common/error.h:9: warning: "COND2ERR" redefined 9 | #define COND2ERR(b) \ | In file included from /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo/common/crypto/crypto.h:29, from /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:13: /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo/common/crypto/verify_ias_report/verify-report.h:42: note: this is the location of the previous definition 42 | #define COND2ERR(b) \ | /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp: In function 'bool verify_ias_evidence(ByteArray&, ByteArray&, ByteArray&)': /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:153:36: error: 'QSF_ACCEPT_GROUP_OUT_OF_DATE' was not declared in this scope 153 | const unsigned int flags = QSF_ACCEPT_GROUP_OUT_OF_DATE | QSF_ACCEPT_CONFIGURATION_NEEDED | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:153:67: error: 'QSF_ACCEPT_CONFIGURATION_NEEDED' was not declared in this scope 153 | const unsigned int flags = QSF_ACCEPT_GROUP_OUT_OF_DATE | QSF_ACCEPT_CONFIGURATION_NEEDED | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:154:36: error: 'QSF_ACCEPT_SW_HARDENING_NEEDED' was not declared in this scope 154 | QSF_ACCEPT_SW_HARDENING_NEEDED | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:155:36: error: 'QSF_ACCEPT_CONFIGURATION_AND_SW_HARDENING_NEEDED' was not declared in this scope 155 | QSF_ACCEPT_CONFIGURATION_AND_SW_HARDENING_NEEDED; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ make[5]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[5]: *** [CMakeFiles/tpdo-crypto-adapt.dir/build.make:76: CMakeFiles/tpdo-crypto-adapt.dir/attestation-api/evidence/verify-evidence.cpp.o] Error 1 make[4]: *** [CMakeFiles/Makefile2:187: CMakeFiles/tpdo-crypto-adapt.dir/all] Error 2 make[4]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[3]: *** [Makefile:95: all] Error 2 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto' make[2]: *** [Makefile:22: build] Error 2 make[1]: *** [Makefile:11: build] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common' make: *** [Makefile:52: fpc-peer] Error 2 The command '/bin/sh -c cd ${FPC_PATH} && make fpc-peer && make fpc-peer-cli' returned a non-zero code: 2 make: *** [Makefile:211: dev] Error 2 ```

bur (Tue, 03 Aug 2021 07:40:44 GMT):
did you run a `make clean`?

bur (Tue, 03 Aug 2021 07:40:44 GMT):
did you run a `make clean`? (after switching into the FPC dev container)

ikegawa.koshi (Tue, 03 Aug 2021 07:42:19 GMT):
Of course! Make clean is undefined in the Makefile of utils/docker, but I ran make clobber.

bur (Tue, 03 Aug 2021 07:42:47 GMT):
no, I meant in $FPC_PATH

bur (Tue, 03 Aug 2021 07:44:22 GMT):
all make targets in `utils/docker` are related to docker. I was asking about `make clean` in `$FPC_PATH` to make sure that the PDO crypto lib is built from scratch

ikegawa.koshi (Tue, 03 Aug 2021 07:47:13 GMT):
Oh... so do I need to make fpc-development-main container before merging the PR?

ikegawa.koshi (Tue, 03 Aug 2021 07:48:11 GMT):
As I understand it, create fpc-development-main first, and then run make on $FPC_PATH. However, the creation of fpc-development-main failed.

bur (Tue, 03 Aug 2021 07:50:12 GMT):
you are saying ``` cd $FPC_PATH/utils/docker make run ``` fails with the PR code?

bur (Tue, 03 Aug 2021 07:50:16 GMT):
?

ikegawa.koshi (Tue, 03 Aug 2021 07:50:32 GMT):
Yes!

bur (Tue, 03 Aug 2021 07:52:58 GMT):
mh

bur (Tue, 03 Aug 2021 07:53:14 GMT):
what is executing `The command '/bin/sh -c cd ${FPC_PATH} && make fpc-peer && make fpc-peer-cli'`

bur (Tue, 03 Aug 2021 07:53:28 GMT):
I dont understand why this is happening

bur (Tue, 03 Aug 2021 07:54:27 GMT):
are you working on the main branch?

bur (Tue, 03 Aug 2021 07:54:33 GMT):
+ PR code?

ikegawa.koshi (Tue, 03 Aug 2021 07:55:54 GMT):
Yes. I'm pulling the origin main code before pull the PR code...

bur (Tue, 03 Aug 2021 07:56:25 GMT):
see this

bur (Tue, 03 Aug 2021 07:56:36 GMT):
according to your log file this line here fails https://github.com/hyperledger/fabric-private-chaincode/blob/main/utils/docker/dev_peer_cc-builder/Dockerfile#L99

bur (Tue, 03 Aug 2021 07:57:03 GMT):
however, this is part of the peer-builder, which SHOULD not be triggered with `make run`

bur (Tue, 03 Aug 2021 07:57:30 GMT):
see makefile

bur (Tue, 03 Aug 2021 07:57:31 GMT):
https://github.com/hyperledger/fabric-private-chaincode/blob/main/utils/docker/Makefile#L128

bur (Tue, 03 Aug 2021 07:58:26 GMT):
`make run` calls `dev` -> `base-dev` -> `base-dev` -> `base-rt`

bur (Tue, 03 Aug 2021 13:09:29 GMT):
oh could it be that you try to set `DOCKER_BUILDKIT=1` in your `config.override.mk`

bur (Tue, 03 Aug 2021 13:09:29 GMT):
oh could you please try to set `DOCKER_BUILDKIT=1` in your `config.override.mk`

bur (Tue, 03 Aug 2021 13:10:41 GMT):
I just read a comment in the dev docker file that says that all stages are evaluated if `DOCKER_BUILDKIT=0`. This would explain why the build of the peer images are triggered

ikegawa.koshi (Tue, 03 Aug 2021 13:25:12 GMT):
Oh! Thanks! I could confirm building hyperledger/fabric-private-chaincode-dev image!

ikegawa.koshi (Tue, 03 Aug 2021 13:29:24 GMT):
However, when I entered fpc-development-main and ran make in $ FPC_PATH, I got an error. Also, we're likely to have to look for the cause of the error :cry: Error message is following ```shell make[5]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/logging/_build' Scanning dependencies of target test_log_app make[5]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/logging/_build' make[5]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/logging/_build' [ 85%] Building CXX object test/CMakeFiles/test_log_app.dir/untrusted/test.cpp.o [100%] Linking CXX executable test_log_app make[5]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/logging/_build' [100%] Built target test_log_app make[4]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/logging/_build' make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/logging/_build' make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/logging' make[2]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto' Generating RSA private key, 3072 bit long modulus (2 primes) ...............................................................++++*......................................................++++ ...................................................................................................................................................................................................++++*..........++++ e is 3 (0x03) CMake Warning (dev) in CMakeLists.txt: No project() command is present. The top-level CMakeLists.txt file must contain a literal, direct call to the project() command. Add a line of code such as project(ProjectName) near the top of the file, but after cmake_minimum_required(). CMake is pretending there is a "project(Project)" command on the first line. This warning is for project developers. Use -Wno-dev to suppress it. -- The C compiler identification is GNU 9.3.0 -- The CXX compiler identification is GNU 9.3.0 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- SGX_COMMON_CFLAGS: -m64 -DSGX_HW_MODE -O2 -- SGX_SDK: /opt/intel/sgxsdk -- SGX_MODE: HW -- SGX_BUILD: PRERELEASE -- SGX_LIBRARY_PATH: /opt/intel/sgxsdk/lib64 -- SGX_ENCLAVE_SIGNER: /opt/intel/sgxsdk/bin/x64/sgx_sign -- SGX_EDGER8R: /opt/intel/sgxsdk/bin/x64/sgx_edger8r -- SGX_SSL: /opt/intel/sgxssl -- SGX_SSL_LIBRARY_PATH: /opt/intel/sgxssl/lib64 codcov disabled -- Compiling with optimizations (-O2). To use debug flags, set the DEBUG environment variable. -- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1") -- Checking for module 'openssl>=1.1.0g' -- Found openssl, version 1.1.1f CMake Error at CMakeLists.txt:123 (ADD_SUBDIRECTORY): The source directory /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test does not contain a CMakeLists.txt file. -- Configuring incomplete, errors occurred! See also "/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build/CMakeFiles/CMakeOutput.log". make[2]: *** [Makefile:13: _build] Error 1 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto' make[1]: *** [Makefile:11: build] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common' make: *** [Makefile:22: build] Error 2 ```

bur (Tue, 03 Aug 2021 13:32:21 GMT):
seems that it cannot find `/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/CMakeLists.txt`.

bur (Tue, 03 Aug 2021 13:32:27 GMT):
it should be there https://github.com/hyperledger/fabric-private-chaincode/tree/main/common/crypto/attestation-api/test

bur (Tue, 03 Aug 2021 13:32:53 GMT):
WIP PR 610 is not touching this one

bur (Tue, 03 Aug 2021 13:33:34 GMT):
could it be that there are still some changes you've made to the code base when "disabling" attestation?

ikegawa.koshi (Tue, 03 Aug 2021 13:36:26 GMT):
hmm... I deleted the entire $FPC_PATH directory and re-cloned it from https://github.com/hyperledger/fabric-private-chaincode. I'll try again.

bur (Tue, 03 Aug 2021 13:37:51 GMT):
once you've entered the fpc dev container; check using git status if something is modified

ikegawa.koshi (Tue, 03 Aug 2021 13:53:00 GMT):
Thank you very much for your support! I'm sorry, the previous error seems to have been my mistake. I tried again, I recv another error. ```shell INFO (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/verify_evidence_app/test.cpp:61) next test expected to fail ERROR (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:207) error at /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:207: expected statement mismatch INFO (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/verify_evidence_app/test.cpp:73) next test expected to fail ERROR (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:194) error at /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:194: expected code id mismatch INFO (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/verify_evidence_app/test.cpp:80) Test Successful INFO (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/get_attestation_app/app/main.cpp:47) Testing init attestation INFO (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/get_attestation_app/app/main.cpp:51) Testing get attestation INFO (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/get_attestation_app/app/main.cpp:60) Test Successful stat ./conversion_app_go/main.go: no such file or directory 67% tests passed, 1 tests failed out of 3 Total Test time (real) = 2.02 sec The following tests FAILED: 3 - attested_evidence_test.sh (Failed) Errors while running CTest make[3]: *** [Makefile:84: test] Error 8 make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' PDO crypto tests failed. Define PDO_DEBUG_BUILD=1 environment for enabling logging in tests. make[2]: *** [Makefile:25: test] Error 1 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto' make[1]: *** [Makefile:11: test] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common' make: *** [Makefile:22: test] Error 2 ```

ikegawa.koshi (Tue, 03 Aug 2021 13:54:55 GMT):
When I ran `git status`, I recv following messages. The only part that has been changed is the merging of PR326 into pdo. ```shell On branch pr610 Changes not staged for commit: (use "git add ..." to update what will be committed) (use "git restore ..." to discard changes in working directory) modified: common/crypto/pdo (new commits) no changes added to commit (use "git add" and/or "git commit -a") ```

bur (Tue, 03 Aug 2021 13:55:31 GMT):
do you have this file? https://github.com/hyperledger/fabric-private-chaincode/tree/main/common/crypto/attestation-api/test/conversion_app_go

ikegawa.koshi (Tue, 03 Aug 2021 13:57:12 GMT):
Yes, I have confirmed that the file exists.

bur (Tue, 03 Aug 2021 13:57:30 GMT):
from inside and outside the dev container? :P

ikegawa.koshi (Tue, 03 Aug 2021 13:59:18 GMT):
Just now, I checked and confirmed that the file exists both inside and outside the dev container.

bur (Tue, 03 Aug 2021 13:59:29 GMT):
next inside dev container: ``` cd $FPC_PATH/common make clean make ```

ikegawa.koshi (Tue, 03 Aug 2021 14:02:38 GMT):
OK, just now I tried that commands. `make clean` is a success. When I ran `make`, I recv the same error message... ```shell INFO (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/verify_evidence_app/test.cpp:61) next test expected to fail ERROR (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:207) error at /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:207: expected statem ent mismatch INFO (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/verify_evidence_app/test.cpp:73) next test expected to fail ERROR (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:194) error at /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:194: expected code i d mismatch INFO (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/verify_evidence_app/test.cpp:80) Test Successful INFO (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/get_attestation_app/app/main.cpp:47) T esting init attestation INFO (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/get_attestation_app/app/main.cpp:51) T esting get attestation INFO (/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/test/get_attestation_app/app/main.cpp:60) T est Successful stat ./conversion_app_go/main.go: no such file or directory 67% tests passed, 1 tests failed out of 3 Total Test time (real) = 2.41 sec The following tests FAILED: 3 - attested_evidence_test.sh (Failed) Errors while running CTest make[2]: *** [Makefile:84: test] Error 8 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' PDO crypto tests failed. Define PDO_DEBUG_BUILD=1 environment for enabling logging in tests. make[1]: *** [Makefile:25: test] Error 1 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto' make: *** [Makefile:11: test] Error 2 ```

bur (Tue, 03 Aug 2021 15:19:58 GMT):
aha! you are running in HW mode right?

bur (Tue, 03 Aug 2021 15:28:07 GMT):
ok I think I know where the problem is! we discussed this in our call today and I am going create a fix for that tmrw!

ikegawa.koshi (Wed, 04 Aug 2021 01:08:51 GMT):
Yes, my machine is running in HW mode!

ikegawa.koshi (Wed, 04 Aug 2021 01:09:23 GMT):
Oh! That's so helpful! Thanks!

bur (Wed, 04 Aug 2021 07:28:01 GMT):
Created a fix PR for this https://github.com/hyperledger/fabric-private-chaincode/pull/613

ikegawa.koshi (Wed, 04 Aug 2021 07:54:28 GMT):
@bur Thank you! I have merged this PR and confirmed that it works correctly in the SGX HW environment in Azure! I can try HW mode on Azure from now on, that's super helpful!

bur (Wed, 04 Aug 2021 08:17:33 GMT):
awesome!

AjayKalola (Thu, 05 Aug 2021 04:04:32 GMT):
Has left the channel.

bur (Fri, 06 Aug 2021 17:19:51 GMT):
@BrunoVavala I closed some old issues today and created a feature bucket milestone to collect all desired features, which were without a milestone

vikramsharma13 (Fri, 13 Aug 2021 09:22:01 GMT):
Has joined the channel.

vikramsharma13 (Fri, 13 Aug 2021 09:22:01 GMT):
Hey @bur .. A very good morning.

bur (Fri, 13 Aug 2021 09:22:21 GMT):
@vikramsharma13 Awesome! Nice to have you here on the chat

bur (Fri, 13 Aug 2021 09:24:24 GMT):
let me post the link to our FPC getting started section :P https://github.com/hyperledger/fabric-private-chaincode#getting-started

HUOH 1 (Thu, 19 Aug 2021 02:16:27 GMT):
Has joined the channel.

munapower (Fri, 20 Aug 2021 01:38:47 GMT):
Testing the changes for #605 and at the beginning of the readme for test-network I get the following error on the make build:

munapower (Fri, 20 Aug 2021 01:38:47 GMT):
Testing the changes for #605 and at the beginning of the readme for test-network I get the following error on the make build: ```go: downloading go.uber.org/atomic v1.6.0 go: downloading go.uber.org/multierr v1.5.0 # github.com/hyperledger/fabric-private-chaincode/internal/utils /opt/intel/sgxsdk.extras/external/toolset/ubuntu20.04/ld: cannot find -lupdo-crypto-adapt /opt/intel/sgxsdk.extras/external/toolset/ubuntu20.04/ld: cannot find -lupdo-crypto collect2: error: ld returned 1 exit status # github.com/hyperledger/fabric-private-chaincode/ercc/attestation /opt/intel/sgxsdk.extras/external/toolset/ubuntu20.04/ld: cannot find -lupdo-crypto-adapt /opt/intel/sgxsdk.extras/external/toolset/ubuntu20.04/ld: cannot find -lupdo-crypto collect2: error: ld returned 1 exit status make[1]: *** [Makefile:17: ercc] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/ercc' make: *** [Makefile:19: ercc-container] Error 2 ```

munapower (Fri, 20 Aug 2021 01:55:52 GMT):
I then tried to build the helloworld from its directory, and when running make I get the following error: ```/opt/intel/sgxsdk.extras/external/toolset/ubuntu20.04/ld: cannot find -ltpdo-crypto /opt/intel/sgxsdk.extras/external/toolset/ubuntu20.04/ld: cannot find -lshim /opt/intel/sgxsdk.extras/external/toolset/ubuntu20.04/ld: cannot find -ltpdo-crypto-adapt collect2: error: ld returned 1 exit status make[3]: *** [CMakeFiles/enclave.dir/build.make:87: enclave.so] Error 1 make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/samples/chaincode/helloworld/_build' make[2]: *** [CMakeFiles/Makefile2:79: CMakeFiles/enclave.dir/all] Error 2 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/samples/chaincode/helloworld/_build' make[1]: *** [Makefile:87: all] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/samples/chaincode/helloworld/_build' make: *** [Makefile:19: build] Error 2```

bur (Fri, 20 Aug 2021 12:09:49 GMT):
seems you did not build the fpc crypto component

bur (Fri, 20 Aug 2021 12:09:57 GMT):
did you run `make build` in fpc root?

munapower (Fri, 20 Aug 2021 12:10:37 GMT):
no

bur (Fri, 20 Aug 2021 12:12:25 GMT):
that is still needed according to our main README

bur (Fri, 20 Aug 2021 12:13:06 GMT):
better mentioning it again in the test-network?

bur (Fri, 20 Aug 2021 12:13:06 GMT):
better mentioning it again in the test-network tutorial?

munapower (Fri, 20 Aug 2021 12:13:10 GMT):
yes, I forgot to go to the build first chaincode ... sorry .. was doing it late in the evening

munapower (Fri, 20 Aug 2021 12:14:33 GMT):
now I remember I did do it too! and got another error ```/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp: In function 'bool verify_ias_evidence(ByteArray&, ByteArray&, ByteArray&)': /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:153:36: error: 'QSF_ACCEPT_GROUP_OUT_OF_DATE' was not declared in this scope 153 | const unsigned int flags = QSF_ACCEPT_GROUP_OUT_OF_DATE | QSF_ACCEPT_CONFIGURATION_NEEDED | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:153:67: error: 'QSF_ACCEPT_CONFIGURATION_NEEDED' was not declared in this scope 153 | const unsigned int flags = QSF_ACCEPT_GROUP_OUT_OF_DATE | QSF_ACCEPT_CONFIGURATION_NEEDED | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:154:36: error: 'QSF_ACCEPT_SW_HARDENING_NEEDED' was not declared in this scope 154 | QSF_ACCEPT_SW_HARDENING_NEEDED | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:155:36: error: 'QSF_ACCEPT_CONFIGURATION_AND_SW_HARDENING_NEEDED' was not declared in this scope 155 | QSF_ACCEPT_CONFIGURATION_AND_SW_HARDENING_NEEDED; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ make[5]: *** [CMakeFiles/tpdo-crypto-adapt.dir/build.make:76: CMakeFiles/tpdo-crypto-adapt.dir/attestation-api/evidence/verify-evidence.cpp.o] Error 1 make[5]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[4]: *** [CMakeFiles/Makefile2:187: CMakeFiles/tpdo-crypto-adapt.dir/all] Error 2 make[4]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[3]: *** [Makefile:95: all] Error 2 make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[2]: *** [Makefile:22: build] Error 2 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto' make[1]: *** [Makefile:11: build] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common' make: *** [Makefile:22: build] Error 2```

munapower (Fri, 20 Aug 2021 12:22:01 GMT):
it seems there are include errors in the verify-evidence.cpp? that is what my vscode says ... it can't open source file mbedtls/error.h

bur (Fri, 20 Aug 2021 12:39:01 GMT):
can you do a `git submodule update`

bur (Fri, 20 Aug 2021 12:39:09 GMT):
on main

bur (Fri, 20 Aug 2021 12:40:08 GMT):
Bruno updated the PDO crytpo

bur (Fri, 20 Aug 2021 12:40:49 GMT):
when you do a `git pull` on FPC ... it does not automatically pull the tagged version we are using

bur (Fri, 20 Aug 2021 12:40:49 GMT):
when you do a `git pull` on FPC ... it does not automatically pull the tagged pdo version we are using

munapower (Fri, 20 Aug 2021 13:30:32 GMT):
ah!

munapower (Fri, 20 Aug 2021 13:32:21 GMT):
so switch to main

munapower (Fri, 20 Aug 2021 13:33:08 GMT):
git submodule update warning: unable to rmdir ccf_transaction_processor/CCF: Directory not empty Submodule path '../../common/crypto/pdo': checked out 'ba4896f457de697e43c7f16929a08b19754f90d2'

munapower (Fri, 20 Aug 2021 13:33:21 GMT):
should I delete it?

munapower (Fri, 20 Aug 2021 13:48:09 GMT):
ah! we are closer! Even with previous error I tried and the build almost completed successfully ... obtained this error now: ```CMake Error at pdo/common/CMakeVariables.txt:39 (message): PDO_ENCLAVE_CODE_SIGN_PEM environment variable not defined! Call Stack (most recent call first): CMakeLists.txt:108 (INCLUDE)```

bur (Fri, 20 Aug 2021 14:14:06 GMT):
did you run make clean?

munapower (Fri, 20 Aug 2021 14:15:05 GMT):
I guessed I might have to do that

bur (Fri, 20 Aug 2021 14:54:14 GMT):
it's always a good idea when using cmake :)

munapower (Sat, 21 Aug 2021 23:23:18 GMT):
Hello! So at last I was able to get the environment up and running and to test the changes ... BUT it seems I forgot to signoff with the last commit where I also created the PR ... anyway I followed the suggestion and added to sign-off and pushed with force-with-lease but it still isn't passing validation :-(

bur (Mon, 23 Aug 2021 09:20:53 GMT):
the first commit of your three is not signed

bur (Mon, 23 Aug 2021 09:21:07 GMT):
why don't you squash you commits into a single one

bur (Mon, 23 Aug 2021 09:21:14 GMT):
which is than signed

bur (Mon, 23 Aug 2021 09:22:26 GMT):
I also provided some additional suggestions on your PR :)

munapower (Mon, 23 Aug 2021 15:47:49 GMT):
I have screwed up trying to squash

munapower (Mon, 23 Aug 2021 16:01:47 GMT):
I was able to solve ... don't understand yet how I should have done it to avoid all the issues I had ...

bur (Mon, 23 Aug 2021 16:29:59 GMT):
I think you can configure your git to do `git commit -s` by default ... or you train your muscle memory to ALWAYS `-s` a commit

munapower (Mon, 23 Aug 2021 16:41:03 GMT):
I usually commt using sourcetree ... what I meant was the squash ....

bur (Wed, 25 Aug 2021 18:42:36 GMT):
@BrunoVavala PR 618 is ready for review. Thank you https://github.com/hyperledger/fabric-private-chaincode/pull/618

bur (Thu, 02 Sep 2021 13:08:04 GMT):
Next week Tuesday we will have Chrysoula Stathakopoulou in our community call, presenting the work with the title "Adding Fairness to Order: Preventing Front-Running Attacks in BFT Protocols using TEEs".

thonexin (Fri, 03 Sep 2021 05:43:55 GMT):
Has joined the channel.

thonexin (Fri, 03 Sep 2021 05:43:56 GMT):
Hi I have got an enquiry about the following randomness part (https://github.com/hyperledger/fabric-private-chaincode/blob/6c1394356781e7236a6cc58a91d5c96b50e07a34/ecc_enclave/enclave/shim.h#L249) 1. where can I find note-3?(// ***WARNING***: we implement this function using the SGX random number generator, but we expect to // upgrade it according to what highlighted in note-3.) 2. Does SGX random number generator provide true random numbers? if so how can our ordinary users be assured of?

bur (Fri, 03 Sep 2021 07:29:30 GMT):
hi @thonexin thank for your questions

bur (Fri, 03 Sep 2021 07:30:04 GMT):
> 1. where can I find note-3? ``` Note-3: due to what highlighted in note-2, a chaincode's source of randomness should // rather be securely provided by the Fabric infrastructure, ensuring that chaincodes running on // different platforms can get access to the same random coins. ``` https://github.com/hyperledger/fabric-private-chaincode/blob/6c1394356781e7236a6cc58a91d5c96b50e07a34/ecc_enclave/enclave/shim.h#L257

bur (Fri, 03 Sep 2021 07:35:15 GMT):
> 2. Does SGX random number generator provide true random numbers? ``` Random Number Generation Functions The random functions srand and rand are not supported in the Intel® SGX SDK C library. A true random function sgx_read_rand is provided in the tRTS library by using the RDRAND instruction. However, in the Intel® SGX simulation environment, this function still generates pseudo random numbers because RDRAND may not be available on the hardware platform. ``` Intel SGX Developer Reference for Linux, Page 119 (https://download.01.org/intel-sgx/sgx-linux/2.14/docs/Intel_SGX_Developer_Reference_Linux_2.14_Open_Source.pdf)

bur (Fri, 03 Sep 2021 07:47:04 GMT):
I understand the second part of your question more philosophically :) > if so how can our ordinary users be assured of? So it's the users decision to trust the TEE HW / SW provider that all their claims regarding security are correct or not. In our case, FPC relies on the assumption that the Intel SGX SDK does what it claims to do. Since FPC and the Intel SGX SDK are open source, at least, code can be reviewed to build confidence and trust.

thonexin (Fri, 03 Sep 2021 07:58:59 GMT):
HI if the random key part is agreed by the users then other SGX related part wouldn't much matter I suppose. Maybe Fabric architecture can intervene to calm down any issue....... Ubuntu may matter all the time though

munapower (Wed, 08 Sep 2021 19:19:44 GMT):

UTM configuration

munapower (Wed, 08 Sep 2021 19:21:23 GMT):
Hello, trying UTM, would this be a correct configuration to have an SGX enabled computer

munapower (Wed, 08 Sep 2021 19:21:34 GMT):

Advanced settings

BrunoVavala (Thu, 09 Sep 2021 07:56:19 GMT):
What's UTM? Anyway, Nehalem is not SGX-enabled. You need at least a Skylake machine.

gseront (Thu, 09 Sep 2021 08:34:28 GMT):
Has joined the channel.

gseront (Thu, 09 Sep 2021 08:34:28 GMT):
Adding a new identity to the dev environment. Hi, I'm using the dev docker image of FPC as described in FPC doc. I noticed that there are no user certificate in the msp. I wanted to add a new identity, but I also noticed that the msp has not been generated with cryptogen since the organization name inside integration/config/crypto-config.yaml is not the same as the one in the msp. I couldn't track down where these certificates are generated. How would you add a new user identity?

bur (Thu, 09 Sep 2021 09:26:44 GMT):
https://github.com/utmapp/UTM

bur (Thu, 09 Sep 2021 09:27:23 GMT):
I guess any x86 is fine since you are setting this up for SGX simulation mode

bur (Thu, 09 Sep 2021 09:30:37 GMT):
Hi, for the integration tests we use the msp provided in fabric/sampleconfig (https://github.com/hyperledger/fabric/tree/main/sampleconfig/msp)

bur (Thu, 09 Sep 2021 09:32:09 GMT):
Instead of touching this, I would recommend using the test-network. There you have much better control of the org structure and msp, respectively.

bur (Thu, 09 Sep 2021 09:32:11 GMT):
See https://github.com/hyperledger/fabric-private-chaincode/tree/main/samples/deployment/test-network

bur (Thu, 09 Sep 2021 09:32:15 GMT):
I hope this helps

bur (Thu, 09 Sep 2021 09:52:25 GMT):
@here just pushed v1.0-rc2 release https://github.com/hyperledger/fabric-private-chaincode/releases

gseront (Thu, 09 Sep 2021 10:49:15 GMT):
Thanks!

munapower (Thu, 09 Sep 2021 13:08:24 GMT):
ok

gseront (Fri, 10 Sep 2021 11:37:02 GMT):
Hi, sorry to bother you again. What I am trying to achieve is to get the chaincode invoker identity. I use get_creator_name. For the moment. With the integration network of course it returns the peer identity. If the chaincode is invoked through an application that uses a wallet with another identity than the peer, then get_creator_name should return the identity from the wallet. Am I right? Best regards,

ricc.zappoli (Fri, 10 Sep 2021 16:18:48 GMT):
Has joined the channel.

gseront (Mon, 13 Sep 2021 08:38:01 GMT):
Hi, I'm trying to get the identity of the chaincode invoker through get_creator_id. I came accros the following comment in the shim.h : "the value returned from `get_creator_name` will be unvalidated, i.e., identity management has to be done on the application level." Does that mean that get_creator_id won't returns the correct identity?

gseront (Mon, 13 Sep 2021 08:38:01 GMT):
Hi, I'm trying to get the identity of the chaincode invoker through get_creator_name. I came accros the following comment in the shim.h : "the value returned from `get_creator_name` will be unvalidated, i.e., identity management has to be done on the application level." Does that mean that get_creator_id won't returns the correct identity?

gseront (Mon, 13 Sep 2021 08:38:01 GMT):
Hi, I'm trying to get the identity of the chaincode invoker through get_creator_name. I came accros the following comment in the shim.h : "the value returned from `get_creator_name` will be unvalidated, i.e., identity management has to be done on the application level." Does that mean that get_creator_name won't returns the correct identity?

bur (Tue, 14 Sep 2021 07:04:40 GMT):
yes, that is correct.

bur (Tue, 14 Sep 2021 07:11:14 GMT):
hi, this is an interesting topic! The current implementation of `get_creator_name` has a few flaws I must admit. First, our implementation forwards the `get_creator_name` call to the go-shim `GetCreator` function. That is, the enclave receives the creator name from outside the enclave and this, per definition, makes it untrusted. The current impl does not validate that the received creator identity matches what the signed transaction proposal.

bur (Tue, 14 Sep 2021 07:15:25 GMT):
For this reason, we suggest in the comment use move the identity management to the application level. I suggest, for non-production uses, you can continue with `get_creator_name`.

ikegawa.koshi (Tue, 14 Sep 2021 07:38:07 GMT):
Hello FPC team. I have confirmed that FPC build errors occur in the current main branch and v1.0-rc2. The config environment is FPC_MODE=HW. The test of installation of marbles02 seems to have failed. The error message is as follows ``` 2021-09-14 07:34:55.079 UTC [chaincodeCmd] ClientWait -> INFO 001 txid [079ec5b5dd1286e959e3077e5b78d299a145f9b0f84f5e9c10331e3595bd05d8] committed with status (VALID) at 127.0.0.1:7051 2021-09-14 07:34:55.079 UTC [chaincodeCmd] chaincodeInvokeOrQuery -> INFO 002 Chaincode invoke successful. result: status:200 Querying Chaincode Encryption Key peer.sh: /project/src/github.com/hyperledger/fabric-private-chaincode/fabric/_internal/bin/peer chaincode query -o localhost:7050 -C mychannel -n ercc -c {"Args":["QueryChaincodeEncryptionKey", "auction_test"]} Chaincode EK (b64): LS0tLS1CRUdJTiBSU0EgUFVCTElDIEtFWS0tLS0tCk1JSUJpZ0tDQVlFQXc3NWxwUkRMdWt6cWw0eTV1VTB2dVpTelhuT255SUVPMEJLMmM5S2V6RDhIbk9vMkVXZVYKRlM0MDdUaEEvSDNyRU03QkREZkhXUTRwdFlIZkxmcjJHckMvREhiZ3RoUzJyTEgxMlFIc1R5NnhIaFBhVGIzSgpqdnJxc3ZFb0xhSUFNRTFxbXpibWw5WGdqeDV2NUcvdlZhOTYrT2VuN2p3WVdmTlN2NTZXYjRUNGthNUFRbVUxClpyT2FFdEtPNHRiSFc5bzBDY2szLzA5RFNzMkhyMFBqT0NqMlkzc1dqUXZ4bEpBajR4Y0k2cHF0ZGdoQnZENDkKY1F6cENaMDFjeS9YSFZQRWt3NjJsNk9kWGdzZXJUdFpieTVDTmdtaG9SVGNRMHh4dHNrOEVzQUEzelJZWkkvMApHK2lSVmFpeDI3dHRoTldhdEFxV0xlQi83eUpNcmlrT1BmMFFmaGNaUmV4dUFBeEo5UEgxemVKZWJsM2JGUTAxCjd1dm1Va3h4a3hYM29ZdjU2ZW1VT2c5UUtKUWNSbHRnUE5xOWVjckdvT3Jkd0JVcFFmbWdDSmRoZkVZRHRUTE0KOHhncTl0N2RzRE15MER0ZFFZOEU1dzVBcUd6RUNJeVFsMGo0eE9OMTcyUnBQcTZoZ0RpMjluYWtBVElxMGxnMQoreEZxNTYxRkNsbzFBZ01CQUFFPQotLS0tLUVORCBSU0EgUFVCTElDIEtFWS0tLS0tCg== Error: chaincode install failed with status: 500 - failed to invoke backing implementation of 'InstallChaincode': could not build chaincode: docker build failed: docker image build failed: docker build failed: Error returned from build: 1 "no required module provides package github.com/hyperledger/fabric-samples/chaincode/marbles02/go: go.mod file not found in current directory or any parent directory; see 'go help modules' " peer.sh: test failed: /project/src/github.com/hyperledger/fabric-private-chaincode/fabric/_internal/bin/peer lifecycle chaincode install /tmp/marbles02.tar.gz deployment_test.sh: test failed: env FABRIC_CFG_PATH=/project/src/github.com/hyperledger/fabric-private-chaincode/integration/config /project/src/github.com/hyperledger/fabric-private-chaincode/integration/../fabric/bin//peer.sh lifecycle chaincode install /tmp/marbles02.tar.gz make[1]: *** [Makefile:22: deployment_test] Error 111 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/integration' make: *** [Makefile:22: test] Error 2 ```

ikegawa.koshi (Tue, 14 Sep 2021 07:44:09 GMT):
Note that marbles02.tar.gz exists in /tmp. ``shell /project/src/github.com/hyperledger/fabric-private-chaincode# ls /tmp | grep -i marbles marbles02.tar.gz ```` ```

ikegawa.koshi (Tue, 14 Sep 2021 07:44:09 GMT):
Note that marbles02.tar.gz exists in /tmp. ```shell /project/src/github.com/hyperledger/fabric-private-chaincode# ls /tmp | grep -i marbles marbles02.tar.gz ```

bur (Tue, 14 Sep 2021 08:18:29 GMT):
oh interesting, note that marbles02 is a plain fabric chaincode - no FPC :) did they change something with the fabric samples? The error looks related to a go modules issue. Need to investigate to see what went wrong. Maybe they updates to go version for the cc builder to a new version, which now by default uses go modules instead of gopath to resolve dependencies?

bur (Tue, 14 Sep 2021 08:19:41 GMT):
mh marbles02 has a `go.mod` https://github.com/hyperledger/fabric-samples/tree/master/chaincode/marbles02/go

bur (Tue, 14 Sep 2021 08:25:23 GMT):
I will run the integration test locally now to see if I get the same error

ikegawa.koshi (Tue, 14 Sep 2021 08:28:18 GMT):
Oh, thanks! I'll look for the cause of the problem...

bur (Tue, 14 Sep 2021 09:02:56 GMT):
Integration test on within the FPC docker dev image (with SGX simulation mode) runs without an issue

ikegawa.koshi (Tue, 14 Sep 2021 09:49:38 GMT):
I tried the integration test (simulation mode), but I got the same error...

bur (Tue, 14 Sep 2021 10:04:24 GMT):
wired

bur (Tue, 14 Sep 2021 10:04:48 GMT):
do you have any modifications in your repo?

ikegawa.koshi (Tue, 14 Sep 2021 10:07:02 GMT):
I recreated a new VM, configured the environment and tried to build FPC. However, I got the same error. I used the original, unmodified FPC.

bur (Tue, 14 Sep 2021 10:08:47 GMT):
can you quickly check what go version you are using? `go version` and what docker images are used - `docker images`

ikegawa.koshi (Tue, 14 Sep 2021 10:11:19 GMT):
OK. The results are listed below. ``` # go version go version go1.15.4 linux/amd64 # docker images REPOSITORY TAG IMAGE ID CREATED SIZE hyperledger/fabric-private-chaincode-dev main 5d32adc3bfbc 17 hours ago 2.07GB hyperledger/fabric-ccenv 2.3 56fa403e02ee 4 days ago 502MB ghcr.io/hyperledger/fabric-private-chaincode-base-dev main 64dff7359e91 5 days ago 1.86GB hyperledger/fabric-private-chaincode-base-dev main 64dff7359e91 5 days ago 1.86GB ```

bur (Tue, 14 Sep 2021 11:58:28 GMT):
mh

bur (Tue, 14 Sep 2021 11:59:18 GMT):
I just can're reproduce it

bur (Tue, 14 Sep 2021 11:59:55 GMT):
let me try to re-run github actions

bur (Tue, 14 Sep 2021 12:16:54 GMT):
ok - CI runs into the same issue https://github.com/hyperledger/fabric-private-chaincode/runs/3598353462?check_suite_focus=true

bur (Tue, 14 Sep 2021 12:27:23 GMT):
I am wondering if this issue is related to https://github.com/hyperledger/fabric/releases/tag/v2.3.3

bur (Tue, 14 Sep 2021 13:56:11 GMT):
running the integration tests with `hyperledger/fabric-ccenv:2.2` works as expected

bur (Tue, 14 Sep 2021 13:57:31 GMT):
I think the problem is caused by the fabric upgrade to go 1.16 as this uses go.mod by default

bur (Tue, 14 Sep 2021 13:57:48 GMT):
see https://golang.org/doc/go1.16#go-command

bur (Tue, 14 Sep 2021 13:59:01 GMT):
that is, the ccenv container tries to build the chaincode now with `GO111MODULE=on` instead of `auto`. However, the packaging command does not include the `go.mod` file from the marbles example into the `marbles.tar.gz`

bur (Tue, 14 Sep 2021 14:00:33 GMT):
maybe we can resolve this problem by upgrading our fabric code to 2.3.3 as well

bur (Tue, 14 Sep 2021 14:00:55 GMT):
as this commit indicates that `GO11MODULE` is set accordingly https://github.com/hyperledger/fabric/commit/5be686fcb3d1a00662ff6593778af5937a32fb14

ikegawa.koshi (Wed, 15 Sep 2021 06:37:10 GMT):
Oh, so you were able to reproduce it by running CI! Thanks! I will check!

bur (Wed, 15 Sep 2021 08:08:31 GMT):
the problem are the fabric images pulled by the peer in order to build the go chaincode

bur (Wed, 15 Sep 2021 08:09:21 GMT):
if the `fabric-ccenv`is not available on the host, the peer fetches it from dockerhub

bur (Wed, 15 Sep 2021 08:10:21 GMT):
however, it fetches a TWO_DIGIT version, i.e., 2.3 instead of 2.3.0

bur (Wed, 15 Sep 2021 08:10:54 GMT):
it appears that by fetching 2.3, the most recent version 2.3.3 is downloaded.

bur (Wed, 15 Sep 2021 08:13:29 GMT):
The solution I have in mind is the following: - Let our build script download the correct version (in our case 2.3.0) of fabric-ccenv. This is a single line change in `fabric/Makefile`. Additionally, we can use the chance to upgrade to 2.3.3 and go 1.16, WDYT?

bur (Wed, 15 Sep 2021 08:13:59 GMT):
what worries me most, is that our rc2 release is broken :/

bur (Wed, 15 Sep 2021 09:57:48 GMT):
Let's create an issue for this

bur (Wed, 15 Sep 2021 09:57:48 GMT):
@ikegawa.koshi Let's create an issue for this

ikegawa.koshi (Wed, 15 Sep 2021 13:59:47 GMT):
Oh thanks! Hmm… if the problem can be solved immediately, I think it would be better to use v2.3.0. However, in the future, it would be better to use Fabric v2.3.3 and Go v1.16…!!!

ikegawa.koshi (Wed, 15 Sep 2021 13:59:56 GMT):
OK, I will create issue soon!

ikegawa.koshi (Wed, 15 Sep 2021 14:21:09 GMT):
I created an issue! https://github.com/hyperledger/fabric-private-chaincode/issues/628

ikegawa.koshi (Thu, 16 Sep 2021 02:55:10 GMT):
I confirmed that I could build the FPC. However, I have discovered a new issue. https://github.com/hyperledger/fabric-private-chaincode/issues/628#issuecomment-920504326

bur (Tue, 21 Sep 2021 15:47:32 GMT):
FYI https://srds21.cse.msu.edu/conference_prog.html

munapower (Thu, 23 Sep 2021 15:21:40 GMT):
@bur @BrunoVavala I am not going to be able to make it today ... something came up now ...

munapower (Mon, 27 Sep 2021 02:17:04 GMT):
Guys, I was able to recreate the environment and when I ran the make from the main FPC directory I got this error ```33% tests passed, 2 tests failed out of 3 Total Test time (real) = 19.82 sec The following tests FAILED: 2 - ttest (ILLEGAL) 3 - attested_evidence_test.sh (Failed) Errors while running CTest make[3]: *** [Makefile:84: test] Error 8 make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' PDO crypto tests failed. Define PDO_DEBUG_BUILD=1 environment for enabling logging in tests. make[2]: *** [Makefile:25: test] Error 1 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto' make[1]: *** [Makefile:11: test] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common' make: *** [Makefile:22: test] Error 2 ```

bur (Mon, 27 Sep 2021 09:11:14 GMT):
oh interesting, @BrunoVavala what does ILLEGAL in that case mean? do we get more more debugging by setting `export PDO_DEBUG_BUILD=1` in `config.override.mk`?

BrunoVavala (Mon, 27 Sep 2021 09:57:17 GMT):
I guess `ILLEGAL` refers to "illegal instruction". For instance, when you try to execute SGX instructions on non-SGX-capable hardware. Regarding the debugging, yes, you should get more.

munapower (Mon, 27 Sep 2021 12:59:06 GMT):
ok, will try with that. BTW I created a file to write down how I am getting the image to work https://docs.google.com/document/d/1cT-cAkgB7T2_ZhEvRc7nSPP7bwWVIA3PQhtyT-H0wwU/edit?usp=sharing

bur (Tue, 28 Sep 2021 12:35:39 GMT):
https://github.com/intel/linux-sgx/issues/404

bur (Tue, 28 Sep 2021 12:35:45 GMT):
is this related?

munapower (Tue, 28 Sep 2021 13:13:42 GMT):

Clipboard - September 28, 2021 10:13 AM

munapower (Tue, 28 Sep 2021 13:13:47 GMT):
yes, maybe the processor is old ... it is a config from 2009 ... and they don't list any newer ones ...

munapower (Tue, 28 Sep 2021 15:21:49 GMT):

Latest error on UTM

munapower (Tue, 28 Sep 2021 15:24:32 GMT):

Current UTM configuration

bur (Thu, 30 Sep 2021 13:55:13 GMT):
@BrunoVavala Can you please look at https://github.com/hyperledger/fabric-private-chaincode/pull/633

munapower (Wed, 06 Oct 2021 12:43:10 GMT):
@bur you might be interested in this ```Hyperledger Frankfurt MeetUp is accepting presentation topics for the upcoming MeetUp event (virtual) in November 2021. We are looking for dynamic speakers to provide expert quality content for our attendees. This is a great opportunity to share your knowledge and insights to push the Frankfurt Hyperledger community forward. The sessions are to be delivered in English and will run for 60 minutes. Please submit your session ideas for the event via email to Mithun.Sridharan@GMail.COM To nominate yourself or another person, send us full contact details and brief bio (~200 words) of the proposed speaker and potential topic, including a broad outline of the areas covered via the aforementioned email. The call for speakers is open until 07 November 2021. For any queries, please contact me directly via email. Thanks! - Mithun Sridharan, Co-organizer```

bur (Wed, 06 Oct 2021 14:59:33 GMT):
oh cool thing! we should propose a talk on FPC

munapower (Wed, 06 Oct 2021 17:13:45 GMT):
yes!

BrunoVavala (Mon, 11 Oct 2021 13:23:50 GMT):
Folks, I won't be joining the call tomorrow

munapower (Mon, 11 Oct 2021 15:44:01 GMT):
Neither can I :-(

munapower (Mon, 11 Oct 2021 22:18:47 GMT):
I have tried to be able to get spice-vdagent to let me copy from clipboard into the tty1 screen of my ubuntu server with no avail. I also tried setting up openssh to login that way from my MacOs but am getting a permission denied with my user password.

bur (Mon, 11 Oct 2021 22:25:16 GMT):
can you explain how you did set up ssh? following some tutorial?

bur (Mon, 11 Oct 2021 22:26:56 GMT):
this guide looks pretty detailed - not sure if that helps https://medium.com/nycdev/how-to-ssh-from-a-host-to-a-guest-vm-on-your-local-machine-6cb4c91acc2e

munapower (Tue, 12 Oct 2021 14:32:21 GMT):
https://linuxhint.com/how-to-install-and-enable-openssh-on-ubuntu/

munapower (Tue, 12 Oct 2021 14:32:43 GMT):
I take back what I said ... I will be able to make it

munapower (Sun, 17 Oct 2021 14:51:27 GMT):
So I am able to connect via ssh to the UTM VM and it is working fast. I have been able to install go, docker, make ... I wanted to now mount the shared directory using smb because I have read that it is much faster than using webdav. So this is the command I issued `sudo mount -t cifs -o username="XXXXXXX",password=XXXXXXX //XX.XX.XX.XX/hyperledger-labs /usr/local/go/src/github.com/hyperledger-labs` but I am getting the following error

munapower (Sun, 17 Oct 2021 14:51:36 GMT):

mount error

munapower (Sun, 17 Oct 2021 14:51:43 GMT):
any ideas?

munapower (Sun, 17 Oct 2021 14:54:14 GMT):

Sharing

munapower (Sun, 17 Oct 2021 14:54:15 GMT):
the ip address I use is the one that appears here

munapower (Sun, 17 Oct 2021 22:56:58 GMT):
So I have read that the samba that comes with Apple doesn't completely match the open source version so I am following this tutorial to install/configure the open source samba (https://gist.github.com/erkserkserks/0d48f75e1a36bc9e1ccdc3e1428efba0) and for that I first need to install macports (https://www.macports.org/install.php) and to do so I have to install xcode ...

ravinayag (Mon, 18 Oct 2021 18:30:57 GMT):
Has joined the channel.

ravinayag (Mon, 18 Oct 2021 18:30:58 GMT):
Hi , Im getting this error when i declare as Int in java chaincode. Is chaincode only accepts in string format... ? ``` Driver.java:52: error: incompatible types: int cannot be converted to String return piecesCount; ...... incompatible types: Double cannot be converted to String```

BrunoVavala (Mon, 18 Oct 2021 23:00:51 GMT):
Folks, I have a conflict tomorrow. It should be short, so hopefully I will join later.

bur (Tue, 19 Oct 2021 07:10:23 GMT):
hi @ravinayag; please ask your question in #fabric-java-chaincode I hope someone there can help you

bur (Tue, 19 Oct 2021 07:14:51 GMT):
oh gosh

bur (Tue, 19 Oct 2021 07:18:04 GMT):
so you are saying that the "normal" sharing provided by UTM uses webdav and is slow? https://mac.getutm.app/guide/#shared-directory

bur (Tue, 19 Oct 2021 07:20:16 GMT):
I don't remember when I used / installed samba somewhere.

bur (Tue, 19 Oct 2021 07:20:47 GMT):
I am just thinking; since ssh is now working fine; you should also use sshfs to mount into your container https://www.digitalocean.com/community/tutorials/how-to-use-sshfs-to-mount-remote-file-systems-over-ssh

bur (Tue, 19 Oct 2021 07:21:06 GMT):
but not sure if this even slower than the UTM built-in solution

bur (Tue, 19 Oct 2021 07:33:02 GMT):
I guess using sshfs is also a bad thing

munapower (Sun, 24 Oct 2021 23:45:36 GMT):

ssh and samba working

munapower (Sun, 24 Oct 2021 23:46:33 GMT):

ssh and samba working!!!

munapower (Mon, 25 Oct 2021 01:22:08 GMT):

dev env up and running

munapower (Mon, 25 Oct 2021 01:44:42 GMT):

Clipboard - October 24, 2021 10:44 PM

munapower (Mon, 25 Oct 2021 01:45:02 GMT):
I tried to do a make clean and get this error:

munapower (Mon, 25 Oct 2021 01:45:17 GMT):
and them when I list the directories I get this:

munapower (Mon, 25 Oct 2021 01:45:22 GMT):

Clipboard - October 24, 2021 10:45 PM

munapower (Mon, 25 Oct 2021 01:45:38 GMT):
which is not the configuration I have on my local

munapower (Mon, 25 Oct 2021 01:46:14 GMT):

Clipboard - October 24, 2021 10:46 PM

munapower (Mon, 25 Oct 2021 01:46:29 GMT):
I wonder if SAMBA might be the problem ...

munapower (Mon, 25 Oct 2021 13:33:12 GMT):
added force user to the samba configuration so that the user used is not root but the user I created and it still doesn't let me delete. Could I run the make clean from my MacOS directly?

munapower (Mon, 25 Oct 2021 13:47:59 GMT):
posted this message on the UTM discord support https://discord.com/channels/674683213217792078/681548127299436544/902190040812232724

munapower (Tue, 26 Oct 2021 14:19:21 GMT):
good news! I was able to solve the delete issue. So I ran make clean successfully and then when I execute make from FPC_PATH I get the following error: ```-- Configuring done -- Generating done -- Build files have been written to: /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build make --directory=_build make[3]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[4]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[5]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' Scanning dependencies of target tpdo-crypto-adapt make[5]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[5]: Entering directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' [ 1%] Building CXX object CMakeFiles/tpdo-crypto-adapt.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/base64/base64.cpp.o [ 2%] Building CXX object CMakeFiles/tpdo-crypto-adapt.dir/attestation-api/evidence/verify-evidence.cpp.o In file included from /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:1: /project/src/github.com/hyperledger/fabric-private-chaincode/common/error.h:9: warning: "COND2ERR" redefined 9 | #define COND2ERR(b) \ | In file included from /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo/common/crypto/crypto.h:29, from /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:1: /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/pdo/common/crypto/verify_ias_report/verify-report.h:42: note: this is the location of the previous definition 42 | #define COND2ERR(b) \ | /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp: In function 'bool verify_ias_evidence(ByteArray&, ByteArray&, ByteArray&)': /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:153:36: error: 'QSF_ACCEPT_GROUP_OUT_OF_DATE' was not declared in this scope 153 | const unsigned int flags = QSF_ACCEPT_GROUP_OUT_OF_DATE | QSF_ACCEPT_CONFIGURATION_NEEDED | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:153:67: error: 'QSF_ACCEPT_CONFIGURATION_NEEDED' was not declared in this scope 153 | const unsigned int flags = QSF_ACCEPT_GROUP_OUT_OF_DATE | QSF_ACCEPT_CONFIGURATION_NEEDED | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:154:36: error: 'QSF_ACCEPT_SW_HARDENING_NEEDED' was not declared in this scope 154 | QSF_ACCEPT_SW_HARDENING_NEEDED | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/attestation-api/evidence/verify-evidence.cpp:155:36: error: 'QSF_ACCEPT_CONFIGURATION_AND_SW_HARDENING_NEEDED' was not declared in this scope 155 | QSF_ACCEPT_CONFIGURATION_AND_SW_HARDENING_NEEDED; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ make[5]: *** [CMakeFiles/tpdo-crypto-adapt.dir/build.make:76: CMakeFiles/tpdo-crypto-adapt.dir/attestation-api/evidence/verify-evidence.cpp.o] Error 1 make[5]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[4]: *** [CMakeFiles/Makefile2:187: CMakeFiles/tpdo-crypto-adapt.dir/all] Error 2 make[4]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[3]: *** [Makefile:95: all] Error 2 make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' make[2]: *** [Makefile:22: build] Error 2 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto' make[1]: *** [Makefile:11: build] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common' make: *** [Makefile:22: build] Error 2```

munapower (Tue, 26 Oct 2021 16:05:29 GMT):
Updating submodules helped with this error. called `git pull --recurse-submodules` from the common/crypto subdirectory

munapower (Tue, 26 Oct 2021 16:08:16 GMT):
new error is [ 82%] Linking CXX static library libshim.a cd /project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build/enclave && /usr/bin/cmake -P CMakeFiles/shim.dir/cmake_clean_target.cmake cd /project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build/enclave && /usr/bin/cmake -E cmake_link_script CMakeFiles/shim.dir/link.txt --verbose=1 /usr/bin/ar qc libshim.a CMakeFiles/shim.dir/crypto.cpp.o CMakeFiles/shim.dir/enclave.cpp.o CMakeFiles/shim.dir/enclave_t.c.o CMakeFiles/shim.dir/shim.cpp.o CMakeFiles/shim.dir/shim_internals.cpp.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/enclave/common.cpp.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/enclave/cc_data.cpp.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/base64/base64.cpp.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/utils.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/json/parson.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/fpc/fpc.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/fabric/peer/proposal.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/fabric/peer/proposal_response.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/fabric/peer/chaincode.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/fabric/common/policies.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/fabric/ledger/rwset/kvrwset/kv_rwset.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/fabric/msp/msp_principal.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/google/protobuf/any.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/google/protobuf/timestamp.pb.c.o CMakeFiles/shim.dir/usr/local/nanopb/pb_common.c.o CMakeFiles/shim.dir/usr/local/nanopb/pb_encode.c.o CMakeFiles/shim.dir/usr/local/nanopb/pb_decode.c.o /usr/bin/ranlib libshim.a cd /project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build/enclave && mkdir -p /project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build/lib cd /project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build/enclave && cp libshim.a /project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build/lib/ cp: skipping file 'libshim.a', as it was replaced while being copied make[4]: *** [enclave/CMakeFiles/shim.dir/build.make:409: enclave/libshim.a] Error 1 make[4]: *** Deleting file 'enclave/libshim.a' make[4]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build' make[3]: *** [CMakeFiles/Makefile2:118: enclave/CMakeFiles/shim.dir/all] Error 2 make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build' make[2]: *** [Makefile:87: all] Error 2 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build' make[1]: *** [Makefile:18: build] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave' make: *** [Makefile:22: build] Error 2``` ```

munapower (Tue, 26 Oct 2021 16:08:16 GMT):
new error is ```[ 82%] Linking CXX static library libshim.a cd /project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build/enclave && /usr/bin/cmake -P CMakeFiles/shim.dir/cmake_clean_target.cmake cd /project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build/enclave && /usr/bin/cmake -E cmake_link_script CMakeFiles/shim.dir/link.txt --verbose=1 /usr/bin/ar qc libshim.a CMakeFiles/shim.dir/crypto.cpp.o CMakeFiles/shim.dir/enclave.cpp.o CMakeFiles/shim.dir/enclave_t.c.o CMakeFiles/shim.dir/shim.cpp.o CMakeFiles/shim.dir/shim_internals.cpp.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/enclave/common.cpp.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/enclave/cc_data.cpp.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/base64/base64.cpp.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/utils.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/json/parson.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/fpc/fpc.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/fabric/peer/proposal.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/fabric/peer/proposal_response.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/fabric/peer/chaincode.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/fabric/common/policies.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/fabric/ledger/rwset/kvrwset/kv_rwset.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/fabric/msp/msp_principal.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/google/protobuf/any.pb.c.o CMakeFiles/shim.dir/project/src/github.com/hyperledger/fabric-private-chaincode/common/protos/google/protobuf/timestamp.pb.c.o CMakeFiles/shim.dir/usr/local/nanopb/pb_common.c.o CMakeFiles/shim.dir/usr/local/nanopb/pb_encode.c.o CMakeFiles/shim.dir/usr/local/nanopb/pb_decode.c.o /usr/bin/ranlib libshim.a cd /project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build/enclave && mkdir -p /project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build/lib cd /project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build/enclave && cp libshim.a /project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build/lib/ cp: skipping file 'libshim.a', as it was replaced while being copied make[4]: *** [enclave/CMakeFiles/shim.dir/build.make:409: enclave/libshim.a] Error 1 make[4]: *** Deleting file 'enclave/libshim.a' make[4]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build' make[3]: *** [CMakeFiles/Makefile2:118: enclave/CMakeFiles/shim.dir/all] Error 2 make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build' make[2]: *** [Makefile:87: all] Error 2 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave/_build' make[1]: *** [Makefile:18: build] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/ecc_enclave' make: *** [Makefile:22: build] Error 2```

bur (Wed, 27 Oct 2021 14:26:19 GMT):
this is an interesting problem. I was wondering if this is related to the samba based file mount you are doing. Can you just copy the source somewhere in the VM to a place that is not backed by samba and run again?

bur (Mon, 01 Nov 2021 08:36:14 GMT):
please have a look at the FPC + FSC sample https://github.com/hyperledger/fabric-private-chaincode/pull/635

BrunoVavala (Tue, 02 Nov 2021 15:17:27 GMT):
Guys, the time in Europe has changed (1h earlier), and today I have a conflict at 9am PT. I'll have to skip call.

munapower (Tue, 02 Nov 2021 15:17:54 GMT):
I am still on a work call

bur (Tue, 02 Nov 2021 15:36:12 GMT):
argh - daylight time saving! I hate it when we are out of sync

bur (Tue, 02 Nov 2021 15:38:36 GMT):
ok - we skip the meeting and continue next week!

munapower (Thu, 04 Nov 2021 20:39:12 GMT):

passed libshim.a

munapower (Thu, 04 Nov 2021 20:40:46 GMT):
So confirmed it is a SAMBA issue .... it returned an error but in the final tests ...

bur (Fri, 05 Nov 2021 11:53:48 GMT):
aha - ok good to know

bur (Fri, 05 Nov 2021 11:53:58 GMT):
so how can we resolve it?

bur (Fri, 05 Nov 2021 11:54:52 GMT):
@ricc.zappoli Could you maybe explain how you use VSCode SSH integration to work with FPC? Maybe that would be an alternative

munapower (Fri, 05 Nov 2021 13:18:26 GMT):
@bur I have to dig deeper into SAMBA config, also maybe tune the Ubuntu side ....

munapower (Fri, 05 Nov 2021 13:18:51 GMT):
anyway how can I solve that missing test files error?

bur (Fri, 05 Nov 2021 13:30:36 GMT):
well, maybe we need to look at the "entire" logs - from the snippet it's not clear what went wrong

munapower (Fri, 05 Nov 2021 13:52:47 GMT):
ok, my entire machine crashed after I ran the test ... not related to the test ... so I will re run and post complete logs

bur (Tue, 09 Nov 2021 16:44:30 GMT):
https://code.visualstudio.com/docs/remote/ssh

ikegawa.koshi (Thu, 11 Nov 2021 11:00:09 GMT):
Hello, FPC team! I have now tried the latest main branch FPC and found that I get an error when running "make run-dev" on the "$FPC_PATH/utils/docker" path. The environment is as follows + Machine: MS Azure DCv2 instance (include Intel SGX) + OS: Ubuntu 20.04 LTS Server Error message is following: ''' ❯ make run-dev (cd ../.. &&\ DOCKER_BUILDKIT=1 docker build --build-arg FPC_VERSION=main -t hyperledger/fabric-private-chaincode-dev:main\ --build-arg GIT_USER_NAME='ikegawa-koshi' --build-arg GIT_USER_EMAIL='koshi.ikegawa.mf@hitachi.com'\ -f ./utils/docker/dev/Dockerfile\ . ) [+] Building 25.0s (9/9) FINISHED => [internal] load build definition from Dockerfile 0.1s => => transferring dockerfile: 1.87kB 0.0s => [internal] load .dockerignore 0.1s => => transferring context: 423B 0.0s => [internal] load metadata for docker.io/hyperledger/fabric-private-chaincode-base-dev:main 0.0s => [1/5] FROM docker.io/hyperledger/fabric-private-chaincode-base-dev:main 1.1s => [2/5] RUN apt-get update && apt-get install -y -q ${APT_ADD_PKGS} 4.0s => [3/5] RUN git config --global user.name "ikegawa-koshi" && git config --global user.email "koshi.ikegawa.mf@hitachi.com" 0.9s => [4/5] RUN git clone --branch v2.3.3 https://github.com/hyperledger/fabric.git /project/src/github.com/hyperledger/fabric 14.7s => [5/5] WORKDIR /project/src/github.com/hyperledger/fabric-private-chaincode 0.4s => exporting to image 3.7s => => exporting layers 3.6s => => writing image sha256:b49e4f2eacf5d9f7cb697ebc119d8917c470a31d227fbb9149d2dde0a0c889c8 0.0s => => naming to docker.io/hyperledger/fabric-private-chaincode-dev:main 0.0s # Cleanup existing but non-running (note absence of --force in rm!) old dev containers dev_container_id=$(docker ps -a | grep fpc-development-main | awk '{ print $1 }'); \ [ -z "${dev_container_id}" ] || DOCKER_BUILDKIT=1 docker rm "${dev_container_id}" # Now run a new instance DOCKER_BUILDKIT=1 docker run -v /var/run/docker.sock:/var/run/docker.sock -v "/home/ubuntu/go/src/github.com/hyperledger/fabric-private-chaincode":/project/src/github.com/hyperledger/fabric-private-chaincode --env DOCKERD_FPC_PATH=/home/ubuntu/go/src/github.com/hyperledger/fabric-private-chaincode/ --net=host -v "/home/ubuntu/go/src/github.com/hyperledger/fabric-private-chaincode/config/ias/":/project/src/github.com/hyperledger/fabric-private-chaincode/config/ias/ -v /var/run/aesmd:/var/run/aesmd --device /dev/sgx --env SGX_MODE=HW -i -e CI=true --name fpc-development-main -t hyperledger/fabric-private-chaincode-dev:main docker: Error response from daemon: error gathering device information while adding custom device "/dev/sgx": not a device node. ERRO[0000] error waiting for container: context canceled make: *** [Makefile:139: run-dev] Error 125 '''

ikegawa.koshi (Thu, 11 Nov 2021 11:01:25 GMT):
Hello, FPC team! I have now tried the latest main branch FPC and found that I get an error when running `make run-dev` on the `$FPC_PATH/utils/docker` path. The environment is as follows + Machine: MS Azure DCv2 instance (include Intel SGX) + OS: Ubuntu 20.04 LTS Server Error message is following: ```shell ❯ make run-dev (cd ../.. &&\ DOCKER_BUILDKIT=1 docker build --build-arg FPC_VERSION=main -t hyperledger/fabric-private-chaincode-dev:main\ --build-arg GIT_USER_NAME='ikegawa-koshi' --build-arg GIT_USER_EMAIL='koshi.ikegawa.mf@hitachi.com'\ -f ./utils/docker/dev/Dockerfile\ . ) [+] Building 25.0s (9/9) FINISHED => [internal] load build definition from Dockerfile 0.1s => => transferring dockerfile: 1.87kB 0.0s => [internal] load .dockerignore 0.1s => => transferring context: 423B 0.0s => [internal] load metadata for docker.io/hyperledger/fabric-private-chaincode-base-dev:main 0.0s => [1/5] FROM docker.io/hyperledger/fabric-private-chaincode-base-dev:main 1.1s => [2/5] RUN apt-get update && apt-get install -y -q ${APT_ADD_PKGS} 4.0s => [3/5] RUN git config --global user.name "ikegawa-koshi" && git config --global user.email "koshi.ikegawa.mf@hitachi.com" 0.9s => [4/5] RUN git clone --branch v2.3.3 https://github.com/hyperledger/fabric.git /project/src/github.com/hyperledger/fabric 14.7s => [5/5] WORKDIR /project/src/github.com/hyperledger/fabric-private-chaincode 0.4s => exporting to image 3.7s => => exporting layers 3.6s => => writing image sha256:b49e4f2eacf5d9f7cb697ebc119d8917c470a31d227fbb9149d2dde0a0c889c8 0.0s => => naming to docker.io/hyperledger/fabric-private-chaincode-dev:main 0.0s # Cleanup existing but non-running (note absence of --force in rm!) old dev containers dev_container_id=$(docker ps -a | grep fpc-development-main | awk '{ print $1 }'); \ [ -z "${dev_container_id}" ] || DOCKER_BUILDKIT=1 docker rm "${dev_container_id}" # Now run a new instance DOCKER_BUILDKIT=1 docker run -v /var/run/docker.sock:/var/run/docker.sock -v "/home/ubuntu/go/src/github.com/hyperledger/fabric-private-chaincode":/project/src/github.com/hyperledger/fabric-private-chaincode --env DOCKERD_FPC_PATH=/home/ubuntu/go/src/github.com/hyperledger/fabric-private-chaincode/ --net=host -v "/home/ubuntu/go/src/github.com/hyperledger/fabric-private-chaincode/config/ias/":/project/src/github.com/hyperledger/fabric-private-chaincode/config/ias/ -v /var/run/aesmd:/var/run/aesmd --device /dev/sgx --env SGX_MODE=HW -i -e CI=true --name fpc-development-main -t hyperledger/fabric-private-chaincode-dev:main docker: Error response from daemon: error gathering device information while adding custom device "/dev/sgx": not a device node. ERRO[0000] error waiting for container: context canceled make: *** [Makefile:139: run-dev] Error 125 ```

ikegawa.koshi (Thu, 11 Nov 2021 11:01:38 GMT):
I confirm that enclave is present in /dev/sgx. ```shell ❯ ls /dev/sgx enclave provision ``` aesmd.service is also active. ```shell ❯ sudo systemctl status aesmd.service ● aesmd.service - Intel(R) Architectural Enclave Service Manager Loaded: loaded (/lib/systemd/system/aesmd.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2021-11-11 19:36:09 JST; 12min ago Process: 695 ExecStartPre=/opt/intel/sgx-aesm-service/aesm/linksgx.sh (code=exited, status=0/SUCCESS) Process: 854 ExecStartPre=/bin/mkdir -p /var/run/aesmd/ (code=exited, status=0/SUCCESS) Process: 855 ExecStartPre=/bin/chown -R aesmd:aesmd /var/run/aesmd/ (code=exited, status=0/SUCCESS) Process: 856 ExecStartPre=/bin/chmod 0755 /var/run/aesmd/ (code=exited, status=0/SUCCESS) Process: 857 ExecStartPre=/bin/chown -R aesmd:aesmd /var/opt/aesmd/ (code=exited, status=0/SUCCESS) Process: 858 ExecStartPre=/bin/chmod 0750 /var/opt/aesmd/ (code=exited, status=0/SUCCESS) Process: 860 ExecStart=/opt/intel/sgx-aesm-service/aesm/aesm_service (code=exited, status=0/SUCCESS) Main PID: 872 (aesm_service) Tasks: 4 (limit: 9542) Memory: 16.1M CGroup: /system.slice/aesmd.service └─872 /opt/intel/sgx-aesm-service/aesm/aesm_service 11月 11 19:36:08 ike-dev-02 systemd[1]: Starting Intel(R) Architectural Enclave Service Manager... 11月 11 19:36:09 ike-dev-02 systemd[1]: Started Intel(R) Architectural Enclave Service Manager. 11月 11 19:36:10 ike-dev-02 aesm_service[872]: [get_qpl_handle ../qe_logic.cpp:263] Cannot open Quote Provider Library libdcap_quoteprov.so.1 and libdcap_quoteprov.so 11月 11 19:36:10 ike-dev-02 aesm_service[872]: The server sock is 0x559132744150 ```

bur (Thu, 11 Nov 2021 11:38:41 GMT):
oh interesting

bur (Thu, 11 Nov 2021 11:39:11 GMT):
do you also have `/dev/isgx/`?

bur (Thu, 11 Nov 2021 11:40:46 GMT):
it seems that `/dev/sgx` is a folder? and it cannot be "mounted" via the device flag in docker?

bur (Thu, 11 Nov 2021 11:43:12 GMT):
@BrunoVavala on your dcap machine, can you start the dev container?

ikegawa.koshi (Thu, 11 Nov 2021 13:29:34 GMT):
Apparently, `/dev/isgx/` does not exist on my machine... Is the lack of isgx a problem...? There was a further problem, the same error occurred in SIM mode.

bur (Thu, 11 Nov 2021 13:38:10 GMT):
well the make scripy tries do mount the sgx device if it is there. I am not so sure about the sgx driver with dcap. I thought no-dcap comes with /dev/isgx, whereas dcap driver comes with /dev/sgx

bur (Thu, 11 Nov 2021 13:38:50 GMT):
maybe bruno has an idea

bur (Thu, 11 Nov 2021 16:42:55 GMT):
see here

bur (Thu, 11 Nov 2021 16:42:57 GMT):
https://github.com/hyperledger/fabric-private-chaincode/blob/main/utils/docker/Makefile#L33

bur (Thu, 11 Nov 2021 16:43:34 GMT):
``` SGX_DEVICE_PATH ?= $(shell if [ -e "/dev/isgx" ]; then echo "/dev/isgx"; elif [ -e "/dev/sgx" ]; then echo "/dev/sgx"; fi) ``` ``` SGX_DEVICE_PATH ?= $(shell if [ -e "/dev/isgx" ]; then echo "/dev/isgx"; elif [ -e "/dev/sgx/enclave" ]; then echo "/dev/sgx/enclave"; fi) ```

bur (Thu, 11 Nov 2021 16:43:43 GMT):
maybe you can try something like that

bur (Thu, 11 Nov 2021 16:44:02 GMT):
not sure what to do with `/dev/sgx/privision`

bur (Thu, 11 Nov 2021 16:44:51 GMT):
I am also wondering if IAS attestation than works inside the fpc dev container using the dcap driver installed on the host

ikegawa.koshi (Fri, 12 Nov 2021 06:16:31 GMT):
@bur Oh! I can confirm run FPC! Thanks!

ikegawa.koshi (Fri, 12 Nov 2021 06:22:22 GMT):
@bur I have confirmed that `make run-dev` succeeds. However, the next time I ran `make` in `$FPC_PATH` on the development container, I got the following error. ``` attested_evidence_test.sh: Input Attestation: {"attestation_type":"epid-linkable","attestation":"AgABABMMAAAMAAwAAAAAAEHBP8Qava1wJYED1ZFio+QAAAAAAAAAAAAAAAAAAAAAEREDBf+ABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAHAAAAAAAAAKe7WaqIzxRsOmwfwZhAnwLwFQQ0rDRrntNgH630V9EPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACueS4t9LKRVNZ6K\/CEinORPdvGLrXOIRS9iUTFzmFcawAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADHdee3V+3mMM0KoRE70QJmGrOIKcpSpkIqt4KGLyaGRgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqAIAAG\/CccPisl8WyfJMYSenVyi0x9B8MB0a6bIaSM5wm50lesJSG8s\/THKGaViGMMxfbO3t92zVAozcnSfTM7nMcqZglmp8taAk3+N0z6VtasuxQEGUfJHPKaMB5dkyujI1k+5yJzCO9UmgypqY5\/vsejIFtMLQj9ZCp\/WPZHKmDGdBZZ3yp7xK8efJxAkvITjSwmORttibPMXlq2l3WmCJag5h9hlT\/v0UqZ+G7nWs0NrU20t687XjOpBgxtLCGBDmtQNS6ClN6xKirIm5\/NpAVi+BAWNfnYzXQEpm4GeZ6Zkl6TC629MynPYWkVqP\/DNIqCWaTI2vFTsFl7Jj5Wt+Jpoy2p54AnyEPJDt6eO36rZwd2uVusncFe9Dg4wTVt6J4JRF8V9\/I1uJzGLfsmgBAAA\/7uh8VxwXWXj9yfhXiu3c2r1dtzk82TfLhosAkvnQO6YwtMXn2hVRFt8MjxeswExQcS\/J1PVKA6Z0GJgp21Ab3gjgGTFvyJGU\/hm6Kr55AYJ6f7rbxT+3vDN6T7aWnPn0CBTtLatS\/RHCtehV5QNsO1KQdrhwGkaX9zmHVNnWQdll+P5csjxkcpX5yVM5sVVEYs24Q87gDfgSPdqMDYSlup6Pm96Gh42JR9pacMx9nfOPgjmJLZhOWbGz0H+kPW7IUqJQfLsAJfubGHCHzhwWX+CCNsShUjm5xl3zZPBjPLsi8RFtgufLe5rVtVPYIwyvbk53sE5SVnAQ\/u\/m4lZImJ3J0aQyXZ9OFZ8NUTpcDc1cSLatWM8e18cagepjUHfPbPzq5jGXpsTxw56hQAxh3OAJ8UjjdT2NqBcWejS2ZVLNzdoqf65K+g9tj2PdHefXr8MALZlPpVe7P0FIqxwggXdSUHivfK\/hSCbAZxKId2GjxHKltKxc"} attested_evidence_test.sh: IAS Response error 67% tests passed, 1 tests failed out of 3 Total Test time (real) = 3.40 sec The following tests FAILED: 3 - attested_evidence_test.sh (Failed) Errors while running CTest make[3]: *** [Makefile:84: test] Error 8 make[3]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto/_build' PDO crypto tests failed. Define PDO_DEBUG_BUILD=1 environment for enabling logging in tests. make[2]: *** [Makefile:25: test] Error 1 make[2]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common/crypto' make[1]: *** [Makefile:11: test] Error 2 make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/common' make: *** [Makefile:22: test] Error 2 ```

ikegawa.koshi (Fri, 12 Nov 2021 06:23:35 GMT):
As you expected, there seems to be an error with IAS attestation...

bur (Fri, 12 Nov 2021 08:21:40 GMT):
mh

bur (Fri, 12 Nov 2021 08:21:54 GMT):
somewhere I read that you can still do IAS attestation with the dcap driver

bur (Fri, 12 Nov 2021 08:22:26 GMT):
maybe one also need to mount `/dev/sgx/provision` into the container?

munapower (Fri, 12 Nov 2021 14:32:11 GMT):
@bur found it!

bur (Fri, 12 Nov 2021 15:00:11 GMT):
tell me!

BrunoVavala (Fri, 12 Nov 2021 20:23:19 GMT):
@ikegawa.koshi PR #639 should solve the issue. Regarding the attestation, the format of the response from IAS is unexpected. Please double check the credentials in `${FPC_PATH}/config/ias`.

ikegawa.koshi (Mon, 15 Nov 2021 06:43:49 GMT):
@BrunoVavala I fetched PR639 to my local repository and confirmed that FPC run correctly. Thank you very much!

munapower (Mon, 22 Nov 2021 16:03:32 GMT):
So, I was able to run make successfully and connect from VSCode using SSH

munapower (Mon, 22 Nov 2021 16:03:32 GMT):

VSCode Remote SSH

munapower (Mon, 22 Nov 2021 16:04:03 GMT):
I had to increment the memory to 6GB to be able to get thru the make

munapower (Mon, 22 Nov 2021 16:04:34 GMT):
`Ran 1 of 1 Specs in 31.924 seconds SUCCESS! -- 1 Passed | 0 Failed | 0 Pending | 0 Skipped --- PASS: TestStress (31.93s) PASS ok github.com/hyperledger/fabric-private-chaincode/integration/client_sdk/go/stress_test 32.440s stress_test.sh: - shutdown ledger stress_test.sh: TestStress test PASSED make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/integration' LINT: Running code checks for Go files... Checking with gofmt Checking with goimports Checking for golang.org/x/net/context Checking for github.com/gogo/protobuf Checking with go vet Checking with staticcheck Checking with misspell LINT: Running code checks for Cpp/header files... LINT completed. License: Running licence checks.. All files are excluded from having license headers root@fpc:/project/src/github.com/hyperledger/fabric-private-chaincode# `

munapower (Mon, 22 Nov 2021 16:04:34 GMT):
```Ran 1 of 1 Specs in 31.924 seconds SUCCESS! -- 1 Passed | 0 Failed | 0 Pending | 0 Skipped --- PASS: TestStress (31.93s) PASS ok github.com/hyperledger/fabric-private-chaincode/integration/client_sdk/go/stress_test 32.440s stress_test.sh: - shutdown ledger stress_test.sh: TestStress test PASSED make[1]: Leaving directory '/project/src/github.com/hyperledger/fabric-private-chaincode/integration' LINT: Running code checks for Go files... Checking with gofmt Checking with goimports Checking for golang.org/x/net/context Checking for github.com/gogo/protobuf Checking with go vet Checking with staticcheck Checking with misspell LINT: Running code checks for Cpp/header files... LINT completed. License: Running licence checks.. All files are excluded from having license headers root@fpc:/project/src/github.com/hyperledger/fabric-private-chaincode# ```

bur (Tue, 23 Nov 2021 08:08:35 GMT):
cool

bur (Tue, 23 Nov 2021 11:02:37 GMT):
are you still using the filesharing via samba?

webzest (Tue, 23 Nov 2021 16:41:04 GMT):
Has joined the channel.

webzest (Tue, 23 Nov 2021 16:41:04 GMT):
Thank you for having me...

bur (Mon, 29 Nov 2021 15:29:40 GMT):
@BrunoVavala does PDO crypto implement some function to extract a public key from a cert?

bur (Mon, 29 Nov 2021 15:32:14 GMT):
I am asking because, the signer identity provided with the signed proposal contains a cert instead of a public key, thus, it seems we need to extract the pk from it in order to use https://github.com/hyperledger-labs/private-data-objects/blob/main/common/crypto/pkenc_public_key.h#L47 and then use it to verify tx proposal signature

BrunoVavala (Mon, 29 Nov 2021 17:28:30 GMT):
PDO crypto does not, but openssl (below it) does.

bur (Mon, 29 Nov 2021 22:41:50 GMT):
found it; let me propose something like this https://github.com/hyperledger/fabric-private-chaincode/blob/af2a91451c198fdc5c0f5d29891bd3b8df661282/ecc_enclave/enclave/crypto.cpp#L75

bur (Tue, 30 Nov 2021 15:18:27 GMT):
@BrunoVavala I've updated PR 637 and addressed your comments; please have a look

munapower (Tue, 30 Nov 2021 16:13:35 GMT):
Guys, I am not going to be able to make it today. Sorry ...

bur (Tue, 07 Dec 2021 17:25:19 GMT):
@BrunoVavala I created a PR for `del_state` API and for the stress test to detect memory leaks ... let's see what our integration test result will be ... cross fingers

bur (Wed, 08 Dec 2021 18:34:47 GMT):
@BrunoVavala found and fixed the memory leak. Another PR for you to review :) Thakns

BrunoVavala (Tue, 21 Dec 2021 16:17:18 GMT):
@ all -- The December 28th is cancelled due to holidays and lack of quorum. Have nice holidays, see you on Tuesday Jan 4th.

BrunoVavala (Tue, 21 Dec 2021 16:17:18 GMT):
@ all -- The meeting of December 28th is cancelled due to holidays and lack of quorum. Have nice holidays, see you on Tuesday Jan 4th.

bur (Mon, 03 Jan 2022 12:01:11 GMT):
Happy new year!

bur (Tue, 04 Jan 2022 16:29:51 GMT):
https://github.com/hyperledger/fabric-private-chaincode

bur (Tue, 04 Jan 2022 16:30:11 GMT):
https://github.com/hyperledger/fabric-private-chaincode

munapower (Wed, 05 Jan 2022 21:33:18 GMT):
This is the reviewed and updated guide to have FPC running in a UTM VM. I was able to get the Samba option working too! Updated both UTM as well as the VM Linux (seems there were several updates to Samba) and it worked too! https://docs.google.com/document/d/1cT-cAkgB7T2_ZhEvRc7nSPP7bwWVIA3PQhtyT-H0wwU/edit?usp=sharing

bur (Tue, 11 Jan 2022 14:03:19 GMT):
Hey @munapower! Thank you for this helpful writeup. I have managed to follow it and run the FPC `make` using our docker dev environment in a VM on a M1 Mac.

bur (Tue, 11 Jan 2022 14:04:41 GMT):
Some feedback; UTM crashed a few times. Once during linux installation; a second time when compiling FPC; and another time when idling and doing nothing.

munapower (Tue, 11 Jan 2022 14:05:08 GMT):
ah, that didn't happen to me ... maybe memory issues?

bur (Tue, 11 Jan 2022 14:05:47 GMT):
I dont know. I gave it 4gb memory.

bur (Tue, 11 Jan 2022 14:06:44 GMT):
Moreover, I had to specify the number of cores I want to use; by default I got a VM with a single core ... super slow; changing to 4 cores worked

bur (Tue, 11 Jan 2022 14:07:06 GMT):
a full FPC make needed approx an hour

bur (Tue, 11 Jan 2022 14:07:24 GMT):
VSCODE remote dev also worked

bur (Tue, 11 Jan 2022 14:07:43 GMT):
I did not try the samba situation

bur (Tue, 11 Jan 2022 14:07:43 GMT):
I did NOT try the samba situation

munapower (Tue, 11 Jan 2022 14:08:25 GMT):
ah, the cores thing I didn't touch any of that ...

bur (Tue, 11 Jan 2022 14:08:54 GMT):
you can check with `nproc` how many cores you have in your VM

munapower (Tue, 11 Jan 2022 14:09:15 GMT):

Clipboard - January 11, 2022 11:09 AM

munapower (Tue, 11 Jan 2022 14:09:18 GMT):
ahhh but I have this

bur (Tue, 11 Jan 2022 14:09:40 GMT):
I also set this checkmark

bur (Tue, 11 Jan 2022 14:11:09 GMT):
I also tested with the "Shared Network" option. With this, the VM got an IP I could just use to ssh into the vm. No need to do crazy port mapping

munapower (Tue, 11 Jan 2022 14:13:13 GMT):
that was something I read somewhere ...

munapower (Tue, 11 Jan 2022 14:13:42 GMT):
maybe updated utm and linux also helps to ease some things?

bur (Tue, 11 Jan 2022 14:15:51 GMT):
maybe - I hope UTM 3.x will accelerate things

bur (Wed, 26 Jan 2022 21:21:17 GMT):
@here We have released FPC v1.0-rc3! :woo: :heart_eyes: :punch: https://github.com/hyperledger/fabric-private-chaincode/releases/tag/v1.0.0-rc3

BrunoVavala (Wed, 26 Jan 2022 21:55:32 GMT):
we should probably include #650 in rc3

bur (Fri, 28 Jan 2022 15:33:10 GMT):
@munapower see this, a blogpost about docker desktop alternatives on (m1) Mac. https://alex-moss.medium.com/docker-desktop-alternatives-for-m1-mac-918a2dcda10 See option 3) - the author writes about running a amd64 image on a m1 with Lima, where qemu is also used under the hood

lebdron (Wed, 09 Feb 2022 15:45:39 GMT):
Has joined the channel.

lebdron (Wed, 09 Feb 2022 15:45:39 GMT):
Hello! Could you tell if there is a roadmap publicly available? Thanks!

munapower (Thu, 10 Feb 2022 12:50:13 GMT):
Hello @lebdron ! Yes you can view it here https://docs.google.com/document/d/1kT0yQIq-BKrpQ7fhmZGjnUhymybjStAeRpCWgJ_6Y0Q/edit?usp=sharing

lebdron (Thu, 10 Feb 2022 12:50:47 GMT):
Perfect, thank you!

rjones (Wed, 23 Mar 2022 17:35:26 GMT):

rjones (Wed, 23 Mar 2022 17:35:26 GMT):

rjones (Wed, 23 Mar 2022 17:35:26 GMT):