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

Replace OpenSSL AES with ctaes-based version #7689

Merged
merged 12 commits into from Jun 1, 2016
Merged

Commits on May 11, 2016

  1. Squashed 'src/crypto/ctaes/' content from commit cd3c3ac

    git-subtree-dir: src/crypto/ctaes
    git-subtree-split: cd3c3ac31fac41cc253bf5780b55ecd8d7368545
    sipa committed May 11, 2016
    Copy the full SHA
    a545127 View commit details
    Browse the repository at this point in the history
  2. Copy the full SHA
    cd2be44 View commit details
    Browse the repository at this point in the history

Commits on May 13, 2016

  1. Copy the full SHA
    6bec172 View commit details
    Browse the repository at this point in the history
  2. crypto: add AES 128/256 CBC classes

    The output should always match openssl's, even for failed operations. Even for
    a decrypt with broken padding, the output is always deterministic (and attemtps
    to be constant-time).
    theuni authored and sipa committed May 13, 2016
    Copy the full SHA
    27a212d View commit details
    Browse the repository at this point in the history
  3. crypto: add aes cbc tests

    theuni authored and sipa committed May 13, 2016
    Copy the full SHA
    daa3841 View commit details
    Browse the repository at this point in the history
  4. crypter: fix the stored initialization vector size

    AES IV's are 16bytes, not 32. This was harmless but confusing.
    
    Add WALLET_CRYPTO_IV_SIZE to make its usage explicit.
    theuni authored and sipa committed May 13, 2016
    Copy the full SHA
    1c391a5 View commit details
    Browse the repository at this point in the history
  5. crypter: constify encrypt/decrypt

    This makes CCrypter easier to pass aroundf for tests
    theuni authored and sipa committed May 13, 2016
    Copy the full SHA
    fb96831 View commit details
    Browse the repository at this point in the history
  6. crypter: hook up the new aes cbc classes

    theuni authored and sipa committed May 13, 2016
    Copy the full SHA
    9049cde View commit details
    Browse the repository at this point in the history
  7. crypter: add a BytesToKey clone to replace the use of openssl

    BytesToKeySHA512AES should be functionally identical to EVP_BytesToKey, but
    drops the dependency on openssl.
    theuni authored and sipa committed May 13, 2016
    Copy the full SHA
    976f9ec View commit details
    Browse the repository at this point in the history
  8. crypter: shuffle Makefile so that crypto can be used by the wallet

    Wallet must come before crypto, otherwise linking fails on some platforms.
    
    Includes a tangentially-related general cleanup rather than making the Makefile
    sloppier.
    theuni authored and sipa committed May 13, 2016
    Copy the full SHA
    0a36b9a View commit details
    Browse the repository at this point in the history
  9. crypter: add tests for crypter

    Verify that results correct (match known values), consistent (encrypt->decrypt
    matches the original), and compatible with the previous openssl implementation.
    
    Also check that failed encrypts/decrypts fail the exact same way as openssl.
    theuni authored and sipa committed May 13, 2016
    Copy the full SHA
    34ed64a View commit details
    Browse the repository at this point in the history

Commits on May 27, 2016

  1. Copy the full SHA
    723779c View commit details
    Browse the repository at this point in the history