Commit graph

16 commits

Author SHA1 Message Date
Leonard Lyubich
5e1e220988 service: sign requests on the principle of Matryoshka
This commit changes SignRequestData / VerifyRequestData functions to
add the list of previous public keys to a signed message for all
requests.
2020-06-22 17:26:59 +03:00
Leonard Lyubich
db53e2ea39 service: make RequestData to provide ExtendedHeadersSource interface 2020-06-18 15:47:55 +03:00
Leonard Lyubich
3f7d3f8a86 service: make RequestData to provide BearerTokenSource interface 2020-06-18 15:24:17 +03:00
Leonard Lyubich
705582dbc7 service: define request X-headers interface 2020-06-18 14:41:44 +03:00
Leonard Lyubich
55c3b714c0 service: define BearerToken interface 2020-06-18 14:37:42 +03:00
Leonard Lyubich
74e917810a service: support broken apart signable payload of the requests
In previous implementation service package provided types and functions
that wrapped signing/verification of data with session token.
This allowed us to use these functions for signing / verification of
service requests of other packages. To support the expansion of messages
with additional parts that need to be signed, you must be able to easily
expand the signed data with new parts.

To achieve the described goal, this commit makes the following changes:

  * adds GroupSignedPayloads and GroupVerifyPayloads functions;

  * renames SignedDataWithToken to RequestData, DataWithTokenSignAccumulator
    to RequestSignedData, DataWithTokenSignSource to RequestVerifyData;

  * renames SignDataWithSessionToken/VerifyAccumulatedSignaturesWithToken
    function to SignRequestData/VerifyRequestData and makes it to use
    GroupSignedPayloads/GroupVerifyPayloads internally.
2020-06-10 20:37:10 +03:00
Leonard Lyubich
bc413f6280 service: defined OwnerKeyContainer and embed it to SessionInfo interface 2020-05-15 16:03:47 +03:00
Leonard Lyubich
15a55d54a2 fix comments 2020-05-08 12:45:16 +03:00
Leonard Lyubich
b079a7604f session: implement gRPC session creator 2020-05-08 12:34:16 +03:00
Leonard Lyubich
65d7c39e1a service: fix comments 2020-05-06 15:32:13 +03:00
Leonard Lyubich
52d3c82776 service: implement sign/verify function for data with session token 2020-05-06 11:44:55 +03:00
Leonard Lyubich
74144f207a service: implement functions for verification of signatures 2020-05-05 13:16:21 +03:00
Leonard Lyubich
f3e6caf7e7 service: implement a function for creating and storing a signature 2020-05-04 19:33:18 +03:00
Leonard Lyubich
0ffb1bd61d service: implement a function for signing data 2020-05-04 18:52:56 +03:00
Leonard Lyubich
eb94cf7549 service: refactor MetaHeader interface 2020-05-04 14:37:14 +03:00
Leonard Lyubich
8270245455 service: transfer public types to a separate file 2020-05-04 14:00:25 +03:00