Skip to content
Snippets Groups Projects
  1. Oct 02, 2018
    • David Baker's avatar
      Work with PkDecryption keys by their private keys · 0346145a
      David Baker authored
      Change interface to allow the app to get the private part of the
      key and instantiate a decryption object from just the private part
      of the key.
      
      Changes the function generating a key from random bytes to be
      initialising a key with a private key (because it's exactly the
      same thing). Exports & imports private key parts as ArrayBuffer at
      JS level rather than base64 assuming we are moving that way in
      general.
      0346145a
  2. Sep 06, 2016
    • Richard van der Hoff's avatar
      Sign megolm messages · 2fc83aa9
      Richard van der Hoff authored
      Add ed25519 keys to the inbound and outbound sessions, and use them to sign and
      verify megolm messages.
      
      We just stuff the ed25519 public key in alongside the megolm session key (and
      add a version byte), to save adding more boilerplate to the JS/python/etc
      layers.
      2fc83aa9
  3. Sep 01, 2016
    • Richard van der Hoff's avatar
      Fix Ed25519 keypair generation · 0c462cff
      Richard van der Hoff authored
      Ed25519 private keys, it turns out, have 64 bytes, not 32.
      
      We were previously generating only 32 bytes (which is all that is required to
      generate the public key), and then using the public key as the upper 32 bytes
      when generating the per-message session key. This meant that everything
      appeared to work, but the security of the private key was severely compromised.
      
      By way of fixes:
      
       * Use the correct algorithm for generating the Ed25519 private key, and store
         all 512 bits of it.
      
       * Update the account pickle format and refuse to load the old format (since we
         should consider it compromised).
      
       * Bump the library version, and add a function to retrieve the library
         version, so that applications can verify that they are linked against a
         fixed version of the library.
      
       * Remove the curve25519_{sign, verify} functions which were unused and of
         dubious quality.
      0c462cff
  4. May 24, 2016
  5. May 23, 2016
  6. Mar 03, 2015
  7. Feb 26, 2015
  8. Feb 20, 2015
Loading