A s s i g n m e n t   c r y p t o   0 3 
 
 
 
 G r u p p e n m i t g l i e d e r :   B a s i l   E s t e r m a n n ,   J o n a s   A r n o l d   ,   S i m o n   F r e i 
 
 
 
 W i r   k o n n t e n   d e n   S e s s i o n   k e y   d e r   G r u p p e   O d e r m a t t   S t e f a n   &   P f e n n i g e r   D a v i d   r e p r o d u z i e r e n .   D e n   d e r   G r u p p e   R e d i n g   &   S t a u b   l e i d e r   n i c h t .   B e i m   g e n e r i e r e n   d e s   S e s s i o n   k e y s   d e r   e r s t g e n a n n t e n   G r u p p e   i s t   u n s   a u f g e f a l l e n ,   d a s s   n i c h t   d e r   g e s a m t e   S c h l  s s e l   v o m   P r i n t f   a u s g e g e b e n   w i r d .   D i e s   l a g   d a r a n ,   d a s s   d e r   C o m p i l e r   m i t   e i n e r   3 2 b i t   Z a h l   g e r e c h n e t   h a t   ( d a   T y p   u i n t 3 2 ) .   J e d o c h   v e r s u c h t e n   w i r   e i n e   6 4 b i t   Z a h l   a u s z u g e b e n .   M i t   e i n e m   B l i c k   i n   d e n   M e m o r y   V i e w   ( m i t h i l f e   V i s u a l   S t u d i o )   w a r   s c h n e l l   k l a r ,   d a s s   d e r   K e y   r i c h t i g   g e n e r i e r t   w u r d e ,   j e d o c h   n i c h t   v o l l s t  n d i g   a u s g e g e b e n   w u r d e   ( p e r   p r i n t f ) . 
 
 D e s h a l b   h a b e n   w i r   u n s e r   K e y - P a a r ,   w e l c h e s   w i r   i n   d e n   A u s t a u s c h   g e l a d e n   h a t t e n   n o c h m a l   r e v i d i e r t .   I n   d i e s e m   w a r   a u c h   e i n   z u   k u r z e r   S e s s i o n   K e y   d r i n . 
 
 
 
 M i t   d i e s e r    n d e r u n g   ( g e s a m t e n   S e s s i o n   K e y   a u s g e b e n )   k o n n t e n   w i r   d a n n   e r f o l g r e i c h   e i g e n e   6 4 b i t   P u b l i c   u n d   S e s s i o n   k e y s   g e n e r i e r e n   u n d   d i e s e   a u c h   s e l b e r   v a l i d i e r e n   ( o h n e   a n d e r e n   P r i v a t e   k e y ) .   V a l i d i e r e n   k o n n t e n   w i r   l e d i g l i c h   e i n e n   a n d e r e n   6 4 b i t   S e s s i o n   k e y .   D e n   1 0 2 4 b i t   S e s s i o n   k e y   d e r   G r u p p e   R e d i n g   &   S t a u b   k o n n t e n   w i r   l e i d e r   n i c h t   v a l i d i e r e n .   N a c h    b e r   e i n e r   M i n u t e   r e c h n e n   l i e f e r t e   u n s e r   P r o g r a m m   d e n   f a l s c h e n   S e s s i o n   k e y . 
 
 
 
 D i e   L i b r a r y   v o n   S t e f a n o   w a r   a u f   j e d e n   F a l l   s e h r   h i l f r e i c h .   O h n e   d i e s e   w  r e n   w i r   n i e m a l s   s o   s c h n e l l   z u m   Z i e l   g e k o m m e n   u n d   h  t t e n   v e r m u t l i c h   n i c h t   C   v e r w e n d e t   s o n d e r n   p y t h o n   o d e r   e i n e   a n d e r e   S p r a c h e ,   d i e   f  r   O p e r a t i o n e n   m i t   g r o s s e n   Z a h l e n   a u s g e l e g t   i s t .   L e d i g l i c h   e i n   P r o b l e m   i s t   m i t   d e r   L i b r a r y   a u f g e t r e t e n .   D i e   L i b r a r y    b e r s c h r e i b t   i n   d e r   F u n k t i o n   " e n c r y p t i o n A r i t h m e t i c _ s t r i n g T o H e x "   k l e i n g e s c h r i e b e n e   B u c h s t a b e n   e i n e s   H e x - S t r i n g s   m i t   G r o s s b u c h s t a b e n .   L e i d e r   h a b e n   w i r   a l s   H e x - S t r i n g   e i n   k o n s t a n t e s   A r r a y   a l s   P a r a m e t e r   v e r w e n d e t ,   d e s h a l b   v e r s u c h t e   d i e   F u n k t i o n   e i n e   K o n s t a n t e   z u    b e r s c h r e i b e n   ( = >   A c c e s s   V i o l a t i o n ) . 
 
 
 
 D a s   a s s i g n m e n t   w a r   s e h r   l e h r r e i c h .   Z u m   E i n e n   z e i g t e   e s   a u f ,   w i e   d e r   D H E K   f u n k t i o n i e r t ,   z u m   a n d e r e n ,   d a s s   d a s   h a n t i e r e n   m i t   g r o s s e n   Z a h l e n   i n   C   n i c h t   s o   e i n f a c h   i s t .   W i r   w a r e n   f r o h   u m   d i e   L i b r a r y   v o n   S t e f a n o   u n d   u m   d e n   M e m o r y   v i e w   v o n   V i s u a l   S t u d i o   z u m   d e b u g g e n . 
 
 
 
 