Hi all, as we were running openbsc with a nanobts in a nitb configuration at our institute we observed two bugs in the authentification part of openbsc.
First: In file openbsc/openbsc/src/libmsc/db.c on line 372 there is "ainfo->a3a8_ki_len = sizeof(ainfo->a3a8_ki_len);" which takes the sizeof of the length value. This always results in a wrong keylength and hence no authentification will ever be executed. This should rather be changed to: ainfo->a3a8_ki_len = sizeof(ainfo->a3a8_ki); Secondly: I haven't found the piece of code which is responsible for this bug particulary but: Whenever the key for the a3a8_comp128 is being read from the database a shift of one bit occurs. i.e. when you set the a3a8_key in the hlr.sqlite3 to 01010101010101010101010101010101 the value being processed as key in the a3a8_comp128 algorithm is 02020202020202020202020202020202. Best Regards, Robert Ingr
