You are on page 1of 94

|  

   
    




|    



 
 

 
|  
   
  



 

  
   



 
 
°     
! "     

 

    
! #   $
%
  $ 
%  $"    
  
   



 
 
    



 
 

| 
!   
 
!  $  

 $
   
!  #
  
&   
 # 
!       
 '('
   

)



 
 
# | 
!        
 $   &
 

!    #   
% *+"  
!        
     &
  
!      
!    $$ 


 
 
'   

(')
!  

    

! 

 ,-.. (   )
% /001+*
!  *+"
 2*" 
!  
 

!   
   # # 
  



 
 
'3 
!  
# 
$ 
%  
/  
% 
*+"
 ,45" 
!  
# 
  
 $  
 
!  ,-.6 
 7 $  
$    


!  
   #
$  
 #  
 '


 
 
''  |  # 
! '


!  
   # # 
 
%   $2*" (#$ ,45")
% 
  
    $

!  7  # 
 
  $
    
! '   

  
 $   


 
 
 $'% ° 8
! 2*" # 42* 9.:4;,<,* # 
!   $    

!  
#  #  
%  ,--.    $  
%  ,--5 


& (//) $ 

%  ,---# 
 44 =
!     8   ;
!   
  # '


 
 
 $'%  
!    $
!    
 $  7  $
   
#   
 $
 & 
!  $ $  
 #   

   # 
$  
!       



 
 
 $'%  
!  #  #   '
!     
  $  
%    $     
%   #  #  &$ " 
% $     ;#   $   
!     
!  

%
$$   
%     
% 
 



 
 
'$$ |  
!  $  $   ()

#     
!     .<>$'

!  ? 
,--<
!  $ 
   
! 
    
#  
 $ 
! '    $$


 
 

$@ 
!    $;
8 
! :'  *+" 2*" 
!
     # # 
    $ $    
! $  
$
$ '  


ANSI X3.106-1983 Modes of Use
!  7   # 2$ '

! # block 
stream 




 
 
   |
(|)
!      


    

! #  

 
    
!  



$
  
|  

!       $  # 




 
 
   |
(|)



 
 

#  
 $|
!        
  ;
% $
   
%    
 
%       #  
  
"   
!  
   
  
  


!   
 $ $



 
 
| |  (||)
!      
!     
    
    
!  # 

   ;    
!   A  (A)   
|  | 

| 
!  
    


 
 
| |  (||)



 
 

#  
 $||
!   ;

 all   
!       $$   ;
$        
!
Initial Value (A)  
?  # 
%  # $A          $
 $ 
  A  
%     A $;
# ( /0@) 
    
 |
 $  $  
! 
$  
   
% 

        "


# (  )
%  
  $
8 
! :B,46<<<<2CD" 6
  2 
E 



 
 
| /
(|/)
!    
 $
! 


 $  
! $
$  ; (    )
! 

    $(,5 *+ 
 # ) $

%

|/",|/"5|/"*+ 
!  $$  *+(|/"*+)
|  | 

| 
!   
    


 
 
| /
(|/)



 
 

#  
 $|/
!      
 #  & 
!   

!  
  

  $  #  "
!    
 
encryption 
both

!    $  # $ 
   


 
 
@/
(@/)
!    
 $
! $ 


  
!  $
(    )
! $


$  
!   
 
# 
|  
 

 
!      #   
!   @/

    
 /6:,+
  -*$ F ;  :G $  
05<<"65" /+& ,+


 
 

#  
 $@/
! 
    $
     

   $   # 
!  $ |/
! $
$  $ 



$  
! #  $A  
%   never     7  ( EA)
! 

  #     
 
#  


   
!    $
 "$
  


!  7      OFB-64

 #  



 
 
|  (|G)
! H I
 
  
!  @/    # 
   $
#
! # 
$$  ?  # 
$  #   ;( #  
)
|  


!  "
      


 
 
|  (|G)



 
 

#  
 $|G
! $$ 
%  
     
%  
#  $

% 
$  
 
! 
   


!  #   (
 
)
!    #    &  
#   
 ($@/)


 
 
  '
!      $ ' 

%     
%
  
 ;#    
!    #
!    #    
   '   
!   "'  $ 



 
 
  "'J
!  ' "'J
% @     "' 
#
!  " " "

 
%    #    
%     |
%    0  

%  
 |  
K#
%     
 



 
 
  "'  "° 
!    6   
% 
 
6
  
!   4  "'" 7 
h | 
%   ?
  7#    
% $        '
! 

8
  K-:,.?@5.64
!     


 
 
  "'  "° 
!      "
   "'#  
 
!     "'  "° 
#
 #  
h | 
!  

   
  0L0&  



 
 
" @  
!      $ ' 

% #     


% # 
  
 ;#    
!     "'%   
! 1 
$   ,--.
! ,2

  
 M -5
! 2  "
 "--
! GN
    
  @"4<<<
! 
/001,-.

  #"4<<,


 
 
G 7  
!  #     
! ,45"
,45&,-4&42*" 
!    ?$    "'
! # $ $4<"6<  (E # )
!  #
$ $ ?
 

! |?M#   
! #   
 ?
 $
  



 
 
# |  
!    
%   % $$    
% %  
%  ?     
! $   
%    
% $  ?
     
%    
% $ ;(  &
    $ )


 
 
 
! $   
 #   "--
% G( )"  ;$    
% G|*(1)" #: #:$     
% GN
 ( )"   $
    
%   ( )"    #:    
%  $(1)"  ;#:$    
!  N $   ? 
!        
% $  ; 
#     

%  $
 ;  #    



 
 
 | " GN
 
!

GN "'    
! ,45&,-4&42* ,45

!  iterative   feistel 
%  
 + $+ 
%        #  

!

 
%     
% 


   |01
%
 


 
 
    
!   $$    64"|01
%
$   64" 

%   " + $42*" 

%       
  

 + E+K@G
% $,*°  
!
   # #  $$ 
     $  
    


 
 
G|2
!      
G'
!

G 
G# ($G$ )
! 
 # G' 

!  #  8 &
8 &  

! #   
 

!     # |01
!   

  



 
 
G|2| 
! G|2$$ G|2" & &
% 9 
8  (,*&64&*+) 
94
% 9  $ 
(<::422)
% 9  $   (<::422)
!  #  G|2"64&,4&,*
%  64" 
  *+"

%  ,4 

% ,* (,45")   



 
 
 | 
!      ( )
! # ( 
) 
stream key
! 
(K@G)   ;
! 
 $stream key   
 
        
h |  
! 
  ====
!  #     
%     #  $$ 
 #   


 
 
 | 0   
!  
  
  
%   
     
%  

%

     
%      ;
%    
%  $
%
$$
%  $  "    $  


 
 
G|+
!      
G'
!   G G# 
   $$ #
! #   8  "  
  
! 

( &   0)
!  $  
  $5"# 
!        $
  
  



 
 
G|+  
! 
     
% #       
! #   "  
!   G|+  never
reuse a key
! #    0
  

    G|+ $



 
 
0° |  



 
 
'  $0° 
!    

  $
% 0    
% 0# 
  
% 0"  
% 0"  $ 



 
 
0    
!  
      
 
  
% :
0L0     
    
! N   $  
%         
    
 

%  $  
#
 7 





 
 
0# '  
!          
  
  
!
    
    
%   O  " P   
%        
  
%        
%
   


%
     
    
! #     $  


 
 
0"°  
!  #       # 

  $ $ 
  
!    $
  
! 
 7     $ 
 
  
!      
   
 

   
%
  7  "  
  
   



 
 
0"°  



 
 
0"° | $ 
!  $    ;   
"  "  
!  $ 
identity public key
%    $ 
$
#
 $  
!   signed  

0"°  | $  (|)
!   # $
      
"   " 


 
 
0"° | $ 



 
 
0"° '  $  
° 
!   # 
 " 
!   $     
! "   
!     # " 
        
!   
   
! #  #  # $   
  


 
 
'$$ "3  ° ; 
! $ "     

! '$$ ?3   ,-.*   
; $   
%      M (1°|L)
   
    ,-.<
% && : 
: & &M Q3:Q
!   
$  ;  
$   
! 
   $  



 
 
'$$ "3  ° ; 
! " 
    
%   
 ;        
%      
%        
! # $ 

    (

   # 
  $  )
! 
  ;   $  (L)$ 

(
    )" 
!       
$$$ 

   ( $  )% 



 
 
'$$ "3   
!       
%          :
% R  #  
7
!  ( :)     
%     (  )  :
%    public key R  :
!    



 
 
'$$ "3  ° ; 
! 
   $  ?°
 R   :
  : ! "!R "#"$%

  : ! "! "#"$%

! ° 
     # " 
       

! $ 
 7   
  #  same   $   
   " 
!  
 ;# 
  



 
 
'$$ "3  ; 
!   ?    
!     : 
&
!    
   
%   '()  
!   
'(
h 6 *+ ( )

h 6 *, ()
!  
   
 '(
 4+5 + ( )
 
 +< + ()



 
 
| # |  
! N $"  (G'"3)
          
