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

Cross Signing Support #832

Merged
merged 103 commits into from
Nov 15, 2019
Merged

Cross Signing Support #832

merged 103 commits into from
Nov 15, 2019

Commits on Jan 30, 2019

  1. Add cross signing key creation into key backup

    Start of cross-signing impl
    dbkr committed Jan 30, 2019
    Configuration menu
    Copy the full SHA
    2b54f44 View commit details
    Browse the repository at this point in the history

Commits on Jan 31, 2019

  1. Store SSK & USK in crypto store

    and restore them from the key backup.
    
    NB. This has an interface change to restoreKeyBackup where I've
    changed it to take a backupInfo rather than a version (this also
    saves us re-fetching the backup metadata in the case of a passphrase
    restore).
    dbkr committed Jan 31, 2019
    Configuration menu
    Copy the full SHA
    02d4dcb View commit details
    Browse the repository at this point in the history
  2. Cross sign the current device with the SSK

    whenever we get the SSK, ie. when creating or restoring a backup
    dbkr committed Jan 31, 2019
    Configuration menu
    Copy the full SHA
    1f77cc6 View commit details
    Browse the repository at this point in the history

Commits on Feb 1, 2019

  1. Track SSKs for users

    and verify our own against our locally stored private part
    dbkr committed Feb 1, 2019
    Configuration menu
    Copy the full SHA
    1d58a64 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    910d0ec View commit details
    Browse the repository at this point in the history
  3. Update package-lock.json

    because Travis and npm now have a thing where they combust if your
    package-lock is out of sync
    dbkr committed Feb 1, 2019
    Configuration menu
    Copy the full SHA
    7195365 View commit details
    Browse the repository at this point in the history
  4. Lint

    or at least the rules that are consistent with the rest of our
    codebase
    dbkr committed Feb 1, 2019
    Configuration menu
    Copy the full SHA
    7dedcb8 View commit details
    Browse the repository at this point in the history
  5. Always track your own devices

    This was causing all the cross-signing stuff to fail and was almost
    certainly the cause of element-hq/element-web#8213
    dbkr committed Feb 1, 2019
    Configuration menu
    Copy the full SHA
    c808253 View commit details
    Browse the repository at this point in the history
  6. Re-track own device list

    Sp we don't stop tracking our own
    dbkr committed Feb 1, 2019
    Configuration menu
    Copy the full SHA
    5500f0d View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    1b82dff View commit details
    Browse the repository at this point in the history

Commits on Feb 5, 2019

  1. Make linting rules more consistent

     * Put back babel-eslint for class-properties
     * Allow arrow functions without params
    
    This makes the style more consistent with react-sdk.
    
    NB. The line lengths are still inconsistent but it's not clear which
    way to go on that yet.
    dbkr committed Feb 5, 2019
    Configuration menu
    Copy the full SHA
    b3513dc View commit details
    Browse the repository at this point in the history
  2. All the linting

    dbkr committed Feb 5, 2019
    Configuration menu
    Copy the full SHA
    7f5584e View commit details
    Browse the repository at this point in the history
  3. Olm pre2 for cross-signing

    dbkr committed Feb 5, 2019
    Configuration menu
    Copy the full SHA
    e54f717 View commit details
    Browse the repository at this point in the history

Commits on Apr 3, 2019

  1. Configuration menu
    Copy the full SHA
    32814d1 View commit details
    Browse the repository at this point in the history

Commits on May 3, 2019

  1. Configuration menu
    Copy the full SHA
    ec2f07e View commit details
    Browse the repository at this point in the history
  2. add missing files

    uhoreg committed May 3, 2019
    Configuration menu
    Copy the full SHA
    ae71f41 View commit details
    Browse the repository at this point in the history

Commits on May 4, 2019

  1. remove some debugging lines

    uhoreg committed May 4, 2019
    Configuration menu
    Copy the full SHA
    b0275af View commit details
    Browse the repository at this point in the history
  2. complete some more unit tests

    uhoreg committed May 4, 2019
    Configuration menu
    Copy the full SHA
    405451d View commit details
    Browse the repository at this point in the history

Commits on May 23, 2019

  1. use 3 keys for cross-signing

    uhoreg committed May 23, 2019
    Configuration menu
    Copy the full SHA
    193ad9e View commit details
    Browse the repository at this point in the history

Commits on May 29, 2019

  1. Configuration menu
    Copy the full SHA
    53804ca View commit details
    Browse the repository at this point in the history
  2. use the right path for logger

    uhoreg committed May 29, 2019
    Configuration menu
    Copy the full SHA
    609ee66 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    941d871 View commit details
    Browse the repository at this point in the history
  4. minor fixes to tests

    uhoreg committed May 29, 2019
    Configuration menu
    Copy the full SHA
    936eef1 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    95131c7 View commit details
    Browse the repository at this point in the history

