[Cryptech Core] Cryptech raw notes, day two

Rob Austein sra at hactrn.net
Thu Jan 30 10:19:21 UTC 2014


Gaps due to sysadmin, brain melt due to topics, other distractions,
but this is what I have.


[note taking started late, distracted by sysadmin glorp]

- threat models

  - [jakob] Have we thought about threat model?  Have we thought about
    more precise control over exactly what's being signed

  - [basil] (a) What Jakob said.  (b) long description of what
    threat model might look like

  - [leif, sra] we may not have a single threat model since we're
    talking about several differnt kinds of devices built from common
    kit, each would have specific threat model

  - [basil] tamper reistance?

  - [jakob] we should pay attention to existing stuff, most of it is
    not just for show

  - [linus] this seems like we'd need a way to express policy

  - [leif] maybe audit trail helps here

  - [jakob] horse already escaped, not good in some cases

  - [fredrik] jakob's dnssec example is good: dnssec signature ok for
    almost anything so long as date is only n days or less.  this
    implies needing to understand dnssec formats down in signer.

  - [jakob] so pkcs#11 is not end all

  - [randy] we decided that yesterday

  - [leif] we're still catching up

  - [linus] model here is sort of a collection of libraries and apis,
    but eventually we have to do applications.  are we doing both?

  - [randy] yes

  - [basil] worried about people doing dumb things with this

  - [linus, sra] we can't stop them from doing dumb things.  we can
    only make it possible for them to do not dumb things.

  - [basil] can we at least nail the apis

  - [randy] let's look at use cases on wiki, some of them also have
    threat models

  [more sysadmin distractions]

  [still ratholed on threat model]

- Parking lot issue: RNG / Entropy

[Break for pgp key party]

- [Joachim uploads initial block diagram of components]

  - [Joachim] AES shows in multiple places here.  TBD whether is
    really all one AES or multiple copies for speed.

[Tea break]

- Block diagram continued

  - [Basil] Another attempt to explain why we should minimize the
    number of ways that dumb users can shoot themselves in feet.

  - [Linus] Final application has to do security analysis threat model
    etc no matter how well we build the components

- Tasks discussion (to wiki)

- Open source FPGA tool chain again

  - [Joachim] We have a mostly sort of open source path, hard part is
    the optimizer, so need comparison tools for input and output of
    optimizer

  - [Basil] Can't assume will always be on platforms where this tool
    set is available.

  - [Linus] Which is why I'm also interested in paths other than FPGA.

  - [Joachim] So more the co-processor approach when without FPGA.

  - [Linus, sra] Maybe we can provide some incentive for more open
    source FPGA tool chain?

  - [Linus] This is a bit like old open source video drivers, some
    manufacturers played along, some didn't.

  - [Peter] FPGA manufacturer profit is probably mostly about the
    chips, so in theory some of them might play along.

[lunch]

- Key backup

  - [Randy] Need to be able to back up and restore

  - [Jakob] Need UART (or something like that) for low level
    configuration

  - [Basil] Need to be able to leave out the UART in configurations
    that don't want it, or break it when one really doesn't want it.

  - [Jakob] How would one activate without UART?

  - [Fredrik] Logging via eithernet instead of UART

  - [Peter] Probably also cases where one wants only to be able to
    restore to same device originally backed up (no recovery after
    smoke)

- Activation

  - [Fredrik] Perhaps generic operation interface with code numbers
    for functions; in cases where a particular instance of the chip
    doesn't need or want to support those operations, those codes
    return error.

  - [Basil] Things like RNG should not be tweakable by clueless users.

  - [Jakob] Want an early definition of management commands needed for
    all(?) applications.  Well, OK, how about te ones that are common
    to many (most?) use cases.

  - [Linus] Maybe we should focus on Jakob's approach in the context
    of the 0.1 plan.

- [Jakob, sra, Peter] Application-specific knowledge definitely should
  be on the map, but not for 0.1.

- [sra] So since we seem not to have TLS on the use case list for 0.1,
  we have nothing using DH or ECDH, so maybe we don't want those in
  0.1 either?

- [Fredrik] Do we need a secure protocol across the green/yellow
  boundary?  Eg, if that's a USB bus?

  - [sra] This would likely involve negotiating a session key, etc.
    Authenticating that one is really talking to the right chip is a
    mess.  This does not sound like 0.1.



More information about the Core mailing list