#     & 
!   $ 
   

    
  
!   #    # 
! $$      8 
! ::42*  || 7# 
6<.4"G  


 
 
   
3
/  



 
 
  
!      
 
%        $  
% #
 
$   
%  " 
 $  (
   )
!  
    7  
!    # $  

%     
%     
( |)
% $ 


 
 
  G 7  
!

!  $$ 
! 7 

!   
$
!  7  
$
!  
$
!    

!
   



 
 
   
!       $ #

  $ 
! $     
 
%  #   
#  

%    

  #    

%      $ 

% $     



 
  
    



 
 
   
! $"    

%    #
  $
 $

%        " 
%  # $
! 
signs       # " 
!        
! #   
 
%  
  8  
  
% $ "    


 
 
   |

( |)
!  
    
$;
"8

%

    
  
%     
   # 
! 

  signature
!  #  $    
  
    |
!  #
     
 

 $ 



 
 
|0   
!  |   
||

% 
 #  "   
%     °
% $;
"8
 
!  "" $ 
%     #   |
% $
   
 # 
$$



 
 
G 7  $  |
!      $
!
  |$ $  
,:      
 | $  
$
       |
4: |
  $ 
 

6: |


 7 $ 
 



 
 
1   | $  |
!       


 $  |
! 4ata Authentication Algorithm (4AA) 
 

 |
 '"||
