hyperledger-labs / business-partner-agent

The Business Partner Agent is a SSI wallet and controller based on aries cloud agent python.
https://labs.hyperledger.org/business-partner-agent/
Apache License 2.0
56 stars 49 forks source link

w3c interoperability fixes #718

Closed etschelp closed 2 years ago

etschelp commented 2 years ago

Testing connection and credential protocols against aries-framework-go.

Fixes:

Tested:

Go Agent Config in IDE

Start flags:

start --api-host localhost:8081 \
     --database-type mem \
     --inbound-host http@<host-ip>:8082 \
     --inbound-host-external http@http://<host-ip>:8082
     --webhook-url http://<host-ip>:8080/log
     --log-level DEBUG 
     --agent-default-label MyGoAgent

Compiler flags:

-tags ACAPyInterop

Environment:

ARIESD_AUTO_ACCEPT=true

Curl against go-agent

Create did-exchange invitation

 curl  -X 'POST' \
  'http://localhost:8081/connections/create-invitation' \
  -H 'accept: application/json' \
  -d ''

Create oob invitation:

curl -X 'POST' \
  'http://localhost:8081/outofband/create-invitation' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{"label": "Go Agent"}'

Receive oob invitation:

curl -X POST "http://localhost:8081/outofband/accept-invitation" -H  "content-type: application/json" -d "{\"invitation\":{\"@id\":\"5fa6dc8e-63ed-4af8-ae32-2533c109ea47\",\"@type\":\"https://didcomm.org/out-of-band/1.0/invitation\",\"services\":[{\"id\":\"#inline\",\"type\":\"did-communication\",\"recipientKeys\":[\"did:key:z6MkjHKsXMwNbn1xjG3ge2WWT1Gq7FLeCo2sgRqW5pVgjqdn\"],\"serviceEndpoint\":\"http://<host-ip>:8888\"}],\"handshake_protocols\":[\"https://didcomm.org/didexchange/1.0\"]},\"my_label\": \"aca-py\"}"

Get connections

curl -X GET "http://localhost:8081/connections" -H  "accept: application/json"

Test if connecting to the transport works

curl -v -X 'POST' -H 'Content-Type: application/didcomm-envelope-enc'  http://:<host-ip>:8082

Signed-off-by: Philipp Etschel philipp.etschel@ch.bosch.com