[Cryptech-Commits] [sw/libhal] branch master updated (ede0e7d -> 19de5cd)

git at cryptech.is git at cryptech.is
Wed May 18 08:37:30 UTC 2016


This is an automated email from the git hooks/post-receive script.

paul at psgd.org pushed a change to branch master
in repository sw/libhal.

      from  ede0e7d   "Double and add" is sort of like "square and muliply", but "square and add" is just a symptom of editing documentation in one's sleep.  Feh.
      adds  88872e2   First cut at public libhal RPC API.
      adds  abd5caf   RPC API dispatch, skeleton client functions, mixed-mode handlers for local hashing with remote pkey.
      adds  6f479d8   Silence platform-dependent compiler whining: in general, when printf() whines about some platform-dependent integer size issue, it's best to use both an explicitly sized format (eg, "%lu") and an explicit cast (eg, "(unsigned long)") when silencing the warning, otherwise it'll just pop up again in different form on the next platform tested.
      adds  c60b4bb   Add rpc_hash.c.  Convert dynamic allocator in hash.c to use private pool of pre-configured state blocks, suitable for an embedded system.
      adds  d7b3463   Merge Paul's copyright updates.
      adds  86b35d7   RPC server stuff mostly written.  Compiles, not yet tested.  RPC public key extraction functions on hold pending ASN.1 cleanup.
      adds  e3f62b0   Drop support for the ASN.1-based ECDSA signature format in favor of the simpler format which PKCS #11 uses, since we have to support the latter in any case and it's not worth the complexity of supporting both.
      adds  0336850   Consolidating curve names broke the ASN.1 code.
      adds  808c0ba   Use sysconf(_SC_PAGESIZE) instead of getpagesize().
      adds  905db64   Pull .gitignore update from master.
      adds  36f9b66   Fix names of private key DER functions.
      adds  17da006   Add ASN.1 support for public keys (X.509 SubjectPublicKeyInfo format).
      adds  bbb6e1e   Test code for ASN.1 public key functions.
      adds  c4c6c5e   Reorder tests to put hideously slow RSA tests at the end.
      adds  8c427a7   First round of fixes for new ASN.1 and test code.
      adds  0fc5ab9   Software modexp() implementation didn't compile due to missing pro forma hal_core_t* argument.
      adds  a1e4e4f   RPC interface to TRNG and (incomplete) PIN code.
      adds  7dfad9f   More work on PIN/login/logout code.  Access control still missing, committing now so Paul has a chance to look at the current RPC API.
      adds  1a7b3c3   hal_rpc_logout_all(), hal_rpc_is_logged_in().
      adds  a88a869   Fix dispatch vector names.
      adds  cef7ba6   RPC over loopback socket, just to work out the mechanics for serialization and dispatch.
      adds  8f9c3d1   Initial implementations of ks_get_kek().  Untested, and none of these are secure (the one in ks_flash.c is a stub, and the others are for cases where we have no secure hardware in which to store the KEK).
      adds  8db1d75   Optional (compile time conditional) software hash cores.  At the moment this is all-or-nothing, but could easily be tweaked to allow compile-time selection of particular hashes.
      adds  79559c5   Added serial RPC transport and lots more...
      adds  34c5878   Skip tests we know are going to fail.
      adds  4679383   Don't build position-independent code for stm32.
      adds  cdaf07d   stupid fixes
      adds  74aa82f   Tweak handling of byte swapping in software hash cores to get rid of some unnecessary data copying.
      adds  0b8820c   First step towards RPC PKEY tests.  Currently RSA-only, test-vector only, requires AES core (for key wrapping).
      adds  7e4d5d7   First round of debugging based on RPC pkey tests: mostly ASN.1 silliness, with a bit of PKCS #1.5 padding silliness for desert.
      adds  dd47860   Basic RPC ECDSA tests.
      adds  35664e0   Doh, helps to specify the curve.
      adds  cddc061   Test RPC key generation API.
      adds  cf04c6c   Merge branch 'master' into rpc
      adds  01f5452   Merge branch 'master' into rpc
      adds  8a01c20   Add test-rpc_get_random
      adds  10286b1   Remove unneeded hal_internal.h
      adds  36bd46a   Add rpc error codes.
      adds  14465a4   Add xdr-specific error codes; update caller's length in hal_xdr_decode_buffer().
      adds  438b506   Enable 'mixed' mode, with client-side hashing.
      adds  6cd4292   Client-side rsa and ecdsa need to call remote get_random.
      adds  940dd77   Client includes rsa, ecdsa, asn1. Server includes rpc_api because rpc_pkey.c calls hal_rpc_hash_* Remote client uses software modexp. Mixed client uses software hash. Add convenience targets for client, server, etc.
      adds  cd56f57   Fix includes to bring hal_io_fmc.c in line with hal_io_eim.c.
      adds  c5917a2   Break the RPC dispatch out of hal_rpc_server_main, for the benefit of the threaded server.
      adds  44b189b   Merge branch 'master' into rpc
      adds  e95df39   Add hal_digest_algorithm_none; tweak handling of none handles.
      adds  e6f53e7   Fix buffer allocations in RPC client code.
      adds  a0d2fb9   Merge branch 'master' into rpc
      adds  598e759   Add mixed-mode key support, for PKCS #11 "session" (ie, not "token") keys.
      adds  1a00bef   Entirely too much fun with C const-ification.
      adds  c861f7d   Clean up pkey mixed mode.
      adds  b1225c1   Trailing whitespace cleanup.
      adds  e3d9087   Fix key flag check, untabify.
      adds  53b0dd2   Silence unused variable warning.
      adds  0690aa3   Add hal_rpc_pkey_rename(); allow null string as (temporary) key name.
      adds  19de5cd   Tweak keystore API to allow update-in-place, so hal_ks_rename() will work.

