spec: remove classmark enquiry and ciphering from figure 1
Related: OS#4492Change-Id: I7f215a1e6a5ea24208971ffd443363f614e3f0a6
spec: next pseudo IMSI SMS lost: better wording
Remove the obvious and also weirdly worded part of the sentence.
spec: explain sleep in sim app before imsi switch
spec: UL Request: clarify sentence
spec: replace should with must
Make it clear that statements like 'the operator should make sure that thenext pseudonymous IMSI SMS cannot be read or modified by third parties'are not recommendations, but requirements for this specification towork.
spec: clarify "Next Pseudonymous IMSI SMS is Lost"
Explicitly state that we send a lost next pseudonymous IMSI again.
spec: SIM applet: verify: next IMSI is different
Suggested by ROS, so it would not be possible for the HLR to send thesame pseudonymous IMSI with an increased counter.
Seems like a good idea to me, if there was a bug in the HLR and it wouldsend the same pseudo IMSI for that reason, the SIM would not reset the...
spec: fix paragraph regarding SUPI
The SUPI often is not larger than the IMSI, but the SUCI is.
spec: add Harald as author too
spec: remove \n in Summary of Proposed Solution
spec: improve page breaks
Fix the almost empty page, that would only have "2.2.1.1 CounterStorage" and one line of text, the related table starting a new page(although no explicit page break was there).
Add a page break before "2.2. SIM/USIM Provisioning" to avoid that...
spec: minor fixes
spec: Add Neels as author
Neels may not have written the wording of the spec, but he wasvery much involved in designing this system and its prototype.
spec: Expanding text in some places; language improvements
spec: mention more EF to invalidate
spec: mention that this works for SIM and USIM
spec: change license to CC-BY
spec: intro: mention 5G SUCI
spec: minor fixes, wrap text
spec: Refer to standard OTA SMS security
The encryption is "out of scope" because it already exists. Hencewe specify that the existing means of 23.048 shall be used.
spec: don't use Release 99 spec numbers (03.19 -> 43.019)
spec: Not all countries require proof of ID when buying SIMs
spec: minor language/wording improvements
remove text replaced by specification
spec: move reference implementation to the end
spec: User-configurable Minimum Duration Between IMSI Changes
spec: Warning the Subscriber If the Pseudonymous IMSI Does Not Change
spec: end to end enc
spec: ATT = 0
spec: write section: reference implementation
spec: error scenarios
docs/spec: SMS structure
spec: next pseudo_imsi_timer expires
spec: write out until Insert Subscriber Data Result
spec: add cancel location req to graph
spec: elaborate on how optional this is
spec: Process Update_Location_HLR: bullet points + graph
spec: describe SIM applet
IMSIPseudo.java: Cosmetic: fix missing space
spec: Pseudonymous IMSI Storage in the HLR
spec: use 2g example throughout the document
spec: re-organize headlines
spec: describe LU without pseudo IMSI
specification.md: mark as deprecated
spec: introduction, headlines
doc: prepare for asciidoc based specification
docs/specification.md: note Process Update_Location_HLR
README.md: SIM must not perform IMSI detach
README.md: improve headlines
README: add user-configurable minimum duration
README.md: fix typo
README.md: use headlines
docs: update to feedback from Neels
Most importantly, there is no ACK SMS anymore, because the next LU isthe implicit ACK. While at it, I've filled in the first TS we probablyneed to update.
Related: OS#440
Invalidate Kc, too
Invalidate TMSI, P-TMSI after changing IMSI
Now the ME doesn't try to send the TMSI anymore in the next LocationUpdating Request, it directly sends the IMSI.
add SIM REFRESH command after IMSI change
add make reflash
Makefile: add some .PHONY
add 'make list'
Test: Bytes.toStr()
refactor the menu, the mi2str() implementation, and tests
Instead of a sub-menu for changing the IMSI, just offer a dialog with thecurrent 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....
make writeIMSI() safe against invalid length
drop unnecessary 'new byte[]' before {...}
prompt(): add prefillVal arg
add Bytes.java
eliminate itemCount param from showMenu()
write user entered IMSI to SIM
add .gitignore
add MobileIdentity as separate class, add test
Use fixed applet-project.mk to put Mobile Identity implementations in aseparate class MobileIdentity.java.
That allows trivially testing the MobileIdentity implementation outside of anactual SIM card environment: add a 'test' target to the Makefile and a...
fix applet-project.mk: allow multiple .java sources, separate jar target
copy applet-project.mk here, to be able to apply changes
readIMSI, writeIMSI
add Enter IMSI dialog
add hexdump()
Mobile Identity routines
return result of user interaction prompts
tweak indent in switch statement
more aggressively set private final on class vars
add showMsgAndWaitKey() to keep decoded IMSI on display
properly read IMSI as Mobile Identity (3GPP TS 24.008)
IMSIPseudo.java: fix up length somewhat
Since it is counting nibbles, we need to take the length, which is inbytes, two times. Also increase the size of the whole string, becausethere are additional numbers infront of the imsi, it seems.
There are still two numbers missing at the end, and there is a...
IMSIPseudo.java: remove unneeded return in showMsg()
IMSIPseudo.java: return if reading IMSI fails
sim-applet: flash: set --access-domain=00
Make the AC_NOT_FULFILLED error go away.
sim-applet/LICENSE: add Apache-2.0
IMSIPseudo.java: show exception error code
Current code gives E03 (AC_NOT_FULFILLED). The error codes are explainedin TS_101_476/Annex_A_HTML/sim/access/SIMViewException.html.
IMSIPseudo: implement "Show IMSI" (WIP)
This will need some adjustments before it actually works.
sim-applet/Makefile: add "delete" alias
IMSIPseudo.java: import all
It takes time to figure out where exactly a certain class/object/... islocated. Just import all of them. It does not seem to impact the size ofthe applet, as there's a blog post writing about performance that doesit the same way [1]. Besides, except for the HelloSTK hello world, I've...
IMSIPseudo.java: move showMsg down
IMSIPseudo.java: display menu
Add a menu with the following actions:
IMSI Pseudonymization1 Show LU counter2 Show IMSI3 Change IMSI
Selecting "Change IMSI" opens a submenu:
Change IMSI1 Set 1 as last digit2 Set 2 as last digit
Except for "Show LU counter", the actions are not implemented yet.
IMSIPseudo.java: rename showHello to showMsg
Add msg as parameter.
IMSIPseudo.java: rename menuItemText to title
IMSIPseudo.java: rename welcomeMsg to LUCounter
IMSIPesudo.java: simple LU counter
IMSIPseudo.java: show hello world on LU
sim-applet/README.md: describe flashing
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.
IMSIPseudo.java: change menu entry title
To make this work, flash with increased --max-menu-entry-text option forshadysim.py. I'll add a "make flash" target for convenience.
IMSIPseudo.java: convert line endings to unix
sim-applet: rename to org.osmocom.IMSIPseudo
Makefile: adjust path to sim-tools
sim-applet: start with hello-stk
Import source from here: https://git.osmocom.org/sim/hello-stk
README/docs: add FIXME: needs to be updated
docs/specification: mention simapplet counting LUs
docs/specification.md: begin specification
Start with a rough draft of what I expect that needs to be changed inthe specs, so we can extend it with the actual chapters in the TS in thenext step.
sim-applet: create README.md stub
Prepare the directory structure.
README.md: describe current approach
Based on my "Approach C" in OS#4400.
Initial empty repository
Also available in: Atom