Commits on Jun 4, 2019

  1. add missing semicolon

    uhoreg committed Jun 4, 2019
    Configuration menu
    Copy the full SHA
    dc971b9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4a9a1b4 View commit details
    Browse the repository at this point in the history

Commits on Jun 5, 2019

  1. Configuration menu
    Copy the full SHA
    6a77df7 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5f539aa View commit details
    Browse the repository at this point in the history
  3. some cleanups

    uhoreg committed Jun 5, 2019
    Configuration menu
    Copy the full SHA
    0c714ba View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6f6e7ea View commit details
    Browse the repository at this point in the history

Commits on Jun 12, 2019

  1. Configuration menu
    Copy the full SHA
    98815ff View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4c6fa89 View commit details
    Browse the repository at this point in the history

Commits on Jun 15, 2019

  1. cleanups and a lot more docs

    uhoreg committed Jun 15, 2019
    Configuration menu
    Copy the full SHA
    5bcbe76 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    07c2e34 View commit details
    Browse the repository at this point in the history

Commits on Jun 28, 2019

  1. Configuration menu
    Copy the full SHA
    1cae5e8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4356603 View commit details
    Browse the repository at this point in the history

Commits on Jul 3, 2019

  1. sign backups with master key

    uhoreg committed Jul 3, 2019
    Configuration menu
    Copy the full SHA
    c5caf8f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    46a8486 View commit details
    Browse the repository at this point in the history
  3. pksign was moved to olmlib

    uhoreg committed Jul 3, 2019
    Configuration menu
    Copy the full SHA
    6cd09c6 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    8d1d657 View commit details
    Browse the repository at this point in the history

Commits on Jul 4, 2019

  1. obsolete todo

    uhoreg committed Jul 4, 2019
    Configuration menu
    Copy the full SHA
    b008041 View commit details
    Browse the repository at this point in the history

Commits on Jul 8, 2019

  1. minor cleanups

    uhoreg committed Jul 8, 2019
    Configuration menu
    Copy the full SHA
    761f22b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7f8b9de View commit details
    Browse the repository at this point in the history

Commits on Aug 27, 2019

  1. update to follow latest MSC

    uhoreg committed Aug 27, 2019
    Configuration menu
    Copy the full SHA
    f3ec976 View commit details
    Browse the repository at this point in the history

Commits on Oct 28, 2019

  1. Make tests pass

     * Pass the http backend out of makeTestClients so we can tell it
       to expect queries and flush requests out
     * Change colons to dots in the key events
    dbkr committed Oct 28, 2019
    Configuration menu
    Copy the full SHA
    8cad116 View commit details
    Browse the repository at this point in the history
  2. make other tests pass

    dbkr committed Oct 28, 2019
    Configuration menu
    Copy the full SHA
    3bec28b View commit details
    Browse the repository at this point in the history
  3. lint

    dbkr committed Oct 28, 2019
    Configuration menu
    Copy the full SHA
    de1b545 View commit details
    Browse the repository at this point in the history
  4. Fix test again

    That one was part of the protocol - don't camelcase that
    dbkr committed Oct 28, 2019
    Configuration menu
    Copy the full SHA
    e92d2bd View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    3e2d845 View commit details
    Browse the repository at this point in the history

Commits on Oct 29, 2019

  1. Fix more tests

    dbkr committed Oct 29, 2019
    Configuration menu
    Copy the full SHA
    49588da View commit details
    Browse the repository at this point in the history

Commits on Nov 1, 2019

  1. Typo

    dbkr authored Nov 1, 2019
    Configuration menu
    Copy the full SHA
    74b649c View commit details
    Browse the repository at this point in the history
  2. Typo

    dbkr authored Nov 1, 2019
    Configuration menu
    Copy the full SHA
    a571624 View commit details
    Browse the repository at this point in the history
  3. Space

    dbkr authored Nov 1, 2019
    Configuration menu
    Copy the full SHA
    f3073e1 View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2019

  1. Convert event interface to callbacks

    Use options.cryptoCallbacks for things that require information
    from the app rather than events, since events can have zero, one
    or many listeners and the emitter doesn't know how many, so if
    nobody's listening then we would have just waited forever for a
    response.
    
    Also a collection of other changes like renaming 'fu' to 'firstUse'
    dbkr committed Nov 7, 2019
    Configuration menu
    Copy the full SHA
    a34758f View commit details
    Browse the repository at this point in the history
  2. lint

    dbkr committed Nov 7, 2019
    Configuration menu
    Copy the full SHA
    fabfe16 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    1262702 View commit details
    Browse the repository at this point in the history
  4. lint

    dbkr committed Nov 7, 2019
    Configuration menu
    Copy the full SHA
    03fe4af View commit details
    Browse the repository at this point in the history
  5. add comments

    dbkr committed Nov 7, 2019
    Configuration menu
    Copy the full SHA
    3a98327 View commit details
    Browse the repository at this point in the history

