Hace poco estuve buscando un archivo de configuración que guardaba algunos valores crípticos. Por casualidad, tenía la fuente disponible, así que eché un vistazo a lo que estaba haciendo, y estaba guardando un montón de valores diferentes y cambiando los unos a los otros. Me desconcertó por qué alguien haría eso. Mi pregunta, entonces, es: ¿hay una ventaja obvia para almacenar datos numéricos de esta manera? Puedo ver cómo podría almacenar un valor un poco más pequeño, en bytes, pero parece mucho trabajo ahorrar un par de bytes de almacenamiento. También parece que sería significativamente más lento.¿Por qué cambiar de bit?
La otra posibilidad que se me ocurrió es que se utilizó con fines de ofuscación. ¿Es este un uso común de cambio de bit?
ofuscación por desplazamiento de bits podría ser uno de los medios menos efectivos – KevinDTimm
@KevinDTimm Una vez vi un archivo de configuración que se generó poniendo cada otro carácter en un búfer separado, y luego combinando los dos. Entonces el archivo 'configParam = true' se convirtió en' cnfgaa reofiPrm = tr'. Ahora, por un solo parámetro, podría parecer lo suficientemente ofuscado como para no darse cuenta de inmediato. Para que un archivo completo sea de esa manera, el patrón era bastante obvio. Lo único, no era solo un archivo de configuración, era un archivo de licencia ... Mmmhmm ... Supongo que simplemente tenerlo como texto sin formato e imponer una firma hash era demasiado complejo para ellos ... – corsiKa