Documentos de Académico
Documentos de Profesional
Documentos de Cultura
All attempts have been made to make the information in this document complete and accurate. Aladdin is not responsible for any direct or indirect damages or loss of business resulting from inaccuracies or omissions. The specifications in this document are subject to change without notice.
ii
iii
2. License
Subject to payment of applicable license fees, Aladdin hereby grants to you, and you accept, a personal, nonexclusive and fully revocable limited License to use the Software, in executable form only, as described in the Software accompanying user documentation and only according to the terms of this Agreement: (i) you may install the Software and use it on computers located in your place of business, as described in Aladdin's related documentation; (ii) you may merge and link the Software into your computer programs for the sole purpose described in the Developer's Guide; however, any portion of the Software merged into another computer program shall be deemed as derivative work and will continue to be subject to the terms of this Agreement; and
iv
(iii) you are permitted to make a reasonable number of copies - but not more than three (3) - of the Software solely for development and backup purposes. The Software shall not be used for any other purposes.
3. Sub-Licensing
After merging the Software in your computer program(s) according to section 2 above, you may sub-license, pursuant to the terms of this Agreement, the merged Software and resell the hardware components of the HASP keys which you purchased from Aladdin, to distributors and/or users. Preceding such a sale and sub-licensing, you shall incorporate by reference in your contracts with such distributors and/or users, and otherwise provide for all distributors and/or users to be bound by, the warranties, disclaimers, and license terms specified by Aladdin in this Agreement.
4. Prohibited Uses
Except as specifically permitted in Sections 1, 2 and 3 above, you agree not to (i) use, modify, merge or sub-license the Software or any other of Aladdin's products except as expressly authorized in this Agreement and in the Developer's Guide; and (ii) sell, license (or sub-license), lease, assign, transfer, pledge, or share your rights under this License with/to anyone else; and (iii) modify, disassemble, decompile, reverse engineer, revise or enhance the Software or attempt to discover the Software's source code; and (iv) place the Software onto a server so that it is accessible via a public network; and
(v) use any back-up or archival copies of the Software (or allow someone else to use such copies) for any purpose other than to replace an original copy if it is destroyed or becomes defective. If you are a member of the European Union, this agreement does not affect your rights under any legislation implementing the EC Council Directive on the Legal Protection of Computer Programs. If you seek any information within the meaning of that Directive you should initially approach Aladdin.
5. Limited Warranty
Aladdin warrants, for your benefit alone, that (i) the Software, when and as delivered to you, and for a period of three (3) months after the date of delivery to you, will perform in substantial compliance with the Developer's Guide, provided that it is used on the computer hardware and with the operating system for which it was designed; and (ii) that the HASP key, for a period of twelve (12) months after the date of delivery to you, will be substantially free from significant defects in materials and workmanship.
6. Warranty Disclaimer
ALADDIN DOES NOT WARRANT THAT ANY OF ITS PRODUCT(S) WILL MEET YOUR REQUIRMENTS OR THAT ITS OPERATION WILL BE UNINTERRUPTED OR ERROR-FREE. TO THE EXTENT ALLOWED BY LAW, ALADDIN EXPRESSLY DISCLAIMS ALL EXPRESS WARRANTIES NOT STATED HERE AND ALL IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. NO ALADDIN'S DEALER, DISTRIBUTOR, RESELLER, AGENT OR EMPLOYEE IS AUTHORIZED TO MAKE ANY MODIFICATIONS, EXTENSIONS, OR ADDITIONS TO THIS WARRANTY. If any modifications are made to the Software or to any other part of the Product by you during the warranty period; if the media and the HASP key is subjected to
vi
accident, abuse, or improper use; or if you violate any of the terms of this Agreement, then the warranty in Section 5 above, shall immediately be terminated. The warranty shall not apply if the Software is used on or in conjunction with hardware or program other than the unmodified version of hardware and program with which the Software was designed to be used as described in the Developer's Guide.
7. Limitation of Remedies
In the event of a breach of the warranty set forth above, Aladdin's sole obligation shall be, at Aladdin's sole discretion: (i) to replace or repair the Product, or component thereof, that does not meet the foregoing limited warranty, free of charge; (ii) to refund the price paid by you for the Product, or component thereof. Any replacement or repaired component will be warranted for the remainder of the original warranty period or 30 days, whichever is longer. Warranty claims must be made in writing during the warranty period and within seven (7) days of the observation of the defect accompanied by evidence satisfactory to Aladdin. All Products should be returned to the distributor from which they were purchased (if not purchased directly from Aladdin) and shall be shipped by the returning party with freight and insurance paid. The Product or component thereof must be returned with a copy of your receipt.
vii
EARNINGS, LOST PROFITS OR GOODWILL AND LOST OR DAMAGED DATA OR DOCUMENTATION, SUFFERED BY ANY PERSON, ARISING FROM AND/OR RELATED WITH AND/OR CONNECTED TO ANY USE OF THE SOFTWARE AND/OR ANY COMPONENT OF THE PRODUCT, EVEN IF ALADDIN IS ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
9. Limitation Of Liability
IN THE EVENT THAT, NOTWITHSTANDING THE TERMS OF THIS AGREEMENT, ALADDIN IS FOUND LIABLE FOR DAMAGES BASED ON ANY DEFECT OR NONCONFORMITY OF ITS PRODUCT(S), ITS TOTAL LIABILITY FOR EACH DEFECTIVE PRODUCT SHALL NOT EXCEED THE PRICE PAID TO ALADDIN FOR SUCH DEFECTIVE PRODUCT.
11. Termination
Your failure to comply with the terms of this Agreement shall terminate your license and this Agreement. Upon termination of this License Agreement by Aladdin: (i) the License granted to you in this Agreement shall expire and you, upon termination, shall discontinue all further use (including without limitation sub-licensing) of the Software and other licensed Product(s); and
viii
(ii) you shall promptly return to Aladdin all tangible property representing Aladdin's intellectual property rights and all copies thereof and/or shall erase/delete any such information held by it in electronic form. Sections 1, 4, 6, 7, 8, 9, 10, 11 and 12 shall survive any termination of this Agreement.
14. Miscellaneous
This Agreement represents the complete agreement concerning this License and may be amended only by a written agreement executed by both parties. If any provision of this Agreement is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. I HAVE READ AND UNDERSTOOD THIS LICENSE AGREEMENT AND AGREE TO BE BOUND BY ALL OF THE TERMS.
ix
CE Compliance
The HASP product line complies with the CE EMC Directive and related standards*. HASP products are marked with the CE logo and a HASP CE conformity card is included in every shipment or upon demand. *EMC directive 89/336/EEC and related standards EN 55022, EN 50082-1.
FCC Compliance
FCC authorities have determined that HASP is not a Class B Computing Device Peripheral and therefore does not require FCC regulation.
Y2K Compliance
The HASP product line is Year 2000 (Y2K) compliant. Y2K compliance means that HASP products will record, store, process and present calendar dates falling on or after January 1, 2000 in the same manner, and with the same functionality, as it records, stores, processes, and presents calendar dates falling on or before December 31, 1999. We supply a Y2K compliance card with every shipment or upon demand.
UL Certification
The HASP product line successfully completed UL 94 Tests for Flammability of Plastic Materials for Parts in Devices and Appliances. HASP products comply with UL 1950 Safety of Information Technology Equipment regulations.
Certificate of Compliance
Upon request, Aladdin Knowledge Systems, Inc. will supply a Certificate of Compliance to any software developer who wishes to demonstrate that the HASP product line conforms to the specifications stated. Software developers can distribute this certificate to the end user along with their programs.
xi
Contenido
Lista de Tablas........................................................................................ xix Acerca de la Gua del Programador HASP ...................................... xxi Parte 1 - Inicio a HASP ........................................................................... 1
Introduccin........................................................................ 3 Acerca de HASP................................................................... 3 Ventajas del Sistema HASP .................................................. 4 Llaves de Proteccin HASP ................................................... 8 La Familia HASP ................................................................ 29 Kit de Evaluacin HASP ...................................................... 11 Kit de Iniciacin HASP ........................................................ 11 Conceptos Bsicos de HASP.................................................. 13 Cmo trabaja HASP?......................................................... Identificacin de la llave HASP ............................................. Mtodos de Proteccin HASP.............................................. El Full Authorization System (FAS) ...................................... Preguntas Frecuentes (FAQ)................................................ 14 15 19 20 22
Instalacin de HASP ....................................................... 25 Software HASP................................................................. 25 Proteccin de Software Referencia Rpida........................ 28 Instalacin de HASP bajo Windows ................................... 29 Instalacin de HASP bajo Mac .......................................... 32
Instalacin de HASP bajo Linux .................................................................... 35 xiii
Contenido
xiv
Contenido
Servicio 60: HaspEncodeData............................................... 149 Servicio 61: HaspDecodeData. ..................................... 150 Servicios de HASP4 Memoria............................................... 151 Servicio 3: ReadWord .......................................................... Servicio 4: WriteWord .......................................................... Servicio 6: HaspID ............................................................... Servicio 50: ReadBlock ........................................................ Servicio 51: WriteBlock........................................................ 154 155 156 157 158
Servicios de HASP4 Time..................................................... 159 Servicio 70: SetTime............................................................ Servicio 71: GetTime............................................................ Servicio 72: SetDate............................................................ Servicio 73: GetDate............................................................ Servicio 74: WriteByte ......................................................... Servicio 75: ReadByte.......................................................... Servicio 76: WriteBlock........................................................ Servicio 77: ReadBlock ........................................................ Servicio 78: HaspID ............................................................. 162 163 164 165 166 167 168 169 170
Servicios de HASP4 Net . ...............171 Uso de los servicios HASP4 Net ........................................... 172 Servicio 40: LastStatus ........................................................ 176 Servicio 42: Login ................................................................ 177 Servicio 43: Logout .............................................................. 179 Servicio 44: ReadWord......................................................... 181 Servicio 45: WriteWord ........................................................ 182 Servicio 46: HaspID ............................................................. 183 Servicio 48: IdleTime............................................................ 184 Servicio 52: ReadBlock ........................................................ 186 Servicio 53: WriteBlock........................................................ 188 Servicio 85: SetConfigFilename............................................. 190 Servicio 88: HaspEncodeData...................... 191 Servicio 89: HaspDecodeData. .............................. 193 Servicio 96: SetServerByName ............................................. 195 Servicio 104: HaspQueryLicense ........................... 196
xv
Contenido
Cdigos de Status del API de HASP..................................... 197 Cdigos de Status para todas las llaves HASP ...................... 197 Cdigos de Status para las llaves HASP4 Time ...................... 199 Cdigos de Status para las llaves HASP4 Net .................... 200
xvi
Contenido
Adaptacin de HASP4 Net a la red ...................................... 263 Definicin del rango de estaciones bajo IPX . .......................... 263 Definicin del rango de estaciones bajo TCP/IP ...................... 264 Definicin del rango de estaciones bajo NetBIOS . .................. 266 Adaptacin de Timeout . ....................................................... 267
Passwords de Demos HASP .............................................................313 Especificaciones Tcnicas ................................................................315 Glosario .......................................................................................319 Indice . ..................................................................................325
xvii
Lista de Tablas
Modelos HASP ..................................................................................................... 8 Herramientas de instalacin del Device Driver ................................................... 29 Parmetros de lnea de comando para aksusbd (Mac) .......................................... 33 Parmetros de lnea de comando para aksparlnx.o (Linux) .................................. 37 Parmetros de lnea de comando para aksusbd (Linux)........................................ 39 Opciones de la pestaa Main de la Envelope HASP ............................................. 54 Opciones de la pestaa Options de la Envelope HASP.......................................... 57 Opciones de la pestaa DataHASP de la Envelope HASP ..................................... 62 Motores de la Envelope HASP............................................................................. 65 Parmetros de la Envelope HASP ....................................................................... 65 Panel Key Access History ................................................................................. 111 Parmetros para las llaves HASP monopuesto .................................................. 118 Parmetros para las llaves HASP4 Net............................................................. 118 Valores PortNum y Puertos de bsqueda .......................................................... 119 Modelos HASP y Servicios Relacionados............................................................ 122 Servicios Bsicos HASP .................................................................................... 123 Servicios de HASP4 Memory............................................................................. 124 Servicios de HASP4 Time ................................................................................. 125 Servicios de HASP4 Net.................................................................................... 126 Servicios y Parmetros Bsicos HASP............................................................... 144 Servicios y Parmetros de HASP4 Memoria...................................................... 152 Servicios y Parmetros de HASP4 Time............................................................ 160 Servicios y Parmetros de HASP4 Net.............................................................. 173 Cdigos de Status para todas las llaves HASP.................................................... 197 Cdigos de Status para las llaves HASP4 Time.................................................. 199 Cdigos de Status para las llaves HASP4 Net ................................................. 200 Cdigos de Aviso para las llaves HASP4 Net ...................................................... 204 Plataformas soportadas por HASP4 Net . ........................................................... 217 Protocolos de HASP4 Net . ................................................................................ 217 Parmetros para HASP4 Net con la Envelope HASP . ........................................ 223 Servicios API de HASP4 Net.............................................................................. 224 Parmetros del Administrador de Licencias HASP . ........................................... 236 Cdigos de error de la instalacin API del Administrador de Licencias HASP. .... 244 Orden de Bsqueda del Archivo de Configuracin .............................................. 248
xix
Lista de Tablas
Informacin del Administracin de Licencias HASP . ......................................... 259 Informacin de la llave HASP . .......................................................................... 260 Informacin HASP ............................................................................................ 261 Tabla de Programas .......................................................................................... 261 Tabla de Logins. ................................................................................................ 261 Parmetros de lnea de comando de la utilidad Vendor ...................................... 282 Cdigos de error de la utilidad Vendor ............................................................... 284 Parmetros de lnea de comando de la utilidad Customer .................................. 289 Cdigos de error de la utilidad Customer............................................................ 290 Passwords de las llaves HASP Demo de Memoria............................................... 313 Passwords de las llaves Demo HASP4 Std .......................................................... 313 Especificaciones generales para todas las llaves HASP ....................................... 315 Especificaciones para HASP4 Std, HASP4 M1, HASP4 M4, HASP4 Net.............. 316 Especificaciones para HASP4 Time .................................................................... 316 Especificaciones para los modelos USB............................................................... 317 HASP PC-Card................................................................................................... 317 AladdinCARD ISA .............................................................................................. 318 AladdinCARD PCI .............................................................................................. 318
xx
xxi
La quinta parte, Uso del Sistema de Actualizacin Remota (RUS) (pgina 269), le ofrece informacin sobre las herramientas y APIs que le permiten actualizar remotamente las llaves HASP de sus clientes. Para ayudarle a entender el sistema HASP con mayor profundidad, se incluye un apartado de Preguntas Frecuentes (FAQ) al final de la mayora de los captulos. Para su comodidad, un amplio glosario ofrece explicaciones concisas acerca de la terminologa HASP. En los apndices encontrar informacin sobre especificaciones tcnicas, passwords de las llaves Demos HASP y Soluciones a posibles Problemas.
xxii
El captulo Introduccin (pgina 3) comenta las ventajas y prestaciones de seguridad del sistema HASP enumerando las distintas llaves hardware HASP, y las plataformas y sistemas operativos soportados.
El captulo Conceptos Bsicos (pgina 13) explica los conceptos bsicos del sistema HASP y describe el contenido de los Kits HASP.
El captulo Instalacin de HASP (pgina 25) ofrece una visin del software HASP, los principales pasos en la proteccin de software y los procesos bsicos de instalacin para diversos sistemas operativos.
Parte 1 Captulo 1
Introduccin
Bienvenidos a HASP de Aladdin el sistema profesional de proteccin de software. Este captulo describe el sistema de proteccin HASP, sus prestaciones de seguridad y sus ventajas. Presenta a la familia de llaves de proteccin HASP y describe el contenido de los Kits de Evaluacin y de Inicio.
Acerca de HASP
HASP es un sistema basado en hardware que protege el software de un uso ilegal evitando los accesos y ejecuciones no autorizados de las aplicaciones protegidas.
Durante la sesin de trabajo, la aplicacin protegida comprueba la presencia de la llave HASP conectada al PC. Si la respuesta devuelta por la HASP es la adecuada y se identifica el algoritmo HASP correcto, la aplicacin se ejecuta. Si la respuesta es incorrecta, la aplicacin puede dejar de funcionar, cambiar a modo demo, o limitar determinadas prestaciones.
La integracin de HASP es fcil, obtenindose un nivel de seguridad extremadamente alto. Cuando su aplicacin est protegida, slo se puede activar cuando la llave HASP suministrada originalmente con su software est conectada al PC.
Introduccin
Parte 1 - Captulo 1
Mxima Facilidad de Uso Una corta curva de aprendizaje y unas API(Application programming interfaces) estndar para todos los productos aseguran una rpida y sencilla incorporacin del software de HASP a su aplicacin.
Soporte para amplio rango de entornos de programacin El sistema HASP dispone de interfaces para la mayora de compiladores y lenguajes de programacin que le permiten entregar su aplicacin protegida con HASP en los sistemas operativos ms relevantes . Soporte para un amplio rango de sistemas operativos. Los sistemas operativos soportados son: Windows 3.x, Windows 95, 98, ME, 2000, NT, Linux, Mac OS 8.6, Mac OS 9.x, MacOS X.
Solucin Multi-plataforma HASP (versin USB) ofrece una solucin independiente de la plataforma de trabajo. Una llave HASP puede utilizarse para proteger aplicaciones Windows, Mac y Linux, ahorrndole tiempo de desarrollo en la integracin de la proteccin, adems de logstica y costes de envos
Inicio a HASP
Introduccin
Avanzadas prestaciones de codificacin en el hardware Las avanzadas facilidades de codificacin y decodificacin incorporadas en el hardware HASP permiten una unin ms estrecha entre el hardware y el software que se est protegiendo. Funciones inteligentes en la misma llave permiten que determinadas funciones crticas del software sean
dependientes de la presencia de la llave correcta, de otra forma no funcionaran correctamente. Cualquier informacin utilizada por el software puede ser codificada en cualquier punto del software. La informacin codificada es una funcin de los datos enviados a la llave y un nico y especfico cdigo de programador de cada cliente. Esto significa que esta caracterstica ofrece una proteccin muy superior a los simples chequeos peridicos de la presencia de la llave. Avanzados Algoritmos de Proteccin y Tecnologa Anti-Debugging. El software de HASP utiliza algoritmos de arquitectura propietaria de proteccin de cdigos, adems de la tecnologa anti-debugging ms avanzada de la industria. Las especiales caractersticas anti-pirateo incorporadas en el software HASP generan obstculos prcticamente infranqueables para piratas potenciales.
Introduccin
Parte 1 - Captulo 1
Comunicacin Encriptada. Todas las comunicaciones entre la aplicacin y la llave HASP es encriptada aleatoriamente para proteger el lazo de unin vital entre ellas. Esto previene la emulacin del hardware de la llave.
Inicio a HASP
Introduccin
Servicio y Soporte local en ms de 40 pases. Con 8 oficinas internacionales y ms de 40 distribuidores locales, dispone del soporte HASP virtualmente dnde y cundo se necesite.
Aladdin Consulting Para instrucciones detalladas sobre la implantacin de HASP, contacte con nuestro equipo internacional de consultores. Ellos pueden asesorarle sobre: Integracin de la produccin y distribucin HASP en su empresa. Anlisis de la mejor estrategia de proteccin para su aplicacin. Ayuda en el diseo de algoritmos y mejor integracin de la proteccin HASP en su software.
Introduccin
Parte 1 - Captulo 1
Inicio a HASP
Introduccin
Modelo HASP
Prestaciones
Tipos de Llave
Paralelo, USB
HASP4 Net100
496 bytes
112 aplicaciones en Codificacin/ 100 estaciones decodificacin HASP ID, acceso red
Paralelo, USB
HASP4 NetU
496 bytes
112 aplicaciones en Codificacin/ ilimitado nmero de decodificacin estaciones HASP ID, acceso red
Paralelo, USB
Modelos HASP4
HASP4 Standard La solucin de proteccin con mejor relacin precio-efectividad que ofrece Aladdin. HASP4 usa el mismo componente ASIC y caractersticas en su arquitectura que los productos ms avanzados, HASP4 Std. ofrece una solucin a bajo coste extremadamente segura y fiable.
Introduccin
Parte 1 - Captulo 1
HASP4 Std. Est disponible para puerto paralelo y puerto USB. HASP4 M1 y HASP4 M4 las llaves de proteccin de software ms verstiles y seguras disponibles HASP4 M1 y M4 combinan el alto nivel de seguridad inherente a HASP4 con la flexibilidad de hasta 496 bytes de memoria de lectura/escritura y un nico nmero ID para cada llave. La memoria HASP4 y sus posibilidades de actualizacin sobre el terreno, permiten plantearse nuevas estrategias de venta como suscripciones, demos, probar antes de comprar, alquiler o leasing de software para hasta 112 aplicaciones todo en una sola llave. HASP4 M1 est disponible para el puerto paralelo y el puerto USB. HASP4 M4 est disponible para el puerto paralelo, el puerto USB y cmo PC-Card. HASP4 Time Proteccin de software con reloj de tiempo real HASP4 Time contiene un reloj de tiempo real interno, que indica la hora exacta (horas, minutos y segundos) y la fecha (da, mes y ao). Diseado especficamente para permitir alquiler o leasing de software, HASP4 Time tambin permite que cobre a sus clientes por uso y mantenimiento del software. Basada en HASP4 M4, HASP4 Time contiene 512 bytes de memoria interna segura de lectura/escritura y un nmero ID nico para cada llave. M ediante el uso de la memoria HASP4 Time puede controlar la distribucin y acceso de hasta 8 mdulos de software diferentes y diferentes paquetes de software, alquiler o leasing de software y distribucin de demos que caduquen despus de una fecha especfica. HASP4 Time est disponible para el puerto paralelo y el puerto USB. HASP4 Net Lo ltimo en proteccin de software para entornos de red diferentes. Conecte una sola llave HASP4 Net en cualquier estacin de la red para proteger su aplicacin y limitar el nmero de estaciones ejecutndola simultneamente. HASP4 Net incorpora todas las prestaciones de HASP4 M4.
10
Inicio a HASP
Introduccin
Software.
El software HASP contenido en un nico CD-ROM.
Hardware.
Su kit de evaluacin HASP viene con una llave HASP demo. La llave demo HASP es una HASP4 M1, HASP4 Time o HASP4 Net, dependiendo del tipo de llave HASP que usted solicit al pedir su kit de evaluacin.
La llave demo HASP que reciba debe usarse slo para su evaluacin. Cuando solicite llaves HASP, Aladdin le asigna un cdigo de programador nico que diferencia sus llaves de otras.
Documentacin.
Su kit de evaluacin HASP incluye una copia de la Gua del programador HASP4.
Parte 1 Captulo 2
Conceptos Bsicos
Para incorporar efectivamente la proteccin HASP, recomendamos que se familiarice con los conceptos y trminos descritos en este captulo.
Si est protegida con HASP4 Net, tambin debe leer Conceptos Bsicos de HASP4 Net (pgina 209) para familiarizarse con los trminos y conceptos especficos de HASP4 Net.
13
Conceptos Bsicos
Parte 1 - Captulo 2
14
Inicio a HASP
Conceptos Bsicos
Conceptos Bsicos
Parte 1 - Captulo 2
16
Inicio a HASP
Conceptos Bsicos
Passwords HASP
Las passwords HASP son dos enteros asignados a cada fabricante de software. Las passwords se basan en su cdigo de programador nico.
Asegrese de mantener sus passwords en un lugar seguro, pues se utilizan para acceder a la HASP, proteger su aplicacin y usar las utilidades HASP.
No es posible solicitar llaves HASP con nmeros ID especficos. stos se asignan aleatoriamente durante el proceso de fabricacin, as se garantiza que no se repetirn.
17
Conceptos Bsicos
Parte 1 - Captulo 2
18
Inicio a HASP
Conceptos Bsicos
Envelope HASP
El mtodo de proteccin bsico es la proteccin HASP Envelope. Este mtodo aade un escudo protector alrededor de los archivos ejecutables. La Envelope encripta su archivo, incorpora testeos de HASP y prestaciones antidebugging. Despus de proteger con la Envelope, la aplicacin protegida no puede funcionar sin la llave HASP correcta. El uso de la Envelope no requiere acceder al cdigo fuente de la aplicacin, es un mtodo rpido y sencillo de proteccin. Al mismo tiempo, incorpora un nivel muy alto de proteccin, haciendo virtualmente imposible desensamblar o debuggear sus aplicaciones. Para informacin acerca del uso de la Envelope HASP consulte Proteccin con la Envelope HASP (pgina 43)
19
Conceptos Bsicos
Parte 1 - Captulo 2
Qu Mtodo usar?
Puede utilizar cualquiera de los dos mtodos independientemente, o combinar ambos. Use la Envelope, cuando pretenda un proceso rpido y sencillo de proteccin, o cuando no pueda acceder al cdigo fuente. Use el API cuando tenga acceso al cdigo fuente y desee personalizar su proteccin para aadir llamadas adicionales a la llave. Tanto la Envelope como el API son mtodos de proteccin muy efectivos y potentes. Protegiendo su aplicacin con cualquiera de ellos, se asegura un nivel de proteccin muy alto. Sin embargo, recomendamos utilizar ambos si es posible. Cada mtodo trabaja de manera diferente y el uno complementa y mejora al otro. Incorpore el API de HASP en el cdigo fuente de su aplicacin, compile, linke los archivos objeto o DLLs en su aplicacin, y a continuacin use la proteccin HASP Envelope en su archivo ejecutable.
Opciones FAS
Con FAS, puede limitar el uso de su aplicacin por medio de: Fijar un nmero de activaciones (HASP4 M1, HASP4 M4 y HASP4 Net). Esta caracterstica es de gran utilidad para suministrar versiones demo de sus aplicaciones. Fijar una fecha de expiracin (HASP4 Time).
20
Inicio a HASP
Conceptos Bsicos
Esta caracterstica es de gran utilidad para el leasing y alquiler de su software. Fijar el nmero de estaciones que pueden activar el programa simultneamente (HASP4 Net). FAS es una de las opciones de la Envelope cuando est protegiendo con una llave HASP monopuesto con memoria. Con HASP4 Net no es opcional, es una parte integrante del sistema de proteccin HASP4 Net, tanto si protege con la Envelope como con el API de HASP.
Conceptos Bsicos
Parte 1 - Captulo 2
Pregunta Respuesta
Puedo adjudicar a cada cliente una HASP con un cdigo o password nico? S. Para este propsito, recomendamos utilizar llaves HASP con memoria, que contiene un Nmero ID nico para cada llave. Adems, usted puede programar la memoria de las llaves HASP individualmente para cada uno de sus clientes.
Pregunta Respuesta
Es posible que otro programador posea llaves con las mismas passwords que las mas? No. Se suministra cada conjunto de passwords a un solo programador.
Pregunta Respuesta
Qu ocurre cuando se agota la batera de una llave HASP4 Time? La batera de HASP4 Time tiene una vida de 3-5 aos, que en trminos de licencias de software es un plazo muy largo de tiempo. Cuando la batera se agota, HASP4 Time queda como una llave como una HASP4 M4. Y, la aplicacin protegida con la Envelope deja de funcionar. La vida de la batera se alarga si la llave est conectada al PC.
22
Inicio a HASP
Conceptos Bsicos
Pregunta Respuesta
Pueden utilizarse llaves HASP monopuesto en entornos de red? S. Hay dos opciones para utilizar HASP en entornos de red. La primera es conectar una llave HASP a cada estacin en que la aplicacin protegida deba funcionar. La segunda y ms eficiente de las opciones es proteger la aplicacin con HASP4 Net, un sofisticado sistema de proteccin diseado especialmente para trabajar en entornos de red. HASP4 Net permite ejecutar una aplicacin protegida en varias estaciones usando una sola llave. Para saber ms acerca de HASP4 Net, Conceptos Bsicos de HASP4 Net (pgina 209).
Pregunta Respuesta
Pueden conectarse varias llaves HASP una detrs de otra? S. Es posible encadenar mltiples llaves HASP sin ningn equipamiento especial. Las llaves USB HASP son dispositivos terminadores, no es posible encadenarlas.
Pregunta Respuesta
Y respecto a llaves de otros fabricantes? Las llaves HASP son totalmente transparentes. Puede conectarla antes o entre otras llaves, en caso de que sean tambin transparentes.
Pregunta Respuesta
Pueden protegerse con HASP archivos de datos o aplicaciones escritas con herramientas de software como Lotus y AutoLISP? S. Existe un sistema especial para la proteccin de archivos de datos llamado DataHASP. DataHASP protege archivos Encriptando su contenido y autorizando el acceso slo a los programas que se indique. DataHASP puede utilizarse con aplicaciones DOS y Win32 con todas las llaves HASP. Para mayor informacin, vea Proteccin con la Envelope HASP (pgina 43).
23
Conceptos Bsicos
Parte 1 - Captulo 2
Pregunta Respuesta
Por qu debo utilizar una llave HASP con memoria? Hay tres buenas razones para elegir llaves HASP con memoria para proteger su aplicacin: Para distribuir versiones demo de su aplicacin, o alquilar su software Para proteger mltiples aplicaciones con una sola llave HASP
* Puede usar la memoria de HASP para almacenar datos y utilizarlos ms adelante, aumentando la seguridad de su aplicacin protegida.
Pregunta Respuesta
Cmo puedo actualizar la memoria HASP despus de entregar la aplicacin protegida a mi cliente? El Sistema de Actualizacin Remota de HASP (Remote Update System (RUS)) permite actualizar en modo remoto la memoria de la llave HASP cuando sta se encuentra en posesin de su cliente. Se actualiza la memoria de HASP enviando unas passwords, sea por telfono, fax, o email. Este sistema permite aadir mdulos de software o actualizar un contador de ejecuciones. Para ms informacin, contacte con su proveedor local de HASP.
24
Parte 1 Captulo 3
Instalacin de HASP
Este captulo ofrece una visin del software HASP, las principales etapas de la proteccin de software y los procesos bsicos de instalacin para los diversos sistemas operativos.
Software HASP
El software HASP se compone de las siguientes partes: Drivers y daemons para acceder a las llaves HASP HASP Edit para preparar llaves HASP para su distribucin Aladdin Diagnostic para asistir al usuario final APIs HASP y Envelope HASP para integrar la proteccin en la aplicacin Demo HASP para mostrar y probar la funcionalidad de HASP Administrador de Licencias HASP y Monitor Aladdin para suministrar, administrar y monitorizar las licencias HASP4 Net
25
Instalacin de HASP
Parte 1 - Captulo 3
Proteccin de Aplicaciones
Envelope HASP Envelope HASP es una herramienta que le permite proteger su aplicacin envolvindola en un escudo protector. Puede usar la Envelope de HASP como herramienta de lnea de comando o desde su interfaz grfica de usuario. Para mayor informacin consulte Proteccin con la Envelope HASP (pgina 43). API de HASP El API (Application Programming Interface) de HASP le permite proteger su aplicacin insertando llamadas a las llaves HASP desde su cdigo fuente.
26
Inicio a HASP
Instalacin de HASP
El directorio raz del CD HASP est subdividido segn los sistemas operativos, entorno de desarrollo y compilador. El directorio de cada compilador incluye lo siguiente: Libreras que deben linkarse a su aplicacin Una aplicacin de ejemplo que muestra el uso del API con todas las llaves HASP Para mayor informacin consulte Proteccin con el API de HASP (pgina 115). Demo de HASP Utilidades que le permiten testear los servicios HASP. Para ms informacin consulte Utilidades de Test HASP (pgina 128).
27
Instalacin de HASP
Parte 1 - Captulo 3
28
Inicio a HASP
Instalacin de HASP
Puede encontrar estas aplicaciones en el directorio Drivers de su CD HASP. Reconocen automticamente el sistema operativo en uso e instalan los archivos del driver adecuado en las ubicaciones requeridas. Para informacin acerca de qu archivos se instalan consulte el archivo de ayuda hdd.hlp.
Para instalar el HASP Device Driver bajo Windows NT/2000/XP, necesita privilegios de administrador.
El HASP Device Driver se carga dinmicamente bajo Windows 95/98/ME si no ha sido previamente instalado en el PC.
29
Instalacin de HASP
Parte 1 - Captulo 3
Tras la instalacin del HASP Device Driver, las aplicaciones protegidas con HASP con versiones del API de HASP anterior a la versin 6.1 requieren reiniciar el sistema. El HASP device driver se carga dinmicamente tan pronto como se accede a HASP despus de haber reiniciado el sistema. Si instala una versin actualizada del HASP device driver despus de ejecutar una aplicacin protegida con HASP, debe reiniciar su sistema para que la nueva versin del driver se cargue dinmicamente.
compiladores, incluyendo una interface para Install Shield. Cada directorio de interface de compilador contiene un ejemplo de instalacin personalizado. Para ms informacin acerca de la utilidad hinstall y la instalacin API del HASP device driver, vea el archivo de ayuda hdd.hlp. La utilidad Hinstall hinstall.exe es una aplicacin Win32 que instala el HASP device driver bajo los sistemas Windows 95/98/ME y Windows NT/2000/XP Para instalar el HASP device Driver: Teclee hinstall i desde la lnea de comando
Aparece una ventana informando que el HASP device driver se instal correctamente.
30
Inicio a HASP
Instalacin de HASP
Para desinstalar el HASP Device Driver: Teclee hinstall r desde la lnea de comando Aparece una ventana informando que el HASP device driver se desinstal correctamente. Para actualizar un HASP device driver: Instale el nuevo HASP device driver siguiendo los pasos de instalacin detallados anteriormente.
31
Instalacin de HASP
Parte 1 - Captulo 3
32
Inicio a HASP
Instalacin de HASP
Tabla 3.2 Parmetros de lnea de comando para aksusbd (Mac) Parmetro -v -u <umask> Significado Muestra nmero de versin como decimal, formato xx.xx. Especifica los bits de permiso para el archivo de socket especial. Predeterminado es 666 (puede acceder cualquiera) -l <valor> Selecciona tipo de mensajes de diagnstico. Los valores posibles son: 0 slo errores 1 normal (predeterminado) 2 verbose 3 ultra verbose -h Muestra ayuda de lnea de comando. Para configurar el daemon proceda de la siguiente manera: 1. Edite el archivo de inicio Aladdin al que se hace referencia en el script dinst. 2. Aada los parmetros deseados a la lnea aksusbd que inicia el daemon.
2.
Si los archivos ya existen debe moverlos fuera de la carpeta previamente, pues no pueden sobrescribirse.
Reinicie el sistema.
33
Instalacin de HASP
Parte 1 - Captulo 3
Para ms informacin consulte Acceso a las llaves HASP con HASP Edit (pgina 73).
34
Inicio a HASP
Instalacin de HASP
Est en el archivo hasplinux101.tgz del directorio Linux del CD de HASP. Para informacin detallada sobre los componentes consulte los archivos readme.
Instalacin del driver modo kernel (aksparlnz.o) La instalacin del driver incluye los siguientes pasos: Genere el nodo dispositivo Inicialice el sistema parport Carga del driver
35
Instalacin de HASP
Parte 1 - Captulo 3
Generacin del nodo dispositivo Para habilitar el acceso al driver, genere un nodo dispositivo /dev/Hardlock. Debera usar el mismo nmero major utilizado al cargar el driver (major=xxx lnea de comando para insmod, o predeterminado 42) 1. 2. Genere el nodo dispositivo con el siguiente comando:
Mknod /dev/Hardlock c 42 o
Permitir el acceso al nodo a todos:
Modprobe parport_pc
El driver parport informar al log del sistema de los puertos paralelo encontrados en el sistema. aksparlnx permitir el acceso a las llaves en cualquiera de estos puertos. Cargando el driver Cargue el driver aksparlnx con la siguiente lnea de comando:
Insmod <path_to_dirver>/aksparlnx.o
Se genera un mensaje de status en el log del sistema informando si la instalacin ha sido realizada correctamente o no.
36
Inicio a HASP
Instalacin de HASP
La carga del driver (modprobe e insmod) debe incorporarse a un script de inicio, de forma que est disponible en siguientes arranques del sistema. Opciones para aksparlnx.o Tabla 3.3 Parmetros de lnea de comando para aksparlnx.o (Linux) Parmetro -major=<nmero> Significado El driver usa el dispositivo mayor nmero 42 por defecto. Puede cambiar ese valor mediante un argumento al comando insmod. Tambin puede cambiar el archivo driver especial mediante el comando mknod /dev/Hardlock
c<nmero> 0
-loglevel=<valor> Seleccione el tipo de mensajes de diagnstico. Los posibles valores son: 0 slo errores 1 normal (predeterminado) 2 verbose 3 ultraverbose Los mensajes son llevados a syslog con prioridad kern.info (y kern.debug). Consulte /etc/syslog.conf para ver donde se pondrn los mensajes, normalmente es en el archivo /var/log/messages.
37
Instalacin de HASP
Parte 1 - Captulo 3
Significado Especifica el tiempo mximo que el driver espera al solicitar acceso exclusivo al puerto desde el driver parport. El valor utilizado es 1/100 de segundo. El valor predeterminado es 100 (=1 segundo). Tras ese tiempo la solicitud ser abortada con un error PORT_BUSY. Si tiene un puerto paralelo en el sistema que no es detectado por el driver parport de Linux (y por lo tanto no es visto por aksparlnx.o). Puede hacer el puerto accesible para aksparlnx.o Utilice este parmetro slo si es un usuario
hlportadress =<address>
experimentado. Dar una direccin ilegal de puerto puede causar la cada del sistema.
Instalacin del daemon Aladdin (aksusbd) Permitiendo acceso a las llaves USB Para permitir el acceso a las llaves USB, debe montarse usbdevfs en /proc/ bus/ usb . En las distribuciones ms nuevas se monta automticamente (ej. SuSe 7.0). Para montar usbdevfx manualmente utilice el siguiente comando:
<path>/aksusbd
El daemon pinchar y se auto-insertar en el fondo. Se genera un mensaje de status en el system log informando si la instalacin se ha realizado correctamente o no.
38
Inicio a HASP
Instalacin de HASP
Reporta su versin, la versin del API utilizado para USB y la versin del API del driver kernel (slo llaves paralelo). Si el driver kernel no est disponible cuando se lanza aksusbd, no se podr acceder a las llaves paralelo, pero las llaves USB an son accesibles. El system log refleja este status. Si /proc/bus/usb no est montado cuando se lanza aksusbd, no se podr acceder a las llaves USB. Preferentemente el daemon debera ser iniciado al arrancar el sistema a la vez con algn script ubicado en /etc/rd.d/init o /etc/init.d (dependiendo de la distribucin Linux). Opciones para aksusbd Tabla 3.4 Parmetros de lnea de comando para aksusbd (Linux) Parmetro -v -l <valor> Significado Muestra el nmero de versin como decimal, formato xx.xx. Selecciones el tipo de mensajes de diagnstico. Los posibles valores son: 0 slo errores 1 normal (predeterminado) 2 verbose 3 ultra verbose Estos mensajes se introducen en syslog con prioridad kern.info (y kern.debug). Consulte /etc/ syslog.conf para ver donde se ubican los mensajes, normalmente es en el archivo /var/log/messages
39
41
Parte 2 Captulo 5
cualquiera de las siguientes operaciones: Proteger aplicaciones Proteger archivos de datos de Windows de 32 bits Grabar los parmetros FAS en la memoria de HASP Recuerde que si ha pensado proteger su aplicacin con el sistema Envelope y con la proteccin desde el API, debe realizar en primer lugar la proteccin con el API y a continuacin la Envelope.
43
Parte 2 - Captulo 5
Tres aspectos a recordar antes de utilizar la proteccin Envelope: Guarde una copia de seguridad de su archivo sin proteger.
Por defecto, durante la proteccin. El archivo original es destruido y se crea uno nuevo. La proteccin es irreversible. Asegrese de disponer de suficiente espacio en el disco.
Despus de la proteccin con la Envolvente, su aplicacin necesitar espacio adicional en el disco. El total de espacio depender del tipo de aplicacin que se est protegiendo: Las Envelopes de DOS y Win32 quedan residentes en memoria mientras la aplicacin est ejecutndose. La Envelope de DOS utiliza 28KB de memoria.
44
Hay tres opciones disponibles: Pulse Start HASP Wizard para acceder al Wizard, que le gua a travs del proceso de proteccin paso a paso. Pulse New Envelope Configuration para iniciar una sesin de proteccin utilizando nuevos parmetros de proteccin. Pulse Open Envelope Configuration para iniciar una sesin de proteccin utilizando parmetros de proteccin grabados.
45
Parte 2 - Captulo 5
46
Nunca codifique el mismo archivo dos veces. Si lo hace, el software no podr recuperarlo.
Puede proteger archivos de datos Win32 con la utilidad en entorno grfico (GUI) como se describe aqu, o desde la lnea de comandos como se describe en la pgina 65.
De forma alternativa, puede crear su propia aplicacin y llamar a los servicios API 60, 61, 88 o 89 para codificar o decodificar cualquier archivo de datos abierto por su aplicacin de la forma que prefiera.
Al proteger archivos de datos Win32, tambin debe proteger la aplicacin que los carga y desencripta. Esta seccin incluye las instrucciones de proteger los archivos de datos y la aplicacin que accede a ellos.
La aplicacin que autoriza desencriptar los archivos de datos no debe soportar la copia o exportacin de archivos. Si lo hace, el usuario final podr copiar o exportar los archivos encriptados a otros no-encriptados.
Preparacin de la Proteccin
1. Ponga una copia de la aplicacin que accede a los archivos de datos (por ejemplo Notepad.exe) en un directorio temporal. 2. 3. Cree un archivo de texto en el mismo directorio (por ejemplo test.txt). Conecte la llave HASP con la que desea proteger sus archivos de datos en el PC, y asegrese de que el HASP Device Driver est instalado correctamente
47
Parte 2 - Captulo 5
4.
Active la utilidad Envolvente seleccionando. HASP Envelope desde la Carpeta del CD HASP. Aparecer la ventana del Envelope de HASP.
5.
48
5.
En el campo Encryption Key, introduzca ocho caracteres cualquiera como clave de codificacin.
6. 7.
En el campo Data Files to Encript, pulse Add y seleccione C:\test.txt. En Data Files to Decrypt at Run Time, teclee test.txt en el campo Decrypt. O bien, utilice comodines como, *.*, o *.txt.
49
Parte 2 - Captulo 5
Realizacin de la Proteccin
1. Pulse el icono Protect o elija Protect Application del men Envelope Tools. Aparecer una ventana, informando que la aplicacin fue protegida correctamente.
2.
Pulse OK y a continuacin el botn Encrypt Selected Files al pie de la ventana. Aparecer un mensaje indicando que los archivos seleccionados fueron encriptados adecuadamente. Con esta proteccin se asegura que el documento solo puede ser abierto mediante la aplicacin protegida, y no con otra copia del ejecutable.
Si introdujo parmetros de proteccin FAS, ahora se le preguntar si desea grabarlos. Vea Grabacin de los Parmetros FAS (pgina 51) para ms detalles. La aplicacin protegida ahora no puede funcionar sin la llave HASP correcta y slo esta aplicacin puede acceder a los archivos de datos protegidos.
50
f
son:
De manera alternativa, puede utilizar HASP Edit para grabar los parmetros FAS en sus llaves HASP.
HASP4 M1 y M4 - el nmero de aplicacin y de ejecuciones permitidas. HASP4 Time el nmero de aplicacin y la fecha de caducidad de la aplicacin.
HASP4 Net el nmero de aplicacin, el de licencias y el de ejecuciones. Mientras que FAS es opcional para las llaves HASP monopuesto de memoria, es una parte integrante del sistema HASP4 Net. Por lo tanto, grabar los parmetros de proteccin en la memoria HASP4 Net es obligatorio.
Es opcional usar HASP Edit o la Envelope para definir y grabar los parmetros FAS en la memoria HASP. Sin embargo, debe usar la Envolvente para fijar el nmero de programa. Asignando el nmero de programa con la Envolvente, establece un nexo ente la llave HASP y los parmetros de proteccin del programa, que se graban en la memoria HASP. Este nexo permite a la aplicacin, cuando es cargada, encontrar sus parmetros de proteccin correctos en la memoria HASP. Puede grabar los parmetros FAS en la memoria HASP inmediatamente despus del proceso de proteccin HASP Envelope, o independientemente de ese proceso.
51
Parte 2 - Captulo 5
Grabacin de los parmetros FAS tras el proceso de proteccin: Directamente despus de integrar la proteccin, aparece una caja de dialogo ofreciendo la opcin de escribir en la memoria de la llave HASP conectada. 1. Elija si desea escribir en una llave HASP local o en una llave HASP4 Net. 2. 3. Pulse Save Parameters Para grabar los mismos parmetros de proteccin en llaves HASP adicionales retire la HASP conectada y conecte una nueva. Pulse Save Parameters. 4. Para dejar de grabar llaves HASP, pulse Close.
Grabacin de los parmetros FAS independientemente del proceso de proteccin: 1. 2. Defina los parmetros FAS que desea grabar en su llave HASP De Envelope Tools seleccione Program HASP. Aparece la caja de dialogo Save FAS Parameters. 3. Seleccione si desea escribir en una llave HASP local o en una llave HASP4 Net 4. 5. Pulse Save Parameters. Para grabar los mismos parmetros de proteccin en llaves HASP adicionales, retire la llave HASP del PC, conecte otra y pulse en Save Parameters. 6. Para dejar de grabar llaves HASP, pulse close.
52
Pestaa Principal
Debe especificar los parmetros en la pestaa principal (Main) con objeto de proteger su aplicacin. Si slo est usando una llave HASP monopuesto, rellene todos los campos excepto los de la seccin de parmetros HASP4 Net. Si slo est usando una llave HASP4 Net, rellene todos los campos excepto los de la seccin Passwords HASP. Si est utilizando una llave HASP monopuesto y una llave HASP4 Net, rellene todos los campos implicados. Figura 5.3 Pestaa Principal de HASP Envelope
53
Parte 2 - Captulo 5
Tabla 5.1 Opciones de la Pestaa Principal de la Envelope HASP Opcin Unprotected File (source) Descripcin Introduzca el path y el nombre de la aplicacin a proteger. Cada archivo debe tener una extensin .exe o .dll. Pulse Browse para buscar en sus discos para un archivo especfico. Predeterminado: El nombre del archivo introducido en el campo Unprotected File. Por defecto, la utilidad Envolvente de HASP sobrescribe el archivo original no protegido al guardar la versin protegida de su aplicacin. Para evitar la sobrescritura de su archivo original, escriba un nombre diferente para el archivo protegido. Escriba ese nombre de archivo en el campo Protected File. Introduzca las passwords de todas las unidades HASP monopuesto con las que desea proteger su aplicacin. Puede introducir las passwords de hasta 3 cdigos de programador HASP para proteger una aplicacin hasta con 3 llaves HASP. Pulse esta opcin para introducir las passwords de la demo HASP automticamente. Marque esta casilla para usar las prestaciones de seguridad mejoradas de HASP4. Si necesita mantener la compatibilidad con la generacin de llaves HASP-3, no debe marcar esta casilla La HASP Envelope trata de detectar el tipo de ejecutable automticamente. Si no puede detectarlo, este campo contendr el valor. Unknown Type Marque esta casilla si el archivo que va a proteger contiene overlays o datos anexos al ejecutable. Valor por defecto: IBM PC y compatibles Especifica el tipo de sistema en el que se va a ejecutar la aplicacin. Si se tratar de un sistema del estndar NEC japons, cambie el valor a NEC.
Passwords HASP
Overlay File
Target Computer
NetHASP Passwords
Cuando proteja con HASP4 Net, introduzca las passwords que recibi con su llave HASP4 Net. Pulse esta opcin para introducir las passwords de la llave HASP4 Net Demo automticamente.
54
Descripcin
Valor por defecto: 1 Con una sola llave HASP4 Net, puede proteger mltiples aplicaciones. Asigne a cada aplicacin que proteja con HASP4 Net un nmero de programa entre el 1 y el 112. Anote este nmero. Lo necesitar ms adelante para grabar los parmetros de proteccin cuando programe las llaves HASP4 Net de sus clientes.
Number of Licenses
Cuando proteja con HASP4 Net, asigne el nmero de licencias en este campo. Este nmero se graba en la memoria HASP4 Net. Teclee un nmero en este campo o utilice las teclas de cursor para fijarlo. Pulse U para asignar un nmero de licencias
ilimitado. Los valores posibles dependen del modelo HASP4 Net. Puede asignar cada valor desde 0 hasta el nmero del modelo, por ejemplo 0 a 5 para la llave HASP4 Net 5.
Para grabar el nmero de licencias en la memoria HASP4 Net, pulse Save Parameters cuando se plantee tras completar la proteccin Envolvente.
Number of Activations
Protegiendo con HASP4 Net, asigne un nmero de ejecuciones para la aplicacin en este campo. Este nmero se grabar en la memoria HASP4 Net. Teclee un nmero en este campo o fjelo con las teclas de cursor. Marque la opcin Unlimited para asignar un nmero de activaciones ilimitadas. Para grabar el nmero de ejecuciones en la memoria HASP4 Net, pulse Save Parameters cuando se le solicite tras el proceso de proteccin Envolvente.
Valor por defecto: nethasp.ini Puede especificar el nombre del archivo de configuracin para el sistema HASP4 Net. Para buscar un archivo, pulse Browse. Para ms informacin sobre el archivo de configuracin NetHASP, vea Personalizacin del Administrador de Licencias HASP (pgina 236). Si la aplicacin encuentra un archivo de configuracin, lee el archivo y usa la informacin contenida en l. Si no lo encuentra, la aplicacin usa valores predefinidos.
55
Parte 2 - Captulo 5
La Pestaa Options
La pestaa Options contiene parmetros adicionales que puede usar: Figura 5.4: Pestaa de opciones de la Envolvente HASP
56
Tabla 5.2 Opciones de la pestaa Opciones de la Envelope HASP Opcin Descripcin Valor por defecto: Disabled Puede usar el Full Authorization System (FAS) con una HASP4 M1, HASP4 M4, o HASP4 Time. Para ms informacin sobre FAS, vea Grabacin de los parmetros FAS (pgina 51). Para usar FAS, pulse la caja Use Full Authorization System. Dado que FAS es una parte integrante del sistema de proteccin HASP4 Net, los parmetros FAS de HASP4 Net ya se introdujeron en la seccin HASP4 Net Parameters de la pestaa principal.
Valor por defecto: 1 Si est utilizando una llave monopuesto HASP para proteger mltiples aplicaciones con FAS, asigne un nmero a la aplicacin. Tome nota de este nmero. Lo necesitar ms tarde para grabar los parmetros de proteccin al programar las llaves HASP para su cliente. Los valores posibles son 1 a 16 para HASP4 M1, 1 a 112 para HASP4 M4 y 1 a 8 para HASP4 Time.
Si est utilizando una llave HASP4 M1 o HASP4 M4 junto con FAS, introduzca el nmero de ejecuciones de la aplicacin en este campo. El nmero se grabar en la memoria. Teclee el nmero de ejecuciones en este campo o use las teclas de cursor para fijarlo. Seleccione la casilla Unlimited para permitir ejecuciones ilimitadas de la aplicacin. Para grabar el nmero de activaciones en la memoria HASP, pulse Save Parameters cuando se solicite tras el proceso de proteccin Envelope.
Si est utilizando una llave HASP4 Time junto con FAS, introduzca la Application Expiration Date fecha tras la cual la aplicacin dejar de funcionar. La fecha se grabar en la memoria HASP4 Time. Pulse Date y seleccione el mes, da y ao. Para grabar la fecha de caducidad en la memoria HASP4 Time, pulse Save Parameters cuando se solicite tras la proteccin Envelope.
57
Parte 2 - Captulo 5
Descripcin
Valor por defecto: Disabled Por defecto, el sistema HASP comprueba la presencia de una llave cuando se carga la aplicacin. Si desea que esta comprobacin se repita durante la ejecucin, aada los chequeos HASP. Para habilitar esta prestacin, Backgroud HASP Checks. marque la casilla Perform
Interval in Seconds
Cuando utilice la opcin Background HASP Checks, debe especificar el intervalo en que se comprobar la presencia de la llave. Teclee un valor para indicar el intervalo en segundos.
Anti Debug and Valor por defecto: Enabled Reverse Con esta prestacin puede aumentar el nivel de proteccin evitando Engineering que los usuarios accedan a su programa con un debugger, aadiendo
mdulos antidebugger adicionales a su archivo de programa. Para aadir deteccin de debuggers, marque la casilla User Mode Debugger Protection. Para aadir mdulos antidebugger, mueva el indicador marcado como Anti Debug Modules hacia la derecha.
Valor por defecto: Disabled Use este campo para asegurar que la aplicacin protegida funciona slo si la llave HASP con el nmero ID especfico est conectada al PC. Para incorporar esta opcin, marque la caja Use HASP ID Number. Esta opcin est disponible nicamente para llaves HASP de memoria. Puede introducir el Nmero ID adecuado de la llave de una de estas formas: Pulse Let Envelope Detect HASP ID para leer el Nmero ID de la llave HASP conectada en el puerto del PC. Pulse Enter HASP ID Manually para abrir un campo en el que puede introducir manualmente el Nmero ID que obtuvo con la utilidad HASP Edit. El Nmero ID es un entero de 32- bit sin signo que debe introducir en formato hexadecimal. Con este mtodo, no es necesario conectar la HASP del Nmero ID especfico durante la proteccin. Si protege con ms de una llave HASP, use el Nmero ID de la llave cuyas passwords introdujo en el primer campo de passwords. Los Nmeros ID de las otras llaves no se comprobarn.
58
Descripcin
Valor por defecto: Enabled Esta prestacin le permite aadir proteccin adicional encriptando el archivo de programa. Las aplicaciones que escriben en su ejecutable durante la ejecucin no deben ser encriptadas.
El proceso de encriptacin requiere varias claves de encriptacin seleccionadas aleatoriamente por la utilidad Envolvente HASP. Para asegurar la mxima seguridad, puede definir una de ellas con un nmero de su eleccin entre 0 y 65535.
Puede especificar la frecuencia de acceso a las llaves HASP para la encriptacin. Mueva el selector Encryption Level hacia la derecha para incrementar la frecuencia. En la seccin Protection Methods, usted indica qu mtodo de proteccin quiere utilizar. Puede utilizar el mtodo Envolvente, incorporar el sistema, Pattern Code Security, o ambos. Cuando pulse el icono de Proteccin o elija la opcin Protect Application del men Envelope Tools se incorporan los mtodos de proteccin indicados en este campo.
Valor por defecto: Enabled Marque la caja Install HASP Envelope para integrar el mtodo de proteccin Envolvente. La proteccin Envolvente tomar efecto cuando pulse el icono Protect o elija la opcin Protect Application del men Envelope Tools. Valor por defecto: Disabled Marque la caja Install Pattern Code Security (PCS) para instalar PCS y aumentar la seguridad. PCS tomar efecto cuando pulse el icono Proteccin o elija la opcin Protect Application del men Envelope Tools.
59
Parte 2 - Captulo 5
La Pestaa DataHASP
Use la pestaa DataHASP para proteger archivos de datos. En esta pestaa: Especifica los archivos de datos que desea encriptar. Especifica que archivos de datos encriptados debe desencriptar durante la ejecucin de su aplicacin protegida. Encripta los archivos de datos.
Adems de encriptar los archivos de datos, necesita especificar qu aplicacin est autorizada para desencriptarlos y proteger esa aplicacin. Realice esto introduciendo los valores en los campos adecuados de la pestaa principal y otras pestaas necesarias y protegiendo la aplicacin.
De manera alternativa puede construir su propia aplicacin y llamar a los servicios del API de HASP 60, 61, 88 u 89 para codificar y decodificar cualquier archivo de datos abierto por su programa de la forma que usted elija.
Nunca encripte el mismo archivo dos veces. Si lo hace, el software no podr restaurarlos.
60
61
Parte 2 - Captulo 5
Tabla 5.3 Opciones de la Pestaa DataHASP de HASP Envelope Opcin Data Files to Decrypt at Run Time Descripcin Introduzca el nombre del archivo o patrn de los archivos de datos que su aplicacin debe decodificar en la ejecucin. Tambin introduzca los archivos de datos que su aplicacin no deba decodificar (de entre los que ha seleccionado para codificar, si utiliz comodines como * ?). Por ejemplo, consideremos una aplicacin que accede a todos sus archivos de datos codificados con un formato *.adb . Supongamos que esa misma aplicacin necesita acceder al archivo xyz.adb , que no es uno de sus archivos de datos c odificados, pero que es un archivo suministrado por su entorno de aplicacin. En este caso, en la casilla Decrypt introduzca *.adb . En la casilla Do Not Decrypt, introduzca xyz.adb . De esta forma su aplicacin decodifica todos los archivos con la extensin adb , excepto el archivo xyz.adb Decrypt Teclee los archivos a desencriptar en la ejecucin (representndolos de modo estndar, o usando comodines, por ejemplo *.*, o aa??.txt). Teclee los archivos (de entre los archivos especificados para su desencriptacin) que no deban desencriptarse en la ejecucin (represntelos de modo estndar o mediante comodines, por ejemplo *.*, o aa??.txt). Introduciendo los parmetros de proteccin, usted define la clave de encriptacin usada para encriptar los archivos de datos. Introduzca hasta 8 caracteres en el campo Encryption Key. Formarn parte del algoritmo de encriptacin. Las passwords de su llave HASP, que introdujo en la pestaa principal (Main) de la Envolvente, aparecen automticamente en el campo HASP Passwords for Encryption. Slo las llaves HASP con esas passwords abrirn los archivos de datos protegidos.
Do Not Decrypt
62
Descripcin Antes de codificar archivos de datos, asegrese de que ha introducido los parmetros de proteccin en la pestaa DataHASP.
Nunca codifique el mismo archivo dos veces. Si lo hace, el software no podr restaurarlo.
Introduzca los archivos (con sus Paths) a encriptar o pulse Add para seleccionar los archivos de los directorios.
Output Encrypted DataHASP copia los nombres de los archivos enumerados en el campo Data Files Input Data Files to Encrypt y los coloca en un nuevo directorio. El nuevo Path por defecto de los archivos se muestra aqu.
Despus de facilitar los archivos de datos encriptados, con la aplicacin protegida al usuario final, puede enviar nuevos archivos de datos encriptados. Simplemente encripte los archivos de datos, asegurndose que su denominacin es la que introdujo en los campos Data Files to Decrypt at Run Time. Si quedan fuera de esos patrones, debe rellenar todos los campos de la pestaa DataHASP y reproteger su aplicacin, recordando incluir todos los archivos de datos (los nuevos y los viejos) en los campos Data Files to Decrypt at Run Time.
63
Parte 2 - Captulo 5
64
La siguiente tabla enumera los mltiples parmetros de la Envolvente. Puede usar estos parmetros con cualquier Envolvente, si no se indica lo contrario: Tabla 5.5: Parmetros de la Envelope HASP Parmetro -c Funcin Nmero de mdulos debug (1-50). Slo para Envolvente Win 16 y Win 32. Carga un archivo de configuracin y usa los parmetros que se grabaron en l. Crea un archivo de configuracin. Slo para la Envolvente Win32. Especifica los archivos o tipos de archivos a desencriptar durante la ejecucin (por ejemplo, *.* o aa??.txt). Puede especificar hasta 8 archivos o tipos de archivos. Slo para la Envolvente Win32.
65
Parte 2 - Captulo 5
Funcin Especifica los archivos o tipos de archivos a no desencriptar de entre los archivos marcados para su desencriptacin en la ejecucin (por ejemplo, *.* o aa??.txt). Puede especificar hasta 8 archivos o tipos de archivos. Slo para la Envolvente Win32. Especifica una clave de encriptacin para archivos de datos (hasta 8 caracteres). Slo para la Envolvente Win32. Incrementa el intervalo de tiempo para la bsqueda del driver. Los valores posibles son de 0 a 255. Slo para Envelope Win32 Predeterminado. Encripta el archivo durante el proceso de proteccin. Nivel de encriptacin para la encriptacin de datos (1-5). Slo para las Envolventes Win 16 y Win 32. No encripta el nmero de seccin. Slo para la Envelope Win32. Usa el Full Authorization System. Especifica el nmero de programa de Full Authorization System. Slo para la Envolvente Win32. El programa funcionar si est presente alguna llave HASP. Predeterminado. El programa funcionar slo si est presente la llave apropiada HASP. Especifica las passwords HASP. Utiliza las prestaciones de seguridad HASP4. Para las Envelopes Win16 y Win32 Muestra una lista con todos los parmetros, con una breve descripcin y sale.
-dhkey <clave>
-drvwait <segundos>
-enc
-enclevel
-help o -?
66
Parmetro -highsecoff
Funcin Deshabilita el nivel superior de seguridad. Predeterminado para proteccin con llaves HASP4 Net, y necesario para procesadores 286 e inferiores. Slo para la utilidad Envolvente DOS. Activa el nivel superior de seguridad. Predeterminado para proteccin con llaves HASP monopuesto. Slo para la Envolvente DOS. Predeterminado. El sistema de destino es un PC IBM o compatible. Especifica un intervalo para background checks en segundos. Especifica un nombre para el cargador cuando se protege una aplicacin con overlays. Slo para la Envolvente DOS. Use con aplicaciones que no hagan un logout HASP4 Net automtico (ej., Visual Basic). Slo para la Envolvente Win32. Especifica el Nmero ID de HASP de las llaves HASP4 M1, HASP4 M4 o HASP4 Time. Especifica las passwords de una HASP4 M1, HASP4 M4 o HASP4 Time. Fija el sistema de destino como un NEC. Especifica el archivo de configuracin HASP4 Net. Especifica las passwords HASP4 Net. Desactiva la deteccin de debuggers. Slo para la Envolvente Win 32. No encripta el archivo durante la proteccin. Predeterminado. No usa el Full Authorization System.
67
-highsecon
-mhpass <pass1><pass2> -nec -netcfg <nombre de archivo> -nhpass <password1> <password2> -nodbgcheck -noenc -nofas
Parte 2 - Captulo 5
Funcin Deshabilita las prestaciones de seguridad de HASP4 Deshabilita la opcin Random File Size. Slo para la Envelope DOS. Mejora la compatibilidad con programas residentes DOS. Este parmetro deshabilita los background checks de HASP. Slo para la Envelope DOS. Predeterminado. De uso con aplicaciones que no contengan overlays. Idntico a: Special Overlays Mode = NO. Slo para la Envolvente DOS. Desactiva la proteccin de virus automtica. Slo para la Envolvente DOS. Renombra el archivo de aplicacin protegido. Maneja overlays. Slo para la Envolvente Win32. Instala PCS en modo batch. Especifica el archivo de aplicacin a proteger. Especifica el nmero de programa. (Con las Envolventes Windows y DOS, para FAS o HASP4 Net; con la Envolvente Win32, slo para HASP4 Net) Predeterminado. Activa la opcin Random File Size. Slo para la Envolvente DOS.
-nospecial
-novir -out <nombre del archivo> -ovl -pcs -prg <nombre del archivo> -prgnum <nmero de programa>
-randomsize
68
Parmetro -special
Funcin Maneja overlays y DOS extendido. Idntico a: Special Overlays Mode = YES Default Method. Slo para la Envolvente DOS. Maneja overlays. Idntico a: Special Overlays Mode = YES - Method 1. Slo para la Envelope DOS. Predeterminado. Proteccin de virus automtica. Slo para Envolvente DOS.
-special 1
-vir
69
Parte 2 - Captulo 5
70
Preguntas Frecuentes
Pregunta Respuesta
Cunto tarda en cargarse en memoria una aplicacin protegida con la Envolvente? Depende del tamao de la aplicacin y de la potencia del PC, el tiempo de carga se incrementa en algunos segundos
Pregunta Respuesta
interfiere las operaciones normales del PC el anti-debugger de HASP? No. El mecanismo anti-debugging de HASP es completamente transparente y no afecta a la ejecucin de las aplicaciones.
Pregunta Respuesta
Comprueba la Envolvente HASP la presencia de la llave a lo largo de la sesin de trabajo con la aplicacin protegida? S. Las Envolventes DOS y Win32 pueden incorporar series de chequeos background durante el funcionamiento de la aplicacin. Para informacin adicional, vea La pestaa Options (pgina 56).
Pregunta Respuesta
Puedo usar la Envolvente HASP para proteger con una HASP4 M1 o HASP4 M4 y una HASP4 Net? S. Introduzca las passwords de sus llaves HASP4 M1 o HASP4 M4 y HASP4 Net, y los valores del resto de campos relacionados con ambas llaves. Despus de la proteccin la aplicacin buscar en primer lugar la llave en el propio PC en el que la aplicacin se est ejecutando. Si no encuentra la HASP4 M1 o HASP4 M4, la aplicacin protegida buscar la llave HASP4 Net en la red.
71
Parte 2 - Captulo 5
Pregunta Respuesta
Cundo necesito especificar un nmero de programa usando la Envolvente HASP? Con HASP4 Net, siempre! Con HASP4 M1 o HASP4 M4, slo cuando incorpora el Full Authorization System.
72
Parte 2 Captulo 6
73
Parte 2 - Captulo 6
3.
Inicie una nueva sesin de HaspEdit o abra un archivo de configuracin de HaspEdit (para trabajar con un archivo existente).
74
El archivo de configuracin de HaspEdit contiene sus passwords secretas. Considere este archivo como si fuera su cdigo fuente y mantngalo en un lugar seguro.
Cuando activa HaspEdit, puede iniciar una nueva sesin de HaspEdit, o cargar una sesin previa abriendo un archivo de configuracin.
Parte 2 - Captulo 6
El modelo HASP. Las passwords de la llave HASP. Observe que las passwords pueden ser mostradas u ocultas al seleccionar Passwords en el men View. El Nmero ID nico de la llave HASP.
Codificacin de Datos
Esta funcin le permite codificar datos usando una llave HASP4. Despus de codificar, puede usar los datos en su aplicacin y decodificarlos durante la ejecucin utilizando la funcin adecuada del API de HASP. Para codificar datos: 1. Seleccione Encoding del men HASP Tools o pulse el icono Encode. Aparecer la ventana Encode:
2.
Introduzca o seleccione la fuente de los datos que desea codificar. Puede codificar datos del portapapeles de windows o un archivo, o puede teclear una frase directamente desde el teclado.
77
Parte 2 - Captulo 6
3.
Introduzca o seleccione el nombre de un archivo binario de destino para los datos codificados (opcional).
4.
Los datos binarios de salida no pueden pegarse en un editor de texto, puesto que son caracteres no imprimibles.
Introduzca el nombre de un archivo ASCII de destino o seleccione o seleccione Portapapeles para los datos codificados (opcional). Los datos codificados ASCII tiene la siguiente forma:
5.
Seleccione su lenguaje de programacin. Esta opcin generar un archivo include para su lenguaje de programacin, que puede usar para codificar datos fcilmente desde su aplicacin.
6.
Pulse Encode para iniciar el proceso En teora, puede codificar o decodificar hasta 4GB de datos en una sola llamada. Observe que HaspEdit necesita localizar buffers para codificar y decodificar los datos. Esto significa que las restricciones de la prestacin de codificacin/decodificacin de HaspEdit dependen de la cantidad de RAM y del espacio de disco duro en su PC.
78
Para decodificar datos: 1. Seleccione Decoding del men HASP Tools o pulse el icono Decode. Aparecer la ventana Decode:
2.
Introduzca o seleccione de un archivo fuente binario que contenga los datos codificados que desea decodificar.
3.
Introduzca o seleccione el nombre de un archivo binario de destino para los datos decodificados.
4.
Pulse Decode para iniciar el proceso. En teora, puede codificar o decodificar hasta 4 GB de datos en una sola llamada. Observe que HaspEdit necesita localizar buffers para codificar y decodificar los datos. Esto significa que las restricciones de la prestacin de HaspEdit de codificar/decodificar dependen de la cantidad de RAM y del espacio de disco duro en su PC.
Parte 2 - Captulo 6
Para comprobar el Nmero ID de una llave de memoria HASP: 1. 2. Conecte la llave HASP a su PC. Seleccione HASP ID del men HASP Tools o pulse el icono ID. Aparece la ventana HASP ID:
La ventana muestra el Nmero ID (un entero de 32-bits, sin signo) en formato hexadecimal y decimal, y dos words de 16-bits. 3. Si va a proteger con la Envolvente HASP, anote el Nmero ID mostrado en formato hexadecimal. Puede ms tarde introducirlo dentro de la Envelope HASP. 4. Si elige proteger con el API de HASP, anote el word ID Low y el word ID High y comprelos con los valores que la rutina hasp() retorna en Par1 y Par2 del Servicio 6: HASP ID. O bien, anote el Nmero ID y comprelo con el valor que obtuvo utilizando la frmula encontrada en el Servicio 6.
80
Para copiar el contenido de la ventana HASP ID de HASP, pulse Copy del men Edit.
Utilice HaspEdit para asignar a cada aplicacin del listado FAS de programas un nico nmero de programa que le identifica y para fijar los parmetros de proteccin.
Parte 2 - Captulo 6
Fijar la fecha de caducidad a partir de la cual las aplicaciones protegidas con una HASP4 Time no puedan funcionar.
Limitar el nmero de estaciones que puede ejecutar un programa protegido con HASP4 Net simultneamente y el nmero de activaciones para cada aplicacin.
Utilice HaspEdit para fijar y/o editar los parmetros de proteccin para cada programa. Una vez fijados los parmetros de proteccin para cada programa, escriba la lista de programas y los parmetros de proteccin en la memoria HASP. Las siguientes secciones describen como editar la lista FAS de programas para cada una de las diferentes llaves de memoria HASP.
82
2.
Pulse Add para aadir el/los programa(s) que desea proteger. Aparece la ventana Add Program :
3.
En el campo Program , introduzca un nico nmero de programa al programa que est protegiendo. El nmero puede ser de 1 a 16 para HASP4 M1, o de 1 a 112 para HASP4 M4. El nmero de programa debe ser idntico al nmero que asigna a su programa cuando lo protege con la Envolvente.
4.
Tome nota del nmero asignado a cada programa. En la utilidad Envolvente, utilice este nmero para especificar el programa que est protegiendo.
En el campo Activations, introduzca el nmero mximo de activaciones permitidas para la aplicacin. Pulse Unlimited para permitir un nmero ilimitado de activaciones.
5.
En el campo Comments, aada informacin que identifique el programa, sea el nombre de archivo o cualquier comentario significativo.
6. 7. 8.
Los comentarios escritos en el editor HASP de MemoHASP se graban en el archivo de configuracin HaspEdit y no en la memoria de la llave.
Pulse OK. El programa es aadido a la lista del MemoHASP FAS Editor. Pulse Write. Aparece la ventana Write HASP Memory. Guarde los cambios en la llave HASP. Ahora puede elegir:
83
Parte 2 - Captulo 6
Pulse Write para grabar todos los cambios en la memoria. Pulse Write Selected Programs Only para grabar slo los programas seleccionados en la memoria, pulse Write.
Todos los cambios en la memoria son inicialmente mostrados en la pantalla en rojo. Pulsando Write graba los cambios en la llave HASP de memoria. Todos los datos escritos en la llave aparecen en azul.
84
2.
Pulse en Add para aadir el/los programa(s) a proteger. Aparece la ventana Add Program :
3.
En el campo Program , introduzca un nico nmero para el programa que est protegiendo. El nmero puede ser de 1 a 8. El nmero del programa debe ser idntico al nmero que asigna a su programa cuando lo protege con el Envolvente.
4.
Tome nota del nmero asignado a cada programa. En la utilidad Envolvente, usted utiliza este nmero para especificar el programa que est protegiendo.
En los campos proporcionados en la seccin Program Expiry Date, introduzca el da, mes y ao de la fecha de caducidad de la aplicacin. Pulse la casilla Unlimited Date si no quiere fijar una fecha de caducidad.
5.
En el campo Comments, aada informacin identificando el programa, as como su nombre de archivo, y cualquier comentario.
6. 7.
Los comentarios escritos en el Editor FAS de TimeHASP se guardan en el archivo de configuracin del HaspEdit, y no en la memoria de la llave HASP.
Pulse OK. El programa se aade a la lista del TimeHASP FAS Editor. Pulse Write. Aparece la ventana Write HASP Memory.
85
Parte 2 - Captulo 6
8.
Guarde los cambios en la llave HASP4 Time. Puede elegir: Pulse Write para grabar todos los cambios en la memoria. Pulse Write Selected Programs Only para grabar slo los programas seleccionados en la memoria, pulse en Write.
Todos los cambios de la memoria son inicialmente mostrados en la pantalla en rojo. Pulsando Write graba los cambios en la llave HASP4 Time. Todos los datos escritos en la llave aparecen en azul.
1.
FAS debe usarse siempre que utilice una llave HASP4 Net, incluso cuando se est protegiendo un solo programa.
Para fijar la lista de programa del FAS para HASP4 Net. Seleccione Full Authorization System (FAS) del men HASP Tools y pulse NetHASP o el icono FAS aparece NetHASP Program Editor:
86
2. Pulse Add para aadir los programas a proteger. Aparece la ventana Add Program.
3. En el campo Program , introduzca un nico nmero de programa para el programa que est protegiendo. El nmero puede ser desde 1 a 112. El nmero de programa debe ser idntico al nmero que usted asigna a su programa cuando lo protege con la Envolvente HASP o el API de HASP.
Tome nota del nmero asignado a cada programa. Se utiliza este nmero para especificar el programa cuando est protegindolo con el Envolvente y/o el API.
4. En el campo Stations, introduzca el nmero mximo de estaciones autorizadas para utilizar el programa simultneamente. 5. El nmero mximo posible depende del nmero del modelo de HASP4 Net. HASP4 Net5 permite hasta 5 estaciones; HASP4 Net10 hasta 10 estaciones, y as sucesivamente. Si utiliza HASP4 NetU, pulse la casilla Unlimited para autorizar un nmero ilimitado de estaciones. 6. En el campo Activations, introduzca el nmero de activaciones permitidas para la aplicacin o compruebe la caja Unlimited para permitir un nmero ilimitado de activaciones. 7. En el campo Comments, aada informacin identificando el programa, tal como su nombre de archivo, y cualquier comentario.
Los comentarios escritos en el Editor FAS de NetHASP son grabados en el archivo de configuracin HaspEdit y no en la memoria de la llave HASP.
87
Parte 2 - Captulo 6
8. Pulse OK. 9. El programa es aadido a la lista NetHASP Program Editor. 10. Pulse Write. Aparece la ventana Write HASP Memory. 11. Grabe los cambios en la llave HASP4 Net. Puede elegir: Pulse Write para grabar todos los cambios en la memoria. Pulse Write Selected Programs Only para grabar slo los programas seleccionados en la memoria, pulse Write. Todos los cambios de la memoria son inicialmente mostrados en la pantalla en rojo. Pulsando Write se graban los cambios en la llave HASP. Todos los datos escritos en la llave aparecen en azul.
La caja Location Description indica la ubicacin de words en la memoria HASP. Primero, especifica si un word de memoria est ubicado en el rea User o FAS. Si el word est en el rea FAS, muestra el nmero de programa (ej. (P1) para el programa 1 o (P2) para el programa 2, etc.) asociado con el word seleccionado. Tambin apunta si el word no est registrado (lo que significa que no est en la lista de programas FAS) o, si est registrado, indica entre comillas los comentarios que usted introdujo.
Si se localiza el cursor en el rea FAS, en un word de memoria asociado con un programa cuyos parmetros de proteccin estn grabados en la lista de programas FAS, asegrese de no sobrescribir el word con otros datos.
1.
La memoria no utilizada con FAS puede usarse para guardar cualquier dato adicional de su eleccin.
Para editar la memoria HASP4 M1 y HASP4 M4 Seleccione HASP Memory del men HASP Tools y pulse en MemoHASP, o en el icono Memory.
89
Parte 2 - Captulo 6
2. 3.
1.
La memoria no utilizada con FAS puede usarse para guardar cualquier dato adicional de su eleccin.
Para editar la memoria FAS de HASP4 Time: Seleccione HASP Memory del men HASP Tools y pulse en TimeHASP, o en el icono Memory.
90
2.
Edite la memoria.
3. Pulse Write para grabar los cambios en la memoria HASP4 Time. Para editar la memoria de usuario de HASP4 Time: 1. Seleccione HASP Memory en el men HASP Tools y pulse MemoHASP. Se abre el TimeHASP Memory Editor y muestra el contenido de la memoria HASP.
91
Parte 2 - Captulo 6
La memoria no utilizada con FAS p uede usarse para guardar cualquier dato adicional de su eleccin.
Para editar la memoria HASP4 Net: 1. Seleccione HASP Memory del men HASP Tools y pulse NetHASP, o el icono Memory. El NetHASP Memory Editor se abre y muestra el contenido de la memoria HASP:
2. 3.
92
Edite la memoria. Pulse Write para guardar los cambios en la memoria HASP4 Net.
2. Introduzca el mes, da y ao en la seccin TimeHASP Date. 3. Pulse Write Date para grabar la fecha. 4. Introduzca la hora en hh (horas), mm (minutos) y ss (segundos) en la seccin TimeHASP Timer. Para introducir la hora del reloj del sistema, pulse Load System Time y a continuacin Write. El reloj de HASP4 Time utiliza el formato de 24 horas (00:00:00 a 23:59:59) 5. 6. Pulse Write Time para grabar la hora. Pulse Close para salir de la caja de dilogo TimeHASP Time & Date Properties.
93
Parte 2 - Captulo 6
Program key
Cuando utiliza la opcin Program key, est programando cada llave HASP con los datos de la sesin actual de la utilidad de HaspEdit. Para grabar la memoria HaspEdit para mltiples llaves: 1. Seleccione Program Key del men HASP Tools, o pulse el icono Prog. de la barra de herramientas. Aparece la ventana Multi-key Programming. 2. Pulse Yes para escribir la memoria HaspEdit a la llave HASP conectada. El nmero de llaves que ha programado se muestra en Write Count. 3. Retire la actual llave HASP y conecte la siguiente que quiere programar. 4. Repita los pasos 2-3 hasta que todas las llaves hayan sido programadas.
94
2. Seleccione el tipo de ejecutable en la seccin Application Type. 3. Introduzca el nombre del ejecutable en el campo Utility Name. El nombre por defecto es Haspprog.exe. Puede cambiar el nombre/ directorio introduciendo uno nuevo o pulsando Browse. 4. En el campo Program Caption (para aplicaciones Win32 GUI) o en el campo Program Banner (para aplicaciones consola Win32 o DOS), introduzca un ttulo que aparezca cuando se cargue el ejecutable. 5. Pulse Create. Si an no existe un ejecutable del mismo nombre, aparece un mensaje confirmando la creacin del ejecutable. Pulse OK para volver a la ventana HASP Programming Utility.
95
Parte 2 - Captulo 6
Si ya existe un ejecutable con el mismo nombre, aparece una ventana de confirmacin. Pulse Yes para reemplazar el archivo y crear un nuevo ejecutable, o pulse No para volver a la ventana HASP Programming Utility. Ahora puede hacer iniciar el ejecutable y editar las llaves.
96
Primeros Pasos
Para Iniciar HASP Edit para Mac: 1. Conecte una llave HASP a su PC No conecte ms de una llave HASP al PC mientras est usando HASP Edit. La utilidad HASP Edit slo trabaja con una llave al mismo tiempo. 2. Arranque HASP Edit. Se muestra la ventana Password 3. Introduzca las passwords y confirme con OK. Las passwods de las llaves de demo HASP se insertan automticamente de forma predeterminada. Para evitarlo, vaya a Preferences del men HASP Edit y active / desactive la opcin.
Tambin puede iniciar HASP Edit sin conectar una llave HASP, por ejemplo, para editar plantillas.
Definicin de Preferencias
Dispone de las siguientes opciones cuando defina sus preferencias con HASP Edit para Mac : Cambio de los valores con que se rellenar la memoria al hacer un borrado de memoria. Fijar un directorio raz para sus archivos de plantillas. Mostrar un aviso si la hora y fecha asignada a la llave HASP4 Time difieren significativamente de las del sistema. Facilitar el uso de llaves demo HASP disponiendo de sus passwords insertados automticamente.
97
Parte 2 - Captulo 6
Para definir sus preferencias, selecciones Preferences del men HASP Edit y active / desactive las opciones.
Como opcin puede editar el archivo y seleccionar secciones para codificar. Si el tamao del archivo excede los 1024 bytes puede codificar el archivo pero no puede editarlo o seleccionar secciones.
Obtencin del Nmero ID Con HASP Edit, puede obtener el ID de HASP de las llaves HASP4 con memoria. El ID de HASP es nico para cada llave. Puede comprobar un ID de HASP especfico desde su aplicacin utilizando el servicio 6 (HaspID).
98
Para obtener el ID de HASP, conecte la llave HASP a su PC e introduzca las passwords. El nmero ID se muestra automticamente en la vista Current HASP. Puede seleccionar entre tres presentaciones diferentes de 32-bits y 16-bits: Hexadecimal Decimal Unsigned Decimal signed
No conecte ms de una llave, solamente puede grabarse una llave cada vez.
Programacin de una sola llave Puede programar llaves nicas para utilizarlas como master, o en caso de necesitar preparar una llave especial para un nico cliente.
99
Parte 2 - Captulo 6
Para programar una sola llave: 1. Conecte la llave HASP4 que desea utilizar como master. En caso de que la llave no sea mostrada en la vista Current HASP, seleccione Scan for Connected Key en el men Edit. 2. Introduzca las passwords para la llave. 3. Pulse en la caja Memory y edite la memoria segn sus necesidades. 4. Pulse Write para programar la llave. Tambin puede guardar la imagen de la memoria en un archivo plantilla (vea a continuacin). Trabajo con plantillas Los archivos de plantillas HASP Edit guardan los parmetros HASP e informacin adicional: Tipo de llave HASP Passwords de la llave Imagen de la memoria y parmetros de proteccin FAS Parmetros HASP4 Time Los archivos de plantillas HASP Edit contienen las passwords de HASP. Contmplelos como parte de su cdigo fuente y gurdelos en lugar seguro.
Se usan los archivos de plantillas para programar varias llaves HASP del mismo tipo con el mismo contenido de memoria Dispone de las siguientes opciones cuando trabaja con plantillas: Crear, renombrar y borrar plantillas Escribir a la llave conectada desde la vista de la plantilla
100
Para crear una plantilla: 1. Seleccione New del men File. 2. Seleccione Save as del men File 3. Introduzca un nombre para la plantilla y seleccione una carpeta. Para crear una plantilla desde una llave conectada: 1. Conecte la llave y seleccione Scan for Connected Key del men Edit para buscarla. 2. 3. Seleccione Save as del Men n Introduzca un nombre para la plantilla y seleccione una carpeta
Para programar una sola llave desde la vista de plantillas: Conecte la llave que desea programar Seleccione la plantilla Pulse Write Key
Uso de la herramienta Multi Key Programming Cuando programa mltiples llaves, usted graba la misma memoria a las llaves una despus de otra usando el contenido de memoria de una llave que ha sido previamente programada o utilizando una plantilla. Para usar la herramienta Multi Key Programming: 1. Conecte y programe la llave que desea usar como base 2. Seleccione Current HASP en el rbol de navegacin 3. Seleccione Multi Key Programming del men n 4. Desconecte la llave 5. Conecte una nueva llave y confirme
101
Parte 2 - Captulo 6
6.
Para usar la herramienta multi key programming con una plantilla: 1. Seleccione la plantilla que desea usar. 2. Seleccione Multi Key Programming del men Tools. 3. Conecte una llave y confirme 4. Desconecte la llave 5. Repita los pasos 3 a 4 para cada nueva llave Uso del Full Authorization System (FAS) El Full Authorization System (FAS) permite proteger mltiples aplicaciones con una sola llave HASP de memoria y especificar las condiciones bajo las que cada aplicacin puede utilizarse. Con HASP Edit, puede especificar los parmetros de proteccin para cada programa en la lista de programas FAS. Los parmetros se especifica segn el modelo de HASP que est usando. Dispone de las siguientes opciones: Limitar el nmero de activaciones para cada aplicacin protegida con HASP4 M1 (hasta 16 aplicaciones) o HASP4 M4 (112 aplicaciones). Fijar las fechas de caducidad tras las cuales las aplicaciones protegidas no podrn funcionar. Limitar tanto el nmero de estaciones que pueden ejecutar una aplicacin protegida con HASP4 Net simultneamente y el nmero de veces que puede activarse cada aplicacin. Para ver los parmetros de proteccin FAS: 1. Conecte la llave o seleccione la plantilla 2. Seleccione As FAS List o Split del men View. Para establecer los parmetros de proteccin FAS: 1. Conecte la llave o seleccione la plantilla y pulse la casilla FAS
102
2. Introduzca el nmero de posibles activaciones (HASP4 M1, HASP4 M4, HASP4 Net), estaciones (HASP4 Net) y fecha de caducidad (HASP4 Time). 3. Para establecer el nmero de activaciones como ilimitado, seleccione Unlimited del men Edit o teclee U. Uso de la memoria con FAS Los programas FAS se almacenan en el rea FAS de la memoria HASP. El rea FAS empieza en el word offset 24. Cuando utiliza llaves HASP4 M1, HASP4 M4 o HASP4 Net, cada programa protegido con FAS necesita cuatro bytes (dos words) de memoria HASP. Cada par de words en el rea FAS est reservado para un nmero de programa especifico. Los dos primeros words estn reservados para el programa nmero 1, el segundo par de words para el programa nmero 2, etc. Cuando utiliza llaves HASP4 Time, cada programa protegido con FAS requiere dos bytes (un word) de la memoria HASP Time adicional.
Los comentarios introducidos en la lista FAS slo estn grabados en el archivo plantilla, no en la memoria de la llave.
103
Parte 2 - Captulo 6
Preguntas Frecuentes
Pregunta Respuesta
He utilizado HASP4 Net para proteger una sola aplicacin. Los primeros 24 words de la memoria HASP4 Net no son suficientes. Qu puedo hacer? Los 224 words que quedan de la memoria HASP4 Net estn reservados para los parmetros de proteccin de las 112 aplicaciones que usted puede proteger con una sola HASP4 Net. Como est protegiendo una sola aplicacin, puede utilizar parte de esta memoria reservada para otros propsitos. Contacte con Aladdin y solicite el HASP4 Net Memory Layout. Utilice el API HASP4 Net para almacenar datos en partes de la memoria no utilizada.
Pregunta Respuesta
Es el HaspEdit la nica utilidad con la que yo puedo programar mis llaves HASP? No. Dispone otras opciones para hacerlo. La primera es crear una utilidad de programacin automtica con parmetros de proteccin predefinidos que introdujo con la utilidad de HaspEdit. Para ms informacin sobre la utilidad de programacin, vea la pgina 94. La segunda opcin es escribir su propio programa que incorpora el API de HASP y escribe datos en la memoria HASP. Para ms informacin sobre el API de HASP, vea la pgina 115. Finalmente, una opcin llamada Program HASP, que permite grabar parmetros FAS desde la utilidad Envolvente de Win32. Para ms informacin sobre el uso de la Envolvente de HASP junto con FAS, vea Grabacin de los Parmetros FAS (pgina 51).
104
Pregunta Respuesta
Puedo utilizar las llaves HASP programadas con HASP Edit para Mac o HASPEdit para Windows en la otra plataforma? S. Las llaves programadas con una de las aplicaciones HASP Edit pueden ser usadas en todas las plataformas soportadas. Otra opcin es utilizar el API de HASP para programar sus llaves HASP.
105
Parte 2 Captulo 7
107
Parte 2 - Captulo 7
Creacin de Informes
Sus clientes pueden crear un archivo de informe que contenga datos sobre los dispositivos de Aladdin y otra informacin relevante del sistema. Si sus clientes encuentran algn problema con el sistema HASP, le pueden enviar por e -mail el informe a usted o al equipo de soporte tcnico de su representante Aladdin. Para crear un informe: Pulse Create Report en la ventana principal de Aladdin Diagnostic.
Automticamente se crea un informe en un archivo de texto en el directorio AKSDIAG. El nombre predeterminado es NDIAG32.TXT. El archivo del informe se abre automticamente, permitiendo grabarlo con un nombre distinto o imprimirlo.
108
Comprobando una llave HASP remota Puede acceder a una llave remota seleccionando Acces to HASP LM en la caja de dilogo Check HASP. Introduzca el nmero del programa al que desea acceder y pulse OK.
109
Parte 2 - Captulo 7
Para comprobar si hay una llave HASP conectada: 1. Seleccione Check if any HASP key is connected. 2. Pulse OK. Se muestra informacin sobre el resultado de la comprobacin. 3. Pulse OK. Se muestran los detalles del acceso en el panel Key Access History de la ventana Aladdin Diagnostic. Para comprobar una llave HASP demo: 1. Seleccione Check a HASP Demo key. 2. Pulse OK. Se muestra informacin sobre el resultado de la comprobacin. 3. Pulse OK. Se muestran los detalles del acceso en el panel Key Access History de la ventana Aladdin Diagnostic. Para comprobar una llave HASP especfica: 1. 2. Seleccione Check a specific HASP key. Pulse OK. Se muestra informacin sobre el resultado de la comprobacin. 3. Pulse OK. Se muestran los detalles del acceso en el panel Key Access History de la ventana Aladdin Diagnostic.
Las passwords HASP son el corazn del concepto de proteccin HASP, por lo tanto, nunca debe revelarlas a sus clientes. Esta opcin de la utilidad Aladdin Diagnostic debe ser, por tanto, utilizada nicamente por personal de su compaa que conozca las passwords.
110
Columna Password
Valor any
Descripcin Se ha comprobado la presencia de cualquier llave HASP conectada localmente. Se ha comprobado la presencia de una llave HASP demo. Se ha comprobado la presencia de una llave HASP especfica La llave HASP se encontr en un puerto local. La llave HASP se encontr en un puerto remoto
demo
custom
Access
local
remote
Port/Prog.
Muestra el nmero del puerto en el que la llave HASP est conectada. Si se encuentra una llave y se ha accedido a travs de un puerto remoto con HASP LM, tambin se muestra el nmero de programa. Si no se puede acceder a la llave, se muestra (n/a)
p1-p4
111
113
Parte 3 Captulo 9
115
Parte 3 - Captulo 9
116
Usando el API
Despus de haber ejecutado las operaciones necesarias usando HASP Edit, est preparado para proteger su aplicacin con el API incorporando llamadas a la rutina hasp() a travs de su cdigo fuente.
117
Parte 3 - Captulo 9
hasp (Service, SeedCode, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4) La rutina hasp() acepta los siguientes nueve parmetros. Tabla 9.2 Parmetros para llaves HASP4 Net Parmetro Service SeedCode ProgNum Descripcin Determina la operacin realizada por la rutina. Se usa slo por compatibilidad con modelos anteriores. Nmero de programa asignado a la aplicacin protegida en la memoria HASP4 Net
118
Descripcin Primera Password de la llave HASP Segunda Password de la llave HASP Los valores de Par1 a Par4 cambian segn el servicio.
119
Parte 3 - Captulo 9
Especificacin del puerto con HASP para USB Utilice el parmetro PortNum para especificar el nmero de puerto USB. Con el propsito de enumeracin de HASP USB, se reservan los enteros desde el 201 al 255 para el puerto USB. Cada puerto en el que se conecta una llave tendr asignado uno de estos 55 nmeros en secuencia consecutiva. El siguiente ejemplo muestra como usar la enumeracin HASP USB: 1. Llame a la rutina hasp() con el servicio IsHasp(). El valor devuelto en P2 es el nmero de puertos a testear para su llave HASP especfica. 2. Trate el nmero en P2 como la variable n, donde n es el nmero de puertos USB a chequear. 3. Llame a la rutina hasp() con el servicio del API de HASP que lee la memoria o que obtiene el Nmero ID de HASP, transfiriendo el primer nmero de puerto USB en el parmetro PortNum. Debe comprobar datos especficos que le confirmen la identidad de una llave particular. 4. Si la memoria de la llave que est en el primer puerto se identifica como la llave especfica que usted quiere, guarde su nmero de puerto USB. Si no lo es, vuelva al paso 3 con el siguiente nmero de puerto USB, y as n veces. Ms adelante en su cdigo, comunique con la llave concreta utilizando el nmero de puerto especfico.
120
121
Parte 3 - Captulo 9
Servicios HASP
Consulte la tabla 9.4 para informacin de los servicios a utilizar con los diversos modelos HASP. Tabla 9.4 Modelos HASP y Servicios relacionados Modelo HASP HASP4 Std. HASP4 M1, M4 Servicios Relacionados Servicios Bsicos HASP Servicios Bsicos HASP Servicios de Memoria HASP4 HASP4 Time Servicios Bsicos HASP Servicios de Memoria HASP4 Servicios de HASP4 Time HASP4 Net Servicios de HASP4 Net
122
Servicio 1
Nombre IsHasp
Operacin Comprueba si cualquier HASP est conectada al PC. Comprueba el tipo de HASP conectada al PC. Comprueba qu puerto paralelo tiene una llave conectada. Comprueba el tamao de la memoria de una llave de memoria. Comprueba la versin del API
HaspStatus
60
HaspEncodeData
Datos codificados enviados a la llave HASP4 conectada. Se usa junto con HaspDecodeData para verificar la presencia de una llave HASP4 concreta. Datos decodificados enviados a la llave HASP4 conectada. Se usa junto con HaspEncodeData para verificar la presencia de una llave HASP4 concreta
61
HaspDecodeData
123
Parte 3 - Captulo 9
Servicio
3 4
Nombre
ReadWord WriteWord
Operacin
Lee un word de datos de la memoria HASP. Escribe un word de datos en la memoria HASP. Obtiene el ID de HASP Lee un bloque de datos de la memoria HASP. Escribe un bloque de datos en la memoria HASP.
6 50
HaspID ReadBlock
51
WriteBlock
124
75
ReadByte
76
WriteBlock
77
ReadBlock
78
GetHaspID
125
Parte 3 - Captulo 9
42
Login
44 45
ReadWord WriteWord
46 48
HaspID IdleTime
52
ReadBlock
53
WriteBlock
85
SetConfigFilename
126
Operacin Datos codificados enviados a la llave HASP4 Net conectada. Se usa junto con HaspDecodeData para verificar la presencia de una llave HASP4 Net concreta. Datos codificados enviados a la llave HASP4 Net conectada. Se usa junto con HaspDecodeData para verificar la presencia de una llave HASP4 Net concreta. Fija el nombre del Administrador de Licencias HASP con que la aplicacin protegida realizar un login HASP4 Net.
89*
HaspDecodeData
96
SetServerByName
Para acceder a una llave HASP4 Net conectada a un puerto paralelo local, se puede usar los servicios bsicos HASP y de HASP Memoria.
127
Parte 3 - Captulo 9
Necesita introducir las passwords para la mayora de las funciones de la utilidad Test de HASP. El centro del concepto de proteccin HASP son las passwords, por tanto nunca debe revelarlas a sus clientes. Haspdemo.exe debe ser utilizado por personal de su empresa que conozca las passwords.
128
Pregunta Respuesta
Bloqueos especiales para debuggers del hardware Auto-generacin de cdigo difcil de trazar Trampas de tiempo Frecuentes actualizaciones que incorporen nuevas prestaciones y mejoras en la seguridad.
129
Parte 3 - Captulo 9
Pregunta Respuesta
El lenguaje de programacin o compilador que estoy usando no es compatible con ninguno de los lenguajes y compiladores que soporta el HASP. Cmo protejo mi software? En este caso, sugerimos lo siguiente: Intente usar una interface HASP que use el mismo tipo de archivos objeto que su compilador. Intente usar una DLL (para aplicaciones Windows, Win32, y OS/2). Consulte su representante local de HASP. Constantemente se estn incorporando nuevos drivers para lenguajes y compiladores. Utilice la utilidad Envelope.
Pregunta Respuesta
Cmo puedo proteger una DLL con HASP? Puede utilizar la utilidad Envelope de Win32 para proteger DLLs de Win32, la Envolvente de Win16 para proteger DLLs de Win16, y el API de HASP para proteger DLLs Windows y Win32. Hay dos opciones cuando protegemos DLLs con el API: Utilice los archivos objeto suministrados con el software HASP y lnkelos con su DLL. Incorpore llamadas a la rutina hasp() dentro de su aplicacin. Llame a la rutina hasp() desde su DLL. La rutina hasp() est definida en la DLL de HASP que nosotros facilitamos. Incluya ambos su DLL y la DLL de HASP cuando distribuya su aplicacin.
130
Pregunta Respuesta
He utilizado el API para comprobar el nmero de identificacin de HASP. Algunas veces, HaspID retorna un nmero negativo en IDLow. Cuando calculo el nmero de identificacin, obtengo un nmero diferente al que retorna HaspEdit. Cuando IDLow es negativo, utilice la siguiente ecuacin para calcular el Nmero ID: Nmero ID = 65536 + IDLow + 65536 * IDHigh Alternativamente, puede utilizar HASP Edit para comprobar las fracciones cortas (16-bit) de las palabras IDLow y IDHigh. Puede entonces compararlos directamente con los parmetros IDLow y IDHigh devueltos por la rutina hasp() sin calcular el nmero ID.
Pregunta Respuesta
Dnde puedo encontrar un ejemplo de programa que demuestre como implementar el API? Hay un programa ejemplo en nuestro CD para la mayora de los compiladores ms comunes. Por ejemplo, para Visual C++, puede encontrar un ejemplo en el directorio win32api\msc.
131
Parte 3 Captulo 10
Estrategias de Proteccin
El sistema de proteccin HASP incluye las mejores herramientas de proteccin hardware y software del mercado actual. Sin embargo, el sistema de proteccin de software basado en HASP es slo tan seguro como lo sea el modo en que se ha instalado. Las llamadas a la rutina hasp(), que finalmente introduce en su cdigo, controlan el acceso a su aplicacin. Dado que el hardware HASP es virtualmente imposible de duplicar o emular, los ataques se centran normalmente en trazar el cdigo de la proteccin y eliminar las rutinas de proteccin. Para conseguir la mxima proteccin con HASP, use los dos mtodos de proteccin, la Envolvente y el API. Cada mtodo tiene prestaciones nicas y complementa y mejora el otro. Para aumentar la seguridad del software protegiendo con el API, utilice las tcnicas comentadas en este captulo. Este captulo describe: Ataques a los esquemas de proteccin que pueden ser evitados mediante las tcnicas de instalacin adecuadas Trucos para optimizar de la seguridad de las aplicaciones protegidas
Si desea asistencia a la hora de proteger su aplicacin contra posibles ataques, podemos ofrecer un servicio de soporte ms personalizado desde nuestro equipo de Consultores de Aladdin. Ellos podrn ayudarle en gran nmero de aspectos, incluyendo estrategias de proteccin y tcnicas de implantacin.
133
Estrategias de Proteccin
Parte 3 - Captulo 10
Para parchear las llamadas a la rutina de proteccin, es necesario cambiar el ejecutable protegido para que no enve llamadas a la llave, verifique los resultados que retorna la llave, y/o haga que el programa trabaje en concordancia dependiendo de esos resultados especificados en el cdigo. Este tipo de ataques se producen cuando se asume que la proteccin se ha integrado de una forma muy sencilla. Para parchear el software del fabricante de la llave, es necesario modificar las rutinas responsables de las comunicaciones con la llave hardware. Cuando se modifican estas rutinas, se asegura que se encuentren los resultados esperados incluso cuando no este conectada la llave correcta. Es importante saber que ambos mtodos, en el caso de que se consiga evitar la proteccin, son vlidos slo para esa aplicacin y no podrn aplicarse a otras aplicaciones protegidas.
134
Estrategias de Proteccin
Consejos y trucos
En esta seccin se ofrecen consejos y trucos para combatir los ataques descritos en la seccin anterior. Use tantas estrategias como sea posible para optimizar el nivel de seguridad de sus aplicaciones. Tenga en cuenta que cuando incorpora la proteccin, debe hacerlo de manera que se considere en qu se implica al usuario legal del software. Por ejemplo, un usuario legtimo puede olvidar conectar la llave al PC, su esquema de proteccin debe considerar esto. Una estrategia de proteccin hbil combate los ataques a su software, no a usuarios inocentes.
Estrategias de Proteccin
Parte 3 - Captulo 10
constantes importantes en clculos, o pequeos campos en una base de datos. Cualquier cosa que altere las principales funciones de la aplicacin es candidato potencial para su codificacin. Tenga la precaucin de notificar al usuario que HASP no est presente para evitar daar datos de valor. Cuando un hacker elimina estos chequeos y cajas de dialogo, se manifestar la dependencia de su aplicacin de esos datos. Describimos un proceso simple que puede modificar a su criterio. 1. Conecte su llave HASP4 Asegrese de que la llave HASP4 que desea usar para proteger su aplicacin est conectada al PC. 2. Codifique los datos Use la utilidad HASP Edit para codificar sus datos. El resultado de este proceso ser un archivo binario. Tambin puede optar por crear un archivo include en formato VB o C. Esto le permite acceder a valores codificados directamente desde su aplicacin. 3. Incorpore los datos codificados en su aplicacin Sustituya los datos originales de su aplicacin con el archivo include o los datos codificados. 4. Decodifique los datos a solicitud de su aplicacin Utilice el servicio 61 HaspDecodeData para decodificar los datos codificados a travs de la llave HASP4 conectada. Ahora ya puede operar con esos datos. Recuerde mostrar un mensaje de error cuando la HASP4 no est presente. Observe que frases como HASP not found y similares no deben codificarse utilizando claves de codificacin HASP-dependientes. Dado que esas frases se muestran cuando la HASP no est conectada, su propia decodificacin no debe depender de una respuesta de HASP. Para este tipo de frases utilice una clave de encriptacin de su eleccin y cualquier mtodo de codificacin disponible.
136
Estrategias de Proteccin
Para mejorar la seguridad, coloque los tres pasos en diferentes lugares de su software. Al separarlos es mucho ms difcil trazar los pasos secuenciales. La respuesta en caso de no encontrar la HASP debe retrasarse para que llegue por sorpresa, no en las inmediaciones de la llamada a HASP. Por ejemplo, puede comprobar la HASP cuando el usuario pulse una opcin de un men. Permita al usuario empezar a trabajar, incluso si no est la llave conectada. Muestre el mensaje HASP not found slo cuando se encuentre en una operacin completamente distinta para dificultar la relacin entre la llamada a HASP y la respuesta.
137
Estrategias de Proteccin
Parte 3 - Captulo 10
Para ello, debe identificarse el algoritmo del checksum y utilizar tcnicas de parcheado del cdigo e interrupciones para compensar los bytes cambiados. Es posible defenderse contra este tipo de ataques evitando simples mdulos de adicin o mediante operaciones XOR. Use CRC (cyclic redundancy check) u otro algoritmo sensible al orden de los bytes.
138
Estrategias de Proteccin
Otra tcnica de defensa es evitar la comparacin directa del resultado del checksum con el valor calculado previamente. En su lugar utilice el resultado del checksum para hacer que finalmente resulte un error si el valor no es el esperado. Por ejemplo, almacene el resultado en una variable y use esa variable ms adelante como clave de desencriptacin para desencriptar una parte del cdigo o datos. As tiene la ventaja de retrasar la reaccin. Adems, el valor de checksum esperado no se almacena explcitamente en la aplicacin.
Limite la Funcionalidad del Programa como Respuesta, en lugar de HASP not Found
Existen mltiples respuestas que puede incluir en su cdigo cuando la llave HASP no est conectada. La ms simple es insertar un mensaje No se encontr HASP. Pero, esto indica que se ha realizado un chequeo de HASP. En lugar de mostrar el mensaje No se encontr HASP, idee una interrupcin en el proceso de ejecucin del programa si no encuentra HASP. Por ejemplo, instruya a la aplicacin para inhabilitar el teclado si no encuentra la llave HASP, y que reinicie la operatividad normal cuando se conecte la llave ms tarde. Los usuarios ilegtimos pueden pensar que el problema surgi de un bug del programa. No sabrn que se realiz un chequeo de HASP, y que el problema es debido a la ausencia de la llave. Asegrese de usar la funcionalidad del programa teniendo en consideracin los usuarios legtimos que, por error han olvidado conectar la llave.
Ocultacin de Passwords
Oculte las passwords en la aplicacin protegida mediante: Su encriptacin Grabndolos en diferentes lugares del cdigo fuente Comparando los diferentes lugares donde se han grabado y chequeando su integridad
139
Estrategias de Proteccin
Parte 3 - Captulo 10
Aada Distorsiones
Llame a la rutina hasp( ) y envele parmetros con valores irrelevantes. Estos valores puede producirlos con generadores de nmeros aleatorios, o con valores horarios y otros. Por supuesto, estas llamadas a la rutina hasp() no deben influir en absoluto en resultados ni acciones posteriores. Estas distorsiones causan distracciones e interponen obstculos adicionales a quien intente atacar su aplicacin protegida.
Estrategias de Proteccin
En el ejemplo anterior, cuando la HASP est conectada y se lee de la memoria el valor 100, el programa contina y realiza la operacin de ir a label 100. Si la HASP no est conectada, el programa no va al lugar designado, label 100, y no realiza la operacin solicitada. Esta estrategia previene del uso del IF que se traduce a Asembler CMP, y as es ms difcil de trazar.
Cambie su Estrategia
Para mantener un alto novel de seguridad del software, debe cambiar a menudo su esquema de proteccin. Vare sus mtodos, agregando diferentes medidas de seguridad para cada versin de su aplicacin. Actualice sus herramientas de defensa regularmente. El compromiso de Aladdin es suministrarle la mejor tecnologa de proteccin disponible en el mercado, y mejorar continuamente su lnea de productos. Visite la web de Aladdin peridicamente para informarse de las ltimas novedades que se incorporan al sistema de proteccin HASP y contacte con Aladdin para obtener las ltimas actualizaciones del software HASP. En sintona con Aladdin estar siempre un paso por delante de quien trate de atacar su software.
141
Parte 3 Captulo 11
Este captulo describe los servicios bsicos del API de HASP que son de aplicacin para HASP4 Standard, HASP4 M1 y HASP4 M4. Cada uno de los servicios se describen con detalle. La tabla 11.1 muestra los parmetros de la rutina hasp() para cada servicio. Cada servicio de la tabla tiene asignadas dos filas: La fila, C (Call), lista los parmetros que usted enva a la rutina hasp(). La fila, R (Return), lista los parmetros que la rutina hasp() retorna.
Los valores de Par1, Par2, Par3 y Par4 cambian segn el servicio. Todos los parmetros son de 16 bits en aplicaciones 16-bits y 32 bits en aplicaciones 32-bits.
143
144
(Num).
Servicio
IsHasp(1)
HaspStatus(5)
HaspDecodeData(61)
HaspEncodeData(60)
R PortNum Password1 Password2 0 memoria Buffer Buffer Tipo Hasp 0 Tamao Password2 Password2 Encuentra HASP Password1 Password1 PortNum PortNum Buffer Status Buffer Lptnum actual Buffer Buffer
R PortNum
Status
Par3
Parte 3 - Captulo 11
Par4
145
Parte 3 - Captulo 11
Servicio 1: IsHasp
Descripcin Llaves implicadas Sintaxis Comprueba la presencia de cualquier HASP conectada al PC. HASP4 Std., HASP4 M1, HASP4 M4, HASP4 Time hasp (Servicio, CdigoSemilla, LptNum, Password1, Password2, Par1, Par2, Par3, Par4) Parmetros Utilizados Servicio 1
PortNum Valor que indica el puerto para la bsqueda.Vea Especificacin del Puerto en la pgina 119. Valores Devueltos Par1 Valor que indica si se encontr una HASP 0 ninguna HASP conectada al PC 1 una llave HASP conectada al PC Par2 Valor que indica los puertos para la bsqueda, Vea Especificacin del Puerto en la pgina 119. Par3 Cdigo que indica el status de la operacin. Vea Cdigos de status del API HASP en la pgina 197 Comentarios Servicio 1, IsHasp, es un servicio que simplemente comprueba la presencia de cualquier HASP conectada al PC. Utilice siempre IsHasp junto con otros servicios del API de HASP. Para comprobar que la HASP correcta (con su cdigo de programador) est conectada, use Servicio 61, HaspDecodeData. Para una simple comprobacin de presencia utilice el Servicio 5, HaspStatus.
146
Servicio 5: HaspStatus
Descripcin Comprueba el tipo de llave HASP conectada al PC. Tambin chequea en qu puerto est conectada la llave. Llaves implicadas Sintaxis HASP4 Std., HASP4 M1, HASP4 M4, HASP4 Time hasp (Servicio, CdigoSemilla, LptNum, Password1, Password2, Par1, Par2, Par3, Par4) Parmetros utilizados Servicio PortNum 5 Valor que indica el puerto para la bsqueda de la llave HASP.
Par1
Par2
Par3 Par4
Nmero de puerto actual, vea Especificacin del Puerto en la pgina 119. HASP Object Version La versin actual del API.
147
Parte 3 - Captulo 11
Comentarios
Para minimizar el tiempo de bsqueda, utilice el valor del LptNum Actual recibido en Par3, y envelo en el Parmetro LptNum en las siguientes llamadas a la rutina hasp( ). Si hay una llave HASP4 Net conectada al puerto paralelo local, HaspStatus la identifica como una HASP4 M4, es decir, el tamao de memoria devuelto en Par1 es 4, y el tipo de llave HASP devuelto en Par2 es 1. Las anteriores llaves TimeHASP-1 devolvern un status 3 en el Par2. Las aplicaciones que usen ese tipo de llaves deben actualizarse para contemplar status 3 5.
148
Parte 3 - Captulo 11
Parte 3 Captulo 12
Los valores de Par1, Par2, Par3 y Par4 cambian de acuerdo con el servicio. Todos los parmetros son de 16 bits en aplicaciones de 16.bits y de 32 bits en las aplicaciones de 32-bits.
Debido a que los sistemas Macintosh operan en Big Endian y los sistemas Intel en Little Endian, los valores de ReadWord y WriteWord son byte-swapped en Macintosh en relacin con Intel. Considrelo cuando lea y escriba en una llave HASP con estos servicios, o utilice los servicios ReadBlock y WriteBlock que operan Endian independientemente.
151
152
HaspID (6)
Servicio (no.)
ReadWord (3)
WriteWord (4)
ReadBlock (50)
R LptNum LptNum LptNum LptNum Password1 Password2 IDLow IDHigh Status Status Password2 Password2 Address Data Data Status Password1 Password1 Password1 Password2 Address Start Address Block Length Buffer Segment Buffer Offset
Parte 3 - Captulo 12
Status
Password1
LptNum
Semilla
Password2
Par1
Par2
Password1
Password2
WriteBlock (51)
C LptNum
Start Address
Block Length
Buffer Offset
153
Par4
Parte 3 - Captulo 12
Servicio 3: ReadWord
Descripcin Llaves Relacionadas Sintaxis
Lee un word de datos de la memoria HASP. HASP4 M1, HASP4 M4, HASP4 Time hasp (Service, SeedCode, LptNum, Password1, Password2, Par1, Par2, Par3, Par4)
Parmetros Utilizados
Servicio
3 Valor que indica el puerto a buscar por la HASP. Vea Especificacin del Puerto en la pgina 119
PortNum
Primera password de HASP. Segunda password de HASP. Address La direccin de memoria HASP que quiere leer de: 0 a 55 HASP4 M1 0 a 247 HASP4 M4 0 a 247 HASP4 Time
Cdigos Devueltos Par2 Data Una palabra de datos que lee de la memoria HASP. Par3 Status Cdigo que indica el estado de la operacin de la memoria. Vea Cdigos de Status del API de HASP en la pgina 197.
154
Servicio 4: WriteWord
Descripcin Llaves relacionadas Sintaxis
Escribe un word de datos en la memoria HASP. HASP4 M1, HASP4 M4 y HASP4 Time hasp (Service, SeedCode, LptNum, Password1, Password2, Par1, Par2, Par3, Par4)
Password1 Primera password de HASP. Password2 Segunda password de HASP. Par1 Address La direccin de memoria de HASP donde desee escribir: 0 a 55 HASP4 M1 0 a 247 HASP4 M4 0 a 247 HASP4 Time Par2 Data Un word de datos.
Valores devueltos
Par3 Status Un cdigo indicando el estado de la operacin de memoria. Vea Cdigos de status del API de HASP en la pgina 197.
155
Parte 3 - Captulo 12
Servicio 6: HaspID
Descripcin Llaves Relacionadas Sintaxis
Determina el nmero de identificacin de HASP (ID Number). HASP4 M1, HASP4 M4 y HASP4 Time hasp (Servicio, SeedCode, LptNum, Password1, Password2, Par1, Par2, Par3, Par4)
Parmetros Utilizados
Servicio PortNum 6 Valor que indica en qu puerto buscar HASP.
Password1 Primera password de HASP. Password2 Segunda password de HASP. Valores Devueltos
Par1
Par2
Par3
Status Un cdigo indicando el estado de la operacin de memoria. Vea Cdigos de status del API de HASP en la pgina 197.
Comentarios
El Nmero ID es un entero largo (32 bits). Se calcula como sigue, si IDLow y IDHigh son sin signo: Nmero ID = IDLow + 65536 * IDHigh Si el IDLow y el IDHigh son con signo, necesitar compensar valores negativos aadiendo 65535.
156
Parmetro utilizados
Servicio 50
PortNum Valor que indica el puerto para la bsqueda de HASP Password1Primera Password HASP Password2Segunda Password HASP Par1 Start Address Define el inicio de la direccin de memoria de HASP para leer el bloque: 0 a 55 HASP4 M1 0 a 247 HASP4 M4 0 a 247 HASP4 Time Par2 Par3 Block length El tamao del bloque, en words. Buffer segment Direccin del segmento de un buffer de programa(variable). Buffer Offset Direccin del Offset de un buffer de programa(variable). El tamao del buffer debe ser como mnimo tan largo como el tamao del bloque Cdigos Devueltos
Par4
Par3
Status Un cdigo indicando el estado de la operacin de memoria. Vea Cdigos de status del API de HASP en la pgina 197.
Resultado
157
Parte 3 - Captulo 12
Password1 Primera password de HASP. Password2 Segunda password de HASP. Par1 Start Address Define la direccin inicial de memoria HASP para escribir un bloque: 0 a 55 HASP4 M1 0 a 247 HASP4 M4 0 a 247 HASP4 Time Par2 Par3 Block length El tamao del bloque, en words. Buffer segment Direccin del segmento de un buffer de programa (variable). De relevancia slo para aplicaciones 16 bits Par4 Buffer Offset Direccin del Offset de un buffer de programa (variable). El tamao del buffer debe ser como mnimo tan largo como el tamao del bloque. Valores Devueltos Par3 Status Un cdigo indicando el estado de la operacin de memoria. Vea Cdigos de status del API de HASP en la pgina 197.
Resultado
Los contenidos del buffer del programa estn escritos en la memoria HASP.
158
Parte 3 Captulo 13
Debido a que los sistemas Macintosh operan en Big Endian y los sistemas Intel en Little Endian, los valores de ReadWord y WriteWord son byte-swapped en Macintosh en relacin con Intel. Considrelo cuando lea y escriba en una llave HASP con estos servicios, o utilice los servicios ReadBlock y WriteBlock que operan Endian independientemente.
159
SetDate (72)
SetTime (70)
Service (no.)
GetDate (73)
GetTime (71)
WriteByte (74)
160
R C R C R C R C
Seed Code
PortNum
PortNum
PortNum
PortNum
PortNum
PortNum
Password1
Password1
Password1
Password1
Password1
Password1
Password2 Da Da Segundo
Password2
Password2
Password2
Password2 Segundo
Password2 Par1
Direccin
Datos
Mes
Mes
Minuto
Minuto
Par2
Status
Status
Status
Status
Par3
Parte 3 - Captulo 13
Ao
Ao
Hora
Hora
Par4
HaspID (78)
Service (no.)
ReadByte (75)
WriteBlock (76)
ReadBlock (77)
LptNum PortNum PortNum Password1 Password1 Password1 Password2 Direccin de Inicio Tamao del Bloque Status Segmento de Buffer Buffer Offset Status Password2 Password2 Direccin de Inicio Tamao del Bloque Segmento de Buffer Buffer Offset Status Datos
Seed Code
PortNum
PortNum
Password1
Password1
Password2 Direccin
Password2 Par1
IDLow
IDHigh
Par2
Status
Status
Par3
Par4
161
Parte 3 - Captulo 13
Parmetros utilizados
Servicio PortNum 70 Valor que indica el puerto para la bsqueda de la llave.
Password1 Primera password HASP4 Time. Password2 Segunda password HASP4 Time. Par1 Second - Los segundos de la hora que desea fijar (00 a 59). Minute - Minutos de la hora que desea fijar (00 a 59). Hour - Horas de la hora que desea fijar (00 a 23).
Status Un cdigo que indica el status de la operacin. Vase Cdigos de Status del API de HASP en la pgina 197.
162
Parmetros utilizados
Servicio PortNum 71 Valor que indica el puerto para la bsqueda de la llave.
Password1 Primera password HASP4 Time. Password2 Segunda password HASP4 Time. Valores Devueltos Par1 Second Los segundos ledos del reloj HASP4 Time. Minute Los minutos ledos del reloj HASP4 Time. Status Un cdigo que indica el status de la operacin. Vase Cdigos de Status del API de HASP en la pgina 197.
Par2
Par3
163
Parte 3 - Captulo 13
Parmetros utilizados
Servicio PortNum 72 Valor que indica el puerto para la bsqueda de la llave.
Password1 Primera password HASP4 Time. Password2 Segunda password HASP4 Time. Par1 Day Da que desea fijar en el reloj HASP4 Time (1 a 31). Month Mes que desea fijar en el reloj HASP4 Time (1 a 12). Year Ao que desea fijar en el reloj HASP4 Time (0 a 99).
Par2
Par4
Valores Devueltos
Par3
Status Un cdigo que indica el status de la operacin. Vase Cdigos de Status del API de HASP en la pgina 197.
Comentarios
164
Parmetros Utilizados
Servicio PortNum 73 Valor que indica el puerto para la bsqueda de la llave.
Password1 Primera password HASP4 Time. Password2 Segunda password HASP4 Time. Valores Devueltos Par1 Par2 Par3 Day Da ledo del reloj HASP4 Time (1 a 31). Month Mes ledo del reloj HASP4 Time (1 a 12). Status Un cdigo que indica el status de la operacin. Vase Cdigos de Status del API de HASP en la pgina 197. Year Ao ledo del reloj HASP4 Time (0 a 99).
Par4
Comentarios
165
Parte 3 - Captulo 13
Parmetros Utilizados
Servicio PortNum 74 Valor que indica el puerto para la bsqueda de la llave.
Password1 Primera password HASP4 Time. Password2 Segunda password HASP4 Time. Par1 Address La direccin de memoria HASP4 Time en la que desea escribir (0 a 15). Data Un byte de datos.
Status Un cdigo que indica el status de la operacin. Vase Cdigos de Status del API de HASP en la pgina 197.
Comentarios
Este servicio escribe en la memoria de 16-bytes de HASP4 Time. Para escribir las 248 words de la memoria HASP4 Time, use el Servicio 4 (pgina 155)
166
Parmetros Utilizados
Servicio PortNum 75 Valor que indica el puerto para la bsqueda de la llave.
Password1 Primera password HASP4 Time. Password2 Segunda password HASP4 Time. Par1 Address La direccin de memoria HASP4 Time en la que desea leer (0 a 15).
Valores Devueltos Par2 Data Un byte de datos ledo de la memoria HASP4 Time. Status Un cdigo que indica el status de la operacin. Vase Cdigos de Status del API de HASP en la pgina 197.
Par3
Comentarios
Este servicio lee los 16 bytes de la memoria HASP4 Time. Para leer las 248 words de memoria de HASP4 Time, use el Servicio 3 (pgina 154).
167
Parte 3 - Captulo 13
Parmetros Utilizados
Servicio PortNum 76 Valor que indica el puerto para la bsqueda de la llave.
Password1 Primera password HASP4 Time. Password2 Segunda password HASP4 Time. Par1 Start Address Define la direccin de memoria inicial para escribir un bloque (0 a 15). Block length Tamao, en bytes, del bloque de datos (el mximo es 16). Buffer segment Direccin de Segmento de un buffer de programa (variable). De relevancia nicamente en aplicaciones de 16 bits. Buffer Offset Direccin Offset de un programa de buffer (variable). De relevancia nicamente en aplicaciones de 16 bits.
Par2
Par3
Par4
Valores devueltos Par3: Status Un cdigo que indica el status de la operacin. Vase Cdigos de Status del API de HASP en la pgina 197.
Comentarios
Este servicio escribe un bloque en la memoria de 16 bytes de HASP4 Time. Para escribir un bloque de datos en la memoria de 248 words de HASP4 Time, use el Servicio 51 (pgina 158).
168
Parmetros utilizados
Servicio PortNum 77 Valor que indica el puerto para la bsqueda de la llave.
Password1 Primera password HASP4 Time. Password2 Segunda password HASP4 Time. Par1 Start Address direccin inicial de la memoria HASP4 Time para leer un bloque (0 a 15). Block length El tamao, en bytes, del bloque de datos (mximo 16). Buffer segment Direccin del Segmento del buffer De relevancia slo en aplicaciones 16 bits. Buffer Offset Direccin Offset de un buffer de programa (variable). El tamao del buffer debe ser al menos tan largo como el tamao del bloque.
Par2
Par3
Par4
Valores Devueltos Par3 Status Un cdigo que indica el status de la operacin. Vase Cdigos de Status del API de HASP en la pgina 197.
Comentarios
Este servicio lee un bloque de la memoria de 16-byte de HASP4 Time. Para leer un bloque de la memoria de 248 words de HASP4 Time, use el Servicio 50 (pgina 157).
169
Parte 3 - Captulo 13
Parmetros utilizados
Servicio PortNum 78 Valor que indica el puerto para la bsqueda de la llave. Primera password HASP4 Time. Segunda password HASP4 Time.
IDLow Palabra inferior (menos significante) del ID Number. IDHigh Palabra superior (ms significante) del Nmero ID. Status Un cdigo que indica el status de la operacin. Vase Cdigos de Status del API de HASP en la pgina 197.
Par2
Par3
Comentarios
El Nmero ID es un entero (32 bits). Donde IDLow y IDHigh no tienen signo. Nmero ID = IDLow + 65536 * IDHigh, Si IDLow e IDHigh son con signo, deber compensar los valores negativos sumando 65535.
170
Parte 3 Captulo 14
171
Parte 3 - Captulo 14
Bajo el protocolo TCP/IP, una aplicacin Windows 16-bits que llama a la rutina hasp() obtiene control automticamente mientras la rutina se est procesando. El control se toma a travs del bucle de mensajes de la aplicacin en lugar de a travs de la siguiente instruccin despus de llamar a la rutina hasp(). No llame a la rutina hasp() de nuevo hasta que se recupere el control a travs de la siguiente instruccin a la llamada. Si lo hace, la aplicacin se bloquear. Para evitar esta situacin, utilice marcas para prevenir nuevas llamadas a la rutina hasp() mientras se procesa la llamada previa.
172
Login (42)
Logout (43)
Service (no.)
WriteWord (45)
LastStatus (40)
ReadWord (44)
R Cdigo Semilla ProgNum Password 1 Password 2 Direccin 2 1 Password Password ProgNum ProgNum Password 1 Password 2 Datos Status
ProgNum
Password
1 Password
2 Direccin
Estado de
Datos
Par2
Status
Cdigo de aviso
Par3
Par4
173
HaspID (46)
Service (no.)
IdleTime (48)
WriteBlock (53)
ReadBlock (52)
SetConfigFilename (85)
174
R Tiempo desocupa ProgNum Password 1 Password 2 Direccin Inicial Longitud del bloque Status del Buffer Buffer Offset Segmento Status Longitud del bloque Segmento del Buffer Buffer Offset Status Inicial IDHigh 2 Direccin 2 IDLow 1 Password Password Password 1 Password ProgNum do ProgNum
R 2
Tamao
Par2
del Buffer
Segmento
Par3
del Buffer
Parte 3 - Captulo 14
Buffer
Par4
Offset
(89)
(88)
Service (no.)
HaspEncodeData
HaspDecodeData
HaspQueryLicense
SetServerByName (96)
Licencias
R ProgNum Password 1 Password 2 ProgNum Password 1 Password 2 Tamao del Buffer Segmento del Buffer Buffer Offset Status Tamao del Buffer Segmento del Buffer Buffer Offset Status
Activas Tamao del Buffer Segmento del Buffer Buffer Offset Par4 Par3 Par2
Licencias
Mximas
Tipo de
Llave
Activacione
175
Parte 3 - Captulo 14
Parmetros utilizados
Servicio Par1 40
Net Status - Un cdigo que indica el estado de la llamada previa a la rutina hasp(). Devuelve un 0 si la ltima
llamada se realiz correctamente. Si no es as, devuelve un cdigo de error consulte la tabla 15.3 Cdigos de Status HASP4 Net en la pgina 200. Par2 System error - Un cdigo de error que depende del contexto. Por ejemplo: Un error de comunicacin de NetBIOS devuelve un cdigo de error especfico de NetBIOS. Un error en el archivo de configuracin HASP4 Net retorna el nmero de lnea del archivo de configuracin donde se encuentra el error.
Par3
Warning Un cdigo de aviso. Vea la tabla 15.4 Cdigos de aviso de HASP4 Net en la pgina 204.
Comentarios
Si ocurre un error, su aplicacin debe mostrar en pantalla el Net status, System Error y Warning.
176
Parmetros utilizados
Servicio ProgNum 42 El nmero asignado a la aplicacin en la memoria HASP4 Net, mediante la utilidad HaspEdit. Vea Acceso a las llaves con HASP Edit en la pgina 73.
Password1 Primera password HASP4 Net. Password2 Segunda password HASP4 Net. Valores Devueltos Use el Servicio 40: LastStatus (pgina 176) para comprobar si la llamada se ha realizado correctamente. Para una descripcin del proceso de login, vea Cmo trabaja HASP4 Net en la pgina 210. A excepcin de SetConfigFilename, SetServerByName, y LastStatus, llame a login antes que a otro servicio. Si llama a la rutina hasp() con el servicio login ms de una vez desde la misma estacin, el Administrador de Licencias HASP no aade la estacin y la aplicacin a la tabla log una segunda vez. En otras palabras, el Administrador de Licencias HASP no consume una licencia adicional de la aplicacin. Si no se apag adecuadamente el PC, al reiniciar la aplicacin protegida est listada en la tabla log y el Administrador de Licencias HASP4 Net no consume una licencia adicional.
Comentarios
177
Parte 3 - Captulo 14
Mltiples procesos Win32 bajo Windows NT o Windows 95/98/ME toman slo una licencia con un solo protocolo, o cuando NetBIOS e IPX son utilizados en combinacin. Sin embargo, estos procesos bajo estos sistemas operativos toman dos licencias si TCP/IP es utilizado junto con NetBIOS y/o IPX.
178
Parmetros utilizados
Servicio ProgNum 43 El nmero asignado a la aplicacin en la memoria HASP4 Net mediante la utilidad HaspEdit. Vea Acceso a las llaves con HASP Edit en la pgina 73.
Password1 Primera password HASP4 Net. Password2 Segunda password HASP4 Net. Valores devueltos Use el Servicio 40: LastStatus (pgina 176) para comprobar si la llamada se ha realizado correctamente.
Comentarios
El comportamiento del logout es el siguiente: Las aplicaciones Win32 requieren un logout por cada login. Las aplicaciones Mac requieren un solo logout independientemente del nmero de logins.
Si no se realiza un logout HASP4 Net, la estacin permanece listada en la tabla log de HASP4 Net. En este caso el comportamiento es el siguiente:
179
Parte 3 - Captulo 14
El nmero de estaciones ejecutando la aplicacin al mismo tiempo permanece inalterado y no se libera una licencia. Si ha autorizado a una aplicacin protegida a funcionar en n estaciones, y n estaciones han realizado un login HASP4 Net, ninguna otra estacin puede ejecutar la aplicacin hasta que una de esas n estaciones realice un logout HASP4 Net. Si la misma estacin reactiva la aplicacin, la aplicacin funciona utilizando la licencia que ya ha sido concedida. * Cuando el nmero de estaciones ejecutando una aplicacin protegida alcanza el mximo y hay un intento de activar la aplicacin desde otra estacin, el Administrador de Licencias HASP busca en la tabla log una estacin inactiva. Si encuentra una, el Administrador de Licencias HASP elimina la estacin inactiva de la tabla log de HASP. Como resultado, libera una licencia e inmediatamente la concede a la estacin que realiz la solicitud. Por defecto, el tiempo para considerar inactiva una estacin es de 36 horas. Puede cambiar este valor mediante el servicio 48: IdleTime (pgina 184).
180
Parmetros utilizados
Servicio ProgNum 44 El nmero asignado a la aplicacin en la memoria HASP4 Net mediante la utilidad HASP Edit. Vea Acceso a las llaves con HASP Edit en la pgina 73.
Password1 Primera password HASP4 Net. Password2 Segunda password HASP4 Net. Par1 Address - La direccin de memoria HASP4 Net desde la que desea leer (0 a 247).
Valores Devueltos
Use el Servicio 40: LastStatus (pgina 176) para comprobar si la llamada se ha realizado correctamente. Par2 Par3 Data Datos ledos de la memoria HASP4 Net. Status Cdigo que indica el status de la operacin. Vea Cdigos de Status del API de HASP en la pgina 197.
181
Parte 3 - Captulo 14
Parmetros utilizados
Servicio ProgNum Password1 Primera password HASP4 Net. Password2 Segunda password HASP4 Net. Par1 Address - La direccin de memoria HASP4 Net donde quiere escribir (0 a 247). Data - Una palabra de datos. 45
Use el Servicio 40: LastStatus (pgina 176) para comprobar si la llamada se ha realizado correctamente. Par3 Status Cdigo que indica el status de la operacin. Vea Cdigos de Status del API de HASP en la pgina 197.
Comentarios
Los offsets de los words 24 y posteriores de la memoria HASP4 Net estn reservados para la lista de programa HASP4 Net. Si quiere escribir en alguno de esos offsets, puede sobrescribir los parmetros de proteccin que ha salvado previamente en el rea de memoria.
182
Parmetros utilizados
Servicio ProgNum 46 El nmero asignado a la aplicacin en la memoria HASP4 Net mediante la utilidad HASP Edit. Vase Acceso a las llaves con HASP Edit en la pgina 73.
Password1 Primera password HASP4 Net. Password2 Segunda password HASP4 Net. Valores Devueltos Use el Servicio 40: LastStatus (pgina 176) para comprobar si la llamada se ha realizado correctamente. Par1 IDLow - Word inferior (el menos significativo) del nmero ID IDHigh - Word superior (el ms significativo) del nmero ID Status - Un cdigo que indica el status de la operacin. Vea Cdigos de Status del API de HASP en la pgina 197.
Par2
Par3
Comentarios
El nmero de identificacin es un entero largo (32 bits). Se calcula como sigue, si IDLow e IDHigh son sin signo. Nmero ID = IDLow + 65536 * IDHigh, Si IDLow e IDHigh son con signo, necesita compensar el valor negativo sumando 65535.
183
Parte 3 - Captulo 14
Parmetros utilizados
Password1 Primera password HASP4 Net. Password2 Segunda password HASP4 Net.
Valores Devueltos
Use el Servicio 40: LastStatus (pgina 176) para comprobar si la llamada se ha realizado correctamente.
Comentarios
Cuando el nmero de estaciones ejecutando una aplicacin protegida ha alcanzado su mximo y se intenta activar la aplicacin desde otra estacin, el Administrador de Licencias HASP busca en la tabla log una estacin inactiva. Si encuentra una, el Administrador de Licencias HASP borra la estacin inactiva de la tabla log de HASP. Como resultado, se libera una licencia que se asigna a la estacin que realiz un login.
184
La aplicacin protegida, funcionando en la estacin que fue eliminada de la tabla log, retornar un cdigo de error (error 135 139) la prxima vez que intenta acceder a HASP4 Net. Cuando una estacin accede al HASP4 Net durante la franja de idletime, el contador se pone a cero. Para integrar IdleTime, llame a la rutina hasp() con el servicio IdleTime despus de un servicio login. Si no fija el idletime, el Administrador de Licencias HASP utiliza su valor predeterminado, que es de 36 horas.
185
Parte 3 - Captulo 14
Parmetros utilizados
Servicio ProgNum 52 El nmero asignado a la aplicacin en la memoria HASP4 Net mediante la utilidad HASP Edit. Vase Acceso a las llaves con HASP Edit en la pgina 73.
Password1 Primera password HASP4 Net. Password2 Segunda password HASP4 Net. Par1 Start Address - Define la direccin inicial de memoria HASP4 Net para leer el bloque (0 a 247). Block Size - Tamao del bloque de datos en words (mximo 24 words). Buffer segment - Direccin del segmento de un buffer de programa (variable). De relevancia slo en aplicaciones de 16 bits Buffer Offset Direccin Offset de un buffer de programa (variable). El tamao del buffer debe ser al menos tan largo como el tamao del bloque.
Par2
Par3
Par4
186
Valores Devueltos
Use el Servicio 40: LastStatus (pgina 176) para comprobar si la llamada se ha realizado correctamente. Par3 Status - Un cdigo que indica el status de la operacin. Vea Cdigos de Status del API de HASP en la pgina 197.
187
Parte 3 - Captulo 14
Parmetros utilizados
Servicio ProgNum 53 El nmero asignado a la aplicacin en la memoria HASP4 Net mediante la utilidad HASP Edit. Vase Acceso a las llaves con HASP Edit en la pgina 73.
Password1 Primera password HASP4 Net. Password2 Segunda password HASP4 Net. Par1 Start Address - Define la direccin inicial de la memoria HASP4 Net para escribir un bloque (0 a 247). Block Size - Tamao del bloque de datos en words (mximo 24 words). Buffer segment - Direccin del segmento de un buffer de programa (variable). No necesita especificar el parmetro del segmento del buffer para aplicaciones de 32-bits. Par4 Buffer Offset - Direccin Offset de un buffer de programa (variable). El tamao del buffer debe ser al menos tan largo como el tamao del bloque.
Par2
Par3
Valores Devueltos
Use el Servicio 40: LastStatus (pgina 176) para comprobar si la llamada se ha realizado correctamente.
188
Comentarios
Los offsets del word 24 en delante de la memoria HASP4 Net estn reservados para el listado de programas HASP4 Net. Si escribe en cualquier de estos offsets, se podran sobrescribir los parmetros de proteccin que ha guardado previamente en esta rea de memoria.
189
Parte 3 - Captulo 14
Parmetros utilizados
Servicio Par2 85 Buffer Size - El tamao en bytes del buffer que contiene el nombre del archivo de configuracin HASP4 Net. Buffer Segment - La direccin del segmento del buffer que contiene el nombre del archivo de configuracin de HASP4 Net. De relevancia slo para aplicaciones 16 bits. Buffer Offset - La direccin offset del buffer que contiene el nombre del archivo de configuracin de HASP4 Net.
Par3
Par4
Valores Devueltos
Use el Servicio 40: LastStatus (pgina 176) para comprobar si la llamada se ha realizado correctamente. Si utiliza el servicio SetConfigFilename, llmelo antes de realizar un login HASP4 Net. Si no usa el SetConfigFilename, la aplicacin protegida o bien no utiliza un archivo de configuracin de HASP4 Net, o utiliza el archivo por defecto llamado nethasp.ini si lo encuentra. Para ms informacin sobre el archivo de configuracin HASP4 Net, vea Configuracin de clientes HASP4 Net (pgina 247).
Comentarios
190
Parmetros utilizados
Servicio ProgNum 88 El nmero asignado a la aplicacin en la memoria HASP4 Net mediante la utilidad HASP Edit. Vase Acceso a las llaves con HASP Edit en la pgina 73.
Password1 Primera Password HASP4 Net Password2 Segunda Password HASP4 Net Par1 Par2 0 (reservado) Buffer Size- El tamao en bytes del buffer a codificar. Debe tener al menos 8 bytes de tamao. Buffer Segment - La direccin del segmento del buffer. De relevancia slo en aplicaciones 16 bits. Buffer Offset - La direccin offset del buffer.
Par3
Par4
Valores Devueltos
Use el Servicio 40: LastStatus (pgina 176) para comprobar si la llamada se ha realizado correctamente. Par3 Status - Un cdigo que indica el status de la operacin. Vea Cdigos de Status del API de HASP en la pgina 197.
Comentarios
El contenido del buffer de programa se codifica a travs de la HASP conectada y se actualiza sobre el terreno.
191
Parte 3 - Captulo 14
Este servicio slo puede usarse con la generacin HASP4 de llaves HASP. Si hay una llave anterior a la generacin HASP4 conectada, los datos no se codificarn y el servicio devolver un cdigo de error. Este servicio no est disponible para aplicaciones DOS. Si los datos se codifican con una aplicacin Win16, el tamao mximo del buffer es 64K. Los datos codificados con una aplicacin Win32 que excedan las 64K no podrn decodificarse desde el API Win16. La codificacin durante la ejecucin debe reducirse al mnimo. En su lugar, entregue al usuario final archivos y datos codificados previamente para su decodificacin. Vea el captulo 13 para mayor informacin.
192
Password1 Primera Password HASP4 Net Password2 Segunda Password HASP4 Net Par1 Par2 Par3 0 (reservado) Buffer Size- El tamao en bytes del buffer a codificar. Debe tener al menos 8 bytes de tamao. Buffer Segment - La direccin del segmento del buffer. De relevancia slo en aplicaciones 16 bits. Buffer Offset - La direccin offset del buffer.
Use el Servicio 40: LastStatus (pgina 176) para comprobar si la llamada se ha realizado correctamente. Par3 Status - Un cdigo que indica el status de la operacin. Vea Cdigos de Status del API de HASP en la pgina 197.
Comentarios
El contenido del buffer de programa se decodifica a travs de la HASP conectada y se actualiza sobre el terreno
193
Parte 3 - Captulo 14
Este servicio slo puede usarse con la generacin HASP4 de llaves HASP. Si hay una llave anterior a la generacin HASP4 conectada, los datos no se decodificarn y el servicio devolver un cdigo de error. Si los datos se decodifican con una aplicacin Win16, el tamao mximo del buffer es 64K. Los datos codificados con una aplicacin Win32 que excedan las 64K no podrn decodificarse desde el API Win16.
194
Parmetros utilizados
Par3
Par4
Valores Devueltos
Use el Servicio 40: LastStatus (pgina 176) para comprobar si la llamada se ha realizado correctamente. Si llama a la rutina hasp() con el servicio SetServerByName, hgalo antes de realizar un login HASP4 Net. Para nombrar un Administrador de Licencias HASP, crguelo con el switch srvname, vea Parmetros del Administrador de Licencias HASP (pgina 236). Cuando una aplicacin llama a la rutina hasp() con SetServerByName, la rutina busca un Administrador de Licencias HASP cargado con el nombre especificado. Si encuentra uno, la rutina hasp() almacena la ubicacin del Administrador de Licencias HASP. Cuando la aplicacin realiza un login HASP4 Net, se accede al Administrador de Licencias HASP de la ubicacin guardada. El nombre del Administrador de Licencias HASP puede ser de hasta siete caracteres.
195
Comentarios
Parte 3 - Captulo 14
Parmetros utilizados
Servicio ProgNum 104 El nmero asignado a la aplicacin en la memoria HASP4 Net con la utilidad HASP Edit. Vea Acceso a las llaves con HASP Edit en la pgina 73.
Password1 Primera Password HASP4 Net Password2 Segunda Password HASP4 Net
Valores Devueltos
Use el Servicio 40: LastStatus (pgina 176) para comprobar si la llamada se ha realizado correctamente. Par1 Nmero de licencias activas actualmente (usuarios concurrentes) para ese ProgNum Mximo nmero de licencias disponibles para ese ProgNum Tipo de llave HASP4 Net Nmero de activaciones restantes para ese ProgNum (-1 = ilimitadas).
Par2
Par3 Par4
196
Parte 3 Captulo 15
Cdigo
0 -1 -2 -3 -4 -5 -6
Descripcin
Operacin realizada con xito. Time-out: error en una operacin de escritura. La direccin indicada no est dentro del rango. No se ha encontrado una HASP con la password indicada. Se encontr una HASP pero no es una HASP de memoria. Error en una operacin de escritura. El puerto paralelo no est actualmente disponible. Otro dispositivo conectado a l, como una impresora, est activo. Reintente una llamada desde el API tras unos segundos.
197
Parte 3 - Captulo 15
Cdigo
-7
Descripcin
El tamao del buffer es muy pequeo. Este error ocurre nicamente con los servicios que requieren un tamao mnimo de buffer. El hardware no soporta el servicio solicitado. Este servicio requiere una llave de la generacin HASP4 conectada Puntero no vlido. El puntero enviado al servicio no es vlido Acceso a la llave prohibido porque la aplicacin est trabajando a travs de una pantalla remota en Citrix Winframe o Windows Terminal Server (la aplicacin slo funciona en la pantalla de consola) Acceso a la llave prohibido porque la aplicacin est trabajando a travs de una pantalla remota en Citrix Winframe o Windows Terminal Server (se requiere Service Pack 4 + para detectar si est trabajando en la consola). Se envi al servicio un parmetro no vlido o fuera de rango. No puede abrir el HASP Device Driver De aplicacin para aplicaciones Win32. Instale el HASP Device Driver
-8
-9 -10
-11
-12 -100
-101
-102
-110
No puede abrir el HASP Device Driver De aplicacin a aplicaciones DOS, DOS Extender, y Windows que tratan de acceder al HASP Device Driver. Instale el HASP Device Driver
-111
No puede leer el HASP Device Driver De aplicacin a aplicaciones DOS, DOS Extender, y Windows que tratan de acceder al HASP Device Driver.
198
Cdigo
-112
Descripcin
No puede cerrar el HASP Device Driver De aplicacin a aplicaciones DOS, DOS Extender, y Windows que tratan de acceder al HASP Device Driver.
-120
No puede ubicar memoria DOS De aplicacin para aplicaciones DOS Extender y Windows con llaves monopuesto Trate de liberar memoria.
-121
Error liberando memoria DOS De aplicacin para aplicaciones DOS Extender y Windows con llaves monopuesto
-999
Servicio no vlido
Cdigo Descripcin
0 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 Operacin realizada con xito. Da no vlido. Mes no vlido. Ao no vlido. Segundos no vlidos. Minutos no vlidos. Horas no vlidas. Direccin no vlida: la direccin no est dentro del rango 0 a 15. Time-out: error en una operacin de escritura. No se encontr una HASP con las passwords especificadas. Se encontr una llave HASP pero no es una HASP4 Time.
199
Parte 3 - Captulo 15
Descripcin
Operacin realizada con xito. Los protocolos IPX, NetBIOS, o TCP/IP no se han instalado adecuadamente, acte en consecuencia. Error de comunicaciones; no es posible obtener el nmero de socket (de aplicacin para IPX y TCP/IP). Verifique que el protocolo est bien instalado.
Error de comunicaciones. NetBIOS no puede establecer la sesin. IPX no puede obtener la direccin del Administrador de licencias HASP. Verifique que el protocolo est bien instalado. TCP/IP no puede conectar con el servidor. Verifique que la direccin del servidor es correcta.
200
Cdigo
4
Descripcin
No se encontr el Administrador de Licencias HASP. Compruebe que su aplicacin tiene acceso al archivo de direccin. No puede leer el archivo de direccin del Administrador de Licencias HASP. No pudo cerrar el archivo de direccin del Administrador de Licencias HASP. Error de Comunicacin en envo de un paquete (aplicable a IPX y NetBIOS). Verifique que el protocolo est bien instalado. Sin respuesta del Administrador de Licencias HASP. IPX la red est ocupada o se han encontrado archivos de direccin incorrectos. En el ltimo caso, borre todas las copias de los archivos haspaddr.dat y newhaddr.dat. Ha llamado a la rutina hasp() con uno de los servicios, sin llamar antes al servicio login. Error de Comunicacin de adaptador (de aplicacin slo para NetBIOS). Verifique que el protocolo est bien instalado. No se encontr activo el Administrador de Licencias HASP. No puede realizar un login de HASP4 Net debido a una llamada SetServerByName infructuosa. Error de sintaxis en el archivo de configuracin. El servicio LastStatus retorna el nmero de la lnea que contiene el error en Par2. Si LastStatus devuelve 0 en Par2, existe un valor ilegal en una variable de entorno. Error en el manejo del archivo de configuracin HASP. Una operacin de archivo de tipo abrir archivo o leer archivo ha fallado. El servicio LastStatus retorna el cdigo de error de sistema en Par2.
6 7
10
11
15 18 19
20
201
Parte 3 - Captulo 15
Cdigo
21
Descripcin
HASP4 Net no pudo encontrar memoria disponible. Este error se produce nicamente en entornos HASP4 Net bajo DOS extendido y Windows. Trate de liberar memoria DOS. HASP4 Net no pudo liberar memoria DOS. Este error se produce nicamente en entornos HASP4 Net bajo DOS extendido y Windows. Direccin de memoria HASP4 Net no vlida. Error al cargar winsock.dll (de aplicacin slo a TCP/IP e IPX). Error al descargar winsock.dll (de aplicacin slo a TCP/IP e IPX). Error al iniciar winsock.dll (de aplicacin slo a TCP/IP e IPX). Fallo al cerrar un socket (de aplicacin slo con TCP/IP) Se ha solicitado el servicio SetProtocol sin realizar un logout. Acceso prohibido a la llave debido a que se est trabajando en Citrix Winframe o Windows Terminal Server (se requiere Service Pack 4+ para detectar si se est trabajando en la pantalla de consola). La HASP4 Net conectada al Administrador de Licencias HASP no es correcta El nmero de programa especificado no est en la lista de programas de la memoria HASP4 Net. Error de lectura de la memoria HASP4 Net. Error de escritura de la memoria HASP4 Net. El login actual excede el nmero de estaciones autorizadas para ejecutar la aplicacin simultneamente. El login actual excede el nmero de ejecuciones autorizadas para la aplicacin.
22
23 25 26 28 30 33 34
202
Cdigo
135 136 137 138
Descripcin
Ha llamado a la rutina hasp() con el servicio Logout sin llamar antes al servicio Login. El Administrador de Licencias HASP esta saturado, esto puede ocurrir si su sistema HASP4 Net no est bien adaptado a la red. No hay espacio en la tabla log HASP. Error interno de HASP4 Net, el nmero de estaciones autorizadas es mayor que el nmero de estaciones que soporta el modelo HASP4 Net instalado. El PC con la llave HASP4 Net se ha reiniciado, o se ha llamado a la rutina hasp() con un servicio (excluyendo los servicios 40,85 96) sin llamar previamente al servicio login. El Administrador de Licencias HASP no sirve a la red de su estacin. Servicio no vlido, o una nueva versin del API de HASP est comunicando con una versin anterior del Administrador de Licencias HASP. No se ha encontrado el Administrador de Licencias HASP con el nombre especificado en el archivo de configuracin HASP4 Net. No se ha encontrado el Administrador de Licencias HASP con el nombre especificado. Este error procede del servicio SetServerByName. Se han encontrado dos o ms Administradores de Licencias HASP con un mismo nombre asignado. Este error procede del servicio SetServerByName.
139
140 141
142 150
151
203
Parte 3 - Captulo 15
Cdigo
152 153 155
Descripcin
Ha fallado la operacin de codificado porque el hardware no soporta el servicio. Ha fallado la operacin de decodificado porque el hardware no soporta el servicio. Se ha encontrado una versin antigua del Administrador de Licencias HASP. El API utilizado requiere la instalacin de una versin ms actual del Administrador de Licencias.
La siguiente tabla enumera los posibles cdigos de alerta devueltos en Par3 utilizando el servicio LastStatus. Cuando Par3 retorna una alerta, la ejecucin del servicio se completa excepto en lo indicado en la alerta.
Descripcin
IPX est habilitado va nethasp.ini o va variable de entorno NETHASPPROTOCOL, pero el protocolo IPX no est instalado. Esta alerta ocurre bajo el login de HASP4 Net. NetBIOS est habilitado va nethasp.ini o va una variable de entorno, pero el protocolo NetBIOS no est instalado. Esta alerta ocurre bajo el login de HASP4 Net. IPX y NetBIOS estn habilitados va nethasp.ini o va una variable de entorno, pero ambos protocolos no estn instalados. Esta alerta ocurre bajo el login de HASP4 Net. TCP/IP est habilitado va nethasp.ini o va una variable de entorno, pero el protocolo TCP/IP no est instalado. Esta alerta ocurre bajo el login de HASP4 Net. IPX y TCP/IP estn habilitados va nethasp.ini o va una variable de entorno, pero ambos protocolos no estn instalados. Esta alerta ocurre bajo el login de HASP4 Net.
204
Cdigo
6
Descripcin
TCP/IP y NetBIOS estn habilitados va nethasp.ini o va una variable de entorno, pero ambos protocolos no estn instalados. Esta alerta ocurre bajo el login de HASP4 Net. IPX, NetBIOS y TCP/IP estn habilitados va nethasp.ini o va una variable de entorno, pero ninguno de los tres protocolos estn instalados. Esta alerta ocurre bajo el login de HASP4 Net. El Administrador de Licencias HASP ha devuelto un logout de HASP4 Net OK, pero debido a un excesivo retraso en la respuesta, puede que el logout no se haya realizado. En ese caso, debe realizar un logout HASP4 Net adicional. Si el logout de HASP4 Net retorna un error 135, el logout se realiz bien a pesar del error. Esta alerta ocurre bajo el logout de HASP4 Net. Existe algn valor no vlido en nethasp.ini, o no se ha reconocido una nueva palabra por parte de la versin antigua del API. Este error ocurre bajo el login de HASP4 Net. Los protocolos TCP o UDP se han especificado en el nethasp.ini junto con otro protocolo. Si la direccin IP del Administrador de Licencias HASP no est especificada en nethasp.ini, el cliente HASP4 Net trabajar con el otro protocolo especificado, a pesar de ello se retorna un cdigo de alerta para notificarle que TCP o UDP no estn siendo utilizados debido a la falta de direccin IP. Esta alerta ocurre despus de usar SetProtocol. El API de HASP no puede liberar memoria. Esta alerta puede ocurrir despus de cualquier servicio del API de HASP4 Net.
18
19
20
22
Los cdigos LastStatus de HASP4 Net se actualizan constantemente. Para obtener las ltimas actualizaciones, vea el archivo de ayuda del Administrador de Licencias HASP.
205
207
Parte 4
El captulo Adaptacin de HASP4 Net a la red (pgina 263) ofrece informacin acerca de la adaptacin de HASP4 Net a una red definiendo el rango de estaciones y la adaptacin del timeout.
208
Parte 4 Captulo 17
Qu es HASP4 Net?
HASP4 Net es una llave HASP diseada para redes. Le permite una distribucin efectiva de su aplicacin para entornos de red controlando el nmero de copias de software que pueden ser ejecutadas al mismo tiempo. Conectando una sola llave HASP4 Net a cualquier PC de la red, puede proteger su aplicacin contra el uso no autorizado, y monitorizar el nmero de estaciones usando la aplicacin simultneamente.
209
Parte 4 Captulo 17
Las estaciones 1 y 2 estn ejecutando la aplicacin protegida 1, y ambas estn listadas en la tabla log. De las cinco estaciones que estn autorizadas para ejecutar la aplicacin protegida concurrentemente, dos estn ya listadas en la tabla log. Figura 17.3 Se realiza un login de HASP4 Net
La estacin 3 carga la aplicacin protegida 1, la cual accede al Administrador de Licencias HASP con un login de HASP4 Net. El Administrador de Licencias HASP determina si la estacin 3 est autorizado o no para activar la aplicacin.
211
Parte 4 Captulo 17
Los chequeos realizados por el Administrador de Licencias HASP son positivos, y la aplicacin 1 es autorizada para funcionar en la estacin 3. La tabla de log se actualiza y ahora incluye la estacin 3.
Preparacin de la Proteccin
Proteccin de aplicaciones con HASP4 Net
Al proteger su aplicacin, puede elegir entre proteger su aplicacin para uso en modo local, para uso en red o para ambos. Para habilitar HASP4 Net, use uno de los siguientes mtodos: habilite HASP4 Net al utilizar la Envelope HASP Use los servicios HASP4 Net del API HASP en lugar de, o adems de otros servicios del API. Para ms informacin vea Proteccin de aplicaciones con HASP4 Net (pgina 221).
212
Existen diversos modelos de llaves HASP4 Net. El modelo de HASP4 Net determina el nmero mximo de licencias disponible para cada aplicacin (ej. El nmero mximo de estaciones que pueden acceder a la aplicacin simultneamente). Por ejemplo, HASP4 Net5 puede permitir desde cero hasta cinco licencias. Otros modelos permiten hasta 10, 20, 50 100 . Con HASP4 NetU, su aplicacin puede tener un nmero ilimitado de licencias. Las llaves HASP4 Net estn disponibles para puerto paralelo o puerto USB.
213
Parte 4 Captulo 17
214
No confunda el login y logout de HASP4 Net con el login y logout estndar de la red.
El cliente HASP4 Net est disponible para entornos Windows 3.1, Windows 95 / 98 / ME, Windows NT / 2000 / XP, Mac OS 8.6, Mac OS 9.x y Mac OS X.
Los clientes HASP4 Net pueden configurarse individualmente. Para ms informacin consulte Configuracin de clientes HASP4 Net (pgina 247).
Aladdin Monitor est disponible para los siguientes entornos: Windows 98 / ME, Windows NT / 2000 / XP. Puede comunicar va TCP / IP e IPX. Para ms informacin consulte Monitorizando Licencias HASP4 Net (pgina 257).
215
Parte 4 Captulo 17
216
Cliente HASP4 Net Administrador de Licencias HASP Aladdin Monitor Aladdin Diagnostic
Si
Si
Si
Si
Si
Si
Si
Si
Si Si Si
Para la comunicacin entre el cliente HASP4 Net y el Administrador de Licencias HASP pueden utilizarse los siguientes protocolos. Windows Apple Macintosh Novel Netware Soportado Soportado
217
Parte 4 Captulo 17
Preguntas Frecuentes
Pregunta Respuesta
Es necesario instalar HASP4 Net en el servidor de archivos de la red? No. Se puede instalar la llave HASP4 Net y el Administrador de Licencias HASP en cualquier estacin de la red. La estacin asignada debe estar activa y el Administrador de Licencias HASP cargado mientras que la aplicacin protegida con HASP4 Net se est ejecutando.
Pregunta Respuesta
Puedo ver qu estaciones acceden a la llave HASP4 Net? S. La utilidad Aladdin Monitor muestra todas las estaciones que han activando una aplicacin que ha realizado un login HASP4 Net al Administrador de Licencias HASP. Vea Monitorizacin de licencias HASP4 Net (pgina 257) para ms informacin.
Pregunta Respuesta
Si yo conecto dos llaves HASP4 Net5 del mismo cdigo a una nica estacin, dispongo de 10 licencias? No. Cuando hay dos llaves HASP4 Net con el mismo cdigo en el mismo PC, slo una de ellas responde. Para permitir 10 licencias con dos llaves HASP4 Net5, conecte cada llave a una estacin distinta y ejecute el Administrador de Licencias HASP adecuado. Preferentemente, use una llave HASP4 Net10.
Pregunta
Mi cliente ya tiene una HASP4 Net de otro fabricante de software conectada a la estacin de la red y un Administrador de Licencias HASP cargado. Qu debo hacer para instalar mi llave HASP4 Net? Todo lo que su cliente necesita hacer es conectar su HASP4 Net a la otra llave instalada. El Administrador de Licencias HASP cargado sirve para ambas llaves HASP4 Net.
Respuesta
218
Pregunta Respuesta
Puede HASP4 Net trabajar sobre Internet? S. HASP4 Net trabaja sobre Internet con el protocolo TCP / IP.
Pregunta Respuesta
Si, por ejemplo, yo tengo una HASP4 Net20 puedo dar acceso a slo 17 usuarios? Si, usando HASP Edit puede especificar cualquier nmero de usuarios hasta 20.
Pregunta Respuesta
Usando HASP4 Net, en que estacin debo instalar el HASP Device Driver? Slo en la estacin con la llave HASP4 Net. El HASP Device Driver sirve como enlace entre la HASP y la aplicacin protegida. Puesto que la aplicacin protegida con HASP4 Net se comunica con el Administrador de licencias HASP, que a su vez debe acceder a la llave HASP4 Net, instale el HASP Device Driver en la estacin que cargue el administrador de licencias HASP.
219
Parte 4 Captulo 18
221
Parte 4 Captulo 18
Si desea proteger su aplicacin para uso local y de red, puede especificar los parmetros de HASP4 Net adems de los parmetros para uso local.
222
Si desea proteger su aplicacin para uso en modo local y de red, debe implementar tanto los servicios HASP4 Net como los servicios bsicos y de memoria.
223
Parte 4 Captulo 18
Tabla 18.2 Servicios del API HASP4 Net Servicio 40 Nombre LastStatus Operacin Comprueba el status de la ltima llamada. Utilice este servicio despus de cada llamada a la rutina hasp() Solicita permiso al Administrador de Licencias HASP para activar la aplicacin. Excepto para los servicios 85 96, login debe ser la primera llamada a la rutina hasp() Solicita finalizar la sesin HASP4 Net al Administrador de Licencias HASP Lee un word de datos de la memoria HASP4 Net Escribe un word de datos en la memoria HASP4 Net Obtiene el nmero ID de HASP4 Net Establece la mxima franja de tiempo para estaciones inactivas Lee un bloque de datos de la memoria HASP4 Net Escribe un bloque de datos en la memoria HASP4 Net Establece el nombre del archivo de configuracin HASP4 Net.
42
Login
43
Logout
44
ReadWord
45
WriteWord
46 48
HaspID IdleTime
52
ReadBlock
53
WriteBlock
85
SetConfigFilename
224
Servicio 88
Nombre HaspEncodeData
Operacin Codifica datos enviados a la llave HASP4 Net conectada. Utilcese junto con HaspDecodeData para verificar la presencia de una llave HASP4 Net determinada en la red. Decodifica datos enviados a la llave HASP4 Net conectada. Utilcese junto con HaspEncodeData para verificar la presencia de una llave HASP4 Net determinada en la red. Establece el Administrador de Licencias HASP al que la aplicacin protegida realizar un login HASP4 Net.
89
HaspDecodeData
96
SetServerByName
225
Parte 4 Captulo 19
227
Parte 4 Captulo 19
228
Parte 4 Captulo 19
En una estacin Windows NT/2000/XP El Administrador de Licencias HASP para Windows NT / 2000 / XP es nhsrvice.exe. Use el archivo de setup lmsetup.exe para instalarlo. Lo recomendable es instalar el Administrador de Licencias HASP como servicio NT, de forma que no sea necesario abrir una sesin en la estacin para disponer de su funcionalidad. 1. 2. Instale el HASP device driver y conecte HASP4 Net en una estacin. Instale el Administrador de Licencias ejecutando lmsetup.exe desde su CD HASP y siga las instrucciones del proceso de instalacin. Como instalacin tipo, seleccione Service.
Tambin puede integrar la instalacin del servicio Administrador de Licencias HASP en su aplicacin usando el API de Instalacin del Administrador de Licencias HASP, que encontrar en el directorio utility\servers\win32\service\lmapi
Puede cerrar la ventana principal del Administrador de Licencias HASP pulsando el botn de cierre de la esquina derecha de la barra del ttulo. A pesar de ello, el Administrador de Licencias HASP continuar activo, y el icono permanecer en la bandeja de sistema. Para salir del programa, pulse Exit de la barra de men. Si el Administrador de Licencias HASP est instalado como servicio Windows NT, no puede salir usando esta opcin del men. Carga de protocolos Para habilitar un protocolo, seleccinelo en el men Load. Slo puede habilitar los protocolos que han sido instalados en el sistema. Descarga de protocolos Para deshabilitar un protocolo, seleccinelo en el men Remove. Visin del Activity Log Para visionar un log del Administrador de Licencias HASP, seleccione Activity Log de la barra de men. Se abrir la ventana Activity Log. Para ver el log de un protocolo determinado, elija un protocolo de la lista.
231
Parte 4 Captulo 19
1.
Para instalar el Administrador de Licencias HASP es necesario acceder al sistema como administrador.
Pulse doble clic sobre el archivo HASP License Manager Install en el directorio License Manager del CD HASP.
2. 3.
232
Para cargar el Administrador de Licencias HASP automticamente, active la opcin Activate in system startup
Opciones disponibles: Definicin de parmetros (slo cuando el proceso daemon est detenido) Inicio y detencin de daemon Activacin de daemon al iniciar
Definicin del nombre del servidor Puede asignar hasta seis nombres de servidor al Administrador de Licencias HASP.
No puede asignar nombres de servidor a un daemon activo, porque los nombres se asignan cuando se inicia el daemon.
Para asignar un nombre de servidor, detenga el daemon si ya se ha iniciado. Active la opcin SRVNAMES e introduzca hasta seis nombres. Separe los nombres con punto y coma, coma o espacio. Los nombres se asignarn cuando se inicie el daemon.
Evite utilizar caracteres no-ASCII en los nombres de servidor, sus cdigos difieren entre sistemas. Los nombres de server no diferencian entre maysculas y minsculas.
233
Parte 4 Captulo 19
Definicin de un archivo de configuracin Puede configurar el Administrador de Licencias HASP para Mac utilizando un archivo de configuracin. Para definir el nombre y el path del archivo de configuracin, active la opcin CFGFILE e introduzca path y nombre. Para informacin acerca del archivo de configuracin consulte Definicin del archivo de configuracin nhsrv.ini (pgina 239). Inicio y detencin de Daemon Para iniciar y detener Daemon, use los botones en la ventana de la aplicacin. Activacin automtica de Daemon Dispone de la opcin de activar daemon de forma automtica al iniciar el sistema. Para ello, active la opcin Activate in system startup.
234
1. 2. 3.
Para cargar el Administrador de Licencias HASP automticamente, aada la lnea load haspserv en el archivo autoexec.ncf en el directorio sys:system .
haspserv
235
Parte 4 Captulo 19
Novell
-? -addrpath= <path>
Muestra una lista de los parmetros disponibles Indica una ubicacin para guardar haspaddr.dat. Por defecto, el Administrador de Licencias HASP lo coloca en el directorio desde donde se ha cargado Indica la ubicacin del archivo de configuracin del Administrador de Licencias HASP. Muestra una lista de los parmetros disponibles Instruye al sistema HASP4 Net para usar el protocolo IPX con SAP.
Si Si
-c
Si
-help -ipx
Si Si
236
Mac
Windows Si Si Si Si Si Si
Novell
Parmetro
Explicacin
-ipxnosap
Instruye al sistema HASP4 Net para usar el protocolo IPX (sin SAP). Con el Administrador de Licencias HASP para Win32, puede cargar otros protocolos usando los parmetros tcpip o netbios o ambos. Con este parmetro, el Administrador de Licencias HASP crea un archivo llamado newhaddr.dat. Este archivo contiene la direccin del nodo de la estacin que est ejecutando el Administrador de Licencias HASP. Cuando carga el Administrador de Licencias HASP con este parmetro, slo las aplicaciones protegidas con acceso a newhaddr.dat pueden comunicar con el Administrador de Licencias HASP.
Si
-ipxsocketnum= Utilice este parmetro si desea cambiar el socket <nmero> IPX que el Administrador de Licencias est usando para la comunicacin. Por defecto es 7483 (hex). -localnet Utilice este parmetro si desea que el Administrador de Licencias HASP sirva nicamente las solicitudes de estaciones en la red local. Asigna un nombre NetBIOS al Administrador de Licencias HASP. Este parmetro es idntico a nethaspnbname. Fuerza al sistema HASP4 Net a escuchar slo al protocolo NetBIOS. Con el Administrador de Licencias HASP para Win32, an puede cargar otros protocolos usando tanto tcpip como ipxnosap o ambos. Si est utilizando el protocolo TCP / IP, puede usar este parmetro para instruir al Administrador de Licencias HASP a escuchar en el puerto que le especifique. El Nmero de Puerto predeterminado es 475.
Si
Si
-nbname= <nombre>
-netbios
-portnum= <nmero>
Si
Mac
237
Parte 4 Captulo 19
Windows Si Si Si Si
Novell
Parmetro
Explicacin
-saptofile
Cuando utiliza este parmetro, el Administrador de Licencias HASP crea un archivo newhaddr.dat. Este archivo contiene la direccin del nodo de la estacin con el Administrador de Licencias HASP activo. Asigna uno o ms nombres IPX, TCP/IP o NetBios al Administrador de Licencias HASP. Puede asignar hasta seis nombres para IPX y TCP/IP o uno para NetBIOS. Fuerza al sistema HASP4 Net a escuchar slo el protocolo TCP/IP. Con el Administrador de Licencias HASP para Win32, an puede cargar otros protocolos usando ipx o netbios o ambos Instruye al Administrador de Licencias HASP a escuchar a determinados nmeros lana Limita o aumenta el nmero mximo de usuarios servidos por el Administrador de Licencias HASP. El valor predeterminado es 250.
Si
Si
Si
-tcpip
238
Mac
Claves para la seccin [NHS_SERVER] Modifique las claves en la seccin [NHS_SERVER] del archivo nhsrv.ini para personalizar el Administrador de Licencias HASP de acuerdo con sus necesidades.
239
Parte 4 Captulo 19
Nhs_ip_limit Valores posibles Descripcin <Dir IP>,<Dir IP>, Indica el rango de estaciones al que el Administrador de Licencias HASP da servicio. Aplicable para el Administrador de Licencias HASP para Win 32, Novell y Mac. Por ejemplo: 10.1.1.1,10.1.1.*,10.1.1.1/32,10.1.1.1/24
Nhs_adapter Valores posibles Descripcin <Dir IP-SubMask>,<DirIP-SubMask>, Indica la direccin IP de uno o ms tarjetas de red a las que escucha el Administrador de Licencias HASP. Aplicable nicamente para el Administrador de Licencias HASP para Win32. Por ejemplo: 10.1.1.111255.255.0.0
Estructura
240
Parmetros
InstallMode
Define las caractersticas del proceso de instalacin. Path completo de la ubicacin donde reside el archivo de programa nhsrvice.exe del Administrador de Licencias HASP. Es usado por el administrador de Control de Servicio para localizar el Administrador de Licencias HASP. Si se le pasa una cadena Null, entonces la funcin utiliza el path a la DLL, con el nombre por defecto del ejecutable del Administrador de Licencias HASP, nhserv32.exe. Se recomienda sea al archivo que en el CD HASP se encuentra en: Utilities\Servers\Win32\Service\nhsrvice.exe
LMPath
Opciones InstallMode
LM_SERVICE_INSTALL
Instala el Administrador de Licencias HASP como servicio Windows NT. Mientras LM_SERVICE_INSTALL instala el Administrador de Licencias HASP como servicio de Windows NT, esta opcin le permite ejecutar el Administrador de Licencias HASP sin reiniciar. Llame HaspLMInstall() con este parmetro despus de la primera llamada con LM_SERVICE_INSTALL, o llame este parmetro ORED LM_SERVICE_INSTALL
LM_SERVICE_START
241
Parte 4 Captulo 19
Valores Devueltos
Si todo es correcto, la funcin devuelve el valor LM_SUCCESS. Si fall, la funcin devuelve el valor LM_FAIL. Puede obtener detalles del error llamado a HaspLMLastError(). Esta funcin no copia los archivos Administrador de Licencias HASP.
Consideraciones Especiales
Desinstalacin con HaspLMRemove() Propsito Elimina las entradas en el registro del servicio Administrador de Licencias HASP o desinstala el servicio. DWORD HaspLMRemove( DWORD RemoveMode LPSTR ); Parmetros RemoveMode Establece las caractersticas del proceso de eliminacin. Para uso futuro. Actualmente, el valor es NULL. LMPath //Removal mode //Para su uso futuro
Estructura
LMPath
Opciones RemoveMode
LM_REMOVE_SER Elimina el servicio Windows NT VICE Administrador de Licencias HASP. LM_REMOVE_SER Elimina de la memoria el servicio de Windows VICE_UNLOAD NT Administrador de Licencias HASP. El servicio permanece instalado y volver a funcionar en el prximo inicio del sistema.
Valores Devueltos
Si todo es correcto, la funcin retorna el valor LM_SUCCESS. Si ha fallado, la funcin devuelve el valor LM_FAIL. Puede obtener los detalles del error llamando a HILastErrorEx(). La eliminacin del servicio de Windows NT Administrador de Licencias HASP enva un comando al Administrador de Licencias HASP para cerrarlo si est activo.
Consideraciones Especiales
242
Mostrado de informacin con HaspLMInfo() Propsito Recibe informacin relativa al servicio de Windows NT Administrador de Licencias HASP instalado y otra informacin general. DWORD HaspLMInfo( LPLMINFO lpLMInfo, // Direccin de estructura de informacin ); Parmetros lpLMInfo Apunta a la estructura LMINFO que recibe informacin referente al servicio Administrador de Licencias HASP instalado.
Estructura
Valores Devueltos
Si todo es correcto, la funcin retorna el valor LM_SUCCESS. Si ha fallado, la funcin devuelve el valor LM_FAIL. Puede obtener los detalles del error llamando a HILastErrorEx().
Solicitud de Status con HaspLMLastError() Propsito Recoge informacin acerca de la ltima llamada a una de las funciones del Administrador de Licencias HASP. DWORD HaspLMLastError( DWORD *System Error // Direccin de localizacin de error de sistema LPSTR ); Error Str // Direccin de buffer de descripcin de error
Estructura
243
Parte 4 Captulo 19
Parmetros
*System Error
Apunta a una variable que contiene el nmero de error de sistema Apunta a un buffer para recibir la ltima descripcin de error del servicio Administrador de Licencias HASP. Tamao del buffer de ErrorStr (en bytes).
ErrorStr
Si todo es correcto, la funcin retorna el valor LM_SUCCESS. Si ha fallado, la funcin devuelve el valor LM_FAIL.
Mensajes de error Las funciones de HASP LM Installation retornan los siguientes mensajes de error: Tabla 19.3 Cdigos de Error del API HASP LM Installation Error CLOSE_KEY_FAIL CLOSE_SERVICE_FAIL CLOSE_SERVICE_MANAGER_FAIL Descripcin Fallo al cerrar la llave Fallo al cerrar el servicio Fallo al cerrar el administrador de base de datos del servicio Fallo en el control del servicio Fallo al crear el servicio Fallo al borrar el servicio Fallo al liberar la DLL Fallo al obtener la fecha Fallo al obtener una direccin desde la DLL Parmetro Invlido Fallo al cargar la DLL
Descripcin Fallo al abrir la llave Fallo al abrir el servicio Fallo al abrir el administrador de base de datos del servicio Este servicio no est soportado Fallo al fijar un valor Fallo al iniciar el servicio
245
Parte 4 Captulo 20
247
Parte 4 Captulo 20
Tabla 20.1 Orden de Bsqueda del archivo de configuracin Tipo de aplicacin / Sistema Operativo Win16 Secuencia de Bsqueda
Directorio Actual directorio Windows directorio system de Windows directorio del archivo ejecutable Path Directorio del archivo ejecutable directorio actual directorio system de Windows directorio Windows Path Directorio Actual
Win32
La seccin [NH_COMMON] contiene indicaciones generales para todas las secciones del archivo de configuracin. Cada una de las otras secciones contiene indicaciones de ajuste de operaciones para el protocolo especfico.
248
Especificacin de claves
En cada seccin, puede indicar tanto claves generales como las especficas de la seccin. Si define una de las claves generales en una de las tres secciones de protocolos, sta mandar sobre la indicacin de la seccin [NH_COMMON] (slo para ese protocolo). Use las claves especficas de seccin para ajustar las indicaciones adicionales para un protocolo particular. Las indicaciones de API y Envelope mandan sobre las del archivo de configuracin. Cada lnea del archivo de configuracin HASP que ha recibido con el software HASP est precedida de un punto y coma (;). Para usar una lnea, borre el punto y coma. Si desea aadir comentarios, precdalos con un punto y coma.
Los nombres de los archivos de configuracin HASP4 Net y sus claves pueden ser escritos indiferentemente en maysculas o minsculas (excepto el nombre del archivo bajo Mac OS X si se utiliza un sistema de archivos que si distinga los dos modos).
Las siguientes secciones describen cada seccin del archivo de configuracin cliente de HASP4 Net. Para cada clave, se incluye una breve descripcin y los valores posibles. Cuando existe un valor predeterminado, se muestra.
249
Parte 4 Captulo 20
[NH_COMMON]
Claves especficas de seccin para [NH_COMMON]
nh_ipx Valores posibles Descripcin nh_netbios Valores posibles Descripcin nh_tcpip Valores posibles Descripcin Enabled, disabled (habilitado, deshabilitado) Usa el protocolo TCP / IP Enabled, disabled (habilitado, deshabilitado) Usa el protocolo NetBIOS Enabled, disabled (habilitado, deshabilitado) Usa el protocolo IPX
Predeterminado
250
nh_send_rcv Valores posibles Descripcin <nmero> Fija el tiempo mximo para que el Administrador de Licencias HASP enve o reciba un paquete 1 segundo
Predeterminado
[NH_IPX]
Claves especficas de seccin para [NH_IPX]
nh_use_bindery Valores Posibles Descripcin Enabled, disabled (habilitado, deshabilitado) Usa IPX con bindery. Se ignora bajo API de Win32. Este parmetro sustituye al antiguo parmetro llamado NH_USE_SAP Disabled (deshabilitado)
Predeterminado nh_use_broadcast Valores posibles Descripcin Predeterminado nh_bc_socket_num Valores posibles Descripcin
Enabled, disabled (habilitado, deshabilitado) Usa el mecanismo IPX Broadcast Enabled (habilitado)
<nmero> Establece el nmero de socket para el mecanismo broadcast. El nmero es hexadecimal 7483H
Predeterminado
251
Parte 4 Captulo 20
nh_use_int Valores posibles Descripcin 2F_NEW, 7_OLD 2F_NEW significa que el protocolo IPX usar la interrupcin 2Fh SOLAMENTE. 7F_OLD significa que el protocolo IPX usar la interrupcin 7Ah SLO. 2F_NEW
<nombre1>,<nombre2>, Comunica con el Administrador de Licencias HASP con el nombre indicado. Mximo: 6 nombres, de hasta 7 caracteres cada uno.
nh_search_method Valores posibles Descripcin Localnet, internet Determina que la aplicacin protegida comunique nicamente con el Administrador de Licencias HASP en la red local, o con algn Administrador de Licencias HASP en la interred. Internet
<path> Especifica la ubicacin del archivo de direccin del Administrador de Licencias HASP.
252
nh_session Valores posibles Descripcin <nmero> Establece la longitud de tiempo durante el cual la aplicacin protegida trata de establecer comunicacin con el Administrador de Licencias HASP. 2 segundos
<nmero> Fija el tiempo mximo para que el Administrador de Licencias HASP enve o reciba un paquete 1 segundo
Predeterminado
253
Parte 4 Captulo 20
[NH_NETBIOS]
Claves especficas de seccin para [NH_NETBIOS]
nh_nbname Valores posibles Descripcin <nombre> Asigna un nombre al Administrador de Licencias HASP. Mximo: 1 nombre, de hasta 8 caracteres
nh_uselananum Valores posibles Descripcin <nmero> Asigna un nmero de lana para usarlo como canal de comunicacin.
<nmero> Fija el tiempo mximo para que el Administrador de Licencias HASP enve o reciba un paquete 1 segundo
Predeterminado
254
[NH_TCPIP]
Claves especficas de seccin para [NH_TCPIP]
nh_server_addr Valores posibles Descripcin <direccin1>,<direccin2> Establece una direccin IP para todos los Administradores de Licencias HASP que desea buscar. Son posibles ilimitadas direcciones IP y mltiples lneas. Los posibles formatos de direccin incluyen: Direccin IP: 192.114.176.65 Nombre de host local: ftp.aladdin.co.il nh_server_name Valores posibles Descripcin <nombre1>,<nombre2>, Comunica con el Administrador de Licencias HASP con el/los nombre(s) indicado(s). Mximo: 6 nombres, de hasta 7 caracteres cada uno.
nh_port_number Valores posibles Descripcin Predeterminado nh_tcpip_method Valores posibles Descripcin Predeterminado TCP, UDP Enva un paquete TCP o un paquete UDP UDP
255
Parte 4 Captulo 20
nh_use_broadcast Valores posibles Descripcin Predeterminado Enabled, disabled (habilitado, deshabilitado) Usa el mecanismo UDP broadcast Enabled (habilitado)
<nmero> Fija el tiempo mximo para que el Administrador de Licencias HASP enve o reciba un paquete 1 segundo
Predeterminado
256
Parte 4 Captulo 21
Aladdin Monitor est disponible para los siguientes entornos: Windows 98 / ME, Windows NT / 2000 / XP. Puede comunicar va TCP/IP e IPX.
Puede configurar Aladdin Monitor con un archivo de configuracin cliente HASP4 Net, vea Configuracin de Clientes HASP4 Net (pgina 247)
257
Parte 4 Captulo 21
258
Si no se muestra el Administrador de Licencias HASP, pulse en primer lugar en la carpeta HASP LM o refresque la pantalla mediante File / Rescan.
Los Administradores de Licencias HASP que atienden nicamente NetBIOS no son reconocidos actualmente por Aladdin Monitor.
Se muestra la siguiente informacin acerca del Administrador de Licencias HASP seleccionado: Informacin general acerca del Administrador de Licencias HASP seleccionado (Tabla 21.1). Informacin acerca de las llaves HASP4 Net que se estn administrando (Tabla 21.2). Tabla 21.1 Informacin del Administrador de Licencias HASP Caja Name Significado Nombre del PC en el que se est ejecutando el Administrador de Licencias HASP. Versin del Administrador de Licencias HASP. Direccin IP del PC.
Version IP
259
Parte 4 Captulo 21
Significado Direccin IPX del PC Versin del Administrador de Licencias HASP. Aqu, puede ver qu protocolos se estn usando.
Tabla 21.2 Informacin de la llave HASP Caja HASP # HASP Model Significado Nmero acumulativo de la llave HASP. Mximo numero de licencias posible
Si no se muestra la llave HASP, en primer lugar pulse doble clic en el Administrador de Licencias HASP que est haciendo disponible la llave, o refresque la pantalla mediante File / Rescan
La informacin HASP se muestra en la parte derecha de la ventana. La informacin que se muestra acerca de la llave HASP seleccionada es la siguiente: Informacin general acerca de la llave HASP (Tabla 21.3) Una vista de los programas (Tabla 21.4) Una vista de los logins de los programas individuales (Tabla 21.5)
260
Tabla 21.3 Informacin HASP Caja HASP # Significado Numero acumulativo de la llave HASP
Tabla 21.4 Tabla de Programas Caja Program No. Significado Nmero que representa el programa protegido
Current Stations Estaciones que actualmente han realizado un login Maximum Stations Activations Mximo de activaciones del programa Nmero mximo posible de estaciones
Tabla 21.5 Tabla Login Caja No. Login ID Protocol Timeout Significado Nmero acumulativo de logins Direccin bajo la que la estacin ha realizado login Protocolo utilizado Tiempo que debe transcurrir sin actividad hasta que la entrada de login se borra o cancela (en segundos)
261
Parte 4 Captulo 21
262
Parte 5 Captulo 22
Para autorizar el acceso desde un segmento diferente: 1. Cargue el Administrador de Licencias HASP con el parmetro ipxnosap. Esto asegura que la direccin del Administrador de Licencias HASP no se difunde mediante el mecanismo SAP, sino que se encuentra en el archivo de direccin de HASP4 Net newhaddr.dat. 2. Edite el archivo nethasp.ini como sigue:
En la seccin [NH_COMMON], fije NH_IPX = Enabled En la seccin [NH_IPX], fije NH_USE_BROADCAST = Disabled
263
Parte 5 Captulo 22
Estas estructuras instruyen a la aplicacin protegida para funcionar en estaciones del entorno para buscar el archivo de direccin y leer la direccin del Administrador de Licencias HASP. 3. Copie la aplicacin protegida y el archivo nethasp.ini en el mismo directorio. Asegrese de que cada estacin en el rango, y slo estaciones en el rango, cargan la aplicacin desde este directorio.
Formatos de ejemplo para <ipaddr> Cuando usted especifica el rango de estaciones mediante nhsrv.ini, puede utilizar cualquiera de los siguientes formatos:
10.1.2.3
264
10.1.2.*
El Administrador de Licencias HASP sirve slo a estaciones dentro de la direccin IP especificada, p.e. 10.1.2.0 hasta 10.1.2.255.
10.1.*.*
El Administrador de Licencias HASP sirve slo a estaciones dentro de la direccin IP especificada, p.e. 10.1.0.0 hasta 10.1.255.255.
10.1.2.3-5
El Administrador de Licencias HASP sirve slo a estaciones con las direcciones IP 10.1.1.3, 10.1.1.4, 10.1.1.5.
Observe que tambin puede excluir ciertas direcciones utilizando el smbolo !. Por ejemplo, escribiendo !10.1.2.7.
Para permitir slo a algunas estaciones acceder a HASP4 Net en una red basada en TCP/IP: 1. Edite nhsrv.ini y fije el rango de estaciones.
Parte 5 Captulo 22
En la seccin [NH_COMMON], fije NH_NETBIOS = Enabled En la seccin [NH_NETBIOS], fije NH_NBNAME = firstsrv
Esto enlaza las estaciones con el nombre NetBIOS. 3. Copie la aplicacin protegida y el archivo nethasp.ini en el mismo directorio. Asegrese de que cada estacin del rango, y slo estaciones del rango, cargan la aplicacin desde este directorio.
No puede tener dos estaciones con el mismo nombre NetBIOS. Si quiere cargar el Administrador de Licencias HASP en ms de una estacin, debe definir un nombre NetBIOS diferente para cada Administrador de Licencias HASP.
266
Para definir la longitud del timeout: En la seccin apropiada del archivo nethasp.ini, fije: NH_SESSION = <m> NH_SEND_RCV = <n> Donde m y n se miden en segundos. Por defecto, m son 2 segundos y n 1 segundo.
267
269
Parte 5 Captulo 24
271
Parte 5 Captulo 24
Implantacin de RUS
La implantacin de RUS supone los siguientes dos pasos: Creacin de las utilidades RUS Actualizacin de las llaves HASP de sus clientes
Utilidades RUS
Con RUS, puede crear dos utilidades: La utilidad Vendor La utilidad Customer
La utilidad Vendor se queda en su poder y entrega la utilidad Customer a su cliente. Para actualizar la HASP, su cliente y usted deben utilizar sus respectivas utilidades RUS para actualizar la memoria HASP.
Proceso de Actualizacin
Para actualizar la memoria de HASP: 1. El cliente utiliza la utilidad Customer para obtener el Nmero ID de la llave que requiere la actualizacin y comunicarle a usted el nmero. 2. Introduzca el Nmero ID y actualice los datos actualizados en la utilidad Vendor. 3. Genere las passwords RUS en la utilidad Vendor, y suminstreselas a su cliente. 4. Su cliente introduce las passwords RUS en la utilidad Customer y actualiza la memoria de la llave HASP.
272
El proceso de actualizacin de la llave HASP del cliente es completamente seguro. Todos los datos intercambiados entre su cliente y usted estn encriptados aleatoriamente. Adems, las passwords RUS son especficas para cada llave para la que se generan, y no pueden actualizar ninguna otra llave que no sea esa.
273
Parte 5 Captulo 24
274
Parte 5 Captulo 24
3. Introduzca la siguiente lnea de comando desde el DOS para generar la utilidad Customer: custinst <password1> <password2> [pc destino]
Como las utilidades Vendor y Customer se han generado con las passwords correspondientes a una llave HASP especfica (o a una serie de llaves con el mismo cdigo de programador), estn personalizadas para actualizar esa llave concreta (o serie de llaves).
-nec
276
La Utilidad Vendor
La utilidad Vendor le permite definir los nuevos datos para la llave HASP de su cliente. Estos nuevos datos se recogen como las passwords RUS que debe suministrar a su cliente. Consulte La Utilidad Customer (pgina 286) para ver cmo debe usar su cliente estas passwords para actualizar la llave HASP.
2. Pulse la flecha de la derecha del campo HASP Type y seleccione el modelo HASP de su cliente de la lista que aparece. 3. Introduzca el Nmero ID de la HASP de su cliente en el campo ID Number.
277
Parte 5 Captulo 24
Este nmero se lo puede proporcionar su cliente, que lo conocer a travs de la utilidad Customer. Para ms informacin, vea La Utilidad Customer en la pgina 286. 4. Introduzca los datos con los que desea actualizar la llave de su cliente. Existen dos formas de introducir los datos, modo FAS o modo Directo. Pulse FAS para introducir nuevos parmetros de proteccin del sistema Full Authorization System (FAS). La pantalla FAS muestra los parmetros FAS para el modelo HASP que ha seleccionado. Vea la siguiente seccin, Introduccin de Datos en Modo FAS. Pulse Direct para editar la memoria HASP. Vea la seccin siguiente, Introduccin de datos en Modo Directo, Durante una sola sesin RUS puede introducir, o bien parmetros FAS, o bien editar la memoria de la llave, pero no ambas cosas. 5. Pulse Config si desea usar un archivo de configuracin. En la ventana que se abre puede: Grabar los parmetros definidos en un archivo de configuracin. Teclee el nombre del archivo, o seleccione un archivo pulsando Browse, y a continuacin pulse Save. Cargar parmetros grabados previamente de un archivo de configuracin. Teclee el nombre del archivo, o seleccione un archivo pulsando Browse, y a continuacin pulse Load. 6. Pulse Generate para generar las passwords RUS y luego OK para mostrar en pantalla las passwords RUS. Pueden haber hasta 11 passwords RUS. Es posible grabar las passwords RUS a un archivo en la opcin Save RUS passwords to a File, introduzca el nombre de un archivo, y luego OK. Este archivo, despus puede usarlo la utilidad Customer para cargar las passwords RUS automticamente.
278
Ahora entregue las passwords RUS a su cliente, que ya puede actualizar la llave HASP utilizndolas en la utilidad Customer.
Puede definir los parmetros FAS para un solo programa durante una sesin RUS. Para cada programa que se actualice se generan las passwords por separado.
No asigne un valor superior que el nmero mximo de programas que puede grabarse en la llave HASP. Segn las diferentes llaves, este es el rango de nmeros que puede asignar: 1-16 para HASP4 M1 1-112 para HASP4 M4 1-8 para HASP4 Time 1-112 para HASP4 Net
Number of Authorized Activations Este valor es el nmero mximo de ejecuciones autorizadas para una aplicacin protegida. Introduzca un nmero de su eleccin en este campo. Como alternativa, introduzca U para autorizar un nmero ilimitado de ejecuciones. Puede especificar este parmetro con HASP4 M1, M4 y HASP4 Net.
279
Parte 5 Captulo 24
Expiry Date Este parmetro, que nicamente es de aplicacin para las llaves HASP4 Time, indica la fecha a partir de la cual, el programa protegido no puede funcionar. Introduzca nmeros de dos dgitos para el da, mes y ao de caducidad de la aplicacin. Pulse 00-00-00 para una fecha ilimitada. Number of Authorized Stations Este parmetro, que nicamente es de aplicacin para las llaves HASP4 Net, indica el nmero mximo de estaciones autorizadas a ejecutar el programa protegido simultneamente. Asigne un valor inferior al nmero de estaciones soportado por el modelo HASP4 Net de su cliente (5 para HASP4 Net5, y 10 para HASP4 Net10 ). Si tiene una HASP4 NetU, puede introducir una U para autorizar un nmero ilimitado de estaciones.
Start Address En esa direccin, se inicia la actualizacin de la memoria HASP. Introduzca un valor decimal. No deje este campo vaco. Data Cells Las 16 celdas de datos se muestran en tres modos (Characters, Decimal, y Hexadecimal), cada uno en un panel separado. Introduzca datos en uno de los tres paneles en el formato de ese panel. Introduciendo datos en uno de los tres paneles, actualiza simultneamente las correspondientes celdas en los otros paneles con valores anlogos. Para moverse entre paneles, pulse el ratn en cualquier celda del panel deseado.
Puede introducir datos en menos de 16 celdas. Sin embargo, no deje una celda de memoria vaca entre dos celdas que contengan valores.
281
Parte 5 Captulo 24
El path completo y nombre del archivo de configuracin donde se grabaron todos o alguno de los parmetros definidos previamente en la utilidad Vendor. Indica que los datos se han introducido en modo FAS. Los datos que se han definido en los parmetros FAS. El nombre del archivo en que graba los passwords RUS.
Parmetro -PrgNum <program number> -STations <nmero de estaciones > -ACtivations <nmero de ejecuciones > -ExpDate <mm-dd-yy> -StartAddr <direccin de inicio > -DataD <dataD1>..<dataD16> -DataH <dataH1>..<dataH16> -DataS <"cadena" >
El nmero de estaciones autorizadas a ejecutar el programa. Slo para llaves HASP4 Net. El nmero mximo de ejecuciones para un programa. Introduzca U para permitir un nmero de ejecuciones ilimitadas. Este parmetro FAS es aplicable a HASP4 M1, M4 y HASP4 Net. La caducidad del programa. Introduzca 00-00-00 para una fecha ilimitada. Slo para llaves HASP4 Time. La direccin de inicio para editar la memoria en modo Directo. Hasta 16 valores decimales con que edita la memoria HASP. Hasta 16 valores hexadecimales con que edita la memoria HASP. El nmero de caracteres (hasta 32 para HASP4 M1, M4 y HASP4 Net, y hasta 16 para HASP4 Time) con que actualiza la memoria HASP. Introduzca la cadena usando comillas. Ejecuta la utilidad Vendor en modo batch sin acceder a las pantallas de la utilidad.
-BatcH
Ejemplo del Uso de los Parmetros en la Lnea de Comando Los siguientes ejemplos muestran la ejecucin de la utilidad Vendor desde la lnea de comando: vendor -bh -ht memo -id 7a37381e -f -pn 5 -ac u -gpf ruspass.txt Ejecuta la utilidad Vendor (vendor) en modo batch (-bh) sin acceder a la pantalla de la utilidad. La llave del cliente que se va a actualizar es una HASP4 M1, M4 (-ht memo), cuyo Nmero ID es 7a37381e (-id 7a37381e). La actualiza usando FAS (-f), fijando para el programa nmero 5 (-pn 5 ) un nmero ilimitado de ejecuciones autorizadas (-ac u). Genera las passwords RUS, guardndolas en un archivo llamado ruspass.txt (-gpf ruspass.txt)
283
Parte 5 Captulo 24
El archivo ruspass.txt puede usarse junto con la utilidad Customer para cargar las passwords RUS automticamente.
vendor -ht net -dr -dd 12 15 25 Ejecuta la utilidad Vendor (vendor) para actualizar una HASP4 Net (-ht net). Edita la memoria ( -dr) para que las tres primeras celdas (-dd) reciban como valores decimales 12, 15, y 25. (Los campos de datos de carcter y hexadecimal recibirn sus correspondientes valores
automticamente.)
284
Descripcin Fecha de caducidad no vlida o no se encuentra Imposible utilizar el parmetro CfgFile desde el archivo de configuracin No encuentra el archivo de configuracin Error al abrir o leer el archivo de configuracin No encuentra o no puede crear el archivo de passwords RUS Desbordamiento de memoria al leer un archivo No es un archivo de configuracin de la utilidad Vendor No encuentra el modo de introduccin de datos (FAS/Direct) Demasiadas palabras de datos Parmetro no vlido Nmero ID no vlido No puede usar parmetros FAS para modo directo y viceversa El rango de ejecuciones es 0-65534, o U para ilimitadas El rango de estaciones es 1-65534, o U para ilimitadas
285
Parte 5 Captulo 24
La Utilidad Customer
Para que su cliente pueda actualizar la llave HASP, debe proporcionarle la utilidad Customer, customer.exe. Las siguientes instrucciones explican cmo debe instalar la utilidad su cliente en su puesto de trabajo. Suministre estas instrucciones a sus clientes junto con el archivo de ayuda customer.hlp.
Obtencin del Nmero ID HASP En este paso, usted comprueba el Nmero ID de su llave HASP, y se lo comunica a su proveedor. Para obtener el Nmero ID HASP: 1. Conecte la llave HASP a su PC. 2. Desde la lnea de comando del DOS teclee: customer. Aparece la pantalla principal de la utilidad Customer. 3. Pulse Get ID para obtener el Nmero ID de HASP (y saber el tipo de HASP que tiene). Aparece la pantalla Nmero ID HASP, mostrando el Nmero ID de HASP y el tipo de su llave HASP:
286
4. Si desea grabar esta informacin en un archivo de configuracin, pulse Save e introduzca el nombre del archivo, o pulse Browse y elija un archivo de uno de sus directorios, y pulse OK. Suministre a su proveedor el Nmero ID HASP de la llave y el tipo de HASP bien dictndoselos directamente o enviando el archivo de configuracin. Con esos datos, el proveedor puede generar las passwords RUS que necesita para actualizar su llave HASP. Actualizacin de su llave HASP con las Passwords RUS En este paso, obtiene las passwords RUS de su proveedor. Estas passwords contienen los datos que se grabarn en la memoria de su llave HASP. Para actualizar su llave HASP con las passwords RUS: 1. Conecte la llave HASP al PC. 2. Desde la lnea de comando del DOS teclee: customer. Aparece la pantalla principal de la utilidad Customer. 3. Introduzca las passwords RUS que ha recibido de su proveedor en la utilidad Customer:
287
Parte 5 Captulo 24
Pulsando Config, teclee el nombre del archivo de configuracin que contiene las passwords RUS (o pulsando Browse para encontrarlo) y pulsando OK. Este proceso carga las passwords automticamente del archivo de configuracin suministrado por su proveedor.
Aparecen en pantalla las passwords RUS. 4. Pulse Update cuando las passwords estn introducidas o cargadas desde el archivo de configuracin para actualizar su llave HASP.
Tabla 24.3: Parmetros de lnea de comando de la Utilidad Customer Parmetro -Help Funcin Muestra una lista de todos los parmetros con una breve explicacin de cada uno. Muestra el Nmero ID de HASP. Nombre de un archivo donde se graba el Nmero ID de HASP. Actualiza la llave HASP con las passwords RUS especficas. Pueden haber hasta 11 passwords. Nombre del archivo de configuracin que contiene las passwords RUS. Ejecuta la utilidad Customer en modo batch sin acceder a las pantallas de la utilidad. Deshabillita el modo batch (como cuando se desea cargar las passwords RUS desde un archivo de configuracin). Ejemplo de Uso de los parmetros desde la Lnea de Comando: Los siguientes ejemplos muestran la ejecucin de la utilidad Customer desde la lnea de comando: customer -bh -cf ruspass.txt Ejecuta la utilidad Customer (customer) en modo batch ( -bh) sin acceder a la pantalla de la utilidad. Actualiza la llave HASP obteniendo las passwords RUS desde un archivo de configuracin llamado ruspass.txt (-cf ruspass.txt). customer -cf ruspass.txt nb Ejecuta la utilidad Customer ( customer). Accede a la pantalla de la utilidad (-nb) y actualiza la HASP obteniendo las passwords RUS desde un archivo de configuracin llamado ruspass.txt (-cf ruspass.txt).
-UPdate <pass1>..<pass11>
-NoBatch
289
Parte 5 Captulo 24
290
Parte 5 Captulo 25
291
Parte 5 Captulo 25
Aplicaciones de ejemplo El API de Win32 se entrega con aplicaciones de ejemplo para ayudarle a integrar el RUS de Win32 en su aplicacin. Las siguientes secciones describen la implantacin del API de Win32 en su aplicacin y cmo realizar actualizaciones utilizndolo.
Implantacin de RUS
Antes de actualizar las llaves HASP con el API Win32 de RUS, debe familiarizarse con los conceptos RUS, Para este fin, repase las aplicaciones de ejemplo suministradas. La implementacin del API de RUS supone dos etapas: Paso1: Preparacin de su aplicacin para RUS 1. Personalice haspclnt.dll con sus passwords HASP. La DLL personalizada puede enviarse junto con su aplicacin. Vea la pgina 299, utilidad de personalizacin. 2. Incorpore las rutinas de actualizacin RUS cliente en su aplicacin. Vea las aplicaciones de ejemplo. Paso2: Realizacin de Actualizaciones 1. Utilice haspclnt.dll (DLL de cliente) para obtener el Nmero ID de la llave a actualizar. 2. Utilice haspdev.dll desde su entorno de produccin para crear las cadenas de actualizacin necesarias. Enve los datos de actualizacin a su cliente para que los introduzca en la aplicacin.
292
Ambas funciones generan cadenas de actualizacin, que deben enviarse al cliente para la actualizacin de la memoria de su llave HASP.
RUS_CreateUpdateDirect
Descripcin
Cuando utilice esta funcin no es necesario que est ninguna llave HASP conectada
Sintaxis
Signed int RUS_CreateUpdateDirect ( DWORD IdNum, Int Password1, Int Password2, Int KeyType, Int Address, Int NumOfBytesToUpdate, Char *MemoryImage, Int CodeBufferSize Char *Code, Void *sKey)
Parmetros Utilizados
IdNum Nmero ID de la llave HASP del cliente. Introduzca el Nmero ID nico de 32-bits de la llave HASP de su cliente. Si desea generar datos para llaves sin comprobar el Nmero ID durante el proceso de actualizacin, introduzca 0. Esto actualizar todas las llaves con las passwords que se especifiquen. Passwords de las llaves HASP a actualizar.
Password1, Password2
293
Parte 5 Captulo 25
KeyType
Tipo de la llave HASP. Las llaves posibles son HASP4 M1, M4, HASP4 Net o HASP4 Time Direccin de inicio de la memoria HASP a partir de la que va a actualizar la memoria HASP: Nmero de Bytes a actualizar en la memoria HASP. Puntero de los datos que desea escribir en la memoria HASP Longitud del buffer provisto Puntero del rea de datos que va a contener las cadenas ASCIIZ (ASCII zero) de cdigos generados. Parmetro (puntero) reservado para uso futuro. Actualmente debe fijarse a NULL. Consulte la seccin Valores Devueltos ms adelante.
Address
SKey
Valores Devueltos
294
RUS_CreateUpdateFAS
Descripcin
Cuando utilice esta funcin, no es necesario que tenga una llave HASP conectada. La funcin est disponible para llave HASP4 Net, HASP4 Time y HASP4 M1, M4.
Sintaxis
Signed int RUS_CreateUpdateDirect ( DWORD IdNum, Int Password1, Int Password2, Int KeyType, Int ProgramNumber, Int Activations, Int Year, Int Month, Int Day, Int Stations, Int CodeBufferSize Char *Code Void *skey)
Parmetros usados
IdNum
Nmero ID de la llave HASP del cliente. Introduzca el Nmero ID nico de 32-bits de la llave HASP de su cliente. Si desea generar datos para llaves sin comprobar el nmero ID durante el proceso de actualizacin, introduzca 0. Esto actualizar todas las llaves con las passwords que se especifiquen. Passwords de las llaves a actualizar
Tipo de llave HASP. Los tipos de llave posibles son HASP4 M1, M4, HASP4 Net o HASP4 Time. Cada programa tiene asignado su propio nmero. Si est actualizando los parmetros de proteccin de un programa, especifique el nmero que le asign previamente. Si est aadiendo un programa nuevo, asgnele un nuevo nmero.
295
ProgramNumber
Parte 5 Captulo 25
Activations
Nmero de activaciones autorizadas para la aplicacin protegida. Slo aplicable para llaves HASP4 Net y HASP4 M1, M4. Introduzca 65535 para autorizar un nmero ilimitado de activaciones Fecha de caducidad. De aplicacin slo para HASP4 Time. Observe que el rango que debe dar es 1992 2091. Fije todos los valores a 0 para dar una fecha ilimitada Nmero de estaciones autorizadas. De aplicacin slo para HASP4 Net. Este parmetro indica el nmero de estaciones autorizadas a ejecutar la aplicacin simultneamente. Fije el valor 0 para autorizar un nmero ilimitado de estaciones. Longitud del Buffer provisto. Puntero del rea de datos que va a contener las cadenas ASCIIZ (ASCII zero) de cdigos generados. Parmetro (puntero) reservado para uso futuro. Actualmente debe fijarse a NULL. Consulte la seccin Valores Devueltos ms adelante.
Stations
CodeBufferSize Code
SKey
Valores Devueltos
296
Antes de llamar a una de estas funciones, la DLL debe haberse personalizado. Vea Utilidad de Personalizacin en la pgina 301.
RUS_PerformUpdate
Descripcin
Esta funcin actualiza la memoria de una o ms llaves HASP. Si la actualizacin se realiza contemplando el Nmero ID, se comprobar el Nmero ID, el tipo de llave y las passwords. Si no es as, slo se comprueba el tipo de llave y las passwords.
Sintaxis
Signed int RUS_PerformUpdate (char *Code)
Parmetros usados
Code Cadenas de datos ASCIIZ para la actualizacin (generadas usando la correspondiente funcin de la DLL del vendedor.) Consulte la seccin Valores Devueltos ms adelante.
Valores Devueltos
297
Parte 5 Captulo 25
Get_KeyID
Descripcin
Esta funcin obtiene el Nmero ID de la llave conectada. Esta funcin es similar a la correspondiente funcin del API de HASP, pero se incluye en la DLL para la optimizacin de la instalacin.
Sintaxis
Signed int Get_KeyID (unsigned int *KeyID)
Parmetros usados
KeyID Devuelve el ID de la llave conectada en ese momento
Valores Devueltos
Consulte la seccin Valores Devueltos ms adelante.
298
Valores Devueltos
General
SUCCESS HASP_ERROR_IN_LOW_WORD La funcin se ejecut correctamente. Error durante una llamada a HASP. Se devuelve un cdigo de error del API de HASP en low word La operacin no se realiz correctamente La librera no ha sido personalizada.
OPERATION_FAILED DLL_NOT_CUSTOMIZED
RUS ID
HASP_NOT_FOUND UNDEFINED_HASP HASP_3_DETECTED No se encuentra la llave HASP La llave HASP Se ha detectado una llave HASP 3
299
Parte 5 Captulo 25
RUS Update
INVALID_CODE INVALID_KEY_ID La cadena especificada en el parmetro Code no es vlida La actualizacin es dependiente del nmero ID; el ID de la llave conectada no coincide. No se encuentra la llave HASP con las passwords especificadas La llave HASP conectada no corresponde al tipo especificado
KEY_NOT_FOUND
KEYTYPE_MISMATCH
Memory Update
BUFFER_TOO_SMALL La longitud del buffer especificado en el parmetro CodeBufferSize es demasiado pequea ILLEGAL_MODULE_NUMBER El nmero de programa est fuera de rango para el tipo de llave especificada
INVALID_PARAMETER Al menos uno de los parmetros introducidos no es vlido, por ejemplo, no se especificaron passwords ILLEGAL_KEYTYPE El tipo de llave especificada en el parmetro KeyType es desconocido. Se ha detectado una manipulacin en la informacin de la licencia El buffer que contiene el hash es demasiado pequeo
DETECTED_TAMPERING
HASH_MEMORY_OVERFLOW
300
Utilidad de Personalizacin
Cada vendedor genera una DLL nica con las funciones necesarias para la actualizacin remota de las llaves. Esta DLL contiene las passwords HASP y est protegida con la Envolvente HASP Win32 contra ingeniera inversa. Para personalizar la DLL, debe utilizarse una sencilla utilidad de lnea de comando (confdll.exe):
Sintaxis
Confdll <nombre de DLL> <Password1> <Password2> <Envolvente>
Ejemplo
Confdll.exe C:\demo\haspclnt.dll 15417 9632 D:\demo\instww32.exe En el ejemplo anterior, la DLL se personalizar respecto a las passwords de la Demo HASP y se proteger usando la utilidad HASP Envelope Win32, instw32.exe del CD.
301
Apndice A
Solucin de Problemas
La primera parte de este apndice ofrece una lista de pruebas que le puede ayudar a resolver algunos de los problemas ms comunes que podra encontrar cuando utiliza HASP. La segunda parte le ayuda listando problemas especficos que usted y sus clientes puedan encontrar, junto con sus soluciones. La lnea de productos HASP representa el ms alto estndar de calidad asegurada. Sin embargo, como cualquier otro dispositivo perifrico, podra no operar en ciertas configuraciones del PC debido a un equipo defectuoso o a una instalacin inadecuada. Este apndice de Solucin de problemas le puede guiar si se encuentra en esta situacin. Para evitar dificultades, asegrese de que est utilizando versiones de software actualizadas de HASP. Contacte con su proveedor local de HASP para disponer de las ltimas actualizaciones. Si los problemas persisten, compruebe si funciona el ejemplo de HASP, y las utilidades de test y diagnsticos. Comunique los resultados a su distribuidor local HASP.
303
Listado de Comprobacin
Si uno de sus clientes reporta un problema, compruebe la siguiente lista:
Ocurre el mismo problema con otra llave HASP? Si no es as, reemplace la llave defectuosa por otra nueva.
Est la llave HASP conectada correctamente al puerto paralelo? Hay una impresora conectada a la HASP? Si est, y funciona bien, desconecte la impresora y compruebe si la HASP funciona sin ella. Si lo hace, compruebe la calidad del cable, y asegrese de que se ajusta a los estndares IEEE. Debe estar escrito en el mismo cable. Si el cable se ajusta a los estndares, pero la llave no funciona apropiadamente, intente utilizar o instalar un segundo puerto paralelo para la HASP para evitar cualquier problema que la impresora pudiera estar causando. Si no est, intente reemplazar la tarjeta de impresora original o utilizar otro puerto paralelo.
Hay algn problema de impresin? Si es as, comprubelo con otra impresora en el mismo PC para determinar si el problema es especfico de la impresora. Ejecute hinstall con el parmetro i cnt=yes
Est el PC infectado por un virus (que podra estar evitando el funcionamiento correcto de la aplicacin)?
Persiste el problema cuando la aplicacin protegida funciona en otro PC del mismo modelo?
304
Apndice A
Solucin de Problemas
Problemas y Soluciones
Problema Solucin
A pesar del esfuerzo realizado para asegurar la mejor comunicacin, en raras ocasiones una llamada a la rutina hasp() podra no ser activada o bien transmitida. Recomendamos que llame a la rutina hasp() con un servicio varias veces antes de asumir que la HASP no est conectada.
Problema Solucin
Obtiene errores de impresin cuando intenta imprimir desde una aplicacin protegida de Windows. Esta situacin se debe a un conflicto entre el acceso a la impresora y el acceso a HASP. Para evitar conflictos entre HASP y otros dispositivos paralelos (tales como la impresora), instale el HASP Device Driver.
Problema Solucin
Estando conectada una HASP a la impresora, Windows 3.x le advierte de que la impresora es inaccesible o que hay un conflicto de dispositivos. Abra la ventana Principal del Administrador de Programas. Seleccione Panel de Control. Seleccione 386 Extendido. Seleccione LPT1 en la seccin Contencin de Dispositivo y active Nunca Alertar. Repita el paso 4 para LPT2 y LPT3. Pulse OK.
305
Problema Solucin
Intenta utilizar hinstall.exe para instalar el HASP Device Driver bajo Windows NT pero recibe el error 9121. Si usted intenta activar la utilidad Hinstall bajo Windows NT sin los privilegios del administrador, recibir este error. Asegrese de que tiene los privilegios del administrador.
Problema Solucin
Intenta activar una aplicacin protegida con HASP4 M1 / M4 bajo Windows NT / 2000 / XP y Windows 95 / 98 / ME, pero la aplicacin no puede encontrar la llave. Asegrese de que el HASP Device Driver est instalado. Si el problema persiste cuando el HASP Device Driver est instalado, ejecute: hinstall info La utilidad de Hinstall muestra el nmero de versin, fecha de instalacin, y tipo de sistema. Contacte con su distribuidor local de HASP con la informacin de estos parmetros.
Problema Solucin
Sus aplicaciones de 16-bits estn protegidas con HASP4 Net y la Envelope. Aunque el nmero de estaciones activando la aplicacin es menor que el nmero de licencias autorizadas, cuando una estacin adicional intenta activarla, recibe un error too many users. Una aplicacin 16-bits, protegida slo con HASP4 Net y la Envelope, no realiza un logout HASP4 Net. Cuando esta aplicacin termina, permanece listada en la tabla log, y por lo tanto la licencia no es liberada. Vuelva a proteger su aplicacin utilizando el API de HASP para ejecutar un logout HASP4 Net. Esto borra su aplicacin de la tabla log y libera la licencia.
306
Apndice A
Solucin de Problemas
Problema Solucin
Ha protegido una aplicacin para red y monopuesto con HASP4 M1 / M4 y HASP4 Net. Ahora descubre que puede activar la aplicacin una estacin ms del nmero de licencias que ha autorizado. Esta situacin ocurre porque la aplicacin primero intenta acceder al puerto local para encontrar una HASP4 M1 / M4. Si los cdigos de programador de su HASP4 M1 / M4 y HASP4 Net son los mismos, la aplicacin activada desde la estacin con la HASP4 Net conectada encuentra la HASP4 Net local. La aplicacin trata la HASP4 Net local como si sta fuera una llave monopuesto y no informa de la activacin en la tabla log de HASP4 Net. Por lo tanto, la aplicacin no utiliza una licencia. Para evitar esta situacin, asegrese de que HASP4 M1 / M4 y HASP4 Net tienen diferentes cdigos de programador.
Problema Solucin
Su aplicacin de Windows protegida con HASP4 Net retorna el Error 21 del LastStatus de HASP4 Net. Las aplicaciones de DOS extendido y Windows requieren una media de 8KB de memoria DOS. El API de HASP4 Net requiere 1 KB de memoria DOS. El error 21 del LastStatus de HASP4 Net es emitido cuando la cantidad de memoria DOS es menor de 1KB y por lo tanto insuficiente para el sistema HASP4 Net. En tales casos, no slo las aplicaciones protegidas HASP4 Net, sino otras aplicaciones Windows estn desactivadas. Para resolver este problema, descargue algn programa residente o salga de alguna aplicacin abierta de Windows. Debe utilizar la misma solucin con cualquier aplicacin que se queje sobre memoria DOS insuficiente.
307
Problema Solucin
Su aplicacin est funcionando en una estacin que no tiene drivers de red cargados. La estacin se deja de responder cuando la aplicacin ejecuta un login HASP4 Net. Esto ocurre cuando el archivo de configuracin de HASP4 Net activa un protocolo especfico. El sistema HASP4 Net intenta utilizar el protocolo especificado sin comprobar si est realmente presente. Si la estacin no tiene drivers de protocolo instalados, reacciona parndose. La solucin es borrar el archivo de configuracin de HASP4 Net. O, si lo necesita, cargar los drivers de red.
Problema Solucin
Los puertos paralelos de los PCs IBM y compatibles tienen asignados uno de los siguientes puertos I/O: 3BCh, 378h, o 278h. Las tarjetas de red usualmente toman hasta 10h o 20h puertos I/O consecutivos de sus direcciones base. Cuando el puerto I/O de una tarjeta de red pestaa una tarjeta paralelo, acceder al puerto paralelo puede causar que el PC se cuelgue. Por ejemplo: imprimir, acceder a llaves de proteccin de software, y acceder a perifricos conectados al puerto paralelo pueden causar que el PC se cuelgue. Es por lo tanto esencial evitar solapar los puertos I/O cambiando la base I/O de la tarjeta de red. Hay dos maneras de cambiar la base I/O de la tarjeta de red: * Algunas tarjetas de red le permiten asignar la direccin I/O con jumpers. Vea la documentacin suministrada con la tarjeta para una descripcin de las posiciones del jumper para una direccin I/O determinada. Con las tarjetas nuevas, puede cambiar la direccin I/O utilizando el software suministrado con las tarjetas.
308
Apndice A
Solucin de Problemas
Problema Solucin
Su aplicacin protegida con HASP4 Net est funcionando sobre una estacin en Windows para trabajo en grupo en una red Novell utilizando IPX y retorna el error 3. Los tipos de estructura en el archivo net.cfg y en el setup de la red de Windows no son idnticos. Compruebe el tipo de estructura en net.cfg y fije una idntica para el tipo de estructura de Windows. Para fijar los tipos de estructura en Windows: Seleccione Configuracin para la Red de la ventana Red. Pulse en IPX/SPX Compatible Transport with NetBIOS. Seleccione Frame Type. Seleccione el tipo de estructura deseada y Pulse Set. Pulse OK. Reinicie su sistema.
Problema Solucin
Su aplicacin tarda mucho tiempo en encontrar la HASP4 Net en una red Novell muy grande. En este caso, es recomendable personalizar el mecanismo de bsqueda. Utilice el archivo de configuracin HASP4 Net para desactivar los mecanismos de bsqueda Broadcast y Bindery. De esta forma, el cliente de HASP4 Net busca al Administrador de Licencias HASP4 Net utilizando un mecanismo basado en archivos de direccin, que es mucho ms rpido.
309
Problema Solucin
Su aplicacin tarda mucho tiempo en encontrar la HASP4 Net en una red TCPIP grande. En este caso, es recomendable personalizar el mecanismo de bsqueda. Use el archivo de configuracin para especificar el mtodo de bsqueda UDP o TCP y fijar la direccin IP del Administrador de Licencias HASP4 Net. De esta forma, el cliente HASP4 Net busca el Administrador de Licencias HASP4 Net con la direccin IP especfica, lo que es mucho ms rpido.
Problema Solucin
El error 8 significa que el cliente HASP4 Net no recibe respuesta del Administrador de Licencias HASP. Para resolver esto, trate de incrementar el tiempo de espera que el cliente H4n requiere una respuesta. Haga esto incrementando la duracin del timeout en el archivo de configuracin de HASP4 Net.
Problema Solucin
El error 15 bajo TCPIP/IPX ocurre slo cuando se utiliza el mecanismo de bsqueda broadcast. El error 15 significa que se ha emitido por parte del cliente HASP4 Net, pero no se ha encontrado ningn Administrador de Licencias HASP. Incremente el valor del timeout en el archivo nethasp.ini a 8 segundos. Si despus de esto, el error 15 persiste, se debe a uno de los siguientes problemas: No se ha cargado el Administrador de Licencias HASP.
2
Si se ha utilizado el protocolo TCPIP, entonces el Administrador de Licencias HASP est en una subred diferente. Si se ha utilizado el protocolo IPX, entonces SAP no est soportado. Si recibe repetidamente el error 15, intente utilizar otro mecanismo de bsqueda.
310
Apndice A
Solucin de Problemas
Problema Solucin
Usted est utilizando una HASP4 Net5 y autoriz a su aplicacin cinco licencias, pero slo tres usuarios pueden activar la aplicacin. Primero utilice HaspEdit y asegrese de que su aplicacin est programada para cinco licencias en la HASP4 Net. Si es as, es posible que se desconozca que las cinco licencias estn siendo utilizadas. Utilice Aladdin Monitor para confirmar qu estaciones estn utilizando licencias.
311
Apndice B
Password 1
15417 29875 29313
Password 2
9632 28774 23912
Password 1
5932 20580 10038
Password 2
25657 22012 15697
313
Apndice C
Especificaciones Tcnicas
Tabla C.1 Especificaciones Generales para todas las llaves HASP
Material caja de plstico Temperatura operativa Temperatura de almacenaje Tasacin de humedad UL-6C61 1950 standard
..ABS .0 - 55 C .-25 - 70 C
Rango de voltaje operativo ASIC* ..1. 8 - 5.5V Encadenamiento (no aplicable a HASP4 USB.hasta 10 unidades Rescrituras que permite cada celda de memoria HASP Retencin de la fecha en la memoria HASP Mnimo 100,000
.Mnimo 10 aos
315
Tabla C.2 Especificaciones para HASP4 Std., HASP4 M1, HASP4 M4, HASP4 Net
Dimensiones Peso .39 x 53 x 17 mm
Memoria Lectura/escritura HASP4 sin memoria HASP4 M1 HASP4 M4 HASP4 Net Bateras/alimentacin externa ..no dispone
Memoria Lectura/escritura 512 bytes HASP4 Time reloj cuenta Exactitud del reloj HASP4 Time Tiempo de vida de la batera hora, minuto, segundo, ao, mes, da 2 horas por ao 4+ aos
316
Apndice C
Especificaciones Tcnicas
Memoria lectura/escritura HASP4 USB HASP4 USB M1 HASP4 USB M4 HASP4 USB Net Bateras / alimentacin externa ...no dispone ...112 bytes ...496 bytes .....496 bytes ..no
317
318
Glosario
Activaciones
El nmero de veces que una aplicacin protegida con HASP puede ser iniciada Un mecanismo de bsqueda en el que el cliente HASP4 Net accede a un archivo para obtener la direccin del Administrador de Licencias HASP.
El Application Specific Integrated Circuit (ASIC) de HASP es un chip propietario, completamente personalizado, con un algoritmo nico.
Background HASP Chequeos activos de la presencia de la llave HASP realizados por la Envelope HASP durante la ejecucin de la aplicacin. Checks
Mecanismo de bsqueda en el que el cliente HASP4 Net busca el Mecanismo de Bsqueda Bindery bindery Novell para encontrar el Administrador de Licencias HASP.
Broadcast
Mtodo de comunicacin a travs de la red enviando (broadcasting) mensajes a cada estacin de trabajo. Durante la transmisin de mensajes, define un PC concreto como destino, o emite el mismo mensaje para todas las estaciones de la red. Mecanismo de bsqueda en el que el cliente HASP4 Net usa una emisin SAP para encontrar el Administrador de Licencias HASP
La conexin de llaves HASP una detrs de otra. Una prestacin de la utilidad HASP Envelope que usa para proteger archivos de datos.
319
Glosario
El cdigo de programador de las llaves HASP demo. Un cdigo nico asignado a cada fabricante de software y quemado en el componente ASIC de HASP. La fecha a partir de la cual la aplicacin protegida no puede ejecutarse. Poderosa prestacin que le permite proteger mltiples aplicaciones con una sola llave, y especificar las condiciones bajo las cuales cada aplicacin puede ser utilizada. HASP es un sistema de proteccin de software basado en hardware. Un interface a un archivo objeto o DLL HASP que usted linka a su aplicacin, y que le permite insertar llamadas a HASP desde su cdigo fuente.
Llave HASP Demo Una llave HASP con passwords demo (15417 9632)Y CDIGO DE
PROGRAMADOR DEMOMA que se usa para la evaluacin del sistema de proteccin HASP.
Kit de Evaluacin HASP HASP Device Driver HASP Device Driver de Carga Dinmica
Un paquete que contiene todo lo necesario para evaluar el sistema de Proteccin HASP. Un driver que interviene entre la aplicacin protegida con HASP y la llave HASP. HASP Device Driver propietario que permite su carga sin necesidad de reiniciar el sistema.
HASP Envelope
320
Glosario
Gua paso a paso a travs del proceso de proteccin utilizando HASP Envelope Un nmero nico asignada a cada llave de memoria HASP durante el proceso de fabricacin. Memoria Interna de lectura / escritura, la cantidad de memoria vara dependiendo del modelo HASP Las llaves de memoria HASP tienen una memoria interna de lectura / escritura, cuyo tamao depende del modelo. Los siguientes modelos contienen una memoria: HASP4 M1 (112 bytes), HASP4 M4 (496 bytes), HASP4 Time (496 bytes + 16 bytes), HASP4 Net (496 bytes) Dos passwords nicas asignadas a cada fabricante de software, que le permiten el acceso a las HASP. La rutina del API de HASP que accede a HASP. Llave HASP diseada para PCs monopuesto.
Memoria HASP
Passwords HASP
Kit de Inicio HASP Paquete que contiene todo lo que precisa para evaluar el sistema
HASP y proteger su software de forma inmediata. Utilidades para testear el API de HASP y las operaciones HASP4 Net. Llave HASP monopuesto que contiene un chip ASIC, reloj de tiempo real interno, y segn el modelo, hasta 512 bytes de memoria interna de lectura / escritura. Aplicacin que instala el HASP Device Driver Periodo tras el cual la estacin es considerada inactiva si no ha accedido a HASP4 Net. Mtodo predeterminado por el que la aplicacin protegida con HASP4 Net busca el Administrador de Licencias HASP.
321
Glosario
Cliente HASP4 Net Archivos de configuracin HASP4 Net Bsqueda personalizada de HASP4 Net Administrador de Licencias HASP Tabla Log HASP4 Net Login HASP4 Net
Arcbivos que contienen las indicaciones para el ajuste del cliente HASP4 Net y el Administrador de Licencias HASP dentro de la red.
Mtodo personalizado por el que el cliente HASP4 Net busca el Administrador de Licencias HASP.
Aplicacin que comunica entre la aplicacin protegida y la llave HASP4 Net, funcionando como enlace entre ambas. Lista de todas las aplicaciones protegidas que han realizado un Login a HASP4 Net y las estaciones desde donde se han activado. Proceso por el que una aplicacin protegida con HASP4 Net solicita permiso para la activacin al Administrador de Licencias HASP. Proceso por el que una aplicacin protegida con HASP4 Net informa al Administrador de Licencias HASP que no va a continuar utilizando la licencia. El archivo de configuracin HASP4 Net para la aplicacin protegida. Contiene las indicaciones para el ajuste de HASP4 Net en la red. Las series de llaves HASP4 Net que permiten diferente nmero mximo de licencias para una aplicacin protegida. Herramienta usada para el seguimiento del uso de las aplicaciones protegidas con HASP4 Net en una red (monitor.exe) El archivo de configuracin para el Administrador de Licencias HASP. Contiene las indicaciones para el ajuste del Administrador de Licencias HASP Net. El nmero de veces que una aplicacin protegida puede ejecutarse.
Nethasp.ini
Nmero de Activaciones
322
Glosario
El nmero de estaciones que pueden ejecutar una aplicacin protegida al mismo tiempo. Estructura en la aplicacin protegida que se actualiza cuando se realiza una llamada oculta a HASP. Avanzada tarjeta de proteccin de software que se inserta en el slot PC-Card (PCMCIA) que se encuentra en la mayora de notebooks.
PC-CardHASP
323
Index
A
Access to HASP key.......................... 32 - 33 Activations ................................................ 102 Adapt timeout length............................... 267 AKS Monitor. See Aladdin Monitor aksparlnx.o .................................................. 35 aksusbd ................................................. 32, 35 Aladdin Diagnostic .................................... 26 check HASP keys.............................. 109 diagnose HASP keys ........................ 108 Key Access History pane................. 111 Aladdin Monitor... 215, 218, 257 - 262, 311 Anti debug modules................................... 65 Anti-debugging........................................... 71 API ....................................................... 19 - 20 Application activations, limit........... 21, 279 Application programming interface ...... 115 Application protection, prepare............... 73 ASCIIZ ...................................................... 297 ASIC........................................................ 5, 17
C
-c .................................................................. 65 Cascading. See Daisy-chaining -cfgfile ......................................................... 65 Chaining. See Daisy-chaining Check clock date .......................................... 165 clock time .......................................... 163 for HASP presence.......................... 146 HASP ID number..... 88, 156, 170, 183 HASP type ........................................ 147 port..................................................... 147 status of call to HASP4 Net ........... 176 Checksumming ........................................ 138 Clearing the memory................................. 97 Clock check date.......................................... 165 check time ......................................... 163 setting date ........................................ 164 setting time........................................ 162 Compilers, support.................................. 130 Configuration file ...................................... 65 Conflicts with parallel devices, avoid ... 305 Crash, reactivating after.......................... 177 Create templates ...................................... 101 -createcfg..................................................... 65 custinst.exe. See Customer utility Customer utility .. 272 - 273, 276, 286 - 290
B
Background HASP checks........................ 71 Basic services ............................................ 143 Batch code. See Developer Code Battery in HASP4 Time ............................ 22 Big Endian................................................. 151
325
Index Status codes ....................................... 290 Editing memory ......................................... 88 HASP4 M1/M4.................................. 89 HASP4 Net ......................................... 92 Remote Update System.......... 278, 280 -enc .............................................................. 66 -enclevel ...................................................... 66 Encode ...................................................... 138 Encode data.................... 116, 135, 149, 191 with HASP Edit............................ 77, 98 Encode of HASP memory ..................... 138 Encryption key........................................... 66 endian ........................................................ 151 Envelope. See HASP Envelope Error codes. See Status codes Error messages HASP Envelope ................................. 64 Errors error 15 .............................................. 310 error 21 .............................................. 307 error 3 ................................................ 309 error 8 ................................................ 310 error 9121 .......................................... 306 HASP not found .............................. 306 Expiration dates....................................... 102 Expiry date................................................ 280 -exsecnum ................................................... 66
D
Daemon ....................................................... 32 Daisy-chaining ............................................ 23 Data decode ....................................... 150, 193 encode .............................. 135, 149, 191 Data files, protecting. See DataHASP DataHASP............................................ 23, 60 Dates. See Clock Decode data ..................................... 150, 193 DecodeData service................................... 15 Defining range of stations ........... 263 - 266 Demo applications ................................... 115 Demo key passwords............................... 313 Demo keys ................................................ 313 Determine HASP ID.......................... 79, 98 Determining HASP ID ........................... 116 Developer code .......... 15, 17, 218, 307, 313 Device conflict, avoiding ........................ 305 Device driver. See HASP device driver -dhfilter ........................................................ 65 -dhfilterx ...................................................... 66 -dhkey .......................................................... 66 dinst.............................................................. 32 Disk space requirements ........................... 44 Distribution preparing for........................................ 73 DLLs protecting........................................... 130 DOS extender............................................. 69 DOS, memory requirements .................. 307 Driver........................................................... 33 -drvwait........................................................ 66
F
FAS ............................................................ 102 HASP Envelope ................................. 46 -fas................................................................ 66 FAS area.................................................... 103 -fasprgnum.................................................. 66 File pattern.................................................. 65 Frame types .............................................. 309 Full Authorization System........ 20 - 21, 102 program list ................................. 81 - 88 Remote Update System......... 278 - 279
E
Editing HASP memory ........................... 116
326
Index
G
GetDate..................................................... 165 GetHaspID............................................... 170 GetTime .................................................... 163 Getting started...................................... 1 - 39
H
-h3easy......................................................... 66 -h3hard ........................................................ 66 -h3pass......................................................... 66 Hard disk space.................................. 78 - 79 Hardware....................................................... 8 HASP in a network......................................... 23 interfaces............................................ 115 problems ............................................ 303 software updates............................... 303 HASP API ................. 19 - 20, 26, 115 - 131 basic services ..................................... 143 HASP4 Net services .............. 171 - 196 HASP4 Time services............ 159 - 170 Memory services..................... 151 - 158 status codes ............................. 197 - 205 HASP basic concept.......................... 13 - 24 HASP daemon .................................. 32, 116 HASP Demo .............................................. 27 HASP demo keys....................................... 97 HASP Developer Kit ................................ 11 HASP Device Driver ..................... 215, 306 for Windows NT .............................. 306 removing.............................................. 31 HASP device driver................................... 26 HASP driver .............................. 32 - 33, 116 for Mac OS 8.6, 9 ............................... 33 for Mac OS X ..................................... 32 HASP Edit ................................. 26, 73 - 104 configuration file ................................ 75 prepare for application protection... 98
retrieve HASP ID ........................ 79, 98 setting preferences ............................. 97 template files..................................... 100 HASP Envelope ......... 19 - 20, 43 - 72, 141 and API protection............................ 43 error messages .................................... 64 Instdos.exe .......................................... 65 Instw16.exe ......................................... 65 Instw32.exe ......................................... 65 switches ............................................... 65 window ................................................ 45 with HASP4 Net.............................. 306 HASP hardware............................................ 8 HASP ID number ... 17, 22, 76, 79, 98, 272 and HASP API protection ............. 116 and HASP Envelope protection...... 58 calculating.......................................... 131 check ........................... 88, 156, 170, 183 entering in Vendor utility................ 277 retrieving with Customer utility..... 286 HASP key check presence of .............................. 15 HASP keys demo .................................................. 313 HASP License Manager 177, 195, 200, 215, 263 switches ........................... 236 - 238, 263 HASP License Manager configuration file.. 264 HASP memory........................................... 21 options................................................. 17 HASP memory, encode of..................... 138 HASP passwords................ 17, 22, 276, 313 changing .............................................. 22 hiding ................................................. 139 HASP protection keys ................................. 8 HASP software, overview................ 25 - 27 HASP Starter Kit....................................... 11 HASP test utilities ..................................... 27
327
Index HASP Test Utility .................................... 128 hasp( ) routine....... 117, 129, 133, 143, 151, 159, 171, 197, 305 and TCP/IP....................................... 172 time required to call.......................... 129 -hasp4........................................................... 66 HASP4 key models ...................................... 9 HASP4 key types.......................................... 9 HASP4 M1............................................. 8, 10 services .................................... 151 - 158 HASP4 M1/M4.......................................... 24 editing memory ................................... 89 HASP Envelope.................................. 46 update ................................................... 24 HASP4 M4....................................... 8, 10, 89 services .................................... 151 - 158 HASP4 Net ......................... 10, 55, 209, 219 and the HASP Envelope ................. 306 client configuration file......... 247 - 256 editing memory ................................... 92 error 21............................................... 307 HASP Envelope.................................. 46 Internet............................................... 219 key ........................................................... 8 LastStatus codes..................... 200 - 205 LastStatus service.............................. 176 License Manager ............................... 215 log table ........... 177, 179, 185, 214, 228 login ........................................... 177, 308 logout................................... 70, 179, 306 program list......................... 86, 182, 189 services .................................... 171 - 196 HASP4 Net configuration files.............. 263 client ........................................ 247 - 256 setting the name................................ 190 HASP4 Standard .......................................... 9 HASP4 Std .............................................. 8 - 9 HASP4 Time.................................... 8, 10, 22 clock...................................................... 92 HASP Envelope ................................. 46 setting clock ........................................ 97 HASP4 Time services ................... 159 - 170 HASP4 without memory.......................... 81 HaspDecodeData ........................... 150, 193 haspdemo.exe ............................................... 128 HaspEdit ................................................... 311 HaspEdit. See HASP Edit HaspEncodeData ........................... 149, 191 haspenv.exe................................................. 45 HaspID............................................. 156, 183 HaspQueryLicense .................................. 196 HaspStatus ................................................ 147 HDD16.EXE ............................................. 29 HDD32.EXE ............................................. 29 -highsecoff .................................................. 67 -highsecon................................................... 67 Hinstall utility ..................................... 30, 306
I
I/O base, changing.................................. 308 IBM...................................................... 54, 276 -ibm.............................................................. 67 ID number............................................ 17, 22 Identify key ................................................. 15 Idle time ...................................................... 70 IdleTime.................................................... 184 Implementing API................................... 117 Installation .......................................... 25 - 39 customize under Linux................ 37, 39 customize under Mac OS X ............. 32 customize under Windows ............... 30 Linux ............................................ 35 - 39 Mac............................................... 32 - 34 Windows...................................... 29 - 31 Installing driver .................................................... 33 Instdos.exe.................................................. 65
328
Index Instw16.exe ................................................. 65 Instw32.exe ................................................. 65 Interfaces................................................... 115 -interval........................................................ 67 IPX protocol defining range of stations................ 263 IsHasp........................................................ 146 Memory....................................................... 21 editing .................................................. 88 HASP4 Net reserved...... 104, 182, 189 reading .... 154, 157, 167, 169, 181, 186 remote update..................................... 24 update .................................................. 24 writing to 155, 158, 166, 168, 182, 188 Memory services............................ 151 - 158 -mhid ........................................................... 67 -mhpass....................................................... 67 Micro .............................................................. 5 Micro-controller ........................................... 5 Multi key programming tool.................. 101
K
kernel mode driver..................................... 35
L
Languages support............................................... 130 LastStatus .................................................. 176 codes......................................... 200 - 205 error 21 .............................................. 307 Licensing .......................... 55, 218, 306 - 307 Limit application activations ....................... 21 Limiting applications served ........................... 267 licenses ................................................. 55 number of licences ............................. 55 Linux............................................................ 35 Little Endian............................................. 151 -loader.......................................................... 67 Loading time............................................... 71 Log table......... 177, 179, 185, 214, 228, 306 Login......................................... 177, 214, 308 -loginx.......................................................... 67 Logout ............................... 70, 179, 214, 306 LptNum..................................................... 119
N
NEC as target computer ........................... 276 -nec .............................................................. 67 NetBIOS protocol defining range of stations ............... 266 station name...................................... 266 -netcfg ......................................................... 67 NetHASP login ................................................... 214 logout................................................. 214 NetHASP Monitor. See Aladdin Monitor Network cards.......................................... 308 Networks and HASP4 Net ............ 209, 219 New Envelope Configuration ................. 45 NH_COMMON ............................. 248, 250 NH_IPX ................................................... 251 NH_NETBIOS....................................... 254 NH_TCPIP .............................................. 255 -nhpass ........................................................ 67 -nodbgcheck............................................... 67 -noenc ......................................................... 67 -nofas........................................................... 67 -nohasp4 ..................................................... 68
M
Mac 9.x ........................................................ 33 Mac OS 8.6 ................................................. 33 Mac OS X ................................................... 32
329
Index -norandomsize ............................................ 68 -nores ........................................................... 68 -nospecial..................................................... 68 Novell network......................................... 309 -novir............................................................ 68 Number of Licenses field HASP4 Net.......................................... 55 Protect icon ................................................ 46 Protection for networks and stand-alone keys 127 for networks and stand-alones ....... 307 HASP API........................... 19, 26 - 131 HASP Envelope ................................. 19 main stages .......................................... 28 maximizing ..................... 133 - 141, 221 methods ............................................... 19 of data files .......................................... 23 of DLLs ............................................. 130 quick reference ................................... 28 Protection parameters............................. 102
O
Open Envelope Configuration ................ 45 -out ............................................................... 68 Overlay File field........................................ 54 Overlay handling ........................................ 69 -ovl................................................................ 68
Q
-quiz ............................................................. 68
P
Parallel keys................................................... 9 Parallel port ...................................... 119, 308 Parameters hasp( ) routine 118, 143, 151, 159, 171 Passwords. See HASP passwords PC-Cards ....................................................... 9 PCMCIA........................................................ 9 -pcs ............................................................... 68 Port, check ................................................ 147 Prepare for application protection .......... 98 Preparing HASP keys ................................ 99 -prg ............................................................... 68 -prgnum ....................................................... 68 Printing problems ......................... 304 - 305 Problems.................................................... 303 Program list........................ 81 - 88, 182, 189 Program number ...... 51, 66, 68, 83 - 87, 89 Remote Update System ................... 279 Programming HASP keys......................... 99 Programming multiple keys............. 94, 101 Programming single HASP keys..... 99, 101 Protect Application............................. 46, 50
R
RAM .................................................... 78 - 79 -randomsize ................................................ 68 Reactivating, after crash.......................... 177 Read/write memory .................................. 10 ReadBlock................................ 157, 169, 186 ReadByte ................................................... 167 Reading memory... 154, 157, 167, 169, 181, 186 ReadWord........................................ 154, 181 Real-time clock........................................... 10 Remote Update System . 24, 269, 271 - 301 client DLL ......................................... 297 Customer utility .. 272 - 273, 276, 286 290 customization utility........ 291, 299, 301 DLL for customer............................ 291 DLL for vendor................................ 291 editing memory........................ 278, 280 Full Authorization System .... 278 - 279 passwords ......................... 272, 277, 287
330
Index performing updates.......................... 292 preparing your application .............. 292 sample applications .......................... 292 switches.............................................. 288 vendor DLL ...................................... 293 Vendor utility ....... 272 - 273, 277 - 285 Win32 API for HASP keys... 291 - 301 Report, Aladdin Diagnostic utility......... 108 Retrieve HASP ID............................... 79, 98 Return codes hiding.................................................. 139 Rmote Update System preparing your application .............. 292 RUS. See Remote Update System Service 51 .......................................... 158 Service 52 .......................................... 186 Service 53 .......................................... 188 Service 6 ............................................ 156 Service 60 .......................................... 149 Service 61 .......................................... 150 Service 70 .......................................... 162 Service 71 .......................................... 163 Service 72 .......................................... 164 Service 73 .......................................... 165 Service 74 .......................................... 166 Service 75 .......................................... 167 Service 76 .......................................... 168 Service 77 .......................................... 169 Service 78 .......................................... 170 Service 85 .......................................... 190 Service 88 .......................................... 191 Service 89 .......................................... 193 Service 96 .......................................... 195 Service4 ............................................. 155 SetConfigFilename .................................. 190 SetDate...................................................... 164 SetServerByName.................................... 195 SetTime ..................................................... 162 Setting clock date .......................................... 164 clock time.......................................... 162 FAS Program List for HASP4 M1/M4 82 FAS Program List for HASP4 Time 84 frame type ......................................... 309 HASP License Manager name ....... 195 HASP4 Net configuration file ....... 190 HASP4 Time clock............................ 92 number of licences............................. 55 Setup utility................................................. 29 setup.exe. See Setup utility Software HASP, overview......................... 25 - 27
S
Sample applications ................................. 115 Scanning for connected keys.................... 98 Searching, parallel port............................ 119 Security, improving........................ 133 - 141 Serial number.See HASP ID Services basic.................................................... 143 HASP Memory ....................... 151 - 158 HASP4 Net ............................. 171 - 196 HASP4 Time........................... 159 - 170 Service 1............................................. 146 Service 104......................................... 196 Service 3............................................. 154 Service 40........................................... 176 Service 42........................................... 177 Service 43........................................... 179 Service 44........................................... 181 Service 45........................................... 182 Service 46........................................... 183 Service 48........................................... 184 Service 5............................................. 147 Service 50........................................... 157
331
Index updates ............................................... 303 -special ......................................................... 69 -special1 ....................................................... 69 Specifying the port................................... 119 Specifying USB port number ................. 120 Stand-alone HASP keys in a network ..... 23 Start HASP Wizard.................................... 45 Status codes Customer utility ................................ 290 HASP API .............................. 197 - 205 HASP4 Net LastStatus ......... 200 - 205 Vendor utility .................................... 284 Switches Customer utility ................................ 288 HASP Envelope.................................. 65 HASP License Manager 236 - 238, 263 Remote Update System ................... 288 Vendor utility ......................... 282 - 284 Using API ................................................. 117 Using Full Authorization System .......... 102
V
vendinst.exe. See Vendor utility Vendor utility .............. 272 - 273, 277 - 285 status codes ....................................... 284 switches.................................... 282 - 284 Verify presence of HASP.............................. 15 -vir................................................................ 69
W
Win32 data files protecting ............................................ 47 Working with templates.......................... 100 WriteBlock............................... 158, 168, 188 WriteByte .................................................. 166 WriteWord ....................................... 155, 182 Writing to HASP keys............................... 99 Writing to memory 155, 158, 166, 168, 182, 188
T
TCP/IP protocol and hasp( ) routine............................ 172 defining range of stations ................ 264 Technical support .................................... 108 Template files ........................................... 100 Time. See Clock Timeout length ......................................... 267 Troubleshooting....................................... 303
U
Unprotected File ................................. 46, 48 Update HASP keys ............... 269, 291 - 301 Update System....................... 269, 291 - 301 USB enumeration..................................... 120 USB HASP.................................................... 5 USB keys ....................................................... 9 USB port number..................................... 120 Use HASP4 Security Features field......... 54
332
Printed in Israel 11/2001 Aladdin Knowledge Systems Ltd. HASP is a registered trademark of Aladdin Knowledge Systems Ltd. All other product names are trademarks or registered trademarks of their respective owners.
F o r f u r t h e r i n f o : w w w. e A l a d d i n . c o m / H A S P
International North America UK Germany Benelux France Israel Brazil Japan Russia Spain China T: T: T: T: T: T: T: T: T: T: T: T: +972-3-636-2222 F: +972-3-537-5796, HASP@eAladdin.com 1-800-562-2543, 1-847-818-3800, F: 1-847-818-3810, HASP.us@eAladdin.com +44-1753-622266 F: +44-1753-622262, HASP.uk@eAladdin.com +49-89-89-42-21-0 F: +49-89-89-42-21-40, HASP.de@eAladdin.com +31-30-688-0800 F: +31-30-688-0700, HASP.nl@eAladdin.com +33-1-41-37-70-30 F: +33-1-41-37-70-39, HASP.fr@eAladdin.com +972-3-636-2222 F: +972-3-537-5796, HASP.il@eAladdin.com +55-21-235-2499 F: +55-21-236-0768, HASP.br@eAladdin.com +81-426-60-7191 F: +81-426-60-7194, HASP.jp@eAladdin.com +7-095-923-0588 F: +7-095-928-6781, HASP.ru@eAladdin.com +34-91-375-99-00 F: +34-91-754-26-71, HASP.es@eAladdin.com +86-10-6526-9920 F: +86-10-6526-9921, HASP.cn@eAladdin.com
03782!
0 3 7 8 2
Composite