summaryrefslogtreecommitdiff
path: root/markdown/SunetInitialDevelopment.md
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2021-02-14 01:55:38 +0000
committerRob Austein <sra@hactrn.net>2021-02-14 01:55:38 +0000
commitb58c60bcc4a6f3d3ccf4194ef862a808fdc3313b (patch)
treead43c2b937db286c2b3320b57066a9581264444a /markdown/SunetInitialDevelopment.md
parent23bb68fe7e9cc8af176ff60b56e8a51a70f05a89 (diff)
Hack images, store outputs in git again for now
Easier to track what each script change does if we keep the before and after versions of the markdown in git too. Clean this up eventually, but simplifies development.
Diffstat (limited to 'markdown/SunetInitialDevelopment.md')
-rw-r--r--markdown/SunetInitialDevelopment.md137
1 files changed, 137 insertions, 0 deletions
diff --git a/markdown/SunetInitialDevelopment.md b/markdown/SunetInitialDevelopment.md
new file mode 100644
index 0000000..974bd5e
--- /dev/null
+++ b/markdown/SunetInitialDevelopment.md
@@ -0,0 +1,137 @@
+# Planning for SUNET funded Cryptech Work
+The following documents the first two development steps in Cryptech
+funded by SUNET. The development is being done by Joachim Strömbergson
+from Secworks AB.
+
+## Step one (Deadline 2014-02-28)
+
+ - Acquire a FPGA development platform.
+
+DONE. We have a Terasic DE0 board and a Terasic Cyclone V GX starter kit board.
+
+
+
+ - Create a working development and verification flow from RTL design
+
+ downto FPGA.
+
+
+ - Verify the functionality of the SHA-256 core in a physical FPGA.
+
+
+
+### Actions for step one
+
+ - Select FPGA development board to acquire
+ - Large enough to test sub systems and possibly a complete HSM.
+ - Good external interfaces for communication with host systems.
+ - Good external interfaces to entropy sources, memories,
+
+ GPIO. Arduino Shields would be good.
+
+
+ - Create a survey on interconnect standards usable for Cryptech
+ - Availability and market share/usage in third party cores.
+ - License
+ - Technical details - Bus, fabric, performance etc.
+
+
+
+
+ - Create base coretest functionality to allow testing of cores in the
+
+ FPGA on the development board. Read and write access to registers
+ over a known communication channel.
+
+
+ - Verify the development flow from Verilog RTL downto FPGA.
+
+
+
+ - Verifiera SHA-256 core using coretest.
+
+
+
+ - Start FPGA tool survey
+ - What is available as open tools and what is the status.
+ - What is available as open tools from the vendors.
+ - Talk to people in the industry to get their views on an open toolchain.
+
+
+
+## Step two (Deadline 2014-03-31)
+
+ - Produce first draft of design proposal to the Cryptech True Random Number Generator (TRNG)
+ - Security target, security model and assumptions
+ - Structure, architecture
+ - API
+ - Functionality
+ - Online test system
+ - Verification model
+ - First two entropy sources
+
+
+
+ - Complete SHA-1 core. Including functional verification in FPGA.
+
+
+
+ - First draft of SHA-256 and SHA-1 core documentation.
+
+
+
+### Actions for step two
+
+ - Create template for documentation
+
+
+
+ - Collect info on known TRNGs and TRNG strategies
+
+
+
+ - Collect info on online tests being used.
+
+
+
+ - Create proposal for architecture.
+
+
+
+ - Write implementation proposal.
+
+
+
+ - Specify API.
+
+
+
+ - Write security target and security model.
+
+
+
+ - Write assumptions and limitations.
+
+
+
+ - Write verification model.
+
+
+
+ - Finalize SHA-1 core RTl.
+
+
+
+ - Build SHA-1 core in FPGA.
+
+
+
+ - Verify SHA-1 functionality in FPGA using coretest.
+
+
+
+ - Write documentation for SHA-256 core.
+
+
+
+ - Write documentation for SHA-1 core.