History log of /external/vboot_reference/host/lib/host_key.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
d6759e4ce635fabf01e7919ef070e114d54b455b 01-Apr-2015 Adam Langley <agl@google.com> vboot: fix name-collision with OpenSSL.

vboot currently uses the |SHA256_CTX| name, which is claimed by OpenSSL.
To work around this, it defines OPENSSL_NO_SHA, but that can't be done
at compile time:

The OPENSSL_NO_* defines are set by OpenSSL to reflect the configuration
that it was built with so that users of OpenSSL can disable features as
needed. They can affect the contents of structures any thus the ABI of
the library.

If these defines are set outside of OpenSSL, then the library and the
code that uses it will have incompatible ABIs. At that point it's only
functioning by blind luck.

This change renames the name-collisions so that this hack isn't needed.
This is the same change as was made internally in cl/85758149.

Change-Id: I709da2507f341896d89d50129ce30ffb111a20d1
/external/vboot_reference/host/lib/host_key.c
4e4c19602edf3834b50d66d3ba067e895aca6fa0 04-Feb-2015 Bill Richardson <wfrichar@chromium.org> futility: Add create command to make keypairs from RSA files

This command reads a single .pem file and emits the public and
private keys generated from it. It can produce both the old-style
vboot 1.0 keys (.vbpubk and .vbprivk), or the new vboot 2.1
format keys (.vbpubk2 and .vbprik2). The default is the new
format, but you can give futility the --vb1 arg to force the old
format.

A test is included.

BUG=chromium:231547
BRANCH=ToT
TEST=make runtests

Change-Id: I4713dc5bf34151052870f88ba52ddccf9d4dab50
Signed-off-by: Bill Richardson <wfrichar@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/246766
Reviewed-by: Randall Spangler <rspangler@chromium.org>
/external/vboot_reference/host/lib/host_key.c
f16ed878799cc7cf11545c36d6f332c76d612260 28-Aug-2014 Bill Richardson <wfrichar@chromium.org> futility: add separate check function for VPbublicKey

Provide a PublicKeyLooksOkay() function to sanity-check VbPublicKey structs.
This was just part of PublicKeyRead(), but I want to separate the reading
from the checking.

BUG=chromium:224734
BRANCH=ToT
TEST=make runtests

Change-Id: I1dd808e623e2a7fdc2789e02305619111a7b01e6
Signed-off-by: Bill Richardson <wfrichar@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/214621
Reviewed-by: Randall Spangler <rspangler@chromium.org>
/external/vboot_reference/host/lib/host_key.c
32a6526d25d4bf9a1c137fc3d275d1c68935d184 27-Jun-2011 Randall Spangler <rspangler@chromium.org> Verified boot wrapper - add stub implementations for host

This is part 2 of the wrapper API refactor. It adds stub
implementations for the host, and changes the host-side utilities to
use them. Firmware implementation is unchanged in this CL (other than
a few updates to macros).

BUG=chromium_os:16997
TEST=make && make runtests

Change-Id: I63989bd11de1f2239ddae256beaccd31bfb5acef
Reviewed-on: http://gerrit.chromium.org/gerrit/3256
Reviewed-by: Stefan Reinauer <reinauer@chromium.org>
Tested-by: Randall Spangler <rspangler@chromium.org>
/external/vboot_reference/host/lib/host_key.c
d583a30a7c3bd369f82c0428666c7a708d5341d5 25-Mar-2011 Gaurav Shah <gauravsh@chromium.org> Use uint64_t and avoid down casting as much as possible.

Change-Id: I231d1b3a059907c3806feced7e1b8f1c06575ba5

BUG=chromeos-partner:2912
TEST=make clean all && make runtests

Review URL: http://codereview.chromium.org/6733018
/external/vboot_reference/host/lib/host_key.c
47b593d84920479ae5955fcc6664635328376a10 18-Aug-2010 Gaurav Shah <gauravsh@chromium.org> Add additional sanity checks to RSA verification code.

Also, make algorithm unsigned int in most places.

BUG=chrome-os-partner:701
TEST=existing RSA verification tests still pass

Review URL: http://codereview.chromium.org/3136017
/external/vboot_reference/host/lib/host_key.c
abf055045802cb06c57ff2d7b187736bdcb3b138 01-Jul-2010 Bill Richardson <wfrichar@chromium.org> Switch to using .vbprivk for signing everything now.

This makes it much simpler to keep track of what we're doing.

vbutil_key can now wrap both .keyb and .pem keys. It figures out which is
which by trying both and just using the one that works.

vbutil_keyblock and vbutil_kernel now use .vbprivk files for signing.

replace debug() with VBDEBUG(()) in host-side sources, too.

rename PrivateKeyRead to PrivateKeyReadPem

Add real PrivateKeyRead and PrivateKeyWrite for .vbprivk files.

Review URL: http://codereview.chromium.org/2871033
/external/vboot_reference/host/lib/host_key.c
a08b5c9d032be485fe6e2790c23e8c9bb9fca2ad 01-Jul-2010 Bill Richardson <wfrichar@chromium.org> Adding --repack and --headeronly options to vbutil_kernel

The --repack option lets us sign a previously signed kernel blob with a new
kernel data key.

The --headeronly option is so we can emit the new verification header
separately from the kernel blob.

More work to come...

Review URL: http://codereview.chromium.org/2812034
/external/vboot_reference/host/lib/host_key.c
a55e5ca76c5054c02dcc0628be0950c07b49d38c 16-Jun-2010 Randall Spangler <rspangler@chromium.org> Refactor LoadFirmware() to avoid global variables, which don't work when running out of ROM

Review URL: http://codereview.chromium.org/2848006
/external/vboot_reference/host/lib/host_key.c
6a97b3e2a1bee35bf3c00f2fb0faafde4aaab9e2 11-Jun-2010 Randall Spangler <rspangler@chromium.org> Add vbutil_keyblock

Review URL: http://codereview.chromium.org/2748008
/external/vboot_reference/host/lib/host_key.c
d55c64537245abca67a66fde5874b7f4a6cdc556 10-Jun-2010 Randall Spangler <rspangler@chromium.org> Utility to pack public key, version, algorithm into a single file in VbPublicKey format

Review URL: http://codereview.chromium.org/2762009
/external/vboot_reference/host/lib/host_key.c
d183644564ec27c106a3eb1931f565fae167a058 10-Jun-2010 Randall Spangler <rspangler@chromium.org> Major refactoring of structures, with unit tests. This matches the doc I sent out earlier.

Firmware-side code for LoadKernel() is in place now. LoadFirmware() replacement coming soon.

The new functions are implemented in parallel to the existing ones (i.e., everything that used to work still does).

Review URL: http://codereview.chromium.org/2745007
/external/vboot_reference/host/lib/host_key.c