mirror of
https://github.com/sheumann/65816-crypto.git
synced 2024-11-29 06:50:17 +00:00
Optimize decryption a bit.
This commit is contained in:
parent
46fcb3badc
commit
a522ab6d88
40
aes.macros
40
aes.macros
@ -259,10 +259,10 @@
|
|||||||
|
|
||||||
aif &round=0,.skip
|
aif &round=0,.skip
|
||||||
ShortRegs
|
ShortRegs
|
||||||
|
InvMixColumn 12,1,6,11,12
|
||||||
InvMixColumn 0,5,10,15,0
|
InvMixColumn 0,5,10,15,0
|
||||||
InvMixColumn 4,9,14,3,4
|
InvMixColumn 4,9,14,3,4
|
||||||
InvMixColumn 8,13,2,7,8
|
InvMixColumn 8,13,2,7,8
|
||||||
InvMixColumn 12,1,6,11,12
|
|
||||||
LongRegs
|
LongRegs
|
||||||
.skip
|
.skip
|
||||||
mend
|
mend
|
||||||
@ -270,13 +270,29 @@
|
|||||||
|
|
||||||
macro
|
macro
|
||||||
InvMixColumn &A,&B,&C,&D,&i
|
InvMixColumn &A,&B,&C,&D,&i
|
||||||
|
|
||||||
|
aif (&i+2)=14,.dotax
|
||||||
|
ldx &state+&i+2
|
||||||
|
ago .cont
|
||||||
|
.dotax
|
||||||
|
tax ;value left from AddRoundKey step
|
||||||
|
.cont
|
||||||
|
lda Xtime9,X
|
||||||
|
ldy &state+&i+0
|
||||||
|
eor XtimeB,Y
|
||||||
|
ldy &state+&i+1
|
||||||
|
eor XtimeD,Y
|
||||||
|
ldy &state+&i+3
|
||||||
|
eor XtimeE,Y
|
||||||
|
tay
|
||||||
|
lda InvSbox,Y
|
||||||
|
sta &out+&D
|
||||||
|
|
||||||
ldy &state+&i+0
|
ldy &state+&i+0
|
||||||
lda XtimeE,Y
|
lda XtimeE,Y
|
||||||
ldy &state+&i+1
|
ldy &state+&i+1
|
||||||
eor XtimeB,Y
|
eor XtimeB,Y
|
||||||
ldy &state+&i+2
|
eor XtimeD,X
|
||||||
eor XtimeD,Y
|
|
||||||
ldy &state+&i+3
|
ldy &state+&i+3
|
||||||
eor Xtime9,Y
|
eor Xtime9,Y
|
||||||
tay
|
tay
|
||||||
@ -287,8 +303,7 @@
|
|||||||
lda Xtime9,Y
|
lda Xtime9,Y
|
||||||
ldy &state+&i+1
|
ldy &state+&i+1
|
||||||
eor XtimeE,Y
|
eor XtimeE,Y
|
||||||
ldy &state+&i+2
|
eor XtimeB,X
|
||||||
eor XtimeB,Y
|
|
||||||
ldy &state+&i+3
|
ldy &state+&i+3
|
||||||
eor XtimeD,Y
|
eor XtimeD,Y
|
||||||
tay
|
tay
|
||||||
@ -299,25 +314,12 @@
|
|||||||
lda XtimeD,Y
|
lda XtimeD,Y
|
||||||
ldy &state+&i+1
|
ldy &state+&i+1
|
||||||
eor Xtime9,Y
|
eor Xtime9,Y
|
||||||
ldy &state+&i+2
|
eor XtimeE,X
|
||||||
eor XtimeE,Y
|
|
||||||
ldy &state+&i+3
|
ldy &state+&i+3
|
||||||
eor XtimeB,Y
|
eor XtimeB,Y
|
||||||
tay
|
tay
|
||||||
lda InvSbox,Y
|
lda InvSbox,Y
|
||||||
sta &out+&C
|
sta &out+&C
|
||||||
|
|
||||||
ldy &state+&i+0
|
|
||||||
lda XtimeB,Y
|
|
||||||
ldy &state+&i+1
|
|
||||||
eor XtimeD,Y
|
|
||||||
ldy &state+&i+2
|
|
||||||
eor Xtime9,Y
|
|
||||||
ldy &state+&i+3
|
|
||||||
eor XtimeE,Y
|
|
||||||
tay
|
|
||||||
lda InvSbox,Y
|
|
||||||
sta &out+&D
|
|
||||||
mend
|
mend
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user