1214501Srpaulo/* 2214501Srpaulo * UMTS AKA - Milenage algorithm (3GPP TS 35.205, .206, .207, .208) 3214501Srpaulo * Copyright (c) 2006-2007 <j@w1.fi> 4214501Srpaulo * 5252726Srpaulo * This software may be distributed under the terms of the BSD license. 6252726Srpaulo * See README for more details. 7214501Srpaulo */ 8214501Srpaulo 9214501Srpaulo#ifndef MILENAGE_H 10214501Srpaulo#define MILENAGE_H 11214501Srpaulo 12214501Srpaulovoid milenage_generate(const u8 *opc, const u8 *amf, const u8 *k, 13214501Srpaulo const u8 *sqn, const u8 *_rand, u8 *autn, u8 *ik, 14214501Srpaulo u8 *ck, u8 *res, size_t *res_len); 15214501Srpauloint milenage_auts(const u8 *opc, const u8 *k, const u8 *_rand, const u8 *auts, 16214501Srpaulo u8 *sqn); 17214501Srpauloint gsm_milenage(const u8 *opc, const u8 *k, const u8 *_rand, u8 *sres, 18214501Srpaulo u8 *kc); 19214501Srpauloint milenage_check(const u8 *opc, const u8 *k, const u8 *sqn, const u8 *_rand, 20214501Srpaulo const u8 *autn, u8 *ik, u8 *ck, u8 *res, size_t *res_len, 21214501Srpaulo u8 *auts); 22214501Srpauloint milenage_f1(const u8 *opc, const u8 *k, const u8 *_rand, 23214501Srpaulo const u8 *sqn, const u8 *amf, u8 *mac_a, u8 *mac_s); 24214501Srpauloint milenage_f2345(const u8 *opc, const u8 *k, const u8 *_rand, 25214501Srpaulo u8 *res, u8 *ck, u8 *ik, u8 *ak, u8 *akstar); 26214501Srpaulo 27214501Srpaulo#endif /* MILENAGE_H */ 28