¿Alguien sabe de una rutina MD5/SHA1/etc que se usa fácilmente con GLib (es decir, puede darle un GIOChannel, etc.)?rutinas MD5 que son amigables para GLib?
6
A
Respuesta
6
A menos que tenga una buena razón muy , utilice simplista de una función de MD5, SHA1 y SHA256 con implementaciones GChecksum
. No tiene una función incorporada para construir una suma de verificación a partir de una secuencia de IO, pero puede escribir una simple en 10 líneas, y de todos modos necesitará escribir una compleja.
2
normalmente tiene que hacer cosas pegamento biblioteca de ti mismo ...
void get_channel_md5(GIOChannel* channel, unsigned char output[16])
{
md5_context ctx;
gint64 fileSize = <get file size somehow?>;
gint64 filePos = 0ll;
gsize bufferSize = g_io_channel_get_buffer_size(channel);
void* buffer = malloc(bufferSize);
md5_starts(&ctx);
// hash buffer at a time:
while (filePos < fileSize)
{
gint64 size = fileSize - filePos;
if (size > bufferSize)
size = bufferSize;
g_io_channel_read(channel, buffer);
md5_update(&ctx, buffer, (int)size);
filePos += bufferSize;
}
free(buffer);
md5_finish(&ctx, output);
}
Cuestiones relacionadas
- 1. MySQL - mysqldump --rutinas solo para exportar 1 procedimiento almacenado (por nombre) y no todas las rutinas
- 2. glibc, glib y gnulib
- 3. php: SEO URLs amigables
- 4. Mono librarires gráficos amigables que no están muertos
- 5. Rutinas de cuadratura para densidades de probabilidad
- 6. .htaccess reescribir URLs amigables
- 7. Griales SEO URLs amigables
- 8. Biblioteca hash STM para C (glib?)
- 9. ¿Para qué es md5()?
- 10. Comprensión de las rutinas
- 11. ¿Qué rutinas comunes pone en su Program.cs para C#
- 12. Linux glib necesita pkg-config y pkg-config necesita glib?
- 13. instalando gtk y glib
- 14. Licencias de código abierto amigables para la empresa
- 15. bibliotecas de C++ que implementan Go rutinas o Go canales?
- 16. Perl expresiones regulares para que coincida con un hash MD5?
- 17. Herramientas de línea de comando robustas y amigables para .NET?
- 18. ¿Qué es exactamente Glib y Gobject?
- 19. ¿Qué tan portátil es GLib?
- 20. ¿Cómo son Crypt y Salt más seguros que MD5 contra un ataque de fuerza bruta?
- 21. posible recuperar el tiempo que queda en un evento glib '?'
- 22. cifrado php más corto que md5?
- 23. ¿Alguna investigación publicada indica que los ataques de preimagen en MD5 son inminentes?
- 24. ¿Cómo configurar glib en Makefile?
- 25. Obtenga direcciones URL amigables para trabajar en Liferay
- 26. Métricas de rendimiento en rutinas específicas: ¿cuales son las mejores prácticas?
- 27. Formateo de bytes amigables en Rails
- 28. Conseguir que el MD5 de Oracle coincida con el MD5 de PHP
- 29. algoritmo MD5 php que da mismo resultado que C#
- 30. Dbus/GLib Main Loop, Background Thread