Page MenuHomePhorge

Implement single SAS verification process
Needs ReviewPublic

Authored by tusooa on Sun, Mar 1, 6:29 PM.
Tags
None
Referenced Files
F52447297: D289.1774606977.diff
Thu, Mar 26, 3:22 AM
F52443693: D289.1774606418.diff
Thu, Mar 26, 3:13 AM
F52443552: D289.1774606394.diff
Thu, Mar 26, 3:13 AM
F52416794: D289.1774601374.diff
Thu, Mar 26, 1:49 AM
F52213704: D289.1774566491.diff
Wed, Mar 25, 4:08 PM
F52160583: D289.1774557663.diff
Wed, Mar 25, 1:41 PM
Subscribers
None

Details

Reviewers
None
Group Reviewers
O1: the Kazv Project
Maniphest Tasks
T156: SAS verification
Summary

This is the part 1 of https://iron.lily-is.land/T156 . It implements a sans-io SAS verification process.

Type: add

Test Plan

To be tested together with later diffs of verification.

Diff Detail

Repository
rL libkazv
Branch
tusooa/stacked
Lint
No Lint Coverage
Unit
No Test Coverage
Build Status
Buildable 555
Build 1092: Invoke BuildbotBuildbot build #1260
Build 1091: arc lint + arc unit

Event Timeline

Harbormaster returned this revision to the author for changes because remote builds failed.Sun, Mar 1, 7:02 PM
Harbormaster failed remote builds in B553: Diff 862!

add a little error handling

It's not yet complete. We need more error handling.

src/crypto/verification-process.cpp
52

should have a way to start an outgoing request

65

need to validate the format of events

147

missing userCancel()

155

should also have userDenyMatch()

src/crypto/verification-process.hpp
102

not yet implemented

tusooa requested review of this revision.Mon, Mar 2, 4:15 PM

Move state into VerificationProcess

mmore tests and error handling

What if one party sends a bad key event? Should test that it correctly sends a cancel event of invalid_message

better tests and error handling

Move display codes and pending events into VerificationProcess

Only keep codes into model, leave pending events as return value

Knowing whether an outgoing event is sent is of no use. It seems that we should add the outgoing events right away.

Automatically add outgoing events returned from the processing

src/crypto/verification-process.cpp
300–343

These user-interactive functions should guard against multiple calls. Calling them under bad timing (e.g. user clicking the button multiple times) should be no-op.