Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

waas new intent #115

Merged
merged 24 commits into from
Feb 14, 2024
Merged

waas new intent #115

merged 24 commits into from
Feb 14, 2024

Conversation

marino39
Copy link
Contributor

@marino39 marino39 commented Feb 9, 2024

No description provided.

intentv1/intent.ridl Outdated Show resolved Hide resolved
- signature: string

# no way to generate string enums
# enum IntentName: uint8
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

useful to support webrpc/webrpc#203 I suppose.

intentv1/intent.ridl Outdated Show resolved Hide resolved
intentv1/intent.ridl Outdated Show resolved Hide resolved
intentv1/intent.ridl Outdated Show resolved Hide resolved
intentv1/intent.ridl Outdated Show resolved Hide resolved
intentv1/intent.ridl Outdated Show resolved Hide resolved
intentv1/intent.ridl Outdated Show resolved Hide resolved
intentv1/intent.ridl Outdated Show resolved Hide resolved
intentv1/intent.ridl Outdated Show resolved Hide resolved
intentv1/intent.ridl Outdated Show resolved Hide resolved
intents/intent.ridl Show resolved Hide resolved
intents/intent.ridl Show resolved Hide resolved
intents/intent.ridl Outdated Show resolved Hide resolved
@marino39 marino39 marked this pull request as ready for review February 14, 2024 08:50
@marino39 marino39 merged commit 6892552 into waas-secp256r1-session-signer Feb 14, 2024
1 check passed
@marino39 marino39 deleted the waas-new-intent branch February 14, 2024 08:50
marino39 added a commit that referenced this pull request Feb 15, 2024
* Add support for Intent sessions built on secp256r1

* Add support for Intent sessions built on secp256r1 - remove prefix

* Add support for Intent sessions built on secp256r1 - remove prefix 2

* Add support for Intent sessions built on secp256r1 - add prefix again

* Add more verbose errors in intent validation

* debug - 1

* debug - 2

* debug - 3

* debug - 4

* debug - 5

* remove debugs

* Make distinct split between SessionId and SessionVerifier(the value used for signature verification)

* Make distinct split between SessionId and SessionVerifier(the value used for signature verification) - 2

* Intent signers extraction impr

* More refactor session to sessionId

* Add type for IntentVerifierGetter

* Add packet resp OpenSessionPacketResponse

* Add packet resp OpenSessionPacketResponse 2

* Add packet resp OpenSessionPacketResponse 3

* Return to having sessionId = pubKey/sessAdddr

* Fix: openSession

* Fix: p256r1 signature check

* remove: OpenSessionPacketResponse

* Fix: intent test

* refactor Intent.isValidSignature

* refactor Intent.isValidSignature - 2

