Ir al contenido
getnextpdf.com

Premium edición

Dos canales de entrega: ionCube y código fuente firmado

NextPDF Pro y Enterprise se entregan en dos formas, y puedes considerarlas como dos canales para el mismo producto:

  • Codificado con ionCube — PHP instalable cuyo código fuente está codificado y se ejecuta a través del ionCube Loader en tiempo de ejecución.
  • Código fuente de texto plano firmado — código fuente PHP legible, firmado criptográficamente para que puedas verificar que es genuino y no ha sido modificado.

Ambos canales otorgan la misma licencia y los mismos derechos (el NextPDF Commercial License Agreement rige ambos, y el acceso al código fuente legible nunca constituye permiso para copiarlo o redistribuirlo). Existen porque dos tipos de cliente tienen dos problemas distintos que resolver, y fijamos el precio de cada canal según el compromiso que conlleva — no porque uno tenga más funcionalidades que el otro. Esta página explica el razonamiento, para que puedas elegir con conocimiento de causa. Para la configuración práctica de la compilación codificada, consulta Configurar el ionCube Loader.

Por qué proteger el código fuente es un problema real en PHP

Sección titulada «Por qué proteger el código fuente es un problema real en PHP»

PHP se distribuye y se ejecuta como código fuente. A diferencia de los lenguajes que se compilan a un binario opaco o a bytecode antes de distribuirse, el código fuente operativo de un paquete PHP es lo que instalas — el entorno de ejecución lo lee directamente. Esa es una de las grandes fortalezas de PHP: es transparente, fácil de inspeccionar, fácil de parchear, y buena parte de la razón por la que su ecosistema de código abierto es tan vibrante.

También es la razón por la que un proyecto PHP comercial tiene un problema de protección más difícil que sus equivalentes en otros entornos. La inversión que se dedica a un motor profundo y especializado — los años de trabajo sobre estándares, los casos límite, los conjuntos de pruebas — vive en código fuente que, por defecto, viaja en abierto. Esa inversión es un secreto comercial: el conocimiento práctico que financia el desarrollo continuo, y un activo que la ley reconoce y protege. Protegerlo no consiste en ocultarse de los usuarios; se trata de que el trabajo siga siendo financiable.

Por eso también la protección del código fuente es sencillamente más fácil en ecosistemas que distribuyen artefactos compilados o en bytecode — Java es el ejemplo habitual: la forma distribuida ya está un paso alejada del código fuente operativo, por lo que un proveedor comercial tiene menos que proteger. Eso ha facilitado financiar herramientas comerciales profundas y especializadas allí, mientras que gran parte del trabajo serio en PHP ha dependido, en cambio, de la buena voluntad de la comunidad de código abierto. No creemos que eso sea una ley de la naturaleza. PHP también merece herramientas profesionales, activamente mantenidas y a la altura de los estándares — y hacer que el código fuente sea defendible es lo que hace sostenible financiar ese trabajo.

La respuesta de NextPDF es un núcleo abierto con un premium de pago. El motor sobre el que construyes — nextpdf/core — es Apache-2.0 y permanece abierto; puedes leerlo, bifurcarlo y distribuirlo comercialmente. NextPDF Pro y Enterprise son las ediciones privadas, y los ingresos que generan son lo que paga el mantenimiento activo, la conformidad con los estándares y las próximas funcionalidades. Esa división es deliberada: nos permite atender a equipos que necesitan capacidades profesionales de nivel B2B y seguir siendo cercanos a los desarrolladores individuales, porque nosotros mismos empezamos siendo desarrolladores en solitario amantes del software libre. El razonamiento detrás de la mitad abierta se trata en Núcleo abierto, sin dependencia forzada; esta página trata de cómo te llega la mitad de pago.

El canal ionCube — protección que mantiene el precio bajo

Sección titulada «El canal ionCube — protección que mantiene el precio bajo»

