El plugin que le gustaría tener tendría que estar en el lado del cliente (Obviamente, si no confía en las personas que tienen acceso al repositorio alojado). Cualquier algoritmo criptográfico fuerte genera grandes variaciones en la salida de una entrada muy similar (debido a su alta entropía).
Esto significa que incluso si usted tiene una solución:
- sería un desastre en términos de rendimiento, tanto los requisitos de tiempo de cálculo y espacio de almacenamiento y ancho de banda de red de uso y
- un desastre en función Pérdida: las diferencias del lado del servidor se romperían, por ejemplo, tendría que realizar todas las operaciones en los archivos completamente descifrados en el lado del cliente.
cifrado débil (mangling el juego de caracteres, por ejemplo, que haría que las diferenciaciones utilizable de nuevo) no es seguro, especialmente con el código fuente, donde los apoyos y soportes y desde allí bucles y cualesquiera otras cartas pueden ser decodificados de forma extremadamente rápida.
Espero que esto demuestre que ir de esta manera no conduce a ninguna posible solución práctica. Tal vez me estoy perdiendo algo. ¡Espero leer comentarios interesantes sobre mi respuesta! :-)
Debería ser posible (en algunos sistemas de control de revisiones, dependiendo de cómo funcionan internamente): Si la revisión el sistema de control almacena los deltas (no las revisiones), y no te importa filtrar cuántas revisiones hay. Luego podría encriptar los deltas y luego verificarlos en otro repositorio. Ahora puedo ver la historia (tal vez registrar comentarios, dependiendo de la política), sin la clave. Pero necesitas la clave para ver algo más. Diffs funcionará bien, y el tamaño del repositorio no se verá afectado adversamente, ya que la compresión del repositorio aún funciona como se hace localmente, antes de la encriptación. –