Commit graph

1132 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
ce4513ce54 Merge tag 'v1.1.0' into develop
Release v1.1.0
2020-06-18 17:26:27 +03:00
Leonard Lyubich
2456521240 Merge branch 'release/1.1.0' 2020-06-18 17:26:15 +03:00
Leonard Lyubich
d3984cf236 Update changelog and readme for v1.1.0 2020-06-18 17:25:39 +03:00
Leonard Lyubich
6b5f81f205
Merge pull request #95 from nspcc-dev/support-eacl-signed-payload
container: implement SignedDataSource interface on EACL messages
2020-06-18 16:32:39 +03:00
Leonard Lyubich
03bc5c5f89 container: implement SignedDataSource interface on EACL messages 2020-06-18 16:26:44 +03:00
Leonard Lyubich
6cbf6562c6
Merge pull request #94 from nspcc-dev/implement-bearer-interface-on-message
service: implement BearerToken interface on BearerTokenMsg message
2020-06-18 16:12:15 +03:00
Leonard Lyubich
a3c4889945 service: implement BearerToken interface on BearerTokenMsg message
This commit:

  * implements (Set)ExpirationEpoch methods on BearerTokenMsg;

  * removes BearerTokenMsg wrapper.
2020-06-18 16:08:44 +03:00
Leonard Lyubich
42956686f6
Merge pull request #93 from nspcc-dev/add-x-headers-to-request-data
Add X-headers to request data
2020-06-18 15:53:32 +03:00
Leonard Lyubich
c360b7d19c service: add ExtendedHeader list to signed payload of the requests 2020-06-18 15:50:01 +03:00
Leonard Lyubich
db53e2ea39 service: make RequestData to provide ExtendedHeadersSource interface 2020-06-18 15:47:55 +03:00
Leonard Lyubich
2bef390cc6
Merge pull request #92 from nspcc-dev/add-bearer-token-to-request-data
Add bearer token to signed request data
2020-06-18 15:40:33 +03:00
Leonard Lyubich
a3569ad99e service: ad BearerToken to signed payload of the requests 2020-06-18 15:28:58 +03:00
Leonard Lyubich
3f7d3f8a86 service: make RequestData to provide BearerTokenSource interface 2020-06-18 15:24:17 +03:00
Alex Vanin
ce5264a479
Merge pull request #91 from nspcc-dev/update-to-api-v1.1.0
Update to neofs-api v1.1.0
2020-06-18 15:21:33 +03:00
Leonard Lyubich
ee584f325c Update to neofs-api v1.1.0 2020-06-18 15:01:25 +03:00
Leonard Lyubich
fe6672d480
Merge pull request #90 from nspcc-dev/feature/x-headers-definition
service: define request X-headers interface
2020-06-18 14:44:47 +03:00
Leonard Lyubich
705582dbc7 service: define request X-headers interface 2020-06-18 14:41:44 +03:00
Leonard Lyubich
73e90be443
Merge pull request #89 from nspcc-dev/feature/bearer-token-definition
service: define BearerToken interface
2020-06-18 14:40:41 +03:00
Leonard Lyubich
55c3b714c0 service: define BearerToken interface 2020-06-18 14:37:42 +03:00
Leonard Lyubich
4709d46292
Merge pull request #88 from nspcc-dev/feature/sign-verify-payload-group
service: support broken apart signable payload of the requests
2020-06-15 13:58:54 +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
Evgeniy Kulikov
8dbd65132d
Merge tag 'v1.0.0' into develop
Release v1.0.0
2020-05-26 13:12:11 +03:00
Evgeniy Kulikov
72a2668265
Merge branch 'release/1.0.0' 2020-05-26 13:12:00 +03:00
Evgeniy Kulikov
e5fccc5f25
CHANGELOG 2020-05-26 13:11:55 +03:00
Evgeniy Kulikov
a2af84ba6e
Merge pull request #86 from nspcc-dev/bump-major-release
Bump major release
2020-05-26 13:09:44 +03:00
Evgeniy Kulikov
a50442199a
Bump major release 2020-05-26 13:06:43 +03:00
Leonard Lyubich
47476bf9c3 Merge tag 'v0.7.6' into develop
Release v0.7.6
2020-05-19 13:29:58 +03:00
Leonard Lyubich
9b0757c6b1 Merge branch 'release/0.7.6' 2020-05-19 13:29:46 +03:00
Leonard Lyubich
114144646b Update changelog for v0.7.6 2020-05-19 13:29:27 +03:00
Leonard Lyubich
e183188239
Merge pull request #85 from nspcc-dev/object-intergrity-header-signed-payload
object: implement SignedData() and AddSignKey() methods on IntegrityH…
2020-05-18 16:54:22 +03:00
Leonard Lyubich
96a6bb4842 object: implement SignedData() and AddSignKey() methods on IntegrityHeader 2020-05-18 16:51:59 +03:00
Leonard Lyubich
ab796b81d2
Merge pull request #84 from nspcc-dev/session-refactor-private-token
session: refactor PrivateToken interface
2020-05-18 16:49:31 +03:00
Leonard Lyubich
291d512840 session: implement function for receiving session public key bytes
After recent changes PrivateToken cannot directly return public key
bytes. In order to provide this ability, this commit implements
a function over PrivateToken interface.
2020-05-18 16:47:15 +03:00
Leonard Lyubich
af28735ca6 session: change PrivateToken interface methods
This commit replaces PublicKey() and SignData() methods of PrivateToken
with PrivateKey() in order to have the ability to sign data with
session key using service package functions.
2020-05-18 16:47:15 +03:00
Leonard Lyubich
ba27e296c3
Merge pull request #83 from nspcc-dev/object-fix-headrequest-signed-data
object: fix signed payload calculation of HeadRequest message
2020-05-18 16:46:27 +03:00
Leonard Lyubich
1931bd590d object: fix signed payload calculation of HeadRequest message
In previous implementation first byte of buffer for HeadRequest
signed payload was set to 1 if FullHeaders flag was set. Otherwise,
this byte remained unchanged. For correct recording of a signed payload,
it is necessary to explicitly set the first byte with the unset flag.
2020-05-18 12:58:49 +03:00
Leonard Lyubich
2c571718d0 object: add unit test of HeadRequest.ReadSignedData method 2020-05-18 12:58:49 +03:00
Leonard Lyubich
d391421e5e
Merge pull request #82 from nspcc-dev/token-add-sign-key-change
Change AddSignKey of SessionToken
2020-05-18 12:58:32 +03:00
Leonard Lyubich
bd261cf566 service: call OwnerKey setter in AddSignKey method implementation 2020-05-16 15:29:44 +03:00
Leonard Lyubich
22af538c98 Revert "service: add owner key to a signed payload of SessionToken"
This reverts commit 1896264f
2020-05-16 15:28:35 +03:00
Leonard Lyubich
abbb6e0e93 Merge tag 'v0.7.5' into develop
Release v0.7.5
2020-05-16 14:39:54 +03:00
Leonard Lyubich
40ef55524a Merge branch 'release/0.7.5' 2020-05-16 14:39:46 +03:00
Leonard Lyubich
5b50c8000c Update changelog for v0.7.5 2020-05-16 14:39:21 +03:00
Alex Vanin
a82a2e1f57
Merge pull request #81 from nspcc-dev/service-token-owner-key
Update to neofs-api v0.7.5
2020-05-15 16:48:08 +03:00
Leonard Lyubich
1896264f8c service: add owner key to a signed payload of SessionToken 2020-05-15 16:05:02 +03:00
Leonard Lyubich
bc413f6280 service: defined OwnerKeyContainer and embed it to SessionInfo interface 2020-05-15 16:03:47 +03:00
Leonard Lyubich
c8625b2c86 Update to neofs-api v0.7.5 2020-05-15 16:00:02 +03:00
Leonard Lyubich
2a926b6f1f
Merge pull request #80 from nspcc-dev/signed-session-token
service: implement SessionToken wrapper for Sign/Verify support
2020-05-14 13:23:06 +03:00
Leonard Lyubich
0b5c4299aa service: implement SessionToken wrapper for Sign/Verify support 2020-05-13 19:02:13 +03:00