%  A9<
8 "
$$ 
%     ' ||

% 

N $   |
!    $ (,*S S*+)$$ 
! $  |  $   


 
 
3/  
! 
      $;
8 
!   $  

  

% $: |  

! 

    
!    #    
! $   
 



 
 
3/  ?'
  



 
 
3/  0   
! 3/   
 $    $
 $ &  &

!-

% 
 #  "   
% $;
"8
$    
! 
 



 
 
G 7  $ 3/  
,:   
 8
  
4:  
 $;
" !
6:   !-
$    
+: # !  $  $
 ::-
!
!  "   
2: #   $  $
 :-
-

!    
*:  $  $
  ) :-
-

!      


 
 
3 



 
 
3 
!       # $
$  ? 
%     $  "$  
%  
  #   
% $ '  
% $  '+? '23",?G0 '",*< 
 
!   
   # 
  
 


 
 
'2
!

G 
G# ( G G)
!     $ '4 '+
!  
 ,45"#
!       


 
%     #   "$  ?
    
!  $
  

G/|,64,


 
 
 $ '2
! '2

   
! G#   
 
!    
%   -4
 , 
 
$$ 
  ( F ;
)
%  ?  -6$
 
 ( 
   ;
)
% '  -* 
   '  
$  (    #  ;)
!    '2#  


 
 
  3 (3",)
! 3 

 ?  ,--6
#
,--23",
! 1

$   '    
% 

/0,5<",,--2  G/|6,.+
% :  3 

3
!  
 ,*<"# 
!     $
 
! 
 
 $ '+  
$$  



 
 
3",#   '2
!   $  
(,*<#,45
$  '2)
! #     
(
 '+&2)
!     '2(5<#*+ )
! 

 

! 
$ 
 |01>(# '2

$  
 |01F)


 
 
G #
  3


! # 
 # /0,5<"4
! 

6

  


! 3"42*3"65+3"2,4
!

$    

   #

 
!   ?
 3",
!    
 



 
 
G0 '",*<
! G0 '",*< 
# 
    
$G0 N  -*
!      ##
   '+&2
!     $   
  G0 '",*<
!    '2&3
!  4   $2 
$,* 
!   ,*<"# 
!       3


 
 
G0 '",*<#   '2?3",
!   $  
(,*< 3",
#,45$  '2)
! #     3"
,   (
 '+&2)
!    '2(  )
! 

 

! 3",
$ 
 |01>#
G0 '",*<? '2
$  

 |01F


 
 
° 
3/   |
! # 
    | 
$     
%   $    $
% 
 ;      
!  
     
!    
-.!-.!/..0

%      $
 
! # 

#  $3 |



 
 
3 |
!  $
  

G/|4,<+
!  $      
-| -.!1 $
//
-.!1  $
//

!  °E   


8 
! 


  $


   


! #  
N6   
   

!  $ '23",G0 '",*<  



 
 
3 |@# #



 
 
3 |@# #
! °   
      
! °
    &4  8 $
( ::,*<)
! @$3 |   
( $
 $    
)
!       
 |$V   
     ;    $
# $
   ; 
 $(,&4)TV



 
 
3 |  
!      $3 |  
$ 
  
!  3 | 7   
%   $    

%  
(   
 


 # #     $  )
!  $  

 

#       



 
 
'  



 
 
'  
! # 
    
% 
  

 $$ 


!
   #
 
% # $ 
 ? $ 
%       
%  # $

   # 
 
!    
  $   


  


 
 
'  0   
! 

    

!   $   7 



%  # $  


!   #   

!   #    8 ?# $
!    $  $  
%    $  ; 
 
% $ 
 
  $ #  
!   # 
    


 
 
'  

(')
! 1L# #
    /0,5*
!   3 
!

 ?    -<>
! ' 

'  
! #   L
    
!   64<   2,4",<4+
  
!   

 
$$$ 

   


 
 
'° L 
! # 
 # (7)
%     $2
!  92,4,<4+
 $*+
%  7,*<  $ $",
%  0!$
3:
!  !$)!$
3:$
4
!    # ?  
%   :
%  0 $



 
 
'  | 
! sign     

%    
   5)5:
% :5   
 
 
$ 
 
 #   

!      


05$

:

.5-
1 
:

! 
  ).
  


 
 
'  A $ 
! #   #
 ?  ).

! verify      


.:

%-

:

%
:

60%%$

:

! $6    # $

!    $ 
$ $ 


 
 
3 °U@1



 
 

You might also like