Oliver Smith
b80a9f87e4
spec: mention more EF to invalidate
2020-04-15 11:46:36 +02:00
Oliver Smith
9748cdc622
IMSIPseudo.java: Cosmetic: fix missing space
2020-04-07 09:38:44 +02:00
Oliver Smith
15c3bfb49f
Invalidate Kc, too
2020-02-26 12:02:47 +01:00
Oliver Smith
134f41f5d1
Invalidate TMSI, P-TMSI after changing IMSI
...
Now the ME doesn't try to send the TMSI anymore in the next Location
Updating Request, it directly sends the IMSI.
2020-02-26 11:47:45 +01:00
Neels Hofmeyr
4ac43a2f1b
add SIM REFRESH command after IMSI change
2020-02-26 02:02:53 +01:00
Neels Hofmeyr
872140db64
add make reflash
2020-02-25 03:43:12 +01:00
Neels Hofmeyr
ff5364a5bd
Makefile: add some .PHONY
2020-02-25 03:41:53 +01:00
Neels Hofmeyr
7c5e973e25
add 'make list'
2020-02-25 03:39:53 +01:00
Neels Hofmeyr
b5ca312419
Test: Bytes.toStr()
2020-02-25 03:39:53 +01:00
Neels Hofmeyr
483f5a4f74
refactor the menu, the mi2str() implementation, and tests
...
Instead of a sub-menu for changing the IMSI, just offer a dialog with the
current IMSI pre-filled in an edit field.
"Show IMSI" becomes just "Change IMSI" without changing anything.
Change mi2str() so that it simply returns a byte[] of the right size.
Test new mi2str()
2020-02-25 03:39:51 +01:00
Neels Hofmeyr
26256941eb
make writeIMSI() safe against invalid length
2020-02-25 03:36:27 +01:00
Neels Hofmeyr
cf04db0318
drop unnecessary 'new byte[]' before {...}
2020-02-25 03:36:27 +01:00
Neels Hofmeyr
9a3428e46e
prompt(): add prefillVal arg
2020-02-25 03:36:27 +01:00
Neels Hofmeyr
ad4531a414
add Bytes.java
2020-02-25 03:36:27 +01:00
Neels Hofmeyr
583bfecc34
eliminate itemCount param from showMenu()
2020-02-25 03:36:27 +01:00
Neels Hofmeyr
41b6f543a3
write user entered IMSI to SIM
2020-02-25 03:36:25 +01:00
Neels Hofmeyr
d20f93a2c0
add MobileIdentity as separate class, add test
...
Use fixed applet-project.mk to put Mobile Identity implementations in a
separate class MobileIdentity.java.
That allows trivially testing the MobileIdentity implementation outside of an
actual SIM card environment: add a 'test' target to the Makefile and a
Test.java class that runs some tests.
2020-02-25 03:34:40 +01:00
Neels Hofmeyr
faeef438bc
fix applet-project.mk: allow multiple .java sources, separate jar target
2020-02-24 22:51:56 +01:00
Neels Hofmeyr
c916b97761
copy applet-project.mk here, to be able to apply changes
2020-02-24 22:51:21 +01:00
Neels Hofmeyr
c24fdd1ad7
readIMSI, writeIMSI
2020-02-24 22:48:00 +01:00
Neels Hofmeyr
0866f3a036
add Enter IMSI dialog
2020-02-24 21:31:43 +01:00
Neels Hofmeyr
c0c95621ea
add hexdump()
2020-02-24 21:31:43 +01:00
Neels Hofmeyr
984627047e
Mobile Identity routines
2020-02-24 21:31:43 +01:00
Neels Hofmeyr
ba7a6f22a5
return result of user interaction prompts
2020-02-24 21:31:43 +01:00
Neels Hofmeyr
c8e96413cb
tweak indent in switch statement
2020-02-24 21:31:43 +01:00
Neels Hofmeyr
7d7e33f119
more aggressively set private final on class vars
2020-02-24 21:24:02 +01:00
Neels Hofmeyr
cfb476d207
add showMsgAndWaitKey() to keep decoded IMSI on display
2020-02-24 19:00:03 +01:00
Neels Hofmeyr
b7a20e3bfc
properly read IMSI as Mobile Identity (3GPP TS 24.008)
2020-02-24 18:58:56 +01:00
Oliver Smith
89879a09c2
IMSIPseudo.java: fix up length somewhat
...
Since it is counting nibbles, we need to take the length, which is in
bytes, two times. Also increase the size of the whole string, because
there are additional numbers infront of the imsi, it seems.
There are still two numbers missing at the end, and there is a
mysterious ) character. But other than that, it's working.
2020-02-24 15:46:38 +01:00
Oliver Smith
6634a5d26b
IMSIPseudo.java: remove unneeded return in showMsg()
2020-02-24 15:25:10 +01:00
Oliver Smith
89d18bc61e
IMSIPseudo.java: return if reading IMSI fails
2020-02-24 15:24:43 +01:00
Oliver Smith
799fe1dd55
sim-applet: flash: set --access-domain=00
...
Make the AC_NOT_FULFILLED error go away.
2020-02-24 15:21:54 +01:00
Oliver Smith
05b1332d75
sim-applet/LICENSE: add Apache-2.0
2020-02-24 14:18:20 +01:00
Oliver Smith
d7f18920c3
IMSIPseudo.java: show exception error code
...
Current code gives E03 (AC_NOT_FULFILLED). The error codes are explained
in TS_101_476/Annex_A_HTML/sim/access/SIMViewException.html.
2020-02-24 12:29:33 +01:00
Oliver Smith
2259cb9fd7
IMSIPseudo: implement "Show IMSI" (WIP)
...
This will need some adjustments before it actually works.
2020-02-24 12:28:50 +01:00
Oliver Smith
0f7c8bb3cc
sim-applet/Makefile: add "delete" alias
2020-02-24 11:32:48 +01:00
Oliver Smith
4eee13d7e7
IMSIPseudo.java: import all
...
It takes time to figure out where exactly a certain class/object/... is
located. Just import all of them. It does not seem to impact the size of
the applet, as there's a blog post writing about performance that does
it the same way [1]. Besides, except for the HelloSTK hello world, I've
seen it in all other code done that way, including 3GPP 03.19 Annex C.
[1]: https://gelvaos.blogspot.com/2011/04/
2020-02-24 11:28:39 +01:00
Oliver Smith
cef081c1e7
IMSIPseudo.java: move showMsg down
2020-02-24 10:02:14 +01:00
Oliver Smith
ca866fe7c5
IMSIPseudo.java: display menu
...
Add a menu with the following actions:
IMSI Pseudonymization
1 Show LU counter
2 Show IMSI
3 Change IMSI
Selecting "Change IMSI" opens a submenu:
Change IMSI
1 Set 1 as last digit
2 Set 2 as last digit
Except for "Show LU counter", the actions are not implemented yet.
2020-02-24 09:58:28 +01:00
Oliver Smith
234ab54bf7
IMSIPseudo.java: rename showHello to showMsg
...
Add msg as parameter.
2020-02-24 08:26:29 +01:00
Oliver Smith
2dcbfabb2d
IMSIPseudo.java: rename menuItemText to title
2020-02-21 15:40:21 +01:00
Oliver Smith
1e5cc46d7f
IMSIPseudo.java: rename welcomeMsg to LUCounter
2020-02-21 15:39:14 +01:00
Oliver Smith
041b0e0af1
IMSIPesudo.java: simple LU counter
2020-02-21 15:24:29 +01:00
Oliver Smith
e28705aff5
IMSIPseudo.java: show hello world on LU
2020-02-21 11:20:49 +01:00
Oliver Smith
c6a2ba99d0
sim-applet/README.md: describe flashing
2020-02-21 09:39:50 +01:00
Oliver Smith
c18064a760
sim-applet: add "flash" and "remove" targets
...
Using wrong arguments for shadysim.py (e.g. wrong --max-menu-entry-text)
results in cryptic errors, so let's version them along with the source.
2020-02-21 09:29:20 +01:00
Oliver Smith
8f58642c4d
IMSIPseudo.java: change menu entry title
...
To make this work, flash with increased --max-menu-entry-text option for
shadysim.py. I'll add a "make flash" target for convenience.
2020-02-21 08:55:57 +01:00
Oliver Smith
4e5e516a0e
IMSIPseudo.java: convert line endings to unix
2020-02-21 08:47:36 +01:00
Oliver Smith
7528b38c60
sim-applet: rename to org.osmocom.IMSIPseudo
2020-02-21 08:43:25 +01:00
Oliver Smith
04f258699a
Makefile: adjust path to sim-tools
2020-02-19 12:16:01 +01:00