No new revisions were added by this update.

Summary of changes:
 .gitignore                                    |    7 +
 GNUmakefile                                   |  168 ++++-
 aes_keywrap.c                                 |    2 +-
 asn1.c                                        |  166 ++++
 asn1_internal.h                               |   27 +-
 core.c                                        |    2 +-
 csprng.c                                      |    2 +-
 ecdsa.c                                       |  290 +++----
 hal.h                                         |  363 +++++++--
 hal_internal.h                                |  426 +++++++++++
 hal_io_eim.c                                  |    2 +-
 hal_io_eim.c => hal_io_fmc.c                  |   60 +-
 hal_io_i2c.c                                  |    2 +-
 hash.c                                        |  493 +++++++++++-
 ks.c                                          |  337 +++++++++
 ks_flash.c                                    |  111 +++
 ks_mmap.c                                     |  180 +++++
 ks_volatile.c                                 |  144 ++++
 modexp.c                                      |    2 +-
 pbkdf2.c                                      |    2 +-
 rpc_api.c                                     |  342 +++++++++
 rpc_client.c                                  | 1008 +++++++++++++++++++++++++
 utils/cores.c => rpc_client_loopback.c        |   65 +-
 rpc_client_serial.c                           |  116 +++
 rpc_hash.c                                    |  318 ++++++++
 rpc_misc.c                                    |  241 ++++++
 rpc_pkey.c                                    |  883 ++++++++++++++++++++++
 rpc_server.c                                  |  760 +++++++++++++++++++
 rpc_server_loopback.c                         |   89 +++
 errorstrings.c => rpc_server_serial.c         |   62 +-
 rsa.c                                         |  139 +++-
 slip.c                                        |  141 ++++
 errorstrings.c => slip_internal.h             |   40 +-
 tests/.gitignore                              |    1 -
 tests/GNUmakefile                             |   19 +-
 tests/test-bus.c                              |    3 +-
 tests/test-ecdsa.c                            |   87 ++-
 tests/test-ecdsa.h                            |   39 +-
 tests/test-ecdsa.py                           |   52 +-
 tests/test-hash.c                             |    6 -
 utils/cores.c => tests/test-rpc_get_random.c  |   45 +-
 utils/cores.c => tests/test-rpc_get_version.c |   27 +-
 tests/{test-hash.c => test-rpc_hash.c}        |  192 ++---
 tests/test-rpc_pkey.c                         |  344 +++++++++
 tests/test-rpc_server.c                       |   10 +
 tests/test-rsa.c                              |  154 ++--
 utils/cores.c                                 |    2 +-
 utils/eim_peek_poke.c                         |    2 +-
 verilog_constants.h                           |    3 +-
 xdr.c                                         |  260 +++++++
 errorstrings.c => xdr_internal.h              |   53 +-
 51 files changed, 7625 insertions(+), 664 deletions(-)
 create mode 100644 hal_internal.h
 copy hal_io_eim.c => hal_io_fmc.c (81%)
 create mode 100644 ks.c
 create mode 100644 ks_flash.c
 create mode 100644 ks_mmap.c
 create mode 100644 ks_volatile.c
 create mode 100644 rpc_api.c
 create mode 100644 rpc_client.c
 copy utils/cores.c => rpc_client_loopback.c (52%)
 create mode 100644 rpc_client_serial.c
 create mode 100644 rpc_hash.c
 create mode 100644 rpc_misc.c
 create mode 100644 rpc_pkey.c
 create mode 100644 rpc_server.c
 create mode 100644 rpc_server_loopback.c
 copy errorstrings.c => rpc_server_serial.c (58%)
 create mode 100644 slip.c
 copy errorstrings.c => slip_internal.h (69%)
 delete mode 100644 tests/.gitignore
 copy utils/cores.c => tests/test-rpc_get_random.c (66%)
 copy utils/cores.c => tests/test-rpc_get_version.c (76%)
 copy tests/{test-hash.c => test-rpc_hash.c} (78%)
 create mode 100644 tests/test-rpc_pkey.c
 create mode 100644 tests/test-rpc_server.c
 create mode 100644 xdr.c
 copy errorstrings.c => xdr_internal.h (51%)



More information about the Commits mailing list