fcmpact addPrototypes

Registro Seguro y Codificado de Algoritmos Genómicos

Scénario de test & Cas d'usage

Contexto empresarial

Una empresa de biotecnología distribuye un paquete de algoritmos genómicos a sus clientes para ser usados en SAS Viya. Es crucial que la lógica de negocio, representada por las firmas de las funciones, esté protegida. Este escenario prueba la capacidad de registrar prototipos de forma segura, codificando las definiciones para proteger la propiedad intelectual.
Sobre el conjunto : fcmpact

Ejecución de funciones SAS FCMP en el entorno CAS.

Descubrir todas las acciones de fcmpact
Preparación de datos

Se definen múltiples prototipos de funciones complejas para simular un paquete de software propietario.

¡Copiado!
1/* Los prototipos representan funciones para análisis de secuencias de ADN, como 'findGeneSequence' y 'calculateMutationRate'. */

Étapes de réalisation

1
Añadir dos prototipos de funciones genómicas al paquete 'BioSeqAnalytics'. Utilizar la opción 'encode' para ofuscar las definiciones.
¡Copiado!
1PROC CAS;
2 fcmpact.addPrototypes /
3 package="BioSeqAnalytics",
4 routineCode={
5 "proto findGeneSequence(string, string) returns int;",
6 "proto calculateMutationRate(double[], double) returns double;"
7 },
8 encode=true,
9 saveTable=true,
10 funcTable={name="genomics_protos_encoded", caslib="casuser", replace=true};
11QUIT;
2
Intentar visualizar el contenido de la tabla generada para verificar que las definiciones de los prototipos no son legibles por humanos.
¡Copiado!
1 
2PROC CAS;
3TABLE.fetch / TABLE={caslib="casuser", name="genomics_protos_encoded"};
4QUIT;
5 

Resultado esperado


Se creará la tabla 'genomics_protos_encoded'. Al inspeccionar su contenido, las columnas que contienen la definición del prototipo ('_Proto_', '_Package_') deben mostrar valores codificados o encriptados, no el texto plano 'proto findGeneSequence...'. Esto confirma que la opción 'encode' protege eficazmente la propiedad intelectual.