Commits on Nov 11, 2019

  1. Configuration menu
    Copy the full SHA
    6f8d9c4 View commit details
    Browse the repository at this point in the history
  2. Missed bits of callback renaming

    dbkr committed Nov 11, 2019
    Configuration menu
    Copy the full SHA
    a98e696 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    4c651c1 View commit details
    Browse the repository at this point in the history

Commits on Nov 12, 2019

  1. Configuration menu
    Copy the full SHA
    9bc185d View commit details
    Browse the repository at this point in the history
  2. Throw if an unknown key is specified

    It's probably important that the app knows if a secret isn't going
    to be stored under one or more of the keys it thought it was going
    to be stored under.
    
    Also add a test to assert it.
    dbkr committed Nov 12, 2019
    Configuration menu
    Copy the full SHA
    c97a87d View commit details
    Browse the repository at this point in the history

Commits on Nov 13, 2019

  1. Support default keys

    dbkr committed Nov 13, 2019
    Configuration menu
    Copy the full SHA
    26aa3d3 View commit details
    Browse the repository at this point in the history
  2. lint

    dbkr committed Nov 13, 2019
    Configuration menu
    Copy the full SHA
    d12c56a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    1798f39 View commit details
    Browse the repository at this point in the history
  4. Sign & verify SSSS keys

    dbkr committed Nov 13, 2019
    Configuration menu
    Copy the full SHA
    7218e31 View commit details
    Browse the repository at this point in the history
  5. lint

    dbkr committed Nov 13, 2019
    Configuration menu
    Copy the full SHA
    693c749 View commit details
    Browse the repository at this point in the history

Commits on Nov 14, 2019

  1. Camelcase event names

    Co-Authored-By: J. Ryan Stinnett <[email protected]>
    dbkr and jryans authored Nov 14, 2019
    Configuration menu
    Copy the full SHA
    d5d8032 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d9d6530 View commit details
    Browse the repository at this point in the history
  3. Mark cross siging / SSSS APIs as unstable

    also add missing jsdoc
    dbkr committed Nov 14, 2019
    Configuration menu
    Copy the full SHA
    0048cbe View commit details
    Browse the repository at this point in the history
  4. Use official name for SSSS

    Co-Authored-By: J. Ryan Stinnett <[email protected]>
    dbkr and jryans authored Nov 14, 2019
    Configuration menu
    Copy the full SHA
    e10c17c View commit details
    Browse the repository at this point in the history
  5. Fix comment

    dbkr committed Nov 14, 2019
    Configuration menu
    Copy the full SHA
    291133b View commit details
    Browse the repository at this point in the history
  6. Add matrix foundation copyright

    The creation of this file just predates matrix.org foundation so it
    should have both
    dbkr committed Nov 14, 2019
    Configuration menu
    Copy the full SHA
    2cd748b View commit details
    Browse the repository at this point in the history
  7. jsdoc formatting

    dbkr committed Nov 14, 2019
    Configuration menu
    Copy the full SHA
    69ecf3b View commit details
    Browse the repository at this point in the history
  8. remove unused function

    dbkr committed Nov 14, 2019
    Configuration menu
    Copy the full SHA
    2a7b283 View commit details
    Browse the repository at this point in the history
  9. Remove outdated comment

    uhoreg says this is fine now...
    dbkr committed Nov 14, 2019
    Configuration menu
    Copy the full SHA
    686a7a4 View commit details
    Browse the repository at this point in the history
  10. tariling space

    dbkr committed Nov 14, 2019
    Configuration menu
    Copy the full SHA
    7ca09ad View commit details
    Browse the repository at this point in the history
  11. Remove getPublicKey

    which was the same as getId
    dbkr committed Nov 14, 2019
    Configuration menu
    Copy the full SHA
    be9b7a0 View commit details
    Browse the repository at this point in the history
  12. Assert usage of setDeviceVerification for cross-signing keys

    We can't mark a cross-signing key as blocked/unblocked, known/unknown
    or unverified, so throw an exception instead of doing nothing.
    
    Also comment what's going on in this function.
    dbkr committed Nov 14, 2019
    Configuration menu
    Copy the full SHA
    5937185 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    ce2d1d6 View commit details
    Browse the repository at this point in the history

