Encryption branch / BSC-MSC split

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.

Sylvain Munaut 246tnt at gmail.com
Thu Jun 10 10:37:28 UTC 2010


Hi,

> I'll test my updated code tonight and push it to my encryption if it
> doesn't break.

First off, I tested the code in sylvain/encryption (which is mostly
some minor db fixes from me and the code you fw-ported) and it works
fine. (you also need my pending branch of libosmocore as I put the
utility classmark2 a5 testing func there)

The current limitations are :
 * Support only 'none' & 'comp128v1' as authentication method.
   - I need to add 'xor' (for the racal test sim) and 'knowntuples'
(for sims with unknown Ki)
 * Does the authentication part each time currently
   - I need to add support for using the last tuple. Mostly implies
storing the key_seq somewhere from LOC_UPD_REQ until it's needed.
 * Only support ciphering for Location Updates & MS-initiated calls.


I'll probably do those first two tonight, should be simple enough.

For the last one :

The current flow for a network initiated call/sms is :
 - Somewhere, paging_request is called (from gsm_04_08 or gsm_04_11)
with a given call back
 - [paging is done]
 - Then in gsm_04_08_utils handle_paging_resp:
  - We dispatch an event SS_PAGING
  - Stop the paging (which calls the call back)

What I would do (and imho helps the bsc/msc split) is create a
'msc_paging_request' somewhere that would wrap the paging. The flow
would then be:
  - Somewhere, msc_paging_request is called (from gsm_04_08 or
gsm_04_11) with a given call back.
  - msc_paging_request calls paging_request with a cb_msc_paging.
  - [paging is done]
  - gsm_04_08_utils would _not_ dispatch then SS_PAGING event it self,
it would just call back cb_msc_paging given in paging_request
  - Inside cb_msc_paging, I would then dispatch SS_PAGING event and
call the original call back.

Then to add the auth part, I could just modify cb_msc_paging to call
secure channel if required.


    Sylvain




More information about the OpenBSC mailing list