[16182] 2020-12-08_Fuzzbook系列:软件的安全性测试

文档创建者:s7ckTeam
浏览次数:3
最后更新:2025-01-18
2020-12-08_Fuzzbook系列:软件的安全性测试 F u z z b o o k f s t a r k   F r e e B u f   2 0 2 0 - 1 2 - 0 8 P y t h o n   N e w t o n - R a p h s o n P y t h o n p y t h o n P y t h o n P y t h o n P y t h o n P y t h o n P y t h o n P y t h o n 使 P y t h o n   m y _ s q r t ( ) d e f   m y _ s q r t ( x ) :         " " " C o m p u t e s   t h e   s q u a r e   r o o t   o f   x ,   u s i n g   t h e   N e w t o n - R a p h s o n   m e t h o d " " "         a p p r o x   =   N o n e         g u e s s   =   x   /   2         w h i l e   a p p r o x   ! =   g u e s s :                 a p p r o x   =   g u e s s                 g u e s s   =   ( a p p r o x   +   x   /   a p p r o x )   /   2         r e t u r n   a p p r o x w h i l e x a p p r o x g u e s s w h i l e i f = = = ! = < g u e s s x   /   2 a p p r o x a p p r o x m y _ s q r t ( ) x   =   4 m y _ s q r t   4   2 . 0 m y _ s q r t ( 4 ) 2 . 0 m y _ s q r t ( 4 ) x   =   2 . 0 m y _ s q r t   2   1 . 4 1 4 2 1 3 5 6 2 3 7 3 0 9 5 m y _ s q r t ( ) p r i n t ( ) a p p r o x d e f   m y _ s q r t _ w i t h _ l o g ( x ) :         " " " C o m p u t e s   t h e   s q u a r e   r o o t   o f   x ,   u s i n g   t h e   N e w t o n R a p h s o n   m e t h o d " " "         a p p r o x   =   N o n e         g u e s s   =   x   /   2         w h i l e   a p p r o x   ! =   g u e s s :                 p r i n t ( " a p p r o x   = " ,   a p p r o x )     #   < - -   N e w                 a p p r o x   =   g u e s s                 g u e s s   =   ( a p p r o x   +   x   /   a p p r o x )   /   2         r e t u r n   a p p r o x m y _ s q r t _ w i t h _ l o g ( 9 ) a p p r o x   =   N o n e a p p r o x   =   4 . 5 a p p r o x   =   3 . 2 5 a p p r o x   =   3 . 0 0 9 6 1 5 3 8 4 6 1 5 3 8 4 6 a p p r o x   =   3 . 0 0 0 0 1 5 3 6 0 0 3 9 3 2 2 a p p r o x   =   3 . 0 0 0 0 0 0 0 0 0 0 3 9 3 2 1 4 3 . 0 m y _ s q r t ( 2 ) m y _ s q r t   2     *     m y _ s q r t   2   1 . 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 6
4 使 P y t h o n 使 t r u e f a l s e P . S .   a b s 使   使   1 0 0 使 使 1 0 , 0 0 0 1 / 1 0 0 0 0 0 0 1 1 0 , 0 0 0 P y t h o n 0 . 0 1 . 0 1 0 , 0 0 0 r e s u l t   =   m y _ s q r t ( 4 ) e x p e c t e d _ r e s u l t   =   2 . 0 i f   r e s u l t   = =   e x p e c t e d _ r e s u l t :         p r i n t ( " T e s t   p a s s e d " ) e l s e :         p r i n t ( " T e s t   f a i l e d " ) T e s t   p a s s e d a s s e r t a s s e r t a s s e r t m y _ s q r t ( ) a s s e r t   m y _ s q r t ( 4 )   = =   2 e p s i l o n E P S I L O N   =   1 e - 8 a s s e r t   a b s ( m y _ s q r t ( 4 )   -   2 )   <   E P S I L O N d e f   a s s e r t E q u a l s ( x ,   y ,   e p s i l o n = 1 e - 8 ) : a s s e r t   a b s ( x   -   y )   <   e p s i l o n a s s e r t E q u a l s ( m y _ s q r t ( 4 ) ,   2 ) a s s e r t E q u a l s ( m y _ s q r t ( 9 ) ,   3 ) a s s e r t E q u a l s ( m y _ s q r t ( 1 0 0 ) ,   1 0 ) a s s e r t E q u a l s ( m y _ s q r t ( 2 )   *   m y _ s q r t ( 2 ) ,   2 ) a s s e r t E q u a l s ( m y _ s q r t ( 3 )   *   m y _ s q r t ( 3 ) ,   3 ) a s s e r t E q u a l s ( m y _ s q r t ( 4 2 . 1 1 )   *   m y _ s q r t ( 4 2 . 1 1 ) ,   4 2 . 1 1 ) f o r   n   i n   r a n g e ( 1 ,   1 0 0 0 ) : a s s e r t E q u a l s ( m y _ s q r t ( n )   *   m y _ s q r t ( n ) ,   n ) m y _ s q r t ( ) T i m e r T i m e r i m p o r t   b o o k u t i l s f r o m   T i m e r   i m p o r t   T i m e r w i t h   T i m e r ( )   a s   t :         f o r   n   i n   r a n g e ( 1 ,   1 0 0 0 0 ) :                 a s s e r t E q u a l s ( m y _ s q r t ( n )   *   m y _ s q r t ( n ) ,   n ) p r i n t ( t . e l a p s e d _ t i m e ( ) ) 0 . 0 2 2 9 1 1 8 0 9 0 0 0 1 0 6 5 8 7 m y _ s q r t ( ) r a n d o m . r a n d o m ( ) i m p o r t   r a n d o m w i t h   T i m e r ( )   a s   t :         f o r   i   i n   r a n g e ( 1 0 0 0 0 ) :                 x   =   1   +   r a n d o m . r a n d o m ( )   *   1 0 0 0 0 0 0                 a s s e r t E q u a l s ( m y _ s q r t ( x )   *   m y _ s q r t ( x ) ,   x ) p r i n t ( t . e l a p s e d _ t i m e ( ) ) 0 . 0 2 7 7 0 4 6 6 1 9 9 9 9 0 5 5 1 m y _ s q r t ( ) m y _ s q r t ( )
使 使 使 使 m y _ s q r t ( ) m y _ s q r t ( ) d e f   m y _ s q r t _ c h e c k e d ( x ) :         r o o t   =   m y _ s q r t ( x )         a s s e r t E q u a l s ( r o o t   *   r o o t ,   x )         r e t u r n   r o o t m y _ s q r t _ c h e c k e d ( ) m y _ s q r t _ c h e c k e d ( 2 . 0 ) 1 . 4 1 4 2 1 3 5 6 2 3 7 3 0 9 5 m y _ s q r t ( ) m y _ s q r t ( ) s q r t _ p r o g r a m ( ) d e f   s q r t _ p r o g r a m ( a r g ) :         x   =   i n t ( a r g )         p r i n t ( ' T h e   r o o t   o f ' ,   x ,   ' i s ' ,   m y _ s q r t ( x ) ) s q r t _ p r o g r a m $   s q r t _ p r o g r a m   4 2 s q r t _ p r o g r a m ( ) s q r t _ p r o g r a m ( " 4 " ) T h e   r o o t   o f   4   i s   2 . 0 s q r t _ p r o g r a m ( - 1 ) m y _ s q r t ( ) w i t h   E x p e c t T i m e O u t ( 1 ) f r o m   E x p e c t E r r o r   i m p o r t   E x p e c t T i m e o u t w i t h   E x p e c t T i m e o u t ( 1 ) : s q r t _ p r o g r a m ( " - 1 " ) T r a c e b a c k   ( m o s t   r e c e n t   c a l l   l a s t ) : F i l e   " < i p y t h o n - i n p u t - 2 5 - a d d 0 1 7 1 1 2 8 2 b > " ,   l i n e   2 ,   i n   < m o d u l e > s q r t _ p r o g r a m ( " - 1 " ) F i l e   " < i p y t h o n - i n p u t - 2 2 - 5 3 e 8 e c 8 b b 3 c a > " ,   l i n e   3 ,   i n   s q r t _ p r o g r a m p r i n t ( m y _ s q r t ( x ) d e f   s q r t _ p r o g r a m ( a r g ) :         x   =   i n t ( a r g )         i f   x   <   0 :                 p r i n t ( " I l l e g a l   I n p u t " )         e l s e :                 p r i n t ( ' T h e   r o o t   o f ' ,   x ,   ' i s ' ,   m y _ s q r t ( x ) ) m y _ s q r t ( ) s q r t _ p r o g r a m     - 1   I l l e g a l   I n p u t s q r t _ p r o g r a m ( ) f r o m   E x p e c t E r r o r   i m p o r t   E x p e c t E r r o r w i t h   E x p e c t E r r o r ( ) : s q r t _ p r o g r a m ( " x y z z y " ) T r a c e b a c k   ( m o s t   r e c e n t   c a l l   l a s t ) : F i l e   " < i p y t h o n - i n p u t - 2 9 - 8 c 5 a a e 6 5 a 9 3 8 > " ,   l i n e   2 ,   i n   < m o d u l e > s q r t _ p r o g r a m ( " x y z z y " ) F i l e   " < i p y t h o n - i n p u t - 2 6 - e a 8 6 2 8 1 b 3 3 c f > " ,   l i n e   2 ,   i n   s q r t _ p r o g r a m x   =   d e f   s q r t _ p r o g r a m ( a r g ) :         t r y :                 x   =   f l o a t ( a r g )         e x c e p t   V a l u e E r r o r :                 p r i n t ( " I l l e g a l   I n p u t " )         e l s e :                 i f   x   <   0 :                         p r i n t ( " I l l e g a l   N u m b e r " )
使 使     使 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 广 使 1 0 0 便 ;   1 0 0                         p r i n t ( " I l l e g a l   N u m b e r " )                 e l s e :                         p r i n t ( ' T h e   r o o t   o f ' ,   x ,   ' i s ' ,   m y _ s q r t ( x ) ) s q r t _ p r o g r a m ( " 4 " ) T h e   r o o t   o f   4 . 0   i s   2 . 0 s q r t _ p r o g r a m ( " - 1 " ) I l l e g a l   N u m b e r s q r t _ p r o g r a m ( " x y z z y " ) I l l e g a l   I n p u t m y _ s q r t ( ) w i t h   E x p e c t E r r o r ( ) : r o o t   =   m y _ s q r t ( 0 ) T r a c e b a c k   ( m o s t   r e c e n t   c a l l   l a s t ) : F i l e   " < i p y t h o n - i n p u t - 3 4 - 2 4 e d e 1 f 5 3 9 1 0 > " ,   l i n e   2 ,   i n   < m o d u l e > r o o t   =   m y _ s q r t ( 0 ) F i l e   " < i p y t h o n - i n p u t - 1 - 4 7 1 8 5 a d 1 5 9 a 1 > " ,   l i n e   7 ,   i n   m y _ s q r t g u e s s   =   ( a p p r o x   +   x   /   a p p r o x )   /   x x   =   0 d e f   m y _ s q r t _ f i x e d ( x ) :         a s s e r t   0   < =   x         i f   x   = =   0 :                 r e t u r n   0         r e t u r n   m y _ s q r t ( x ) a s s e r t   m y _ s q r t _ f i x e d ( 0 )   = =   0 w i t h   E x p e c t E r r o r ( ) : r o o t   =   m y _ s q r t _ f i x e d ( - 1 ) T r a c e b a c k   ( m o s t   r e c e n t   c a l l   l a s t ) : F i l e   " < i p y t h o n - i n p u t - 3 7 - 5 5 b 1 c a f 1 5 8 6 a > " ,   l i n e   2 ,   i n   < m o d u l e > r o o t   =   m y _ s q r t _ f i x e d ( - 1 ) F i l e   " < i p y t h o n - i n p u t - 3 5 - f 3 e 2 1 e 8 0 d d f b > " ,   l i n e   2 ,   i n   m y _ s q r t _ f i x e d a s s e r t   m y _ s q r t _ f i x e d ( x )

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则