No hay derechos de autor en algoritmos . Los algoritmos son como ideas; El tipo de propiedad intelectual que se aplica a ellos es las patentes, no los derechos de autor. Hay algunos algoritmos criptográficos que están patentados, pero la mayoría no lo están y algunos están acostumbrados a ser patentados (pero las patentes finalmente expiran). Ni DES, AES, Blowfish o Twofish están patentados. Un ejemplo de sistema de cifrado simétrico patentado es IDEA (la patente de EE. UU. Caducará en 2012). El algoritmo RSA (cifrado asimétrico y firmas digitales) fue patentado, pero la patente expiró hace diez años. Básicamente, si un algoritmo criptográfico se pone a disposición a través de una máquina virtual Java ya instalada, es probable que no esté patentada (ni más ni menos).
Puede haber derechos de autor en implementaciones . El uso de una implementación que ya existe no se ve afectada por los derechos de autor (es un derecho de autor, no un manual de usuario). Debe preocuparse por los derechos de autor cuando incluya el código externo en su aplicación, no cuando use el código externo proporcionado por la VM Java instalada a través de su API publicada.
Los sistemas de software pueden ser controlados mediante licencias . Uno podría imaginar una licencia específica que prohíba el uso de parte del software dependiendo del contexto de uso o simplemente de cualquier condición arbitraria. Uno podría imaginar tal licencia de software en la implementación de un algoritmo criptográfico. Este sería el problema de quien usa su software, no su problema. La licencia de Java VM es la que se aplica aquí. Pero, que yo sepa, no hay restricción de uso en los componentes de Java VM, ya sean criptográficos o no. El proveedor de VM generalmente no desea restringir el uso de su API.
Se pueden aplicar
leyes locales locales, especialmente en lo que respecta al cifrado. Según el país, las leyes pueden limitar el uso, la distribución, la exportación y / o la importación de software mediante algoritmos criptográficos. La máquina virtual Java (al menos, la de Sun / Oracle) incluye un sistema de permisos y reglas de seguridad relativamente complejo que determina qué algoritmos están disponibles y con qué longitud de clave. Por lo tanto, se puede suponer que cualquier algoritmo que esté disponible para las aplicaciones por parte de la máquina virtual ya se ha ajustado con respecto a la longitud de las claves para cumplir con las leyes locales. Siempre puede haber excepciones en algunas situaciones (si usted es un agente de Corea del Norte que trabaja arduamente en la construcción de una bomba nuclear en algún lugar de Dakota del Sur, el uso de algoritmos criptográficos, incluso si la VM de Java instalada lo proporciona legalmente, puede implicar algunos años adicionales de la cárcel cuando el FBI te atrapa). En términos prácticos, debe verificar las leyes de exportación de su país si distribuye software que proporciona algún tipo de servicio de encriptación, especialmente si lo coloca en un sitio web.
Resumen: no hay ninguna preocupación relacionada con la propiedad intelectual sobre el uso de algoritmos criptográficos proporcionados por la máquina virtual Java. Debe realizar algunas consultas acerca de las regulaciones sobre la distribución y exportación de software criptográfico. Puede comenzar por las páginas de Wikipedia en crypto exportar y import .