SM5 Assembler

SM5 assembler [sig]
git clone https://www.altsci.com/repo/sm5asm.git

I present the SM5 assembler. Derived from the SM5 emulator, it works well in creating new programs for the SM5 architecture. It was necessary as part of a challenge called Game Copy Protection ROM in OpenCTF 2019. It also contains a small patch to sm5emu that improves the stability and benefits the user.

Why would someone want an assembler for an architecture that is not commercially available? If an FPGA version of this architecture were created, an assembler would be handy. But until such a time, I used the assembler to create a challenge which tested the ability for users to adapt to new architectures, SM5 being an architecture that only a handful of people in the world have experience with.

Read more »

mtpfs-javantea


Jun 27, 2017

mtpfs-javantea-1.2 [sig]
Gentoo ebuild
Gentoo manifest
Github link

A simple patch for mtpfs to close a few bugs. The severity of these bugs is unknown so the priority of fixing them depends on your risk tolerance. The most certain of the bugs occurred once during an rsync and the drawback was that the user had to reboot their phone.

Read more »

A Short Classic Cryptography Blog


Dec 21, 2015

A certain game reminded me of a cryptography trick that I learned years ago and haven't had the opportunity to share. First, let's talk substitution ciphers. I'll give two challenges, one with spaces and one without.

GZKH YOQU TKP QY QB BKOB Q OATOPY KOWE BZ TXQBE O AZHF 
QHBXZUSCBQZH TKEHEWEX QV BXPQHF BZ ENJAOQH YZVEBKQHF 
YQVJAE COHB JEZJAE GSYB YBOXB XEOUQHF TKEXE VP VQHU 
YBOXBY TXQBQHF
PKCCAMSVCNSLADUYDUCLQUFDTCAFZSGDPFNTFSCCNXSTFKGDTXADUMM
SKLSMPODUCLXSFVKPFFZSJNMPFVKMKXMKVZXNISFZSMSPFDJFZSODMC
LKYZKTYSOMNFSKJSOPSTFSTYSPFDLSPYMNQSOZKFADUKMSOMNFNTXKQ
DUFJNMPFBDZT

The trick for the first one is to look at the list of possible two-letter words. Here is the top 101 words in order of occurrence in AI3.

of
in
to
is
as
by
on
at
an
In
or
it
he
be
He
It
no
up
On
fr
As
es
so
St
if
At
do
An
US
By
No
UK
uk
To
TV
we
If
id
Dr
go
BC
Mr
Of
My
my
OF
Jr
We
me
Me
CD
us
Is
am
Co
So
Al
AD
Up
DC
al
io
cm
Ed
FM
PC
Be
Do
hi
EP
Go
kg
FC
NY
yo
3D
AM
DJ
SS
LP
UN
co
Op
ad
os
Sr
Ma
SR
EU
mg
CA
Or
Wu
IP
MA
Oz
Oh
Am
HD
un
kW

There are plenty of two letter words in both challenges, so it should be fairly straightforward how to solve those. Once you've tried values for the two letter words, see what substituting the rest of the characters does to other words. You might find obvious words. If you have a dictionary on your system, you can use grep to find a word automatically. If you have the AI3 wordlist, you automatically get the results in order of likeliness which improves the search many times. It also contains words that a normal dictionary doesn't have.

Read more »