@@ -26,131 +26,3 @@ func NewSkvsChaincode(cc shim.Chaincode) *chaincode.EnclaveChaincode {
2626 }
2727 return ecc
2828}
29-
30- // type skvsStub struct {
31- // *enclave_go.EnclaveStub
32- // }
33-
34- // func NewSkvsStub(cc shim.Chaincode) *skvsStub {
35- // enclaveStub := enclave_go.NewEnclaveStub(cc)
36- // return &skvsStub{enclaveStub}
37- // }
38-
39- // func (e *skvsStub) ChaincodeInvoke(stub shim.ChaincodeStubInterface, chaincodeRequestMessageBytes []byte) ([]byte, error) {
40- // logger.Error("==== SKVS ChaincodeInvoke ====")
41-
42- // signedProposal, err := stub.GetSignedProposal()
43- // if err != nil {
44- // shim.Error(err.Error())
45- // }
46-
47- // if err := e.verifySignedProposal(stub, chaincodeRequestMessageBytes); err != nil {
48- // return nil, errors.Wrap(err, "signed proposal verification failed")
49- // }
50-
51- // // unmarshal chaincodeRequest
52- // chaincodeRequestMessage := &protos.ChaincodeRequestMessage{}
53- // err = proto.Unmarshal(chaincodeRequestMessageBytes, chaincodeRequestMessage)
54- // if err != nil {
55- // return nil, err
56- // }
57-
58- // // get key transport message including the encryption keys for request and response
59- // keyTransportMessage, err := e.extractKeyTransportMessage(chaincodeRequestMessage)
60- // if err != nil {
61- // return nil, errors.Wrap(err, "cannot extract keyTransportMessage")
62- // }
63-
64- // // decrypt request
65- // cleartextChaincodeRequest, err := e.extractCleartextChaincodeRequest(chaincodeRequestMessage, keyTransportMessage)
66- // if err != nil {
67- // return nil, errors.Wrap(err, "cannot decrypt chaincode request")
68- // }
69-
70- // // create a new instance of a FPC RWSet that we pass to the stub and later return with the response
71- // rwset := NewReadWriteSet()
72-
73- // // Invoke chaincode
74- // // we wrap the stub with our FpcStubInterface
75- // // ** Implement our own FpcStubInterface
76- // skvsStub := NewSkvsStubInterface(stub, cleartextChaincodeRequest.GetInput(), rwset, e.ccKeys)
77- // ccResponse := e.ccRef.Invoke(skvsStub)
78- // // **
79- // // fpcStub := NewFpcStubInterface(stub, cleartextChaincodeRequest.GetInput(), rwset, e.ccKeys)
80- // // ccResponse := e.ccRef.Invoke(fpcStub)
81-
82- // // marshal chaincode response
83- // ccResponseBytes, err := protoutil.Marshal(&ccResponse)
84- // if err != nil {
85- // return nil, err
86- // }
87-
88- // //encrypt response
89- // encryptedResponse, err := e.csp.EncryptMessage(keyTransportMessage.GetResponseEncryptionKey(), ccResponseBytes)
90- // if err != nil {
91- // return nil, err
92- // }
93-
94- // chaincodeRequestMessageHash := sha256.Sum256(chaincodeRequestMessageBytes)
95-
96- // response := &protos.ChaincodeResponseMessage{
97- // EncryptedResponse: encryptedResponse,
98- // FpcRwSet: rwset.ToFPCKVSet(),
99- // EnclaveId: e.identity.GetEnclaveId(),
100- // Proposal: signedProposal,
101- // ChaincodeRequestMessageHash: chaincodeRequestMessageHash[:],
102- // }
103-
104- // responseBytes, err := proto.Marshal(response)
105- // if err != nil {
106- // return nil, err
107- // }
108-
109- // // create signature
110- // sig, err := e.identity.Sign(responseBytes)
111- // if err != nil {
112- // return nil, err
113- // }
114-
115- // signedResponse := &protos.SignedChaincodeResponseMessage{
116- // ChaincodeResponseMessage: responseBytes,
117- // Signature: sig,
118- // }
119-
120- // return proto.Marshal(signedResponse)
121- // }
122-
123- // func (e *skvsStub) verifySignedProposal(stub shim.ChaincodeStubInterface, chaincodeRequestMessageBytes []byte) error {
124- // return e.EnclaveStub.verifySignedProposal(stub, chaincodeRequestMessageBytes)
125- // }
126-
127- // type SkvsStubInterface struct {
128- // *enclave_go.FpcStubInterface
129- // }
130-
131- // func NewSkvsStubInterface(stub shim.ChaincodeStubInterface, input *pb.ChaincodeInput, rwset *readWriteSet, sep StateEncryptionFunctions) *SkvsStubInterface {
132- // fpcStub := enclave_go.NewFpcStubInterface(stub, input, rwset, sep)
133- // return &SkvsStubInterface{fpcStub}
134- // }
135-
136- // func (s *SkvsStubInterface) GetState(key string) ([]byte, error) {
137- // encValue, err := s.GetPublicState(SingleKey)
138- // if err != nil {
139- // return nil, err
140- // }
141-
142- // // in case the key does not exist, return early
143- // if len(encValue) == 0 {
144- // return nil, nil
145- // }
146-
147- // return s.sep.DecryptState(encValue)
148- // }
149-
150- // func (s *SkvsStubInterface) PutState(key string, value []byte) error {
151- // encValue, err := s.sep.EncryptState(SingleKey)
152- // if err != nil {
153- // return err
154- // }
155- // return s.PutPublicState(key, encValue)
156- // }
0 commit comments