Go to file
Nemo 0933221033 Adds Dockerfile and LICENSE 2020-04-27 09:24:23 +05:30
.dockerignore Adds Dockerfile and LICENSE 2020-04-27 09:24:23 +05:30
.gitignore initial commit 💥 2020-02-01 02:50:30 +05:30
Dockerfile Adds Dockerfile and LICENSE 2020-04-27 09:24:23 +05:30
LICENSE Adds Dockerfile and LICENSE 2020-04-27 09:24:23 +05:30
README.md Adds Dockerfile and LICENSE 2020-04-27 09:24:23 +05:30
cover-thumb.jpg Use local thumbnail for cover 2020-02-03 13:28:13 +05:30
cover.jpg Adds a README 2020-02-01 02:55:44 +05:30
cover.pdf Adds a README 2020-02-01 02:55:44 +05:30
generate.sh Adds chapter titles in the bookmarks 2020-04-27 09:24:04 +05:30
meta.txt Adds chapter titles in the bookmarks 2020-04-27 09:24:04 +05:30
titles.txt Adds chapter titles in the bookmarks 2020-04-27 09:24:04 +05:30
urls.txt Adds Chapter 21 2020-03-18 15:32:40 +05:30

README.md

security-engineering-3rd-edition-ebook

third-edition-security-engineering-book-cover

This is just the script to generate a combined PDF from the currently-online-chapters available for review.

The script also takes care of putting in the right bookmarks for all the chapters in the generated PDF file.

Go read the book from the source at https://www.cl.cam.ac.uk/~rja14/book.html

Chapters

See titles.txt for the bookmark titles used by the script.

  • Preface
  • Chapter 1: What is Security Engineering? (August 30)
  • Chapter 2: Who is the Opponent? (May 17)
  • Chapter 3: Psychology and Usability (May 31)
  • Chapter 4: Protocols (June 6)
  • Chapter 5: Cryptography (July 26)
  • Chapter 6: Access Control (August 29)
  • Chapter 7: Distributed Systems (July 26)
  • Chapter 8: Economics (June 29)
  • Chapter 9: Multilevel Security (September 16)
  • Chapter 10: Boundaries (October 4)
  • Chapter 11: Inference Control (January 7)
  • Chapter 12: Banking and Bookkeeping (February 2)
  • Chapter 13: Physical Protection (October 12)
  • Chapter 14: Monitoring and Metering (December 18)
  • Chapter 15: Nuclear Command and Control (August 29)
  • Chapter 16: Security Printing and Seals (November 13)
  • Chapter 17: Biometrics (December 18)
  • Chapter 18: Physical Tamper Resistance (November 13)
  • Chapter 19: Side Channels (December 6)
  • Chapter 20: Advanced Cryptographic Engineering (February 28)
  • Chapter 21: Network Attack and Defence (Mar 16)
  • Chapter 26: Surveillance or Privacy? (May 17)
  • Bibliography

How to generate the book?

Run ./generate.sh. You will need pdftk, and wget installed. Alternatively, you can run it using Docker😀

Docker

docker run --detach --name security-engineering-ebook captn3m0/security-engineering-ebook
7553d55547603b0e3d47332f4cd55a126ace10e0e965547b0fae06e3c7b16229

docker logs security-engineering-ebook -f
Starting PDF download
All PDFs downloaded
PDF files combined
Bookmarks attached to PDF
PDF File generated: security-engineering-3rd-edition.pdf

docker cp security-engineering-ebook:/security-engineering-ebook/security-engineering-3rd-edition.pdf .

Once the script finishes running, check the security-engineering-3rd-edition.pdf file.

More Options?

You can run with the following 2 options:

--generate-metadata

To generate the meta.txt file which contains the list of bookmarks to be inserted. This is required if you make changes to the file lists. This also requires qpdf to be installed.

--download-cover-image

Download the cover image. The repo already has a cover.pdf file which is used by default. This option will download the cover image and convert it to pdf yet again. Do this if the cover URL changes. Requires imagemagick to be installed.

Support the Authors

Buy the second editions from:

A combined PDF of the first edition is available directly from the author at http://www.cl.cam.ac.uk/~rja14/musicfiles/manuscripts/SEv1.pdf.

Contributing

The list of URLs is maintained at urls.txt and might need to be updated. File a PR if this breaks?

Extra

A list of my other EBook generation projects: https://captnemo.in/ebooks/, includes a link to other related projects as well

License

The little code in this repo is licensed under the MIT License. See LICENSE file for details.