Commits on Nov 15, 2019

  1. Change check{User|Device}Trust interfaces

    ...to return objects with functions rather than a bitmask
    dbkr committed Nov 15, 2019
    Configuration menu
    Copy the full SHA
    e541b96 View commit details
    Browse the repository at this point in the history
  2. Switch the CroosSigningLevel constants

    we check in resetKeys and set all if it's & 4 anyway, so may as well
    make the constants a normal bitmask and then we can use the MASTER
    constant below.
    dbkr committed Nov 15, 2019
    Configuration menu
    Copy the full SHA
    c3215d5 View commit details
    Browse the repository at this point in the history
  3. Typo

    Co-Authored-By: J. Ryan Stinnett <[email protected]>
    dbkr and jryans authored Nov 15, 2019
    Configuration menu
    Copy the full SHA
    6f42824 View commit details
    Browse the repository at this point in the history
  4. copy jsdoc to internal methods

    dbkr committed Nov 15, 2019
    Configuration menu
    Copy the full SHA
    4089349 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    545ebf8 View commit details
    Browse the repository at this point in the history
  6. Why is 'cross-signing' so hard to type?

    Co-Authored-By: J. Ryan Stinnett <[email protected]>
    dbkr and jryans authored Nov 15, 2019
    Configuration menu
    Copy the full SHA
    fe01024 View commit details
    Browse the repository at this point in the history
  7. Update yarn.lock

    dbkr committed Nov 15, 2019
    Configuration menu
    Copy the full SHA
    f5a5f5e View commit details
    Browse the repository at this point in the history
  8. lint

    dbkr committed Nov 15, 2019
    Configuration menu
    Copy the full SHA
    d37ed9f View commit details
    Browse the repository at this point in the history
  9. backticks in jsdoc

    Co-Authored-By: J. Ryan Stinnett <[email protected]>
    dbkr and jryans authored Nov 15, 2019
    Configuration menu
    Copy the full SHA
    f84ec09 View commit details
    Browse the repository at this point in the history
  10. Typo

    Co-Authored-By: J. Ryan Stinnett <[email protected]>
    dbkr and jryans authored Nov 15, 2019
    Configuration menu
    Copy the full SHA
    f2f205f View commit details
    Browse the repository at this point in the history
  11. c+p fail

    Co-Authored-By: J. Ryan Stinnett <[email protected]>
    dbkr and jryans authored Nov 15, 2019
    Configuration menu
    Copy the full SHA
    86e0f49 View commit details
    Browse the repository at this point in the history
  12. c+p fail

    Co-Authored-By: J. Ryan Stinnett <[email protected]>
    dbkr and jryans authored Nov 15, 2019
    Configuration menu
    Copy the full SHA
    00b571a View commit details
    Browse the repository at this point in the history
  13. Capitalise jsdoc

    Co-Authored-By: J. Ryan Stinnett <[email protected]>
    dbkr and jryans authored Nov 15, 2019
    Configuration menu
    Copy the full SHA
    97dff46 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    6d0237e View commit details
    Browse the repository at this point in the history
  15. c+p fail

    Co-Authored-By: J. Ryan Stinnett <[email protected]>
    dbkr and jryans authored Nov 15, 2019
    Configuration menu
    Copy the full SHA
    f0ba1f2 View commit details
    Browse the repository at this point in the history
  16. More jsdoc updates

    Co-Authored-By: J. Ryan Stinnett <[email protected]>
    dbkr and jryans authored Nov 15, 2019
    Configuration menu
    Copy the full SHA
    fa2e669 View commit details
    Browse the repository at this point in the history
  17. is now implemented

    dbkr committed Nov 15, 2019
    Configuration menu
    Copy the full SHA
    2ab033e View commit details
    Browse the repository at this point in the history
  18. This is now implemented

    Co-Authored-By: J. Ryan Stinnett <[email protected]>
    dbkr and jryans authored Nov 15, 2019
    Configuration menu
    Copy the full SHA
    5224ef4 View commit details
    Browse the repository at this point in the history
  19. update jsdoc

    dbkr committed Nov 15, 2019
    Configuration menu
    Copy the full SHA
    c550f83 View commit details
    Browse the repository at this point in the history
  20. Remove ghost of some old code

    dbkr committed Nov 15, 2019
    Configuration menu
    Copy the full SHA
    04b57bb View commit details
    Browse the repository at this point in the history
  21. Rename backup_password & functions

    Not Just For Backups Anymore
    dbkr committed Nov 15, 2019
    Configuration menu
    Copy the full SHA
    5626126 View commit details
    Browse the repository at this point in the history
  22. Update import

    dbkr committed Nov 15, 2019
    Configuration menu
    Copy the full SHA
    2a63cc4 View commit details
    Browse the repository at this point in the history