Hi, we are working on distributing a SAS application. With SAS application we mean a bunch of SAS programs containing Base SAS Procedures / Datasteps / Macros) and some SAS tables. We want to make sure that nobody can steal our intellectual property. So far we have come up with the usual solution of using compiled macros to hide source code, and with encrypting and password protecting SAS datasets/tables. Now we realize that we are using formats generously in the application, and they contain some of our key intellectual property. We have googled around a bit: there seems to be neither encryption nor password protection for SAS catalogs (i.e. for format entries in formats.sas7bcat) We think that a MALICIOUS_USER could copy the SAS formats while the program is running and – with some work – figure out some of our - er – secrets. So far we are thinking along two lines: 1) We could do some aggressive setting up and deleting of formats within the SAS code 2) Is there a way to load the SAS formats into memory (RAM) for the duration of a SAS session (or even only for the duration of a Data step or Proc step and deleting the SAS macro catalog? Any ideas and suggestions would be appreciated. Yours truly, SASMeister (currently not feeling like a SASMeister) Note: We have SAS (r) Proprietary Software 9.4 (TS1M3) This session is executing on the X64_SRV12 platform (Windows Server 2012 R2 Standard / 64-bit Windows) Late addition: Re: my thinking line #2: I thought of a way to test if a format can be used in absence of its FORMATS catalog. The answer is NO. Run the attached code to see for yourself...
... View more