’žA U S B d o n g l e f o r o n e - t i m e p a s s w o r d s
S e c r e t S t i c k
I f y o u a r e r e a d y t o e x p e r i m e n t , a n O p e n K u b u s U S B s t i c k j u s t m i g h t s o l v e y o u r p a s s w o r d p r o b l e m s .
B y B e n e d i k t S a u t e r , M i c h a e l H a r t m a n n , a n d N i l s M a g n u s
I v a n M i k h a y l o v , 1 2 3 R F
W h e n i t c o m e s t o a u t h e n t i c a t i n g u s e r s , m o s t L i n u x a d m i n i s t r a t o r s r e l y o n p a s s w o r d s . O f c o u r s e , t h i s c a u s e s n o
e n d o f p r o b l e m s : I f u s e r s a r e a l l o w e d t o c h o o s e t h e i r o w n p a s s w o r d s , t h e y a r e o f t e n t o o s h o r t a n d t o o e a s i l y
g u e s s e d . I f a r a n d o m p a s s w o r d g e n e r a t o r c r e a t e s t h e p a s s w o r d s , t h e y a r e l i k e l y t o b e s o c o m p l i c a t e d t h a t u s e r s
w i l l f o r g e t t h e m , o r e l s e t h e u s e r s w i l l w r i t e d o w n t h e i r p a s s w o r d s t h e n l e a v e t h e n o t e s o u t i n p u b l i c p l a c e s .
S e c r e c y i s d i f f i c u l t t o e n s u r e i n u n f a m i l i a r e n v i r o n m e n t s w h e r e k e y l o g g e r s a n d s h o u l d e r s u r f e r s l u r k .
O n e - t i m e p a s s w o r d s ( O T P s ) s o l v e t h i s d i l e m m a : B e c a u s e o n e - t i m e p a s s w o r d s b e c o m e i n v a l i d a f t e r o n e u s e ,
n o b o d y i s l i k e l y t o w o r r y a b o u t w h e t h e r t h e y a r e s n i f f e d .
P a s s w o r d g e n e r a t o r s c r e a t e l i s t s w i t h h u g e n u m b e r s o f p a s s w o r d s a n d s t o r e a c o p y o f t h e l i s t o n t h e s e r v e r o n
w h i c h t h e u s e r n e e d s t o a u t h e n t i c a t e . T h e i d e a i s t h a t t h e u s e r c a r r i e s a s e c o n d c o p y o f t h e l i s t . F o r e a c h
a u t h e n t i c a t i o n , t h e u s e r a n d s e r v e r j u s t u s e t h e n e x t p a s s w o r d o n t h e l i s t . A n e x a m p l e o f t h i s t e c h n i q u e i s t h e
T A N m e t h o d u s e d b y m a n y b a n k s f o r s e c u r e t r a n s f e r s i n o n l i n e b a n k i n g .
W h e n a u s e r l o g s i n , t h e s y s t e m c a n p r o m p t f o r , s a y , t h e t e n t h p a s s w o r d o n t h e l i s t . A n y b o d y w i t h t h e
p a s s w o r d l i s t c a n l o o k u p t h e m a t c h i n g p a s s w o r d a n d a u t h e n t i c a t e . T h e d i s a d v a n t a g e o f t h i s a p p r o a c h i s t h a t i t
i s o f t e n i m p r a c t i c a l . U s e r s n e e d t o c a r r y t h e l i s t a r o u n d w i t h t h e m a t a l l t i m e s ; w h e n t h e y l o g o n , t h e y n e e d t o
g r a b t h e l i s t a n d p a i n s t a k i n g l y t y p e t h e p a s s w o r d . O f c o u r s e , t h i s t e c h n i q u e a l s o d o e s n o t p r e v e n t t h e
p o s s i b i l i t y t h a t t h e l i s t c o u l d f a l l i n t o t h e w r o n g h a n d s .
S y s t e m s t h a t g e n e r a t e d y n a m i c p a s s w o r d s a r e m o r e p r a c t i c a l . A n o n - b o a r d c l i e n t a p p l i c a t i o n f o r g e n e r a t i n g
p a s s w o r d s w i l l w o r k f i n e i f y o u n e v e r c h a n g e l o c a t i o n s , b u t t h i s a p p r o a c h i s n ' t v e r y p o r t a b l e . A b e t t e r s o l u t i o n
i s t o g e n e r a t e o n e - t i m e p a s s w o r d s w i t h a n e x t e r n a l h a r d w a r e t o k e n . S e v e r a l f o r m s o f h a r d w a r e - b a s e d ,
o n e - t i m e p a s s w o r d t o k e n s e x i s t . ( S e e t h e a r t i c l e o n " O n e - T i m e P a s s w o r d s " i n t h e N o v e m b e r 2 0 0 8 i s s u e f o r
m o r e i n f o r m a t i o n [ 1 ] . )
M a n y o f t h e h a r d w a r e - b a s e d p a s s w o r d t o k e n s a r e p r o p r i e t a r y ; h o w e v e r , a u n i v e r s a l p r o g r a m m i n g a d a p t e r
b a s e d o n t h e o p e n U S B p r o g h a r d w a r e p l a t f o r m i s a v a i l a b l e f o r i m p l e m e n t i n g o n e - t i m e - p a s s w o r d s o l u t i o n s .
T h i s p l a t f o r m u s e s t h e p o p u l a r A T m e g a 3 2 m i c r o c o n t r o l l e r - a n i n e x p e n s i v e a l t e r n a t i v e w i t h m a n y f r e e
d e v e l o p e r a p p l i c a t i o n s . A s e c o n d c o m p o n e n t , t h e U S B N 9 6 0 4 , s u p p o r t s U S B a c c e s s . T h i s v a r i a n t c a n b e b u i l t
e a s i l y w i t h t h e a d d i t i o n o f a s i n g l e b u t t o n ( s e e F i g u r e 1 ) . T h e P C B , c o m p o n e n t l i s t , a n d w i r i n g d i a g r a m a r e
a v a i l a b l e u n d e r t h e G P L v 2 l i c e n s e [ 2 ] .
S e c r e t S t i c k 1
F i g u r e 1 : O n e v a r i a n t o n t h e p r o j e c t u s e s t h e U S B p r o g a d a p t e r w i t h a b u t t o n . P r e s s i n g t h e b u t t o n t r a n s f e r s t h e
p a s s w o r d .
F r o m t h e c o m p u t e r ' s p o i n t o f v i e w , t h e s t i c k i s a U S B k e y b o a r d , a n d m a n y o p e r a t i n g s y s t e m s h a v e d r i v e r
s u p p o r t f o r i t . W h e n t h e u s e r p r e s s e s t h e b u t t o n , t h e s t i c k o u t p u t s a p a s s w o r d t h a t i s g e n e r a t e d a c c o r d i n g t o t h e
m e t h o d s h o w n i n F i g u r e 2 .
F i g u r e 2 : T h e t o k e n r e f e r e n c e s t h e d a t a b l o c k a n d a s e r i a l n u m b e r t o c a l c u l a t e t h e o n e - t i m e p a s s w o r d , u s e s
A E S t o e n c r y p t , a n d p e r f o r m s s o m e t h i n g s i m i l a r t o B a s e 6 4 e n c o d i n g .
T h e O p e n K u b u s p r o j e c t h a s d e v e l o p e d a s e c o n d l a y o u t t h a t i s f u n c t i o n a l l y e q u i v a l e n t t o t h e p r e v i o u s o p e n
t o k e n . T h e O p e n K u b u s t o k e n f i t s i n a n e v e n s m a l l e r h o u s i n g a n d h a s f a r f e w e r p a r t s ( s e e F i g u r e 3 ) . T h e
m i c r o c o n t r o l l e r i s a n A T m e g a 1 6 U 4 , a n A T m e g a 1 6 w i t h a n i n t e g r a t e d U S B c o n t r o l l e r . T h e g o o d t h i n g a b o u t
t h e O p e n K u b u s o p t i o n i s t h a t y o u c a n p u r c h a s e a p r e b u i l t v e r s i o n o f t h e h a r d w a r e o n t h e w e b f o r a r o u n d E U R
2 5 [ 3 ] . T h i s p r e b u i l t t o k e n w i l l a l l o w y o u t o e x p e r i m e n t w i t h h a r d w a r e - b a s e d o n e - t i m e - p a s s w o r d s w i t h o u t
h a v i n g t o b u i l d y o u r o w n h a r d w a r e .
S e c r e t S t i c k 2
F i g u r e 3 : I f y o u a r e a f r a i d o f s o l d e r i n g , y o u c a n b u y a p r e b u i l t O p e n K u b u s s t i c k i n a h o u s i n g . T h i s v e r s i o n
i n c l u d e s t h e U S B d r i v e r i n i t s A T m e g a 1 6 U 4 m i c r o c o n t r o l l e r .
H o w I t W o r k s
T h e p r o g r a m r u n n i n g o n t h e s t i c k u s e s a 1 4 - b y t e d a t a b l o c k c o m p r i s i n g r a n d o m d i g i t s o r a s t i c k I D . T h e
m i c r o c o n t r o l l e r p r e p e n d s a 2 - b y t e s e r i a l n u m b e r . W h e n a u s e r p r e s s e s t h e b u t t o n , t h e m i c r o c o n t r o l l e r
c o n c a t e n a t e s t h e s e r i a l n u m b e r a n d t h e d a t a b l o c k a n d e n c r y p t s b o t h u s i n g a 2 5 6 - b i t k e y s t o r e d o n t h e s t i c k .
A n E E P R O M o n t h e c o n t r o l l e r c h i p s t o r e s t h e s e t h r e e d a t a s n i p p e t s .
T h e l a s t s t e p i s f o r O p e n K u b u s t o c o n v e r t t h e 1 6 b y t e s o f e n c r y p t e d o n e - t i m e p a s s w o r d t o p r i n t a b l e o r
t y p e a b l e c h a r a c t e r s a n d s e n d t h e m t o t h e U S B k e y b o a r d d r i v e r ( s e e F i g u r e 2 ) . B e c a u s e t h e s t i c k d o e s n o t
k n o w w h i c h k e y b o a r d v a r i a n t i s c u r r e n t l y a c t i v e o n t h e c o m p u t e r i t i s a t t a c h e d t o , i t s e n d s t h e k e y c o d e f o r a z
t o d i s t i n g u i s h b e t w e e n G e r m a n a n d E n g l i s h l a n g u a g e l a y o u t s .
L e t M e I n !
T o c h e c k t h e s e c r e d e n t i a l s , t h e o t h e r e n d n e e d s t h e d a t a b l o c k , t h e A E S k e y , a n d a s e r i a l n u m b e r . I t c o n v e r t s
t h e k e y b o a r d i n p u t b a c k i n t o t h e 1 6 b y t e s o f t h e o n e - t i m e p a s s w o r d a n d d e c r y p t s b y u s i n g t h e s y m m e t r i c A E S
k e y . T h e f i r s t t w o e n c r y p t e d o b j e c t s m u s t h a v e a h i g h e r v a l u e t h a n t h e o n e s t o r e d s e r v e r s i d e - t h i s a l l o w s t h e
s y s t e m t o d e t e c t r e p l a y a t t a c k s . I f O p e n K u b u s n e e d s t o a u t h e n t i c a t e a g a i n s t m o r e t h a n o n e d e v i c e , t h e s e r v e r s
n e e d t o s y n c h r o n i z e t h e s e r i a l n u m b e r s . B o t h t h e s e r v e r a n d t h e s t i c k t h e n i n c r e m e n t t h e s e r i a l n u m b e r . I n t h e
c u r r e n t s e t u p , t h e s e r v e r w i l l g o o n s t r i k e a f t e r 6 5 , 5 3 6 a p p l i c a t i o n s , a t w h i c h t i m e , t h e c u r r e n t f i r m w a r e d o e s a
w r a p a r o u n d .
O p e n K u b u s u s e s A V R - C r y p t o - L i b a s t h e c r y p t o g r a p h y l i b r a r y o n t h e s t i c k ; t h e l i b r a r y i n c l u d e s a l a r g e
c o l l e c t i o n o f c r y p t o g r a p h i c f u n c t i o n s f o r A t m e l m i c r o p r o c e s s o r s a n d t a k e s t h e m e a g e r f l a s h a n d R A M
r e s o u r c e s i n t o a c c o u n t . T h e l a r g e n u m b e r o f s u p p o r t e d a l g o r i t h m s e n a b l e s t h e u s e o f o t h e r c r y p t o g r a p h i c
m e t h o d s i f y o u a r e p r e p a r e d t o e x p e r i m e n t . O t h e r c h a n g e s , s u c h a s a d i f f e r e n t a p p r o a c h t o h a n d l i n g
w r a p a r o u n d o r a b i t s h i f t i n t h e d a t a b l o c k d r i v e n b y t h e s e r i a l n u m b e r , a r e a l s o p o s s i b l e .
S e t t i n g U p
A f t e r p u t t i n g t h e h a r d w a r e t o g e t h e r , o r o p e n i n g t h e p a c k a g e i f y o u o r d e r t h e O p e n K u b u s v e r s i o n , y o u n e e d t o
c o m p i l e t h e f i r m w a r e a n d t r a n s f e r i t t o t h e d e v i c e . I f y o u b o u g h t t h e l a t e s t O p e n K u b u s v e r s i o n ( s e e F i g u r e 4 ) ,
y o u c a n a l s o o m i t t h i s s t e p b e c a u s e t h e s o f t w a r e i s a l r e a d y i n p l a c e .
F i g u r e 4 : T h e n e w O p e n K u b u s v e r s i o n r e l i e s o n a n A T m e g a 1 6 U 4 , w h i c h a l s o d r i v e s t h e U S B s i d e .
T h e c o m m a n d
s v n c h e c k o u t h t t p : / / o p e n k u b u s . g o o g l e c o d e . c o m / s v n / t r u n k / o p e n k u b u s - r e a d - o n l y
S e c r e t S t i c k 3
p i c k s u p a c u r r e n t s n a p s h o t a n d d u m p s i t o n y o u r m a c h i n e [ 4 ] . A d d i t i o n a l l y , y o u n e e d t h e g c c - a v r a n d
b i n u t i l s - a v r p a c k a g e s f o r t h e A V R - G C C c r o s s c o m p i l e r [ 5 ] . T h e a v r d u d e p a c k a g e i n c l u d e s t o o l s f o r
t r a n s f e r r i n g f i r m w a r e . A l l o f t h e s e p a c k a g e s a r e a v a i l a b l e f r o m t h e D e b i a n r e p o s i t o r i e s ; y o u m i g h t n e e d t o
b u i l d t h e m f o r o t h e r d i s t r i b u t i o n s .
M o s t s u b d i r e c t o r i e s i n c l u d e s e p a r a t e m a k e f i l e s : T h e f i r m w a r e r e q u i r e s t h e c r y p t o g r a p h i c f u n c t i o n s , a n d m a k e
i n t h e f i r m w a r e / c r y p t o - l i b / d i r e c t o r y b u i l d s t h e m . O n t h e o t h e r h a n d , i f y o u w i l l b e u s i n g t h e U S B p r o g v a r i a n t ,
y o u n e e d t o b u i l d t h e f i r m w a r e i n t h e f i r m w a r e / s e c s t i c k _ v 1 / d i r e c t o r y .
F o r t h e s e c o n d O p e n K u b u s h a r d w a r e v e r s i o n , c h a n g e t o t h e f i r m w a r e / s e c s t i c k _ v 2 / d i r e c t o r y . T h e n r u n
a v r d u d e a n d a p r o g r a m m e r s u c h a s U S B p r o g t o t r a n s f e r t h e p r e b u i l t f i r m w a r e i m a g e , o p e n k u b u s . h e x , t o t h e
m i c r o c o n t r o l l e r ' s f l a s h m e m o r y . A s a n a l t e r n a t i v e , a n A t m e l M k I I w i l l h e l p y o u t r a n s f e r t h e s o f t w a r e ; t h e
U S B p o r t i s n o t e n a b l e d a t t h i s p o i n t .
L o a d e d a n d S e c u r e d
O p e n K u b u s i s n o w r e a d y , b u t i t d o e s n ' t k n o w y o u r s e c r e t s . T h e s t i c k - w r i t e t o o l i n f i r m w a r e / c r e a t e - s t i c k l o a d s
t h e t h r e e p i e c e s o f i n f o r m a t i o n i n t o t h e E E P R O M . A t o o l f o r p r e p a r i n g t h e s t i c k d o e s n o t e x i s t a s o f t h i s
w r i t i n g , s o s o m e m a n u a l w o r k i s n o w r e q u i r e d : T h e - p o p t i o n e x p e c t s 4 8 c h a r a c t e r s - 3 2 b y t e s o f A E S k e y , a
1 4 - d i g i t d a t a b l o c k , a n d t w o o c t e t s o f t h e f i r s t s e r i a l n u m b e r s , w i t h o u t a n y s e p a r a t o r s .
T h e t o o l u s e s U S B t o t r a n s f e r t h e c o m m a n d - l i n e a r g u m e n t s t o t h e s t i c k w i t h o u t c o n v e r t i n g t h e m . I f y o u w a n t
t o t r a n s f e r b i n a r i e s , y o u n e e d t o m o d i f y t h e s o u r c e c o d e . T h e - l o p t i o n t e l l s t h e f i r m w a r e n o t t o a c c e p t a n y
m o r e i n i t i a l p a s s w o r d s . O f c o u r s e , y o u c o u l d u s e t h e p r o g r a m m e r t o h a r d e n t h e s t i c k , b u t t h i s m e a n s t h a t i t
w i l l n o t a c c e p t f i r m w a r e u p d a t e s e i t h e r .
P A M ' s W e d d i n g
M o s t L i n u x d i s t r i b u t i o n s u s e P A M t o a u t h e n t i c a t e u s e r s . T h i s m e a n s t h a t y o u c a n t e a c h p r o g r a m s l i k e l o g i n o r
s s h d n e w a u t h e n t i c a t i o n m e t h o d s . O p e n K u b u s i n c l u d e s i t s o w n m o d u l e i n t h e s o f t w a r e / P A M / d i r e c t o r y t h a t
r e q u i r e s t h e P A M d e v e l o p e r f i l e s f r o m l i b p a m 0 g d e v . A c a l l t o m a k e i n s t a l l c o p i e s i t t o t h e / l i b / s e c u r i t y /
d i r e c t o r y a n d m o d i f i e s t h e p r i v i l e g e s . A f t e r c o m p l e t i n g t h e i n s t a l l a t i o n , a n d w o r k i n g a s r o o t , c o n f i g u r e t h e
m o d u l e s i n / e t c / p a m . c o n f o r i n t h e / e t c / p a m . d / d i r e c t o r y . A d d i n g
a u t h s u f f i c i e n t p a m _ o p e n k u b u s . s o
t o a u t h - c o m m o n t e l l s P A M t o a c c e p t t h e s t i c k [ 6 ] a s a n a l t e r n a t i v e i n t h e f u t u r e .
V e r i f y i n g P a s s w o r d s
T o v e r i f y t h e a u t h e n t i c i t y o f a p a s s w o r d , t h e P A M m o d u l e n e e d s t o k n o w t h e s t i c k ' s s e c r e t s . T o a l l o w t h i s t o
h a p p e n , t h e a d m i n i s t r a t o r w i l l s t o r e a l i n e m a t c h i n g t h e u s e r p a s s w o r d s e r i a l _ n u m b e r f o r m a t i n
/ e t c / o p e n k u b u s - p a s s w d . P A M c o m p a r e s t h e d a t a w i t h t h e i n p u t f r o m t h e s t i c k . M a k e s u r e t h e f i l e i s o n l y
r e a d a b l e b y t h e r o o t u s e r .
I f y o u w a n t t o c h e c k i n p u t f r o m O p e n K u b u s i n y o u r o w n a p p l i c a t i o n s w i t h o u t r e s o r t i n g t o P A M , t h e l e a n
O p e n K u b u s l i b r a r y i s a u s e f u l o p t i o n t h a t t h e p r o j e c t o f f e r s f o r m a n y p r o g r a m m i n g l a n g u a g e s . T h e l i b r a r y
i t s e l f i s w r i t t e n i n C , b u t t h e S W I G w r a p p e r g i v e s P y t h o n , R u b y , J a v a , P e r l , o r P H P a c c e s s t o i t s f u n c t i o n a l i t y
[ 7 ] . R i g h t n o w , t h e A P I o n l y i n c l u d e s t h e f o l l o w i n g f u n c t i o n :
i n t o p e n k u b u s _ a u t h e n t i c a t e ( c o n s t c h a r * p a d , c o n s t c h a r * p w , i n t o f f s e t , i n t n u m ) ;
T h i s f u n c t i o n e x p e c t s t h e o n e - t i m e p a s s w o r d t o c h e c k a s t h e f i r s t a r g u m e n t a n d t h e A E S k e y a s t h e s e c o n d .
T h e l a s t t w o a r g u m e n t s a r e a n o p t i o n a l s e r i a l n u m b e r o f f s e t ( w h i c h d e f a u l t s t o 0 ) a n d t h e s e r i a l n u m b e r i t s e l f .
I f s u c c e s s f u l , t h e f u n c t i o n r e t u r n s t h e s e r i a l n u m b e r ; i f n o t , i t r e t u r n s a n e g a t i v e v a l u e .
S e c r e t S t i c k 4
T h e l i b r a r y o n l y c h e c k s t h e p a s s w o r d ; i t d o e s n o t a c c e s s a f i l e . D e v e l o p e r s w h o u s e O p e n K u b u s n e e d t o
m a n a g e t h e c u r r e n t s e r i a l n u m b e r , t h e i n i t i a l p a s s w o r d , a n d t h e o f f s e t t h e m s e l v e s . T h e s a m p l e n e t w o r k s e r v e r
i n s o f t w a r e / s e r v e r / , w h i c h c o m p a r e s o n e - t i m e p a s s w o r d s w i t h a l i s t , g i v e s y o u a n i d e a o f h o w t o m a n a g e t h e s e
p a r a m e t e r s .
C o n c l u s i o n
T h e b e n e f i t s o f O p e n K u b u s i n c l u d e p o r t a b i l i t y a n d t h e a b i l i t y t o c u s t o m i z e h a r d w a r e w i t h o u t b r e a k i n g t h e
b a n k . T h e d r a w b a c k i s t h a t t h e s t i c k a n d a l l t h e s e r v e r s n e e d t o s y n c h r o n i z e t h e s e r i a l n u m b e r . I f y o u n e e d t o
a u t h e n t i c a t e a g a i n s t m u l t i p l e s e r v e r s , y o u w i l l n e e d a c e n t r a l s e r v e r . T o o l s f o r m a n a g i n g O p e n K u b u s i n l a r g e r
e n v i r o n m e n t s w i t h l a r g e n u m b e r s o f u s e r s a r e s t i l l r u d i m e n t a r y .
O p e n K u b u s w i l l n o t p r o t e c t y o u a g a i n s t m a n - i n - t h e - m i d d l e a t t a c k s [ 8 ] . T h e s e r v i c e y o u a r e c a l l i n g h a s t o
d e m o n s t r a t e a u t h e n t i c i t y s e p a r a t e l y . H o w e v e r , t h e p r o j e c t i s a n e x c i t i n g p l a t f o r m f o r a n y a d m i n i s t r a t o r
i n t e r e s t e d i n e x p e r i m e n t i n g .
I N F O
[ 1 ] " O n e - T i m e P a s s w o r d s " b y U d o S e i d e l , L i n u x M a g a z i n e , N o v e m b e r 2 0 0 8 , p g . 2 2
[ 2 ] U S B p r o g w i r i n g d i a g r a m : h t t p : / / w w w . e m b e d d e d - p r o j e c t s . n e t / u s b p r o g
[ 3 ] S h o p f o r O p e n K u b u s h a r d w a r e : h t t p : / / s h o p . e m b e d d e d - p r o j e c t s . n e t
[ 4 ] O p e n K u b u s : h t t p : / / c o d e . g o o g l e . c o m / p / o p e n k u b u s ( i n G e r m a n )
[ 5 ] I n s t a l l a t i o n n o t e s o n A V R - G C C : h t t p : / / w w w . n o n g n u . o r g / a v r - l i b c / u s e r - m a n u a l / i n s t a l l _ t o o l s . h t m l
[ 6 ] P A M c o n f i g u r a t i o n s y n t a x :
h t t p : / / k e r n e l . o r g / p u b / l i n u x / l i b s / p a m / L i n u x - P A M - h t m l / s a g - c o n f i g u r a t i o n - f i l e . h t m l
[ 7 ] W r a p p e r G e n e r a t o r S W I G : h t t p : / / w w w . s w i g . o r g /
[ 8 ] M a n - i n - t h e - m i d d l e a t t a c k s : h t t p : / / e n . w i k i p e d i a . o r g / w i k i / M a n - i n - t h e - m i d d l e _ a t t a c k
T H E A U T H O R
B e n e d i k t S a u t e r a n d M i c h a e l H a r t m a n n a r e b o t h i n t e r e s t e d i n o p e n s o u r c e a n d h a r d w a r e t i n k e r i n g . T h e
a u t h o r s b o t h w o r k o n c u s t o m i z i n g e m b e d d e d d e v i c e s f o r t h e O p e n K u b u s p r o j e c t .
S e c r e t S t i c k 5
Wyszukiwarka
Podobne podstrony:
2009 10 IMB ochrona przed korozjaEGZAMIN 2009 102009 10 27 WstÄp do SI [w 04]id&835Serie (5) Zadan Trudnych 2009 10 Osekowski p52009 10 STATYSTYKA PARAMETRY Z PROBYHistoria 2009 10 etap rejonowy odp10 secrets de traders pro2009 10 Playing Fetch Building a Dedicated Download System with Rtorrent2009 10 Programowanie przy uzyc Nieznany2009 10 OpenCV systemy wizyjn NieznanyK2 2009 10 zad 12009 10 Akwizycja i analiza pamiÄciE1 2009 10 zad 3Zagadnienia Egz 2009 102009 10 MousetrapsUlotka logo 2009 10wiÄcej podobnych podstron