Skip to main content

Introduction

tkgtools is a library which is used as a base for 3GPP security architecture.

tkg is stands for 3GPP Key Generator.

Only f1, f2, f3, f4, f5, f1* and f5* are supported in this library.

tkgtools is written on python 3.6.5, python 2 is not supported.

Author

George Zhao who is working for Nokia in 2010-2012, 2014-2019.

maito: georgezhao_1980@163.com

How to get it

pip install tkgtools

Functions

f1(key, rand, sqn, amf, op, mac_a, opc = [])

key(list of int), length 16

rand(list of int), length 16

sqn(list of int), length 6

amf(list of int), length 2

op(list of int), length 16

mac_a(list of int), length 8

opc(list of int), length 6, it is an optional parameter, if opc is set, f1 function will never use op parameter, and use opc to instead.

mac_a is used as a return value.

f2345(key, rand, op, res, ck, ik , ak, opc = [])

key(list of int), length 16

rand(list of int), length 16

op(list of int), length 16

res(list of int), length 8

ck(list of int), length 16

ik(list of int), length 16

ak(list of int), length 6

opc(list of int), length 6, it is an optional parameter, if opc is set, f2345 function will never use op parameter, and use opc to instead.

res, ck, ik, and ak are used as return values.

f1star(key, rand, sqn, amf, op, mac_s, opc = [])

key(list of int), length 16

rand(list of int), length 16

sqn(list of int), length 6

amf(list of int), length 2

mac_s(list of int), length 8

opc(list of int), length 6, it is an optional parameter, if opc is set, f1star function will never use op parameter, and use opc to instead.

mac_s is used as a return value.

f5star(key, rand, op, ak, opc = [])

key(list of int), length 16

rand(list of int), length 16

op(list of int), length 16

ak(list of int), length 6

opc(list of int), length 6, it is an optional parameter, if opc is set, f5star function will never use op parameter, and use opc to instead.

ak is used as return value.

All test data could be retrieved in 3GPP 35.207

Example

from tkgtools import tkgtools

key = [0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11]
op = [0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x10,0x11,0x12,0x13,0x14,0x15,0x16]
rand = [0x16,0x2a,0x9b,0x8c,0x46,0x9a,0xdc,0x1f,0x41,0xcc,0x69,0x73,0xee,0xe5,0x9e,0xaf]
res=[0 for col in range(8)]
ck=[0 for col in range(16)]
ik=[0 for col in range(16)]
ak=[0 for col in range(6)]
tkgtools.f2345(key, rand, op, res, ck, ik, ak)

Any problem

Please contact georgezhao_1980@163.com

Metadata

Release files for tkgtools 0.19.6.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tkgtools 0.19.6.2
File Size Uploaded Provenance Actions
tkgtools-0.19.6.2.tar.gz 5.4 kB Without provenance Details for tkgtools-0.19.6.2.tar.gz

Release files / tkgtools-0.19.6.2.tar.gz

Download URL tkgtools-0.19.6.2.tar.gz
Size 5.4 kB
Tags Source
SHA-256 checksum
How to use checksums
cea054f1eda864de166495a061da75971305dfab320596a875d4db90f0b7caf9
BLAKE2b-256 checksum
How to use checksums
fe87a739168561e2314c838de756d7b714f6c1b917333ec3866c74e69ff21590
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.6.5

Security for tkgtools 0.19.6.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page