Para la mayoría de los clientes, el canal codificado con ionCube es la opción por defecto. Codificar el código fuente — una forma reconocida de elevar el coste de la manipulación y la apropiación indebida — nos permite proteger el código premium con mucha menos carga: menos manejo de código fuente a medida, menos administración de distribución y acceso, y una carga legal y de exigencia de cumplimiento más ligera que proteger código fuente de texto plano a escala. Esos ahorros son reales, y los trasladamos a ti.

El compromiso es un modesto coste en tiempo de ejecución: el Loader decodifica los archivos codificados a medida que PHP se ejecuta, lo que añade cierta sobrecarga. Reflejamos ese compromiso en el precio para que puedas evaluarlo con honestidad en lugar de descubrirlo más tarde. En la práctica, la sobrecarga suele ser pequeña y a menudo insignificante en despliegues típicos — y prácticamente irrelevante en un host que ya ejecuta el ionCube Loader para otro software. Las cargas de trabajo sensibles al rendimiento deberían medirlo frente a su propio perfil; para la gran mayoría de los despliegues, el canal codificado es sencillamente la opción de menor coste, que es justo el equilibrio entre oferta y demanda que buscamos. Configurar el Loader es un paso único, documentado en Configurar el ionCube Loader.

El canal de código fuente firmado — para regulación, auditoría y garantía de la cadena de suministro

Sección titulada «El canal de código fuente firmado — para regulación, auditoría y garantía de la cadena de suministro»

Algunos clientes no pueden aceptar código codificado en su entorno de ejecución. Las organizaciones sujetas a una regulación estricta, o con requisitos estrictos de seguridad de la cadena de suministro y de auditoría, necesitan leer, revisar y verificar lo que ejecutan — y suelen disponer del presupuesto que esos requisitos implican. Para ellas ofrecemos el canal de código fuente de texto plano firmado: las mismas ediciones entregadas como código fuente legible, firmado criptográficamente para que su origen e integridad puedan verificarse.

Eso se corresponde directamente con cómo la seguridad moderna de la cadena de suministro espera que se maneje el software: código fuente entregado en un paquete firmado digitalmente, firmas verificadas antes de su uso, y código fuente revisable preferido frente a un artefacto opaco para la garantía y la auditoría (NIST SP 800-204D). Aquí el código no está protegido por codificación — está protegido por la ley y el contrato: sigue siendo el secreto comercial confidencial de PATEON, la empresa detrás de NextPDF, y lo que puedes y no puedes hacer con él lo establece el NextPDF Commercial License Agreement. Poder leer el código fuente nunca constituye permiso para copiarlo, redistribuirlo ni relicenciarlo.

Este canal cuesta más, y la razón es la inversa de la del de ionCube: elimina la sobrecarga en tiempo de ejecución, pero traslada de nuevo la carga de protección al contrato, la confianza y la administración — que es el coste que asumimos para que los clientes obligados al cumplimiento puedan cumplir sus obligaciones.

Los canales también se diferencian en cómo se comprueba la licencia mientras tu aplicación se ejecuta, y para los despliegues sin conexión o aislados (air-gapped) este suele ser el factor decisivo.

El canal ionCube verifica su licencia periódicamente en línea. Una compilación premium entregada a través del canal codificado se comunica con el servicio de licencias de NextPDF con una cadencia regular — aproximadamente una comprobación de 7 días que renueva un arrendamiento de unos 14 días. Mientras el despliegue pueda alcanzar el servicio dentro de esa ventana, todo funciona con normalidad. Si permanece sin conexión más allá del arrendamiento, las funcionalidades premium se pausan y el motor recae en el Core gratuito — no se detiene, no da error ni se bloquea — y se reanudan automáticamente en cuanto vuelve la conectividad. Ese arrendamiento en línea es también lo que hace exigible el número de asientos licenciados y permite que una revocación surta efecto dentro de la ventana del arrendamiento (unos 14 días, más un breve periodo de gracia). Una comprobación envía únicamente un identificador de licencia y un hash de huella con sal (salted fingerprint hash) — nunca el contenido de tus documentos, ni una huella en bruto ni una dirección IP.

