WiMAX / LTE EPS-AKA Key Generation

Benjamin Thompson b.thompson at latera.ru
Tue Oct 6 17:46:53 CEST 2020


On Mon, 5 Oct 2020 at 16:30, Alan DeKok <aland at deployingradius.com> wrote:

> On Oct 4, 2020, at 11:38 AM, Benjamin Thompson <b.thompson at latera.ru>
> wrote:
> > I noticed that the Milenage algorithm is implemented in
> > src/lib/sim/milenage.c in v4. So if this could be cherry picked into
> > /src/lib/ in v3 then as I understand it what would remain is:
> >
> > 1) Create a function for KASME generation. (not sure if this should go in
> > rlm_wimax or e.g lib/kasme.c)
>
>   rlm_wimax for now.  We can always worry about details later.
>
> > 2) In rlm_wimax:
> >    a) Get input values from request:User-Name, request:WiMAX-146 and
> > control:xxx attributes (including SQN)
>
>   We just create attributes in dictionary.freeradius.internal for much of
> that.
>
> >    b) Generate RAND
>
>   ~5 lines of code.
>
> >    c) Call the various Milenage functions from milenage.c and store AUTN,
> > RAND, XRES in the relevant WiMAX reply attributes (and in variables save
> > AK, CK and IK)
>
>   Yup.
>
> >    c) Call the KASME generation function and save the result in to the
> > WiMAX reply attribute
>
>   That doesn't sound too bad.
>
>   TBH I'd also add unit tests.  The algorithms are complex enough that we
> don't want to change things and accidentally break them.
>
>   This feature would definitely be useful.
>

Thanks Alan

My plan is to have a go editing rlm_wimax and (hopefully) once I have it
working I will create a pull request for review.


More information about the Freeradius-Users mailing list