* waas new intent (#115)

* new intent struct

* new intent struct generate typescript

* intent session signers

* IntentTyped.ToIntent -> IntentTyped.AsIntent

* fix: typo

* Intent.isValidSignature to return error

* applied review remarks

* intent data validators support

* update intent.ridl

* add transaction extensions

* sign message ext

* rename

* fix: tests

* fix: the transaction structs, rem packet

* move to intents & add responses stubs

* intent.ridl update

* Add missing delayedEncode transaction type

* intent.ridl update

* intent.ridl update

* intent.ridl update

* intent.ridl update

* fix sig verification

* revert: fix sig verification

* intents: add comment & IntentTyped.AsIntent to IntentTyped.ToIntent

---------

Co-authored-by: Patryk Kalinowski <[email protected]>

* intents: apply review remarks

---------

Co-authored-by: Patryk Kalinowski <[email protected]>
pkieltyka added a commit that referenced this pull request Feb 26, 2024
* WaaS: changes (#87)

* Fix: AuxData has outdated message in case if one of the signers is sequence.Wallet

* Fix: Wallet.Deploy not working for v1 / sequence.Wallet as a signer no type in signature

* Fix: testUtil.MustFundAddress gas limit too low for some smart contract wallets

* Fix: SigningService uses Sign instead of SignWith that's allows to select correct signer(especially important in case of guard Sequence v2)

* Fix: guard signature validation problem

* Fix: AuxData.Sig to contain full signing chain

* Wallet add Sequence Sessions

* Fix: Wallet.SignDigest panic

* Fix: v2 effective weight 0 when recovering dynamic signature

* Wallet use Wallet.buildSignature

* core: v2 restore effective weight

* Wallet.Deploy gaslimit to be set only for v1

* Transaction Policy List (#91)

* core.SigningOrchestrator race fix attempt

* signing-service: SignContext

* guard: SignContext

* Wallet return error on signer fail

* Remove AuxData

* Restore AuxData - it needs to stay for transitory period

* Fix: SigningOrchestrator race 2

* Fix: SigningOrchestrator no signature for not first

* Fix: Wallet.SignDigest inner build signature

* Fix: Wallet.SignDigest inner build signature

* Fix: GuardSigningService not first

* GuardSigningService unit tests

* Use v0.10.0 webrpc generated signing-service api

* Wallet.SignMessage: SignContext.WalletAddress not set

* Wallet add unit test testing SignContext expectations

* Fix receipt listener (#94)

* Use ethkit with fixed receipt listener

* Use ethkit with fixed receipt listener - versioned

* LocalRelayer & RPCRelayer to deploy wallet if wallet not deployed

* WaaS Intents (#102)

* use [email protected]

* Implement waas intents

* Add ParseHexOrDec

* Implement canSign interface on sequence wallets

* Use digest signer if possible

* Fix try cast different generics

* Skip address from confing on defined addr

* check packet code fix

* Add marshal json

* Use canonical json

* Add validate session packes

* Add delayed abi primitives

* Handle delayedEncode intent

* Update ValidateSessionPacket fields

* Update ValidateSessionPacket fields - make RedirectURL optional

* Add fields to intents

* Nonce defined by identifier

* Use BasePacketForWallet on ValidateSessionPacket

* Add get session packet

* Add send transaction types

* Expose relayer simulate

* Add FinishValidateSessionPacket to intents

* Add Intent.IsValid & BasePacket.IsValid

* Resolve cyclic dependency in intents package

* Intent.IsValid special-case openSession as it does not need to be signed

---------

Co-authored-by: Peter Kieltyka <[email protected]>
Co-authored-by: Agusx1211 <[email protected]>

* RpcRelayer remove add deploy if wallet not deployed

This is now done in api waas.

* Update sequence.Relayer interface to have simulate method (#103)

* Refactor relayer package (#104)

* Remove signing-service - no longer usable (#105)

* Remove signing-service - no longer usable

* Remove signing-service references

* Remove signing-service tests

* Fix CloseSessionPacket code verification (#110)

* Intents: New intents &  SECP256R1 (#107)

* Add support for Intent sessions built on secp256r1

* Add support for Intent sessions built on secp256r1 - remove prefix

* Add support for Intent sessions built on secp256r1 - remove prefix 2

* Add support for Intent sessions built on secp256r1 - add prefix again

* Add more verbose errors in intent validation

* debug - 1

* debug - 2

* debug - 3

* debug - 4

* debug - 5

* remove debugs

* Make distinct split between SessionId and SessionVerifier(the value used for signature verification)

* Make distinct split between SessionId and SessionVerifier(the value used for signature verification) - 2

* Intent signers extraction impr

* More refactor session to sessionId

* Add type for IntentVerifierGetter

* Add packet resp OpenSessionPacketResponse

* Add packet resp OpenSessionPacketResponse 2

* Add packet resp OpenSessionPacketResponse 3

* Return to having sessionId = pubKey/sessAdddr

* Fix: openSession

* Fix: p256r1 signature check

* remove: OpenSessionPacketResponse

* Fix: intent test

* refactor Intent.isValidSignature

* refactor Intent.isValidSignature - 2

* waas new intent (#115)

* new intent struct

* new intent struct generate typescript

* intent session signers

* IntentTyped.ToIntent -> IntentTyped.AsIntent

* fix: typo

* Intent.isValidSignature to return error

* applied review remarks

* intent data validators support

* update intent.ridl

* add transaction extensions

* sign message ext

* rename

* fix: tests

* fix: the transaction structs, rem packet

* move to intents & add responses stubs

* intent.ridl update

* Add missing delayedEncode transaction type

* intent.ridl update

* intent.ridl update

* intent.ridl update

* intent.ridl update

* fix sig verification

* revert: fix sig verification

* intents: add comment & IntentTyped.AsIntent to IntentTyped.ToIntent

---------

Co-authored-by: Patryk Kalinowski <[email protected]>

* intents: apply review remarks

---------

Co-authored-by: Patryk Kalinowski <[email protected]>

* is message eip191 (#119)

* add IsEIP191Message & MessageToEIP191

* move to separate files

* check full prefix

* Make intents verify the EIP191 message as well.

* fix: intent double data serialization (#122)

* Merge branch 'master' into v2 - fix tests

---------

Co-authored-by: Marcin Górzyński <[email protected]>
Co-authored-by: Agusx1211 <[email protected]>
Co-authored-by: Patryk Kalinowski <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants