of 10
8/13/2019 BEAST A fast block cipher for arbitrary blocksizes
1/10
B E A S T : A f a s t b l o c k c i p h e r f o r
a r b i t r a r y b l o c k s i z e s
S t e f a n L u c k s
G e o r g { A u g u s t { U n i v e r s i t a t G o t t i n g e n
I n s t i t u t f u r N u m e r i s c h e u n d A n g e w a n d t e M a t h e m a t i k
G e o r g { A u g u s t { U n i v e r s i t a t G o t t i n g e n
L o t z e s t r . 1 6 { 1 8 , D { 3 7 0 8 3 G o t t i n g e n , G e r m a n y
( e m a i l : l u c k s @ n a m u 0 1 . g w d g . d e )
A b s t r a c t
T h i s p a p e r d e s c r i b e s B E A S T , a n e w b l o c k c i p h e r f o r a r b i t r a r y s i z e b l o c k s . I t i s a L u b y - R a c k o c i p h e r
a n d f a s t w h e n t h e b l o c k s a r e l a r g e . B E A S T i s a s s e m b l e d f r o m c r y p t o g r a p h i c h a s h f u n c t i o n s a n d s t r e a m
c i p h e r s . I t i s p r o v a b l y s e c u r e i f t h e s e b u i l d i n g b l o c k s a r e s e c u r e .
F o r s m a r t c a r d a p p l i c a t i o n s , a v a r i a n t B E A S T - R K i s p r o p o s e d , w h e r e t h e b u l k o p e r a t i o n s c a n b e d o n e
b y t h e s m a r t c a r d ' s h o s t w i t h o u t k n o w i n g t h e k e y . O n l y f a s t k e y - d e p e n d e n t o p e r a t i o n s r e m a i n t o b e d o n e
b y t h e s m a r t c a r d .
1 I N T R O D U C T I O N
B a s e d o n r a n d o m f u n c t i o n s , L u b y a n d R a c k o ( 1 9 8 8 ) d e s c r i b e d p r o v a b l y s e c u r e b l o c k c i p h e r s . T h i s
t h e o r e t i c a l b r e a k - t h r o u g h i s o f p r a c t i c a l i n t e r e s t , s i n c e i t e n a b l e s u s t o a s s e m b l e a s e c u r e c i p h e r f r o m
s e c u r e c o m p o n e n t s . C o m p o n e n t s a r e k n o w n , w h i c h w e c a n r e a s o n a b l y e x p e c t t o b e s e c u r e . I n t h i s p a p e r ,
t h e h a s h f u n c t i o n S H A - 1 ( s e e S c h n e i e r , 1 9 9 5 ) a n d t h e s t r e a m c i p h e r S E A L ( R o g a w a y a n d C o p p e r s m i t h ,
1 9 9 3 ) a r e c o n s i d e r e d a s c o m p o n e n t s , t h o u g h o t h e r c h o i c e s w o u l d d o , a s w e l l ( L u c k s , 1 9 9 6 ) . S H A - 1 a n d
S E A L h a v e b e e n s u g g e s t e d b y A n d e r s o n a n d B i h a m ( 1 9 9 6 ) , b u t B E A S T i s f a s t e r t h a n t h e i r c i p h e r s .
B E A S T , l i k e L u b y - R a c k o c i p h e r s i n g e n e r a l , i s a F e i s t e l c i p h e r , s i m i l a r t o D E S . W h i l e D E S r e q u i r e s 1 6
r o u n d s , B E A S T o n l y n e e d s t h r e e . O n t h e o t h e r h a n d , B E A S T ' s r o u n d f u n c t i o n s m u s t b e c r y p t o g r a p h i c a l l y
s t r o n g e r t h a n t h e r o u n d f u n c t i o n s o f D E S .
D u e t o i t s c o n s t r u c t i o n , B E A S T p e r f o r m s b e s t w h e n o p e r a t i n g o n l a r g e b l o c k s . T h i s c o p e s w e l l w i t h
a p o s s i b l e u s e o f B E A S T i n m u l t i m e d i a s e c u r i t y a p p l i c a t i o n s , w h e n a h i g h t h r o u g h p u t i s r e q u i r e d f r o m
t h e c i p h e r , a n d t h e o v e r a l l d a t a v o l u m e i s h u g e , t o o .
H i g h - t h r o u g h p u t e n c r y p t i o n w i t h s m a r t c a r d s i s d i c u l t , b e c a u s e o f t h e s m a r t c a r d s ' l i m i t e d c o m p u t a -
t i o n a l p o w e r a n d t h e i r s l o w c o m m u n i c a t i o n l i n k s . B l a z e ( 1 9 9 6 ) s u g g e s t e d t o s h a r e t h e e n c r y p t i o n b u r d e n
b e t w e e n t h e s m a r t c a r d a n d i t s h o s t . T h e s m a r t c a r d ' s h o s t d o e s t h e b u l k e n c r y p t i o n w o r k b u t i s n o t
8/13/2019 BEAST A fast block cipher for arbitrary blocksizes
2/10
2 B E A S T : A f a s t b l o c k c i p h e r f o r a r b i t r a r y b l o c k s i z e s
t r u s t e d w i t h t h e k e y , w h i l e t h e c a r d o n l y p e r f o r m s f a s t k e y - d e p e n d e n t o p e r a t i o n s . W e e x p l o i t B l a z e ' s i d e a
f o r B E A S T - R K , t h e r e m o t e - k e y v a r i a n t o f B E A S T .
2 B A C K G R O U N D
E n c r y p t i n g w i t h a b l o c k c i p h e r m e a n s t o a p p l y a k e y - d e p e n d e n t p e r m u t a t i o n g t o t h e p l a i n t e x t , d e c r y p t i n g
t o a p p l y t h e i n v e r s e g
1
t o t h e c i p h e r t e x t ; g i s c o m p u t e d b y t h e ` e n c r y p t i o n e n g i n e ' a n d g
1
b y t h e
` d e c r y p t i o n e n g i n e ' . A b l o c k c i p h e r i s s e c u r e i f g a p p e a r s l i k e a r a n d o m l y c h o s e n p e r m u t a t i o n f o r a n y o n e
w i t h o u t k n o w l e d g e o f t h e k e y .
T h e t y p e o f a t t a c k w e c o n s i d e r i s a ` c h o s e n p l a i n t e x t a t t a c k ' , w h e r e t h e a t t a c k e r c h o o s e s a p l a i n t e x t
x
1
, i n j e c t s x
1
i n t o t h e e n c r y p t i o n e n g i n e a n d g e t s t h e c i p h e r t e x t g ( x
1
) . T h i s i s r e p e a t e d w i t h x
2
x
3
, . . .
( s e e F i g u r e 1 ) . A f t e r a c o u p l e o f p l a i n t e x t i n j e c t i o n s t h e a t t a c k e r h a s t o d e c i d e w h e t h e r g i s a r a n d o m
p e r m u t a t i o n o r n o t .
S
S
S
S
S
H
H
H
H
H
?
g ( x
i
)
? ? ?
? ? ? ?
H
H
H
@
@
g
x
i
F i g u r e 1 C h o s e n c i p h e r t e x t a t t a c k .
S i m i l a r l y o n e c a n c o n s i d e r c h o s e n c i p h e r t e x t a t t a c k s . W e o n l y c o n s i d e r b l o c k c i p h e r s w h e r e t h e c i p h e r -
t e x t s a r e a s l o n g a s t h e p l a i n t e x t s , s o i n t h i s c a s e , w e c a n s i m p l y u s e t h e i n v e r s e p e r m u t a t i o n g
1
f o r
e n c r y p t i o n a n d t h e s t r a i g h t p e r m u t a t i o n g f o r d e c r y p t i o n .
R e s i s t a n c e a g a i n s t s u c h a t t a c k s i s c o m m o n l y a c c e p t e d a s a s u c i e n t s e c u r i t y c r i t e r i o n f o r b l o c k c i p h e r s .
E v e r y c i p h e r i s d e s i g n e d t o b e r e s i s t a n t a g a i n s t c e r t a i n a t t a c k s , b u t f a i l s t o o t h e r s . A m o n g t h e a d -
v a n t a g e s o f u s i n g a c i p h e r w i t h a p r o o f o f s e c u r i t y ( u n d e r a r e a s o n a b l e a s s u m p t i o n ) i s t h e s i m p l i c i t y o f
n d i n g o u t w h i c h a t t a c k s t h e c i p h e r i s d e s i g n e d f o r { a n d w h i c h n o t . O v e r s t r e t c h i n g t h e s e c u r i t y o f a n y
c i p h e r i s l i k e u s i n g a n i n s e c u r e o n e .
B E A S T i s n o t s e c u r e a g a i n s t ` c o m b i n e d c h o s e n p l a i n t e x t / c h o s e n c i p h e r t e x t a t t a c k s ' , w h e r e t h e a t t a c k e r
a c c e s s e s b o t h t h e e n c r y p t i o n a n d t h e d e c r y p t i o n e n g i n e . I t i s v e r y d a n g e r o u s , a n y w a y , t o a l l o w t h e e n e m y
8/13/2019 BEAST A fast block cipher for arbitrary blocksizes
3/10
B a c k g r o u n d 3
t o d e c r y p t a n d e n c r y p t w i t h t h e s e c r e t k e y . L o o k o u t f o r t h i s t y p e o f a t t a c k a n d t r y t o r u l e i t o u t
f o r y o u r a p p l i c a t i o n { b u t i f y o u c a n ' t , u s e a n o t h e r c i p h e r !
L e t f
1
f
2
, a n d f
3
b e r a n d o m f u n c t i o n s f
1
f
3
f 0 1 g
r
! f 0 1 g a n d f
2
f 0 1 g ! f 0 1 g
r
. B y ` '
w e d e n o t e t h e b i t - w i s e X O R . W e c o m p u t e v a l u e s S U 2 f 0 1 g a n d T 2 f 0 1 g
r
b y
S = L f
1
( R )
T = R f
2
( S ) a n d
U = S f
3
( T )
T h i s w a y w e h a v e d e n e d a p e r m u t a t i o n ( f
1
f
2
f
3
) ( L R ) = ( U T ) o v e r f 0 1 g
+ r
. T h i s i s r e p r e s e n t e d
b y F i g u r e 2 { j u s t s t a r t w i t h L a n d R a n d f o l l o w t h e a r r o w s . S i m i l a r l y , ( f
3
f
2
f
1
) =
1
( f
1
f
2
f
3
) i s
t h e i n v e r s e .
-
-
?
?
? ?
?
?
?
T
?
L R
f
1
f
2
f
3
S
T
U
L
L
L
R
F i g u r e 2 T h e p e r m u t a t i o n ( f
1
f
2
f
3
) ( L R ) = ( U T )
L u b y a n d R a c k o ( 1 9 8 8 ) s h o w e d i n t h e i r f a m o u s p a p e r t h a t ( f
1
f
2
f
3
) i s i n d i s t i n g u i s h a b l e f r o m a
r a n d o m f u n c t i o n i f l = r a n d f
1
f
2
, a n d f
3
a r e r a n d o m o r p s e u d o r a n d o m f u n c t i o n s . I f a p e r m u t a t i o n
p i s u n d i s t i n g u i s h a b l e f r o m a r a n d o m f u n c t i o n , i t a l s o i s u n d i s t i n g u i s h a b l e f r o m a r a n d o m p e r m u t a t i o n .
M a u r e r ( 1 9 9 2 ) g a v e a n a m a z i n g l y s i m p l e p r o o f f o r L u b y ' s a n d R a c k o ' s t h e o r e m . N e i t h e r L u b y a n d
R a c k o n o r M a u r e r r e g a r d e d l 6= r
T h e o r e m 1 L e t g f 0 1 g
r +
! f 0 1 g
r +
b e e i t h e r a r a n d o m f u n c t i o n o r g = ( f
1
f
2
f
3
) , w h e r e
f
1
f
3
f 0 1 g
r
! f 0 1 g a n d f
2
f 0 1 g ! f 0 1 g
r
a r e r a n d o m f u n c t i o n s . L e t n m i n f l r g b e a
s e c u r i t y p a r a m e t e r .
L e t A b e a d i s t i n g u i s h e r . G i v e n a ` b l a c k b o x ' w h i c h i s a b l e t o c o m p u t e g A o u t p u t s e i t h e r 1 o r 0 .
B y P
r a n d
a n d P
p e r m
w e d e n o t e t h e p r o b a b i l i t i e s f o r A t o o u t p u t 1 i f g i s r a n d o m l y c h o s e n , r e s p . i f
g = ( f
1
f
2
f
3
)
8/13/2019 BEAST A fast block cipher for arbitrary blocksizes
4/10
4 B E A S T : A f a s t b l o c k c i p h e r f o r a r b i t r a r y b l o c k s i z e s
A a c c e s s e s t h e ` b l a c k b o x ' a t m o s t k t i m e s , i . e . A c h o o s e s a t m o s t k i n p u t s ( L
1
R
1
) , . . . , ( L
k
R
k
) a n d
r e c e i v e s t h e c o r r e s p o n d i n g ( U
1
T
1
) , . . . , ( U
k
T
k
) w i t h ( U
i
T
i
) = g ( L
i
R
i
) . T h e n
P
r a n d
P
p e r m
l , w e m a y r e p l a c e t h e f u n c t i o n f
3
b y a f u n c t i o n
f
f 0 1 g ! f 0 1 g w h i c h o n l y u s e s a n y l o f t h e r i n p u t b i t s t o f
3
a n d i g n o r e s t h e r e m a i n i n g r l b i t s .
I f r l , o n e c a n e x p e c t t o e v a l u a t e f
m u c h f a s t e r t h a n f
3
T h e o r e m 2 L e t t h e f u n c t i o n f
f 0 1 g ! f 0 1 g b e a r a n d o m f u n c t i o n . I f { e x c e p t f o r f
3
( T ) =
f
( T m o d 2 ) { t h e c o n d i t i o n s o f t h e o r e m s 1 a r e s a t i s e d , t h e n P
r a n d
P
p e r m
8/13/2019 BEAST A fast block cipher for arbitrary blocksizes
5/10
T h e b l o c k c i p h e r s B E A R a n d L I O N { a n d B E A S T 5
T h e n t h e b l o c k c i p h e r d e n e d b y g i s s e c u r e i n t h e f o l l o w i n g s e n s e : ` T h e r e i s n o a l g o r i t h m A
t o d i s t i n g u i s h b e t w e e n g a n d a r a n d o m f u n c t i o n i n t i m e t w i t h p r o b a b i l i t y p + k
2
= 2
n
o r m o r e ,
w h e r e A c h o o s e s e x a c t l y k i n p u t s x
1
, x
2
, . . . , x
k
a n d g e t s t h e c o r r e s p o n d i n g o u t p u t s g ( x
1
) ,
g ( x
2
) , . . . , g ( x
k
) '
N o t e t h a t t h e c o m p u t a t i o n o f t h e k c i p h e r t e x t s t a k e s t i m e k a n d i s a p a r t o f A ' s o v e r a l l r u n t i m e .
4 T H E B L O C K C I P H E R S B E A R A N D L I O N { A N D B E A S T
I f l 6= r , ` c o m p r e s s i n g ' ( p s e u d o - ) r a n d o m f u n c t i o n s f
i
( w i t h m o r e i n p u t b i t s t h a n o u t p u t b i t s ) a n d ` e x -
p a n d i n g ' f
i 1
( l e s s i n p u t b i t s t h a n o u t p u t b i t s ) a l t e r n a t e i n F i g u r e 2 . F o r c o m p r e s s i n g , c r y p t o g r a p h i c
h a s h f u n c t i o n s a r e w e l l s u i t e d { A n d e r s o n a n d B i h a m ( 1 9 9 6 ) s u g g e s t e d t o u s e S H A - 1 . F o r e x p a n d i n g ,
t h e y c o n s i d e r e d t h e s t r e a m c i p h e r S E A L .
C r y p t o g r a p h i c h a s h f u n c t i o n s s u c h a s S H A - 1 a r e a u t h e n t i c a t i o n t o o l s . W e m a y u s e t h e m a s b u i l d i n g
b l o c k s f o r o u r c i p h e r s , b u t t h e n w e h a v e t o d e m a n d t h e h a s h f u n c t i o n s t o b e p s e u d o r a n d o m . B e i n g
p s e u d o r a n d o m i s a w i d e l y a c c e p t e d s e c u r i t y - r e l a t e d d e s i g n g o a l f o r c r y p t o g r a p h i c h a s h f u n c t i o n s , a n y w a y .
A n d e r s o n ( 1 9 9 3 ) d e s c r i b e s s o m e r i s k s o f u s i n g n o n - p s e u d o r a n d o m h a s h f u n c t i o n s f o r a u t h e n t i c a t i o n .
S E A L i s a s t r e a m c i p h e r e x p l i c i t l y d e s i g n e d b y i t s a u t h o r s t o b e a p s e u d o r a n d o m f u n c t i o n , t o o . ( A
s t r e a m c i p h e r i s ` s e c u r e ' , i f g i v e n r a n d o m i n p u t s t h e o u t p u t s a r e u n d i s t i n g u i s h a b l e f r o m r a n d o m o u t p u t s
{ w h e r e t h e o u t p u t - s i z e e x c e e d s t h e i n p u t - s i z e . B e i n g a p s e u d o r a n d o m f u n c t i o n r e q u i r e s m o r e , s i n c e h e r e
t h e o u t p u t s h a v e t o b e u n d i s t i n g u i s h a b l e f r o m r a n d o m f u n c t i o n s e v e n i f d i e r e n t i n p u t s a r e d e l i b e r a t e l y
c h o s e n b y t h e a t t a c k e r . )
O n a 1 3 3 M H z D E C A l p h a m a c h i n e ( a ` s a n d p i p e r ' ) , R o e ( 1 9 9 4 ) m e a s u r e d a c o m p r e s s i o n s p e e d o f a b o u t
4 0 M b i t / s e c f o r S H A - 1 a n d a e x p a n s i o n s p e e d o f m o r e t h a n 1 0 0 M b i t / s e c f o r S E A L . T h e s e c o n d r e s u l t ,
t h o u g h , i s a m o r e a s y m p t o t i c a l o n e s i n c e S E A L r u n s t h r o u g h a v e r y s l o w k e y - s e t u p b e f o r e i t a c t u a l l y
s t a r t s e n c r y p t i o n . T h e k e y - s e t u p t a k e s a b o u t a s m u c h t i m e a s h a s h i n g a 3 2 0 0 0 b i t i n p u t w i t h S H A - 1
( i . e . a s e v a l u a t i n g t h e i n t e r n a l 5 1 2 b i t t o 1 6 0 b i t c o m p r e s s i o n f u n c t i o n o f S H A - 1 a b o u t 2 0 0 t i m e s { s e e
S c h n e i e r ( 1 9 9 5 ) ) .
A n d e r s o n a n d B i h a m p r o p o s e d t w o b l o c k c i p h e r s f o r e x i b l e b u t l a r g e b l o c k s : B E A R a n d L I O N , b o t h
s i m i l a r t o F i g u r e 2 w i t h ( l + r ) - b i t B l o c k s . B E A R w a s b a s e d o n t h e c h o i c e l = 1 6 0 r , w i t h t w o
S H A - 1 r - b i t t o l - b i t c o m p r e s s i o n s t e p s a n d o n e S E A L l - b i t t o r - b i t e x p a n s i o n s t e p , s i m i l a r l y L I O N o n
l r = 1 6 0 w i t h t w o e x p a n s i o n s t e p a n d o n e c o m p r e s s i o n s t e p . F o r l a r g e b l o c k s ( i . e . b l o c k s g r e a t e r t h a n
a b o u t 6 K b y t e ) , L I O N i s f a s t e r t h a n B E A R .
A n d e r s o n a n d B i h a m o n l y c o n s i d e r e d a v e r y w e a k t y p e o f a t t a c k , a n d t h e i r s e c u r i t y p r o o f f o r B E A R
a n d L I O N i s n o t v a l i d f o r c h o s e n p l a i n t e x t a t t a c k s . B u t t h a n k s t o t h e o r e m 1 b o t h c i p h e r s a r e a s s e c u r e
a s a n y b l o c k c i p h e r b a s e d o n F i g u r e 2 { i f t h e u n d e r l y i n g p s e u d o r a n d o m f u n c t i o n s a r e s e c u r e .
T h e o r e m 2 e n a b l e s u s t o d e n e t h e B E A S T ( ` B l o c k E n c r y p t i o n A l g o r i t h m w i t h S h o r t c u t i n t h e T h i r d
r o u n d ' , s e e F i g u r e 3 ) , a v a r i a n t o f B E A R , b u t f a s t e r t h a n b o t h B E A R a n d L I O N .
S i n c e t h e r o u n d f u n c t i o n s o f L u b y - R a c k o c i p h e r s h a v e t o d e p e n d o n a k e y
, w e n e e d k e y e d v a r i a n t s
S H A
K
a n d S E A L
K
o f S H A - 1 a n d S E A L :
S H A
K
( x ) = S H A ( K x ) a n d S E A L
K
( x ) = S E A L ( K x )
A c t u a l l y , t h e s e c o n d r o u n d o f B E A R a n d L I O N d o e s n o t d e p e n d o n a k e y . T h i s i s t h e o r e t i c a l l y s o u n d ,
b u t d o e s n o t s i m p l i f y o r s p e e d - u p t h e c i p h e r s s i g n i c a n t l y .
8/13/2019 BEAST A fast block cipher for arbitrary blocksizes
6/10
6 B E A S T : A f a s t b l o c k c i p h e r f o r a r b i t r a r y b l o c k s i z e s
?
?
?
?
?
@
@R
? ?
@
@
?
L
-
-
L R
S
TU
S H A
K
1
S E A L
K
2
S H A
K
3
L
L
F i g u r e 3 T h e b l o c k c i p h e r B E A S T .
N o t e t h a t t h e i n p u t s i z e t o t h e k e y e d h a s h f u n c t i o n i s k n o w n i n a d v a n c e , o t h e r w i s e w e c o u l d u s e e . g .
S H A
K
( x ) = S H A ( K x K ) , w h e r e ` ' s t a n d s f o r t h e c o n c a t e n a t i o n o f b i t s t r i n g s . B E A S T c a n b e d e s c r i b e d
b y t h e f o l l o w i n g e q u a t i o n s :
S = L S H A
K
1
( R )
T = R S E A L
K
2
( S ) a n d
U = S f
3
( T
) w i t h T
= ` r s t l b i t s o f T '
H e r e , K
1
K
2
, a n d K
3
r e p r e s e n t t h e B E A S T ' s r o u n d k e y s . I t i s s t r a i g h t f o r w a r d t o g e n e r a t e t h e m f r o m a
s m a l l e r m a s t e r k e y K
M
u s i n g S E A L
K
M
H o w f a s t i s B E A S T ? O n t h e s a m e ` s a n d p i p e r ' R o e u s e d , A n d e r s o n a n d B i h a m m e a s u r e d t h e s p e e d o f
B E A R a n d L I O N . W i t h t h e b l o c k s i z e 1 M b i t , t h e y m e a s u r e d a n e n c r y p t i o n s p e e d o f 1 3 6 2 b l o c k s / s e c f o r
B E A R a n d 1 8 6 8 b l o c k s / s e c f o r L I O N . B E A R c o n s i s t o f t w o r o u n d s o f h a s h i n g w i t h S H A - 1 a n d o n e r o u n d
o f S E A L , w h i l e i n L I O N t h e r e a r e o n e S H A - 1 - a n d t w o S E A L - r o u n d s . F o r B E A S T , t h e e n c r y p t i o n s p e e d
i s d o m i n a t e d b y o n e S H A - 1 - a n d o n e S E A L - r o u n d { t h e t i m e r e q u i r e d f o r t h e t h i r d r o u n d i s n e g l i g i b l e
f o r l a r g e b l o c k s . B a s e d o n t h e s e f a c t s , w e e x p e c t B E A S T t o e n c r y p t a n d d e c r y p t 1 M b i t b l o c k s a t a b o u t
2 3 6 b l o c k s / s e c o n o n t h e s a m e c o m p u t e r . B E A S T ' s e x p e c t e d 2 3 6 M b i t / s e c c a n b e c o m p a r e d w i t h a b o u t
1 8 6 M b i t / s e c o f t h e c l a s s i c a l ` D E A ' ( R o e , 1 9 9 4 ) .
8/13/2019 BEAST A fast block cipher for arbitrary blocksizes
7/10
R e m o t e - k e y e n c r y p t i o n w i t h B E A S T - R K 7
5 R E M O T E - K E Y E N C R Y P T I O N W I T H B E A S T - R K
I f S H A - 1 i s c o l l i s i o n - r e s i s t a n t a n d S H A
K
i s a s e c u r e p s e u d o r a n d o m f u n c t i o n , t h e n t h e f u n c t i o n F
K
( x ) =
S H A
K
( S H A - 1 ( x ) ) i s a s e c u r e p s e u d o r a n d o m f u n c t i o n , t o o . S i m i l a r l y , i f S E A L
K
a l s o i s a s e c u r e p s e u d o r a n -
d o m f u n c t i o n , G
K
= S E A L ( S H A
K
( x ) ) i s s o , a s w e l l . I s t h e r e a p o i n t i n r e p l a c i n g a s e c u r e p s e u d o r a n d o m
f u n c t i o n b y a n o t h e r s e c u r e b u t s l o w e r o n e ?
T h e r e i s { s o m e t i m e s . O b v i o u s l y , t h e o p e r a t i o n w h i c h d o e s t h e b u l k w o r k ( i f t h e b l o c k s a r e l a r g e ) , i . e .
S H A - 1 i n F
K
a n d S E A L i n G
K
, d o e s n o t d e p e n d o n a k e y . T h e k e y - d e p e n d e n t o p e r a t i o n i s a l w a y s S H A
K
o p e r a t i n g o n x e d i n p u t a n d o u t p u t b l o c k s o f 1 6 0 b i t s { w h a t e v e r t h e a c t u a l b l o c k s i z e m a y b e . T h i s l e a d s
u s t o t h e i d e a o f d o i n g t h e b u l k o p e r a t i o n o n a f a s t b u t u n t r u s t e d h o s t a n d d o i n g t h e k e y - d e p e n d e n t
o p e r a t i o n o n a s l o w t a m p e r p r o o f d e v i c e l i k e a s m a r t c a r d .
T h i s o b s e r v a t i o n l e a d s t o B E A S T - R K , s e e F i g u r e 4 . T h e r - b i t r i g h t s i d e R o f t h e i n p u t i s s p l i t i n t o
a 1 6 0 - b i t s u b b l o c k R * a n d a ( r 1 6 0 ) - b i t s u b b l o c k R * * . S i m i l a r l y , t h e s e c o n d r o u n d k e y K
2
i s s p l i t u p
i n t o K
2
a n d K
2
, a n d t h e r i g h t s i d e T o f t h e o u t p u t i s t h e c o n c a t e n a t i o n o f a 1 6 0 - b i t s u b b l o c k T * a n d
a ( r 1 6 0 ) - b i t s u b b l o c k T * * . B E A S T - R K o p e r a t e s a s f o l l o w s :
S = L S H A
K
1
( R
S H A ( R
) )
T
= R
S H A
K
2
( S )
T
= R
S E A L ( S H A
K
2
( S ) )
U = S S H A
K
3
( T
)
?
?
?
?
-
-
-
?
?
?
?
-
- -
L R * R * *
S H A
K
1
S H A
K
2
S H A
K
2
S H A
K
3
S H A - 1
S E A L
U T * T * *
S
F i g u r e 4 T h e r e m o t e - k e y v a r i a n t B E A S T - R K o f B E A S T .
8/13/2019 BEAST A fast block cipher for arbitrary blocksizes
8/10
8 B E A S T : A f a s t b l o c k c i p h e r f o r a r b i t r a r y b l o c k s i z e s
I n o r d e r t o s h a r e t h e e n c r y p t i o n b e t w e e n t h e h o s t a n d t h e ( h o p e f u l l y t a m p e r p r o o f ) c a r d , t h e f o l l o w i n g
p r o t o c o l i s u s e d :
1 . G i v e n L R * , a n d R * * , t h e h o s t s e n d s L R * a n d S H A ( R * * ) t o t h e c a r d .
2 . T h e c a r d c o m p u t e s S T * , S H A
K
2
( S ) U a n d s e n d s U T * a n d S H A
K
2
( S ) t o t h e h o s t . S r e m a i n s
s e c r e t f o r t h e h o s t .
3 . T h e h o s t u s e s S H A
K
2
( S ) t o c o m p u t e T * *
T h e l a r g e r e c t a n g l e b e l o w t h e L - a n d R
- b o x r e p r e s e n t s t h e s m a r t c a r d . W h e n e n c r y p t i n g o n e b l o c k ,
t h r e e 1 6 0 - b i t i n p u t s L R
, a n d S H A - 1 ( R
) e n t e r t h e s m a r t c a r d , a n d t h r e e 1 6 0 - b i t o u t p u t s U T
, a n d
S H A
K
2
( S ) l e a v e i t { i n d e p e n d e n t l y o f t h e b l o c k s i z e .
B E A S T - R K l o o k s l i k e i s a f o u r r o u n d c i p h e r , b u t i t i s a t h r e e r o u n d o n e , j u s t l i k e B E A S T . T h e o u t p u t
o f t h e s e c o n d r o u n d f u n c t i o n i s ( R
T
) ( R
T
) , t h e r o u n d k e y i s K
2
= K
2
K
2
D u r i n g a c h o s e n p l a i n t e x t a t t a c k , t h e a t t a c k e r n o t o n l y g e t s c i p h e r t e x t s , b u t a l s o i n t e r m e d i a t e v a l u e s
o f t h e f o r m S H A
K
2
( S ) . D o e s g i v i n g a w a y s u c h i n t e r m e d i a t e i n f o r m a t i o n w e a k e n B E A S T - R K , c o m p a r e d
t o B E A S T ?
T h e a n s w e r i s ` n o ' . L e t a n a t t a c k e r b e g i v e n a p l a i n t e x t b l o c k ( L
0
R
0
R
0
) a n d a b i t - s t r i n g X o f b l o c k -
l e n g t h . F o r i 2 f 1 ; : : : ; k g , t h e a t t a c k e r c h o o s e s p l a i n t e x t b l o c k s ( L
i
R
i
R
i
) d i e r e n t f r o m ( L
0
R
0
R
0
)
a n d g e t s t h e c o r r e s p o n d i n g i n t e r m e d i a t e v a l u e s S H A
K
2
( S
i
) a n d c i p h e r t e x t b l o c k s ( U
i
T
i
T
i
) . I f B E A S T -
R K ' s c o m p o n e n t s S H A - 1 a n d S E A L a r e s e c u r e , i t i s i n f e a s i b l e f o r t h e a t t a c k e r t o d e c i d e w h e t h e r X i s
r a n d o m l y g e n e r a t e d X o r X = ( U
0
T
0
T
0
) . H e r e , w e o m i t a f o r m a l p r o o f b u t n o t e t h a t t h i s c a n b e
p r o v e d b a s e d o n t h e f o l l o w i n g t h r e e o b s e r v a t i o n s :
1 . I f t h e h a s h f u n c t i o n S H A - 1 i s c o l l i s i o n - r e s i s t a n t , i t i s i n f e a s i b l e n d d i e r e n t p l a i n t e x t b l o c k s ( L
1
R
1
R
1
)
6= ( L
2
R
2
R
2
) w i t h L
1
= L
2
R
1
= R
2
, a n d S H A ( R
1
) = S H A ( R
2
)
2 . C o n s i d e r a v a r i a n t o f B E A S T - R K w i t h 4 8 0 - b i t b l o c k s , w h e r e S E A L i s r e p l a c e d b y t h e i d e n t i c a l f u n c -
t i o n , i . e . T
= R
S H A
K
2
( S ) . I f B E A S T i s s e c u r e , t h e n s o i s t h i s v a r i a n t . H e n c e , g i v e n a n y ` n e w '
p l a i n t e x t b l o c k ( L
i
R
i
R
i
) , i t i s i n f e a s i b l e f o r a t t a c k e r s t o d i s t i n g u i s h b e t w e e n t h e c o r r e s p o n d i n g
( U
i
T
i
S H A
K
2
( S
i
) ) a n d a r a n d o m t r i p l e ( X ; Y ; Z ) 2 ( f 0 1 g
1 6 0
)
3
3 . I f S E A L i s a s e c u r e s t r e a m c i p h e r , a t t a c k e r s w h o d o n ' t k n o w S H A
K
2
( S ) c a n ' t d i s t i n g u i s h b e t w e e n
S E A L ( S H A
K
2
( S ) ) a n d r a n d o m b i t s t r i n g s .
I F B E A S T i s s e c u r e , t h e n B E A S T - R K i s s o , t o o . I n s o m e s e n s e , B E A S T - R K i s m o r e s e c u r e t h a n B E A S T ,
s i n c e B E A S T - R K d o e s n o t r e q u i r e S E A L d o b e a p s e u d o - r a n d o m f u n c t i o n . A n y s e c u r e s t r e a m c i p h e r c o u l d
r e p l a c e S E A L { p o s s i b l y a s t r e a m c i p h e r w i t h a f a s t e r s e t - u p .
B E A S T - R K i s s o m e w h a t s i m i l a r t o B l a z e ' s R K E P , t h e ` r e m o t e l y k e y e d e n c r y p t i o n p r o t o c o l ' ( B l a z e ,
1 9 9 6 ) . B u t , a s o u t l i n e d a b o v e , B E A S T - R K i s p r o v a b l y s e c u r e i f i t s c o m p o n e n t s a r e s e c u r e . N o s u c h r e s u l t
i s k n o w n f o r t h e R K E P .
B E A S T - R K c a n b e u s e d e . g . f o r p a y - T V a n d s i m i l a r a p p l i c a t i o n s , w h e r e e n c r y p t e d d a t a a r e t r a n s -
m i t t e d v i a a b r o a d c a s t - c h a n n e l . D e c r y p t i o n i s d o n e o n t h e c u s t o m e r s ' d e c o d e r b o x e s ( t h e s e c a n e i t h e r
b e h a r d w a r e , o r s o f t w a r e r u n n i n g o n P C s ) , c o n n e c t e d t o t a m p e r p r o o f t o k e n s . T h e s e n d e r A l i v e s f r o m
s e l l i n g t h e s e t o k e n s . S i n c e o n e c a n n o t e x p e c t a l l o f t h e c u s t o m e r s t o b e h o n e s t , A i s l i t e r a l l y g i v i n g a w a y
d e c r y p t i o n e n g i n e s t o p o t e n t i a l a t t a c k e r s . I n o t h e r w o r d s , A h a s t o w o r r y a b o u t c h o s e n c i p h e r t e x t a t t a c k s
a n d s h o u l d u s e i n v e r s e B E A S T - R K f o r e n c r y p t i o n a n d s t r a i g h t B E A S T - R K f o r d e c r y p t i o n .
T h e b o x e s a n d t h e t o k e n s c a n a l s o b e u s e d f o r p u b l i c - k e y l i k e e n c r y p t i o n : T h e c u s t o m e r s e n c r y p t
8/13/2019 BEAST A fast block cipher for arbitrary blocksizes
9/10
C o n c l u d i n g r e m a r k s 9
t h e i r m e s s a g e s u s i n g s t r a i g h t B E A S T - R K , a n d o n l y A c a n r e a d t h e m e s s a g e s . E v e n t o k e n - o w n e r s w h o
l i s t e n e d t o a n e n c r y p t e d m e s s a g e c a n d o n o b e t t e r t h a n t o g u e s s t h e m e s s a g e a n d t o v e r i f y t h e i r g u e s s b y
e n c r y p t i n g i t o n t h e i r o w n . T h i s f e a t u r e i s d u e t o t h e s m a r t c a r d a n d i t s o n e - w a y u s e { b y n o m e a n s c a n
B E A S T o r B E A S T - R K b e r e g a r d e d a s p u b l i c - k e y c i p h e r s .
6 C O N C L U D I N G R E M A R K S
A s m e n t i o n e d i n s e c t i o n 2 , o n e s h o u l d l o o k o u t f o r p o s s i b l e c o m b i n e d c h o s e n p l a i n t e x t / c h o s e n c i p h e r t e x t
a t t a c k s . I n t h e c a s e o f t h e a b o v e a p p l i c a t i o n e x a m p l e , t h e r e a r e t w o p o t e n t i a l r i s k s :
1 A e n c r y p t s a n d b r o a d c a s t s d a t a p r o v i d e d b y t h e t h i r d p a r t y B
2 A d e c r y p t s m e s s a g e s s e n t t o h e r a n d p u b l i s h e s t h e s e .
I f B i s n o t c o n s i d e r e d t r u s t w o r t h y b y A , t h e r e i s b u t o n e c u r e f o r t h e r s t r i s k : A h a s t o u s e a n o t h e r
c i p h e r .
I f o n e d o e s n o t n e e d r e m o t e - k e y e n c r y p t i o n , A n d e r s o n ' s a n d B i h a m ' s L I O N E S S , t h e f o u r - r o u n d v a r i a n t
o f L I O N , s h o u l d b e c o n s i d e r e d . L I O N E S S i s s l o w e r t h a n B E A R a n d L I O N , b u t s e c u r e a g a i n s t c o m b i n e d
c h o s e n p l a i n t e x t / c h o s e n c i p h e r t e x t a t t a c k s . I t i s u n c l e a r w h e t h e r B E A R , L I O N , o r L O N E S S c a n b e
a d a p t e d f o r r e m o t e k e y e n c r y p t i o n { a s w e h a v e d o n e w i t h B E A S T .
T h e s e c o n d r i s k c a n b e r u l e d o u t b y a c a r e f u l a p p l i c a t i o n d e s i g n , s o B E A S T - R K c a n b e u s e d . T r o u -
b l e s o m e a r e t h o s e c u s t o m e r s w h o { i n s t e a d o f c h o o s i n g a m e s s a g e , e n c r y p t i n g a n d s e n d i n g i t { d i r e c t l y
c h o o s e a c i p h e r t e x t x a n d s e n d i t t o A I f A g i v e s a w a y t h e d e c r y p t i o n o f s u c h a n x , s h e a l l o w s a c c e s s t o
h e r d e c r y p t i o n e n g i n e . H e n c e A m u s t n o t r e p l y s o m e t h i n g l i k e ` y o u r m e s s a g e h a s b e e n s c r a m b l e d , I o n l y
r e a d . . . '
T h e c u r e i s t o d e m a n d t h e m e s s a g e s t o b e r e d u n d a n t i n a c e r t a i n w a y a n d t o i g n o r e a l l o t h e r m e s s a g e s .
I f e . g . t h e l a s t n b i t s o f e v e r y m e s s a g e b l o c k h a v e t o b e z e r o e s , a p l a i n t e x t c o r r e s p o n d i n g t o a c h o s e n
c i p h e r t e x t w i l l b e i g n o r e d w i t h t h e p r o b a b i l i t y 1 2
n
T h e d e s i g n e r s o f n e w c r y p t o s y s t e m s f r e q u e n t l y p r o v e s e c u r i t y a g a i n s t c e r t a i n t y p e s o f c r y p t a n a l y s i s ,
e . g . d i e r e n t i a l o r l i n e a r c r y p t a n a l y s i s . H e r e , w e n e e d n o s u c h p r o o f . W e k n o w t h a t o u r c i p h e r s a r e s e c u r e
a g a i n s t a l l t y p e s o f c r y p t a n a l y s i s , e v e n t h e o n e s n o t y e t d i s c o v e r e d , i f t h e u n d e r l y i n g b u i l d i n g b l o c k s a r e
s e c u r e .
N o t e t h a t w e c a n u s e o u r c i p h e r l i k e a ` b o x o f b r i c k s ' , i . e . d e n e v a r i a n t s o f B E A S T a n d B E A S T - R K
n o t b a s e d o n S H A - 1 a n d S E A L , b u t o n o t h e r h a s h f u n c t i o n s o r s t r e a m c i p h e r s . T h i s m a y b e d o n e b e c a u s e
o f l a c k o f t r u s t i n t h e s e c u r i t y o f S H A - 1 a n d S E A L , o r i n o r d e r t o t o s p e e d - u p t h e b l o c k c i p h e r . E . g . o n e
c a n r e p l a c e S E A L b y a n o t h e r c o m p o n e n t w i t h a f a s t e r s e t - u p . L u c k s ( 1 9 9 6 ) c o n s i d e r s a h a s h f u n c t i o n
b a s e d r e p l a c e m e n t f o r S E A L . T h e r e a r e t w o a d v a n t a g e s o f t h a t p r o p o s a l : I t i s f a s t e r i f t h e b l o c k s i z e i s
m o d e r a t e l y l a r g e , a n d t h e s e c u r i t y o f t h e h a s h f u n c t i o n i s a s u c i e n t s e c u r i t y c r i t e r i o n f o r t h e s e c u r i t y
o f t h e b l o c k c i p h e r .
8/13/2019 BEAST A fast block cipher for arbitrary blocksizes
10/10
1 0 B E A S T : A f a s t b l o c k c i p h e r f o r a r b i t r a r y b l o c k s i z e s
R E F E R E N C E S
R . A n d e r s o n ( 1 9 9 3 ) T h e C l a s s i c a t i o n o f H a s h F u n c t i o n s , i n F o u r t h I M A c o n f e r e n c e o n c r y p t o g r a p h y
a n d c o d i n g , 8 3 { 9 3 .
R . A n d e r s o n , E . B i h a m ( 1 9 9 6 ) T w o P r a c t i c a l a n d P r o v a b l y S e c u r e B l o c k C i p h e r s : B E A R a n d L I O N , i n
F a s t S o f t w a r e E n c r y p t i o n ( e d . D . G o l l m a n n ) , S p r i n g e r L N C S 1 0 3 9 , 1 1 3 { 1 2 0 .
M . B l a z e ( 1 9 9 6 ) H i g h - B a n d w i d t h E n c r y p t i o n w i t h L o w - B a n d w i d t h S m a r t c a r d s , i n F a s t S o f t w a r e E n c r y p -
t i o n ( e d . D . G o l l m a n n ) , S p r i n g e r L N C S 1 0 3 9 , 3 3 { 4 0 .
M . L u b y , C . R a c k o ( 1 9 8 8 ) H o w t o c o n s t r u c t p s e u d o r a n d o m p e r m u t a t i o n s f r o m p s e u d o r a n d o m f u n c t i o n s ,
S I A M J . C o m p u t i n g , V o l . 1 7 , N o . 2 , 3 7 3 { 3 8 6 .
S . L u c k s ( 1 9 9 6 ) F a s t e r L u b y - R a c k o C i p h e r s , i n F a s t S o f t w a r e E n c r y p t i o n ( e d . D . G o l l m a n n ) , S p r i n g e r
L N C S 1 0 3 9 , 1 8 9 { 2 0 3 .
U . M a u r e r ( 1 9 9 2 ) A S i m p l i e d a n d G e n e r a l i z e d T r e a t m e n t o f L u b y - R a c k o P s e u d o r a n d o m P e r m u t a t i o n
G e n e r a t o r s , i n E u r o C r y p t ' 9 2 ( e d . R . R u e p p e l ) , S p r i n g e r L N C S 6 5 8 , 2 3 9 { 2 5 5 .
P . R o g a w a y , D . C o p p e r s m i t h ( 1 9 9 3 ) A S o f t w a r e - O p t i m i z e d E n c r y p t i o n A l g o r i t h m , i n F a s t S o f t w a r e E n -
c r y p t i o n ( e d . R . A n d e r s o n ) , S p r i n g e r L N C S 8 0 9 , 5 6 { 6 3 .
M . R o e ( 1 9 9 4 ) P e r f o r m a n c e o f B l o c k C i p h e r s a n d H a s h F u n c t i o n s { O n e Y e a r L a t e r , i n F a s t S o f t w a r e
E n c r y p t i o n ( e d . B . P r e n e e l ) , S p r i n g e r L N C S 1 0 0 8 , 3 5 9 { 3 6 2 .
B . S c h n e i e r ( 1 9 9 5 ) A p p l i e d C r y p t o g r a p h y , W i l e y .
B I O G R A P H Y
S t e f a n L u c k s r e c e i v e d h i s D i p l o m ( d i p l o m a ) i n c o m p u t e r s c i e n c e f r o m t h e U n i v e r s i t y o f D o r t m u n d . H e
e x p e c t s t o r e c e i v e h i s P h . D . s o o n . C u r r e n t l y , h e i s e m p l o y e d a s a s c i e n t i c a s s i s t a n t a t t h e U n i v e r s i t y
o f G o t t i n g e n , w h e r e h e w o r k s o n t h e d e s i g n a n d a n a l y s i s o f e c i e n t c r y p t o g r a p h i c s c h e m e s . A p a r t f r o m
c r y p t o g r a p h y , h i s r e s e a r c h i n t e r e s t s i n c l u d e c o m p u t e r s e c u r i t y , c o m m u n i c a t i o n s s e c u r i t y , a n d c o m p l e x i t y
t h e o r y .
T h i s p a p e r w a s p u b l i s h e d a t :
P . H o r s t e r ( e d . ) , I F I P C o n f e r e n c e o n C o m m u n i c a t i o n s
a n d M u l t i m e d i a S e c u r i t y ( 1 9 9 6 ) , C h a p m a n & H a l l , 1 4 4 { 1 5 3 .