myc

Self-custodial remote signer for Radroots apps
git clone https://radroots.dev/git/myc.git
Log | Files | Refs | README | LICENSE

local_signer_transport.v1.json (2239B)


      1 {
      2   "schema": "radroots.myc.local-signer-transport",
      3   "schema_version": 1,
      4   "contract_version": 1,
      5   "transport": "http_1_1_json_over_unix_domain_socket",
      6   "shared_transport": "radroots_service_host::AdminClient",
      7   "endpoint": "/v1/provider/operation",
      8   "method": "POST",
      9   "outer_admin_contract_version": 1,
     10   "request_fields": [
     11     "contract_version",
     12     "provider_instance",
     13     "role",
     14     "operation_id",
     15     "correlation_id",
     16     "absolute_deadline_unix_ms",
     17     "expected_identity",
     18     "capability",
     19     "input"
     20   ],
     21   "response_fields": [
     22     "contract_version",
     23     "provider_instance",
     24     "role",
     25     "operation_id",
     26     "correlation_id",
     27     "absolute_deadline_unix_ms",
     28     "expected_identity",
     29     "capability",
     30     "result"
     31   ],
     32   "tagged_operations": [
     33     "describe",
     34     "public_identity",
     35     "sign_event",
     36     "nip04_encrypt",
     37     "nip04_decrypt",
     38     "nip44_encrypt",
     39     "nip44_decrypt"
     40   ],
     41   "operation_shapes": {
     42     "describe": {
     43       "input_fields": [],
     44       "result_fields": ["public_identity", "protocol_version", "capabilities", "maximum_request_bytes"]
     45     },
     46     "public_identity": {
     47       "input_fields": [],
     48       "result_fields": ["public_identity"]
     49     },
     50     "sign_event": {
     51       "input_fields": ["payload_hex"],
     52       "result_fields": ["payload_hex"]
     53     },
     54     "nip04_encrypt": {
     55       "input_fields": ["peer", "payload_hex"],
     56       "result_fields": ["peer", "payload_hex"]
     57     },
     58     "nip04_decrypt": {
     59       "input_fields": ["peer", "payload_hex"],
     60       "result_fields": ["peer", "payload_hex"]
     61     },
     62     "nip44_encrypt": {
     63       "input_fields": ["peer", "version", "payload_hex"],
     64       "result_fields": ["peer", "version", "payload_hex"]
     65     },
     66     "nip44_decrypt": {
     67       "input_fields": ["peer", "version", "payload_hex"],
     68       "result_fields": ["peer", "version", "payload_hex"]
     69     }
     70   },
     71   "protected_payload_encoding": "lowercase_hex",
     72   "limits_source": "validated_provider_binding",
     73   "concurrency_scope": "per_client",
     74   "semantic_success_trusted": false,
     75   "semantic_verification_owner": "step-135",
     76   "cancellation_proves_no_effect": false,
     77   "signing_is_publication": false,
     78   "tcp_allowed": false,
     79   "browser_origin_allowed": false,
     80   "child_process_allowed": false
     81 }