WiMAX / LTE EPS-AKA Key Generation
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>
> > 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
> > 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)
> > 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.
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