Return-Path: MIME-Version: 1.0 In-Reply-To: <1307487014-19398-1-git-send-email-vinicius.gomes@openbossa.org> References: <1307487014-19398-1-git-send-email-vinicius.gomes@openbossa.org> Date: Thu, 9 Jun 2011 22:02:36 +0900 Message-ID: Subject: Re: [bluetooth-next 00/13] SMP Key Exchange Support From: Luiz Augusto von Dentz To: Vinicius Costa Gomes Cc: linux-bluetooth@vger.kernel.org Content-Type: text/plain; charset=ISO-8859-1 Sender: linux-bluetooth-owner@vger.kernel.org List-ID: Hi Vinicius, On Wed, Jun 8, 2011 at 7:50 AM, Vinicius Costa Gomes wrote: > Hi, > > This will introduce support for Exchanging Keys with remote devices. > > The keys will be generated by the kernel and will be notified to > userspace so they can be stored. The management interface will > be used for this communication. > > The "new key" event and the "load keys" command had to be changed, so > more information could be added to each key, for example, the long term > key has a 16bit number and a 64bit random value associated with it. But, > userpace isn't aware of the format of those keys, it just knows that they > are present or not. > > Another thing that should be noted is that the link_keys list (already > present) is used to store these keys, including the Short Term Key, as > it makes the handling of this type of key more transparent. > > The related userspace changes should appear a little after this series. > > > Cheers, > -- > > Anderson Lizardo (1): > ?Bluetooth: Add support for random destination address > > Vinicius Costa Gomes (12): > ?Bluetooth: Add support for SMP phase 3 (key distribution) > ?Bluetooth: Fix sending wrong IO Capabilities value > ?Bluetooth: Add new structures for supporting SM key distribution > ?Bluetooth: Add functions to manipulate the link key list for SMP > ?Bluetooth: Reject an encryption request when the key isn't found > ?Bluetooth: Add support for providing parameters to LE Start > ? ?Encryption > ?Bluetooth: Fix SM pairing parameters negotiation > ?Bluetooth: Add support for storing the LTK > ?Bluetooth: Use the link key list to temporarily store the STK > ?Bluetooth: Use the stored LTK for restabilishing security > ?Bluetooth: Remove unused field in hci_conn > ?Bluetooth: Add support for communicating keys with userspace > > ?include/net/bluetooth/hci.h ? ? ?| ? ?4 + > ?include/net/bluetooth/hci_core.h | ? 25 ++++- > ?include/net/bluetooth/mgmt.h ? ? | ? ?2 + > ?include/net/bluetooth/smp.h ? ? ?| ? ?1 + > ?net/bluetooth/hci_conn.c ? ? ? ? | ? ?5 +- > ?net/bluetooth/hci_core.c ? ? ? ? | ? 81 ++++++++++++++ > ?net/bluetooth/hci_event.c ? ? ? ?| ? 18 +++- > ?net/bluetooth/l2cap_core.c ? ? ? | ? ?1 + > ?net/bluetooth/mgmt.c ? ? ? ? ? ? | ? 60 ++++++++--- > ?net/bluetooth/smp.c ? ? ? ? ? ? ?| ?214 ++++++++++++++++++++++++++++++++++---- > ?10 files changed, 368 insertions(+), 43 deletions(-) This patches seems to be working fine, tried with pts and some other stacks without problem, the only inconvenients for testing are the hardcoded io capabilitity, hardcoded distribution keys (it seems we distribute only LTK) and not being able to remove keys other than remove the adapter (didn't try reset). -- Luiz Augusto von Dentz Computer Engineer