Bluetooth: Introduce requirements for security level 4
authorMarcel Holtmann <marcel@holtmann.org>
Thu, 16 Jan 2014 06:37:39 +0000 (22:37 -0800)
committerJohan Hedberg <johan.hedberg@intel.com>
Thu, 13 Feb 2014 07:51:35 +0000 (09:51 +0200)
commit7b5a9241b780ea2f77e71647bc0d3c9708c18ef1
tree6848c9d768079cc02d95f911ebb3ca4d666c62c6
parenteb9a8f3fb6762a4e6ae0aa9e96532c9c544f400e
Bluetooth: Introduce requirements for security level 4

The security level 4 is a new strong security requirement that is based
around 128-bit equivalent strength for link and encryption keys required
using FIPS approved algorithms. Which means that E0, SAFER+ and P-192
are not allowed. Only connections created with P-256 resulting from
using Secure Connections support are allowed.

This security level needs to be enforced when Secure Connection Only
mode is enabled for a controller or a service requires FIPS compliant
strong security. Currently it is not possible to enable either of
these two cases. This patch just puts in the foundation for being
able to handle security level 4 in the future.

It should be noted that devices or services with security level 4
requirement can only communicate using Bluetooth 4.1 controllers
with support for Secure Connections. There is no backward compatibilty
if used with older hardware.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
include/net/bluetooth/bluetooth.h
include/net/bluetooth/hci.h
net/bluetooth/hci_conn.c