El canal de código fuente firmado puede ejecutarse totalmente sin conexión. Como su licencia firmada es un artefacto autónomo que el motor verifica localmente, el canal de código fuente firmado no necesita ninguna conectividad periódica y se adapta a los despliegues aislados (air-gapped), limitado únicamente por la propia validez de la licencia. Aquí el número de asientos es un límite contractual fijado por tu acuerdo, en lugar de algo que se aplica en tiempo de ejecución; una revocación surte efecto en la siguiente comprobación en línea o mediante una actualización del producto, y un despliegue puramente sin conexión no envía nada en absoluto.

Dos relojes distintos — no los confundas. El arrendamiento de unos 14 días del canal ionCube tiene que ver con la conectividad — cuánto tiempo tolera un despliegue estar sin conexión. Es independiente del periodo de gracia de unos 30 días que cualquiera de los canales concede tras la fecha de finalización de una suscripción, durante el cual las funcionalidades premium siguen funcionando mientras renuevas, antes de que el motor recaiga en el Core. El vencimiento de un arrendamiento y la expiración de una suscripción son eventos diferentes en temporizadores diferentes.

Sea cual sea el canal que ejecutes, el modo de fallo es el mismo y siempre seguro: NextPDF se degrada al Core gratuito y de código abierto. Nunca se inutiliza, nunca te bloquea el acceso a un software que ya has desplegado y nunca se detiene a mitad de ejecución.

Los dos canales no son dos productos. Otorgan derechos de licencia idénticos y el mismo software; la diferencia está en cómo se protege el código fuente, cómo se comprueba la licencia en tiempo de ejecución y qué cuesta eso:

Codificado con ionCubeCódigo fuente de texto plano firmado
Qué ejecutasPHP codificado, a través del ionCube LoaderCódigo fuente PHP legible y firmado
Cómo se protege el código fuenteCodificación (una medida tecnológica) más la licenciaLa licencia y la ley de secreto comercial (sin codificación)
Mejor paraLa mayoría de los despliegues; menor costeNecesidades de regulación / auditoría / seguridad de la cadena de suministro
Coste en tiempo de ejecuciónUna pequeña sobrecarga del Loader (a menudo insignificante; mídela en cargas sensibles al rendimiento)Ninguno añadido por nosotros
Comprobación de licencia en líneaPeriódica (comprobación de ~7 días, arrendamiento de ~14 días)Opcional; verifica localmente y se ejecuta sin conexión
Sin conexión / aislado (air-gapped)Hasta la ventana del arrendamiento; después las funcionalidades premium se pausan al Core (se reanudan automáticamente al reconectar)Totalmente compatible; sin conectividad periódica
Número de asientosAplicado mediante el arrendamiento en líneaContractual (según tu acuerdo); no se aplica en tiempo de ejecución
La revocación surte efectoDentro de la ventana del arrendamiento (~14 días + breve periodo de gracia)En la siguiente comprobación en línea, o mediante una actualización del producto
Datos de licencia enviadosSolo el ID de licencia + hash de huella con sal (nunca contenido, IP ni huella en bruto)Nada cuando está totalmente sin conexión
DerechosIdénticos — consulta el EULAIdénticos — consulta el EULA

El precio refleja ese compromiso entre protección y tiempo de ejecución, no una diferencia de funcionalidades. Para los precios y las ediciones actuales, consulta Compra y licencias y la página de precios enlazada desde ahí; esta página de documentación deliberadamente no reproduce los precios ni los términos de la licencia.

Preferiríamos que el ecosistema de PHP tuviera más herramientas serias, bien financiadas y mantenidas profesionalmente — y menos proyectos que se agotan en silencio porque no había una forma sostenible de financiar la profundidad que necesitaban. Proteger el código fuente es lo que nos permite invertir en esa profundidad mientras mantenemos el núcleo abierto y el canal codificado asequible. Y como la confianza se gana, intentamos ser transparentes precisamente sobre esto: qué protege cada canal, qué te cuesta y por qué — para que el compromiso sea tuyo a la hora de sopesarlo, no nuestro a la hora de ocultarlo.