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

RSA Signing & Verification Support #35

Closed
wants to merge 38 commits into from

Commits on Oct 4, 2018

  1. Configuration menu
    Copy the full SHA
    0c417a0 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    189c3ea View commit details
    Browse the repository at this point in the history
  3. Only allow rsa-sha1 and rsa-256

    * Specification does not permit other hash algorithms
      for RSA signatures
    liamdennehy committed Oct 4, 2018
    Configuration menu
    Copy the full SHA
    07b9967 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    473cbad View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    dc69698 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    14e3882 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    15b6da9 View commit details
    Browse the repository at this point in the history
  8. Add Algorithm type discriminator

    * Avoid Class tests, easier to add EC keys later (also asym)
    liamdennehy committed Oct 4, 2018
    Configuration menu
    Copy the full SHA
    15af312 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    95f6e83 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    950d4f2 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    7ade094 View commit details
    Browse the repository at this point in the history
  12. Extend Key class to handle RSA Keys/Certs

    * Create a "Key" with only a certificate (for verification)
    * Create a Key with a private key for signing/authorising
    * Create a Key with both because someone will want to
    * Generate exception if certificate and key are not related
    * Separate signing flows for hmac (secret) and asymmetric (privateKey)
    liamdennehy committed Oct 4, 2018
    Configuration menu
    Copy the full SHA
    b37a4f5 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    0a6ee8d View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    ac68287 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    983068f View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    808ef53 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    adc21df View commit details
    Browse the repository at this point in the history
  18. RSA Verification tests

    liamdennehy committed Oct 4, 2018
    Configuration menu
    Copy the full SHA
    01e949f View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    126b8ed View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    b2be764 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    2aa561e View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    9668633 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    bf0b6b8 View commit details
    Browse the repository at this point in the history
  24. New AlgorithmException class and common digest selection function

    * Unit Test for bad algorithm choice
    * Common algorithm selection function to improve maintainability
      when algorithms change (single implementation in verify() and sign()
    * Move Algorithm instantiation to Context creation:
      Get earlier feedback on bad
      hash algorithm choice - error should occur at time of bad
      data input, not usage.
    liamdennehy committed Oct 4, 2018
    Configuration menu
    Copy the full SHA
    be3715f View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    2833a73 View commit details
    Browse the repository at this point in the history
  26. README with HMAC/RSA usage and separating Sign/Validate flows

    * Need better documentation around key handling (e.g. no mention
      of using an existing KeyStore object)
    liamdennehy committed Oct 4, 2018
    Configuration menu
    Copy the full SHA
    17c8c65 View commit details
    Browse the repository at this point in the history
  27. Update README.md

    liamdennehy committed Oct 4, 2018
    Configuration menu
    Copy the full SHA
    93a3ab3 View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    d9511b5 View commit details
    Browse the repository at this point in the history
  29. Keys: Better ways to expose Signing and Verifying keys

    * Hide internal representation of keys
    * Better approach for asymmetric keys in one Key object
    * function getSigningKey() - Secret for HMAC, Private Key for RSA
    * function getVerifyingKey() - Secret for HMAX, Piblic Key for RSA
    * Move from certificates to public keys for overall consistency
    * Preserve existing key import methods (may need to change with future developments)
    liamdennehy committed Oct 4, 2018
    Configuration menu
    Copy the full SHA
    d585c95 View commit details
    Browse the repository at this point in the history
  30. Remove unused variable

    liamdennehy committed Oct 4, 2018
    Configuration menu
    Copy the full SHA
    9cbd463 View commit details
    Browse the repository at this point in the history
  31. Refer to Draft v10

    * Implementation is correct against this draft, good to use
      latest link
    liamdennehy committed Oct 4, 2018
    Configuration menu
    Copy the full SHA
    2bdaaa8 View commit details
    Browse the repository at this point in the history
  32. PHP Code Style Fixups

    liamdennehy committed Oct 4, 2018
    Configuration menu
    Copy the full SHA
    75d55ef View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    c85b0a0 View commit details
    Browse the repository at this point in the history
  34. Typos & Code Style

    liamdennehy committed Oct 4, 2018
    Configuration menu
    Copy the full SHA
    230b033 View commit details
    Browse the repository at this point in the history

Commits on Oct 9, 2018

  1. Configuration menu
    Copy the full SHA
    93c0c45 View commit details
    Browse the repository at this point in the history
  2. Cleaner Key class and sundry names

    * Key now handles inputs as X.509, naked Public Key and
      Private Key (all PEM)
    * Improved & clearer detection logic with explicit tests
      for asymmetric key material, falling back on shared secret
      for HMAC if asymmetric keys are not detected
      hasX509Certificate()
      hasPublicKey()
      hasPrivateKey()
    * Clearer names for test constants (easier to expand to EC later)
    liamdennehy committed Oct 9, 2018
    Configuration menu
    Copy the full SHA
    b9ae276 View commit details
    Browse the repository at this point in the history
  3. phpdoc annotations

    liamdennehy committed Oct 9, 2018
    Configuration menu
    Copy the full SHA
    67c3d32 View commit details
    Browse the repository at this point in the history

Commits on Aug 2, 2019

  1. Travis build fixes and include phpunit script

    - Remove unsupported Symfony/PHP version combinations
    - Add PHP 7.3 support
    liamdennehy committed Aug 2, 2019
    Configuration menu
    Copy the full SHA
    3ee2ea5 View commit details
    Browse the repository at this point in the history