I now more or less finalized the serial API code, just need to make sure it's no serious bugs in it.
Due to lack of program space (I filled 93% of the 32K I have available) the serial API does not have much of validation or smartness so if you enter same rotor in all position it will accept it.
Sample run
A session from power on, config, encrypt and decrypt
Lines starting with
"!" = command I send
"%" = replies to commands
"#"= comment
A-Z=text to encrypt/decrypt
> the result
Setting loglevel to 1 means show how the encryption is done trough all the rotors
================================================================
My enigma v0.05
Checksum seems ok, (3721) keeping the values
fwVersion: 0
preset: 0
Odo meter: 2671
morsecode: OFF
Serial number: 4000000001
model: M3 (Enigma M3, German Navy (Kriegsmarine))
entry wheel: 0
reflector: UKWB 1
Rotors: 0-1-2-3
ringstellung: - D F J
Plugboard (Steckerbrett): virtual - AN BY CW DE GH IX JS MT OV RZ
currentWalze: - D U Y
Preparing plugboard
All LEDs on
All LEDs OFF
Ready
!MODEL:M3
%MODEL:M3
!UKW:UKWB
%UKW: UKWB
!WALZE:1,3,5
%WALZE: 0-1-3-5
!RING:R,A,P
%RING: - R A P
!PLUGBOARD:AW BM CV DS ER HT IJ KN LQ PX
%PLUGBOARD: AW BM CV DS ER HT IJ KN LQ PX
!SETTINGS:
fwVersion: 0
preset: 0
Odo meter: 2671
morsecode: OFF
Serial number: 4000000001
model: M3 (Enigma M3, German Navy (Kriegsmarine))
entry wheel: 0
reflector: UKWB 1
Rotors: 0-1-3-5
ringstellung: - R A P
Plugboard (Steckerbrett): virtual - AW BM CV DS ER HT IJ KN LQ PX
currentWalze: - D U Y
#CONFIG DONE,LETS ENCRYPT SOMETHING
!START:TGG
%START: - T G G
VKX
>HII
!STA:VKX
%START: - V K X
HELLOENIGMAWORLD
>AKTXE UCMKT NETQD E
!STA:VKX
%START: - V K X
AKTXE UCMKT NETQD E
>HELLO ENIGM AWORL D
!LOG:1
%LOGLEVEL:1
#SHOW HOW LETTER TRAVELS, REAL LETTER(RING SETTING LETTER), WHEEL NO AND SO ON
A
>A>SB>W - W>ETW>W - K(V)>R3(#5)>D(O) - A(A)>R2(#3)>B(B) - L(U)>R1(#1)>R(A) - (W)>UKW>(V) - Q(Z)>R1(#1)>A(J) - Q(Q)>R2(#3)>Y(Y) - B(M)>R3(#5)>H(S) - T>ETW>T - T>SB>H :H
?
Available commands:
!SETTINGS!MODEL!UKW!WALZE!RING!PLUGBOARD!START!SAVE!LOAD!LOGLEVEL!
!SAV:1
%SAVE - Save settings as preset 1
saveSettings preset no 1
!LOAD:1
%LOADreadSettings preset no 1 from 64
- Read settings from preset 1
fwVersion: 0
preset: 1
Odo meter: 2708
morsecode: OFF
Serial number: 4000000001
model: M3 (Enigma M3, German Navy (Kriegsmarine))
entry wheel: 0
reflector: UKWB 1
Rotors: 0-1-3-5
ringstellung: - R A P
Plugboard (Steckerbrett): virtual - AW BM CV DS ER HT IJ KN LQ PX
currentWalze: - V L P
================================================================
With the presets it's easy to do things like keep the settings for different networks or a few daily settings and then use them when for example encrypt/decrypt messages on http://enigmaworldcodegroup.freeforums.net/
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.