private String encode ( ) { byte [ ] pack = new byte [ 4 + m_bits . length ] ; pack [ 0 ] = ( byte ) ( ( FP_SIZE & 0xffffffff ) >> 24 ) ; pack [ 1 ] = ( byte ) ( ( FP_SIZE & 0x00ffffff ) >> 16 ) ; pack [ 2 ] = ( byte ) ( ( FP_SIZE & 0x0000ffff ) >> 8 ) ; pack [ 3 ] = ( byte ) ( FP_SIZE & 0x000000ff ) ; for ( int i = 0 ; i < m_bits . length ; ++ i ) { pack [ i + 4 ] = m_bits [ i ] ; } return base64Encode ( pack ) ; }
the first four bytes contains the length of the fingerprint