You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Silvestr Predko 9134d966b7 Rename js-client to example 2 years ago
.github/workflows Remove redundant spaces from workflows 2 years ago
.vscode Add initial source code 2 years ago
common-api Add tests 2 years ago
example Rename js-client to example 2 years ago
near-client Fix near-client for empty responses 2 years ago
web-client Add basic implemntation of key-exchange 2 years ago
.gitignore Rename js-client to example 2 years ago
Cargo.toml Rename crate from wasm-client to web-client 2 years ago
README.md Sequence diagram with algorithm 2 years ago

README.md

client

sequenceDiagram
    participant Initiator
    participant Alice
    participant Bob

    Initiator->>Blockchain: create meeting with id
    Initiator-->>Internet: share meeting Id
    loop
        Initiator->>Blockchain: wait for pub. key for Alice and Bob
        activate Blockchain
        Blockchain--)Initiator: receive pub key [Alice, Bob]
        deactivate Blockchain
    end
    par
        Bob->>Internet: get meeting id
        activate Internet
        Internet--)Bob: receive meeting id
        deactivate Internet
    and
        Alice->>Internet: get meeting id
        activate Internet
        Internet--)Alice: receive meeting id
        deactivate Internet
    end
    par
        Bob->>Blockchain: put temp public key for Bob
        activate Blockchain
        Blockchain--)Bob: Initiator public key
        deactivate Blockchain
    and
        Alice->>Blockchain: put temp public key for Alice
        activate Blockchain
        Blockchain--)Alice: Initiator public key
        deactivate Blockchain
    end
    Initiator-->>RelayServer: Olm message(symetric key) by Bob pub key
    RelayServer-->>Bob: Olm message(symetric key) by Bob pub key
    Initiator-->>RelayServer: Olm message(symetric key) by Alice pub key
    RelayServer-->>Alice: Olm message(symetric key) by Alice pub key