359
Securing the global village Guía del Programador

Spanish Manual Hasp v11

Embed Size (px)

Citation preview

Page 1: Spanish Manual Hasp v11

HASP4 _Guide.fh9 2/12/2001 11:55 Page 1

Composite

C M Y CM MY CY CMY K

Version 11 H

ASP

® P

rogram

mer’s G

uid

e

Securing the

global

vi l lage

Guía del Programador

0 3 7 8 2à03782!ä

Printed in Israel 11/2001 © Aladdin Know

ledge Systems Ltd. HASP

® is a registered trademark of Aladdin Know

ledge Systems Ltd.

All other product names are tradem

arks or registered trademarks of their respective ow

ners.

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 PInternational T: +972-3-636-2222 F: +972-3-537-5796, [email protected] America T: 1-800-562-2543, 1-847-818-3800, F: 1-847-818-3810, [email protected] T: +44-1753-622266 F: +44-1753-622262, [email protected] T: +49-89-89-42-21-0 F: +49-89-89-42-21-40, [email protected] T: +31-30-688-0800 F: +31-30-688-0700, [email protected] T: +33-1-41-37-70-30 F: +33-1-41-37-70-39, [email protected] T: +972-3-636-2222 F: +972-3-537-5796, [email protected] T: +55-21-235-2499 F: +55-21-236-0768, [email protected] T: +81-426-60-7191 F: +81-426-60-7194, [email protected] T: +7-095-923-0588 F: +7-095-928-6781, [email protected] T: +34-91-375-99-00 F: +34-91-754-26-71, [email protected] T: +86-10-6526-9920 F: +86-10-6526-9921, [email protected]

Page 2: Spanish Manual Hasp v11

HASP4 _Guide.fh9 2/12/2001 11:55 Page 2

Composite

C M Y CM MY CY CMY K

Guía del Programador

Versión 11

Page 3: Spanish Manual Hasp v11

HASP4 Programmer’s Guide i

COPYRIGHTS AND TRADEMARKSThe HASP® system and its documentation are copyrighted (C) 1985 to present by Aladdin Knowledge Systems Ltd. All rights reserved.

HASP®, MacHASP® and MemoHASP® are registered trademarks of Aladdin Knowledge Systems Ltd.

NetHASP™, TimeHASP™, HASP36™, MemoHASP36™, NetHASP36™, USBHasp™, and AladdinCARD™ are trademarks of Aladdin Knowledge Systems Ltd.

All other trademarks, brands, and product names used in this guide are trademarks of their respective owners.

Page 4: Spanish Manual Hasp v11

ii © Aladdin Knowledge Systems, 2002

LIMITED WARRANTY, LIMITATION OF REMEDIES AND LIABILITY

Aladdin Knowledge Systems Ltd. (“Aladdin”) warrants for a period of twelve (12) months after date of purchase its software

and the HASP® key as set forth in the Developer's License Agreement.

Aladdin's sole obligation in the event of a breach of this warranty, and the limitation on its liability for damages to any party, are as set forth in the Developer's License Agreement.

EXCEPT AS STATED ABOVE, THERE IS NO OTHER WARRANTY, EXPRESSED OR IMPLIED, REGARDING ALADDIN'S PRODUCTS INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

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.

Page 5: Spanish Manual Hasp v11

HASP4 Programmer’s Guide iii

ALADDIN KNOWLEDGE SYSTEMS LTD. DEVELOPER'S LICENSE AGREEMENT

IMPORTANT INFORMATION - PLEASE READ THIS AGREEMENT CAREFULLY BEFORE OPENING THE PACKAGE AND/OR USING THE CONTENTS THEREOF AND/OR BEFORE DOWNLOADING OR INSTALLING THE SOFTWARE PROGRAM. ALL ORDERS FOR AND USE OF THE HASP PRODUCTS (including without limitation, the Developer's Kit, libraries, utilities, diskettes, CD_ROM,

HASP® keys, the software component of Aladdin's HASP and the Developer's Guides) (hereinafter "Product") SUPPLIED BY ALADDIN KNOWLEDGE SYSTEMS LTD. (or any of its affiliates - either of them referred to as "ALADDIN") ARE AND SHALL BE, SUBJECT TO THE TERMS AND CONDITIONS SET FORTH IN THIS AGREEMENT.

BY OPENING THE PACKAGE CONTAINING THE PRODUCTS AND/OR BY DOWNLOADING THE SOFTWARE (as defined hereunder) AND/OR BY INSTALLING THE SOFTWARE ON YOUR COMPUTER AND/OR BY USING THE PRODUCT, YOU ARE ACCEPTING THIS AGREEMENT AND AGREEING TO BE BOUND BY ITS TERMS AND CONDITIONS.

IF YOU DO NOT AGREE TO THIS AGREEMENT OR ARE NOT WILLING TO BE BOUND BY IT, DO NOT OPEN THE PACKAGE AND/OR DOWNLOAD AND/OR INSTALL THE SOFTWARE AND PROMPTLY (at least within 7 days from the date you received this package) RETURN THE PRODUCTS TO ALADDIN, ERASE THE SOFTWARE, AND ANY PART THEREOF, FROM YOUR COMPUTER AND DO NOT USE IT IN ANY MANNER WHATSOEVER. UPON RETURNING THE PRODUCT WITH A COPY OF THE SALES RECIPT TO ALADDIN YOU WILL RECEIVE A REFUND.

Page 6: Spanish Manual Hasp v11

iv © Aladdin Knowledge Systems, 2002

1. Title & Ownership THIS IS A LICENSE AGREEMENT AND NOT AN AGREEMENT FOR SALE. The software component of Aladdin's HASP Product Development Kit, including any revisions, corrections, modifications, enhancements, updates and/or upgrades thereto, (hereinafter in whole or any part thereof defined as: "Software"), and the related documentation, ARE NOT FOR SALE and are and shall remain in Aladdin's sole property. All intellectual property rights (including, without limitation, copyrights, trade secrets, trademarks, etc.) evidenced by or embodied in and/or attached/connected/related to the Product, (including, without limitation, the Software code and the work product performed in accordance with Section 2 hereunder) are and shall be owned solely by Aladdin. This License Agreement does not convey to you an interest in or to the Software but only a limited right of use revocable in accordance with the terms of this License Agreement. Nothing in this Agreement constitutes a waiver of Aladdin's intellectual property rights under any law.

2. LicenseSubject 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

Page 7: Spanish Manual Hasp v11

HASP4 Programmer’s Guide v

(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 UsesExcept 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

Page 8: Spanish Manual Hasp v11

vi © Aladdin Knowledge Systems, 2002

(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 WarrantyAladdin 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

Page 9: Spanish Manual Hasp v11

HASP4 Programmer’s Guide vii

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 RemediesIn 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.

8. Exclusion Of Consequential DamagesThe parties acknowledge, that the Product is inherently complex and may not be completely free of errors. ALADDIN SHALL NOT BE LIABLE (WHETHER UNDER CONTRACT, TORT (INCLUDING NEGLIGENCE) OR OTHERWISE) TO YOU, OR ANY THIRD PARTY (INCLUDING, WITHOUT LIMITATION, YOUR DISTRIBUTORS AND USERS OF YOUR SOFTWARE PROGRAM) FOR ANY LOSS OR DAMAGE (INCLUDING INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES), INCLUDING, WITHOUT LIMITATION, ANY LOSS OR DAMAGE TO BUSINESS

Page 10: Spanish Manual Hasp v11

viii © Aladdin Knowledge Systems, 2002

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 LiabilityIN 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.

10. No Other WarrantiesExcept as specifically provided herein, Aladdin makes no warranty or representation, either express or implied, with respect to its products as described in the preamble of this agreement, including its quality, performance, merchantability or fitness for a particular purpose.

11. TerminationYour 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

Page 11: Spanish Manual Hasp v11

HASP4 Programmer’s Guide ix

(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.

12. Governing Law & JurisdictionThis Agreement shall be construed and governed in accordance with the laws of Israel (except for conflict of law provisions) and only the courts in Israel shall have jurisdiction in any conflict or dispute arising out of this Agreement. The application of the United Nations Convention of Contracts for the International Sale of Goods is expressly excluded. The failure of either party to enforce any rights granted hereunder or to take action against the other party in the event of any breach hereunder shall not be deemed a waiver by that party as to subsequent enforcement of rights or subsequent actions in the event of future breaches.

13. Third Party SoftwareIf the Product contains any software provided by third parties, such third party's software is provided "As Is" without any warranty of any kind and Sections 2, 3, 4, 6, 8, 9-13 of this Agreement shall apply to all such third party software providers and third party software as if they were Aladdin and the Product respectively.

14. MiscellaneousThis 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.

Page 12: Spanish Manual Hasp v11

x © Aladdin Knowledge Systems, 2002

CE ComplianceThe 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 ComplianceFCC authorities have determined that HASP is not a Class B Computing Device Peripheral and therefore does not require FCC regulation.

Y2K ComplianceThe HASP product line is Year 2000 (Y2K) compliant. Y2Kcompliance means that HASP products will record, store, processand present calendar dates falling on or after January 1, 2000 inthe same manner, and with the same functionality, as it records,stores, processes, and presents calendar dates falling on orbefore December 31, 1999.

We supply a Y2K compliance card with every shipment or upondemand.

UL CertificationThe 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.

Page 13: Spanish Manual Hasp v11

HASP4 Programmer’s Guide xi

ISO 9002 CertificationThe HASP product line is designed and manufactured by Aladdin Knowledge Systems, Inc., an ISO 9002-certified company. Aladdin's quality assurance system is approved by the International Organization for Standardization (ISO), ensuring that Aladdin products and customer service standards consistently meet specifications in order to provide outstanding customer satisfaction.

Certificate of ComplianceUpon 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.

Page 14: Spanish Manual Hasp v11
Page 15: Spanish Manual Hasp v11

xiii

Contenido

Lista de Tablas........................................................................................ xix Acerca de la Guía del Programador HASP ...................................... xxi

Parte 1 - Inicio a HASP ........................................................................... 1

Introducción…........................................................................ 3 Acerca de HASP................................................................... 3 Ventajas del Sistema HASP .................................................. 4 Llaves de Protección HASP ................................................... 8 La Familia HASP ................................................................ 29 Kit de Evaluación HASP ...................................................... 11 Kit de Iniciación HASP ........................................................ 11

Conceptos Básicos de HASP.................................................. 13

¿Cómo trabaja HASP?......................................................... 14 Identificación de la llave HASP ............................................. 15 Métodos de Protección HASP.............................................. 19 El Full Authorization System (FAS) ...................................... 20 Preguntas Frecuentes (FAQ)................................................ 22

Instalación de HASP …… ....................................................... 25

Software HASP…................................................................. 25 Protección de Software – Referencia Rápida…........................ 28 Instalación de HASP bajo Windows …................................... 29 Instalación de HASP bajo Mac ….......................................... 32 Instalación de HASP bajo Linux …....................................................................35

Page 16: Spanish Manual Hasp v11

Contenido

xiv

Parte 2: Uso de las Herramientas HASP........................................ 41

Protección con la Envelope HASP ........................................ 43

Acerca de la Envelope HASP ................................................. 44 Inicio a la Envelope HASP...................................................... 45 Protección de una aplicación…................................................46 Protección de Archivos de Datos Win32 .................................. 47 Grabación de los Parámetros FAS.......................................... 51 Parámetros de la Envelope..................................................... 53 Parámetros de línea de Comando de la Envelope ..................... 65 Información adicional de HASP4 Net ....................................... 70 Preguntas Frecuentes (FAQ).................................................. 71

Acceso a las llaves con HASP Edit ……..................................73

HASP Edit para Windows ….. .................................................74 HASP Edit para Mac ….. ........................................................97 Preguntas Frecuentes (FAQ) …............................................. 104

Ayuda para usuarios finales …............................................. 107 Creación de informes .. ......................................................... 108 Diagnósticos de llaves HASP … ............................................ 109

Parte 3: Uso del API de HASP........................................................... 113 Protección con el API de HASP …. ...................................... 115

Preparación para el uso del API............................................ 116 Utilizando el API.................................................................. 117 Servicios HASP................................................................... 122 La Protección en entorno de PCs y para Redes ...................... 127 Utilidad de Test HASP …...................................................... 128 Preguntas Frecuentes (FAQ)................................................ 129

Estrategias de Protección … ................................................ 133 Ataques a la protección de software ...................................... 134 Trucos y consejos …............................................................ 135

Servicios Básicos HASP........................................................ 143 Servicio 1: IsHasp................................................................. 146 Servicio 5: HaspStatus......................................................... 147

Page 17: Spanish Manual Hasp v11

Contenido

xv

Servicio 60: HaspEncodeData............................................... 149 Servicio 61: HaspDecodeData………...................................... 150

Servicios de HASP4 Memoria............................................... 151

Servicio 3: ReadWord .......................................................... 154 Servicio 4: WriteWord .......................................................... 155 Servicio 6: HaspID ............................................................... 156 Servicio 50: ReadBlock ........................................................ 157 Servicio 51: WriteBlock........................................................ 158

Servicios de HASP4 Time..................................................... 159

Servicio 70: SetTime............................................................ 162 Servicio 71: GetTime............................................................ 163 Servicio 72: SetDate............................................................ 164 Servicio 73: GetDate............................................................ 165 Servicio 74: WriteByte ......................................................... 166 Servicio 75: ReadByte.......................................................... 167 Servicio 76: WriteBlock........................................................ 168 Servicio 77: ReadBlock ........................................................ 169 Servicio 78: HaspID ............................................................. 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

Page 18: Spanish Manual Hasp v11

Contenido

xvi

Códigos de Status del API de HASP..................................... 197

Códigos de Status para todas las llaves HASP ...................... 197 Códigos de Status para las llaves HASP4 Time ...................... 199 Códigos de Status para las llaves HASP4 Net … .................... 200

Parte 4 - Uso de HASP en una Red ............................................... 207

Conceptos Básicos de HASP4 Net........................................ 209 ¿Qué es HASP4 Net?.......................................................... 209 ¿Cómo trabaja HASP4 Net ................................................... 210 Preparación de la protección.. ............................................... 212 Uso de HASP4 Net ….. ........................................................ 213 Distribución de HASP4 Net .. ................................................ 215 Protocolos soportados, plataformas y sistemas operativos …... 217 Preguntas Frecuentes (FAQ)................................................ 218

Protección de aplicaciones con HASP4 Net …..................... 221 Opciones de HASP Envelope para HASP4 Net . ..................... 222 Servicios del API para HASP4 Net .. ...................................... 223

Administración de licencias de HASP4 Net . ........................ 227 ¿Cómo trabaja el Administrador de Licencias HASP? .. ........... 228 Administrador de Licencias HASP para Windows ................... 229 Administrador de Licencias HASP para Mac .. ........................ 232 Administrador de Licencias HASP para Servidores Novell … .... 235 Personalización del Administrador de Licencias HASP . .......... 236

Configuración de clientes HASP4 Net . ................................ 247 Secuencia de búsqueda del archivo de configuración . ............. 247 Secciones del archivo de configuración .................................. 248 Palabras clave ..................................................................... 249

Monitorización de Licencias HASP4 Net . ............................ 257 Distribución del Monitor Aladdin ............................................ 257 Instalación del Monitor Aladdin . ............................................ 258 Opciones del Monitor Aladdin . .............................................. 258 Propiedades del Administrador de Licencias HASP . ............... 259 Chequeo de llaves HASP .. ................................................... 260 Inicio y detención del Administrador de Licencias HASP como

servicio ............................................................................. 262

Page 19: Spanish Manual Hasp v11

Contenido

xvii

Adaptación de HASP4 Net a la red ...................................... 263 Definición del rango de estaciones bajo IPX . .......................... 263 Definición del rango de estaciones bajo TCP/IP ...................... 264 Definición del rango de estaciones bajo NetBIOS . .................. 266 Adaptación de Timeout . ....................................................... 267

Parte 5 - Uso del Sistema de Actualización Remota (RUS). .....269

Sistema de Actualización Remota . ......................................271 Instalación de RUS (sistema de actualización remota) .............272 Creación de las utilidades RUS ..............................................275 La utilidad Vendor .................................................................277 La utilidad Customer .............................................................286

API Win32 del Sistema de Actualización Remota . ...............291 Instalación de RUS (sistema de actualización remota) .............292 Funciones suministradas en la DLL Vendor . ...........................293 Funciones suministradas en la DLL Client . .............................297 Valores Devueltos .................................................................299 Utilidad de personalización ....................................................301

Soluciones a Problemas . ...................................................................303 Lista de chequeos ….............................................................304 Problemas y soluciones ........................................................305

Passwords de Demos HASP .............................................................313

Especificaciones Técnicas ................................................................315

Glosario ……….......................................................................................319

Indice ……………...................................................................................325

Page 20: Spanish Manual Hasp v11
Page 21: Spanish Manual Hasp v11

xix

Lista de Tablas

Modelos HASP ..................................................................................................... 8 Herramientas de instalación del Device Driver ................................................... 29 Parámetros de línea de comando para aksusbd (Mac) .......................................... 33 Parámetros de línea de comando para aksparlnx.o (Linux) .................................. 37 Parámetros de línea de comando para aksusbd (Linux)........................................ 39 Opciones de la pestaña Main de la Envelope HASP ............................................. 54 Opciones de la pestaña Options de la Envelope HASP.......................................... 57 Opciones de la pestaña DataHASP de la Envelope HASP ..................................... 62 Motores de la Envelope HASP............................................................................. 65 Parámetros de la Envelope HASP ....................................................................... 65 Panel Key Access History ................................................................................. 111 Parámetros para las llaves HASP monopuesto .................................................. 118 Parámetros para las llaves HASP4 Net............................................................. 118 Valores PortNum y Puertos de búsqueda .......................................................... 119 Modelos HASP y Servicios Relacionados............................................................ 122 Servicios Básicos HASP .................................................................................... 123 Servicios de HASP4 Memory............................................................................. 124 Servicios de HASP4 Time ................................................................................. 125 Servicios de HASP4 Net.................................................................................... 126 Servicios y Parámetros Básicos HASP............................................................... 144 Servicios y Parámetros de HASP4 Memoria...................................................... 152 Servicios y Parámetros de HASP4 Time............................................................ 160 Servicios y Parámetros de HASP4 Net.............................................................. 173 Códigos de Status para todas las llaves HASP.................................................... 197 Códigos de Status para las llaves HASP4 Time.................................................. 199 Códigos de Status para las llaves HASP4 Net ….................................................200 Códigos de Aviso para las llaves HASP4 Net ......................................................204 Plataformas soportadas por HASP4 Net . ...........................................................217 Protocolos de HASP4 Net . ................................................................................217 Parámetros para HASP4 Net con la Envelope HASP . ........................................223 Servicios API de HASP4 Net..............................................................................224 Parámetros del Administrador de Licencias HASP . ...........................................236 Códigos de error de la instalación API del Administrador de Licencias HASP. ....244 Orden de Búsqueda del Archivo de Configuración ..............................................248

Page 22: Spanish Manual Hasp v11

Lista de Tablas

xx

Información del Administración de Licencias HASP . .........................................259 Información de la llave HASP . ..........................................................................260 Información HASP ............................................................................................261 Tabla de Programas ..........................................................................................261 Tabla de Logins. ................................................................................................261 Parámetros de línea de comando de la utilidad Vendor ......................................282 Códigos de error de la utilidad Vendor ...............................................................284 Parámetros de línea de comando de la utilidad Customer ..................................289 Códigos 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

Page 23: Spanish Manual Hasp v11

xxi

Acerca de la Guía del Programador HASP4

La Guía del Programador HASP está diseñada para ayudar al

desarrollador de software a proteger su aplicación de la forma que más se

adecue a sus necesidades.

La primera parte, “Inicio a HASP” (página 1) es una introducción al

sistema de protección de software HASP, repasa la familia de llaves

HASP, y guía a través del software de instalación HASP. Esta parte es

de interés independientemente de la llave y el método de protección que

esté utilizando.

La segunda parte, “Uso de las Herramientas HASP” (página 41), le

ayuda a usar las utilidades HASP, para Windows y Mac, que le permiten

proteger su software fácilmente, programar sus llaves HASP para la

distribución y ayudar a sus clientes. Esta parte es interés

independientemente de la llave y el método de protección que esté

utilizando.

La tercera parte, “Uso del API de HASP” (página 113), introduce a los

métodos de protección con el API de HASP y estrategias. Incluye

detallada descripción de todos los servicios del API de HASP. Esta parte

es de interés únicamente si desea proteger su software añadiendo

llamadas en el código fuente de su aplicación al API de HASP.

La cuarta parte, “Uso de HASP en una red” (página 207), introduce al

sistema HASP4 Net y sus herramientas. Esta parte es de interés si

protege su software para redes utilizando llaves HASP4 Net.

Page 24: Spanish Manual Hasp v11

Acerca de la Guía del Programador HASP4

xxii

La quinta parte, “Uso del Sistema de Actualización Remota (RUS)”

(página 269), le ofrece información 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

mayoría de los capítulos. Para su comodidad, un amplio glosario ofrece

explicaciones concisas acerca de la terminología HASP.

En los apéndices encontrará información sobre especificaciones técnicas,

passwords de las llaves Demos HASP y Soluciones a posibles Problemas.

Page 25: Spanish Manual Hasp v11

1

Parte 1

Inicio a HASP

Este capítulo describe el sistema de protección HASP. Ofrece una

perspectiva genérica del hardware y el software HASP y le guía a través de la

instalación del software HASP.

El capítulo “Introducción” (página 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 capítulo “Conceptos Básicos” (página 13) explica los conceptos básicos del

sistema HASP y describe el contenido de los Kits HASP.

El capítulo “Instalación de HASP” (página 25) ofrece una visión del software

HASP, los principales pasos en la protección de software y los procesos

básicos de instalación para diversos sistemas operativos.

Page 26: Spanish Manual Hasp v11
Page 27: Spanish Manual Hasp v11

3

Parte 1 – Capítulo 1

Introducción

Bienvenidos a HASP de Aladdin – el sistema profesional de protección de software. Este

capítulo describe el sistema de protección HASP, sus prestaciones de seguridad y sus

ventajas. Presenta a la familia de llaves de protección HASP y describe el contenido de

los Kits de Evaluación 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 sesión de trabajo, la aplicación 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 aplicación se

ejecuta. Si la respuesta es incorrecta, la aplicación puede dejar de funcionar,

cambiar a modo “demo”, o limitar determinadas prestaciones.

La integración de HASP es fácil, obteniéndose un nivel de seguridad

extremadamente alto. Cuando su aplicación está protegida, sólo se puede

activar cuando la llave HASP suministrada originalmente con su software

está conectada al PC.

Page 28: Spanish Manual Hasp v11

Introducción Parte 1 - Capítulo 1

4

Ventajas del Sistema HASP

Sustancial Flexibilidad para el Programador

El sistema HASP ofrece la más amplia gama de productos, soluciones y

prestaciones en la industria de la protección del software incluyendo

soluciones de memoria, redes y en tiempo real para múltiples plataformas

hardware.

Máxima Facilidad de Uso

Una corta curva de aprendizaje y unas API(Application programming

interfaces) estándar para todos los productos aseguran una rápida y sencilla

incorporación del software de HASP a su aplicación.

Soporte para amplio rango de entornos de programación

El sistema HASP dispone de interfaces para la mayoría de compiladores y

lenguajes de programación que le permiten entregar su aplicación protegida

con HASP en los sistemas operativos más 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.

Solución Multi-plataforma

HASP (versión USB) ofrece una solución independiente de la plataforma de

trabajo. Una llave HASP puede utilizarse para proteger aplicaciones

Windows, Mac y Linux, ahorrándole tiempo de desarrollo en la integración de

la protección, además de logística y costes de envíos

Page 29: Spanish Manual Hasp v11

Inicio a HASP Introducción

5

Características de Seguridad HASP

Chip ASIC completamente personalizado

Las llaves HASP (excepto los modelos USB) se basan en un chip propietario

y personalizado ASIC (Application Specific Integrated Circuit).

Los 2800-transistores, 1.2-micras HASP ASIC, de diseño propio de los

ingenieros de Aladdin, previenen de la ingeniería inversa y hace el hardware

de HASP virtualmente imposible de reproducir.

Los modelos USB son los únicos que incorporan un microcontrolador

avanzado que suministra inherentemente un alto nivel de seguridad.

Avanzadas prestaciones de codificación en el hardware

Las avanzadas facilidades de codificación y decodificación incorporadas en el

hardware HASP permiten una unión más estrecha entre el hardware y el

software que se está protegiendo. Funciones inteligentes en la misma llave

permiten que determinadas funciones críticas del software sean

dependientes de la presencia de la llave correcta, de otra forma no

funcionarían correctamente.

Cualquier información utilizada por el software puede ser codificada en

cualquier punto del software. La información codificada es una función de los

datos enviados a la llave y un único y específico “código de programador” de

cada cliente. Esto significa que esta característica ofrece una protección muy

superior a los simples chequeos periódicos de la presencia de la llave.

Avanzados Algoritmos de Protección y Tecnología Anti-Debugging.

El software de HASP utiliza algoritmos de arquitectura propietaria de

protección de códigos, además de la tecnología anti-debugging más avanzada

de la industria. Las especiales características anti-pirateo incorporadas en

el software HASP generan obstáculos prácticamente infranqueables para

piratas potenciales.

Page 30: Spanish Manual Hasp v11

Introducción Parte 1 - Capítulo 1

6

Comunicación Encriptada.

Todas las comunicaciones entre la aplicación y la llave HASP es encriptada

aleatoriamente para proteger el lazo de unión vital entre ellas. Esto previene

la emulación del hardware de la llave.

Beneficios para su Cliente

La protección HASP beneficia tanto a usted como a su cliente. Las siguientes

son algunas de las razones de por qué la protección del software es buena

para sus clientes:

Calidad-precio del Software.

Dado que la protección con HASP aumenta sus ventas y sus beneficios, usted

puede invertir más dinero en la mejora de su desarrollo y soporte de su

producto. A cambio, sus clientes “de pago” pueden disfrutarán de

aplicaciones a menor precio, productos más avanzados, desarrollos más

rápidos de nuevas versiones y una mayor calidad en el soporte técnico.

Protección del Contrato de Licencia.

La protección de software ayuda a mantener la integridad de su contrato de

licencia de su software. HASP es el medio menos traumático y molesto de

asumir el cumplimiento del contrato. Asegura que los clientes no tienen que

convertirse en la policía de sus propios empleados o arriesgarse a incumplir

el contrato de la licencia.

Protege la inversión de los usuarios legítimos.

HASP protege a los usuarios finales legítimos de las prácticas injustas de

usuarios finales deshonestos que utilizan software que no han pagado y se

aprovechan de los recursos de su valioso soporte técnico.

Servicio y Soporte Mundial

Múltiples Posibilidades de Producción.

Posibilidades de Producción en tres continentes aseguran un suministro

rápido y puntual cuando se hace necesaria una capacidad de respuesta.

Page 31: Spanish Manual Hasp v11

Inicio a HASP Introducción

7

Servicio y Soporte local en más de 40 países.

Con 8 oficinas internacionales y más de 40 distribuidores locales, dispone

del soporte HASP virtualmente dónde y cuándo se necesite.

Aladdin Consulting

Para instrucciones detalladas sobre la implantación de HASP, contacte con

nuestro equipo internacional de consultores. Ellos pueden asesorarle sobre:

• Integración de la producción y distribución HASP en su empresa.

• Análisis de la mejor estrategia de protección para su aplicación.

• Ayuda en el diseño de algoritmos y mejor integración de la protección

HASP en su software.

Page 32: Spanish Manual Hasp v11

Introducción Parte 1 - Capítulo 1

8

Llaves de Protección HASP

Las llaves HASP están disponibles para diferentes puertos en diferentes

modelos.

Tabla 1.1 Modelos HASP

Modelo

HASP

Capacidad de

Memoria

Opciones Full

Authorization

System

Prestaciones Tipos de

Llave

HASP4 Std. No No disponible Codificación/

Decodificación

Paralelo,

USB

HASP4 M1 112 bytes 16 aplicaciones Codificación/

Decodificación

HASP ID

Paralelo

USB

HASP4 M4 496 bytes 112 aplicaciones Codificación/

Decodificación

HASP ID

Paralelo,

USB

PC-Card

HASP4 Time 496 + 16 bytes 8 aplicaciones fecha

expiración

Codificación/

Decodificación

HASP ID,

reloj tiempo real

Paralelo,

USB

HASP4 Net5 496 bytes 112 aplicaciones en

5 estaciones

Codificación/

Decodificación

HASP ID, acceso red

Paralelo,

USB

HASP4 Net10 496 bytes 112 aplicaciones en

10 estaciones

Codificación/

Decodificación

HASP ID, acceso red

Paralelo,

USB

HASP4 Net20 496 bytes 112 aplicaciones en

20 estaciones

Codificación/

Decodificación

HASP ID, acceso red

Paralelo,

USB

Page 33: Spanish Manual Hasp v11

Inicio a HASP Introducción

9

Modelo

HASP

Capacidad de

Memoria

Opciones Full

Authorization

System

Prestaciones Tipos de

Llave

HASP4 Net50 496 bytes 112 aplicaciones en

50 estaciones

Codificación/

decodificación

HASP ID, acceso red

Paralelo,

USB

HASP4

Net100

496 bytes 112 aplicaciones en

100 estaciones

Codificación/

decodificación

HASP ID, acceso red

Paralelo,

USB

HASP4 NetU 496 bytes 112 aplicaciones en

ilimitado número de

estaciones

Codificación/

decodificación

HASP ID, acceso red

Paralelo,

USB

Tipos de Llaves HASP4 para diferentes puertos Las llaves HASP4 están disponibles en versiones de puerto paralelo, USB y PC-Card con idéntica funcionalidad.

• Llaves HASP4 paralelo que se conectan sobre el puerto paralelo y

únicamente pueden proteger aplicaciones que se activen en PCs. • Llaves HASP4 USB son llaves multi-plataforma que se conectan sobre

puertos USB y pueden utilizarse para proteger aplicaciones que se activen en plataformas PC y Mac.

• HASP4 PC-Cards son avanzadas tarjetas de protección de software que se insertan en slots PC-Card (PCMCIA) que se encuentran en la mayoría de notebook PCs.

Modelos HASP4

HASP4 Standard

La solución de protección con mejor relación precio-efectividad que ofrece

Aladdin. HASP4 usa el mismo componente ASIC y características en su

arquitectura que los productos más avanzados, HASP4 Std. ofrece una

solución a bajo coste extremadamente segura y fiable.

Page 34: Spanish Manual Hasp v11

Introducción Parte 1 - Capítulo 1

10

HASP4 Std. Está disponible para puerto paralelo y puerto USB.

HASP4 M1 y HASP4 M4 – las llaves de protección de software más

versátiles 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

número ID para cada llave. La memoria HASP4 y sus posibilidades de

actualización 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 cómo PC-Card.

HASP4 Time – Protección 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 (día, mes y año). Diseñado

específicamente para permitir alquiler o leasing de software, HASP4 Time

también 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 número ID único para cada

llave. Mediante el uso de la memoria HASP4 Time puede controlar la

distribución y acceso de hasta 8 módulos de software diferentes y diferentes

paquetes de software, alquiler o leasing de software y distribución de demos

que caduquen después de una fecha específica.

HASP4 Time está disponible para el puerto paralelo y el puerto USB.

HASP4 Net

Lo último en protección de software para entornos de red diferentes. Conecte

una sola llave HASP4 Net en cualquier estación de la red para proteger su

aplicación y limitar el número de estaciones ejecutándola simultáneamente.

HASP4 Net incorpora todas las prestaciones de HASP4 M4.

Page 35: Spanish Manual Hasp v11

Inicio a HASP Introducción

11

Kit de Evaluación HASP

El kit de evaluación HASP contiene todo lo necesario para conocer y probar el

sistema de protección HASP, e incluye lo siguiente:

Software.

El software HASP contenido en un único CD-ROM.

Hardware.

Su kit de evaluación 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 evaluación.

ë

La llave demo HASP que reciba debe usarse sólo para su evaluación. Cuando solicite llaves HASP, Aladdin le asigna un código de programador único que diferencia sus llaves de otras.

Documentación. Su kit de evaluación HASP incluye una copia de la Guía del programador

HASP4.

Kit de Inicio HASP

El kit de inicio HASP es similar al kit de evaluación HASP, excepto que

contiene 5 llaves HASP que son exclusivamente para su compañía (2 llaves

en el caso de HASP4 Net). Sus llaves HASP incluyen passwords HASP que

sólo usted conoce, así se asegura que sus llaves HASP están diferenciadas

del resto de llaves HASP.

Mientras que la llave demo HASP que usted recibe en un kit de evaluación

HASP debe utilizarse sólo para su prueba, las llaves HASP que recibe en el

kit de inicio pueden utilizarse para proteger la aplicación para su

distribución a sus clientes.

Con el kit de inicio HASP, ya puede empezar. Simplemente proteja sus

aplicaciones y solicite el número de llaves que necesite.

Page 36: Spanish Manual Hasp v11
Page 37: Spanish Manual Hasp v11

13

Parte 1 – Capítulo 2

Conceptos Básicos

Para incorporar efectivamente la protección HASP, recomendamos que se

familiarice con los conceptos y términos descritos en este capítulo.

Si está protegida con HASP4 Net, también debe leer “Conceptos Básicos de

HASP4 Net” (página 209) para familiarizarse con los términos y conceptos

específicos de HASP4 Net.

Page 38: Spanish Manual Hasp v11

Conceptos Básicos Parte 1 - Capítulo 2

14

¿Cómo trabaja HASP? Durante la ejecución, la aplicación protegida solicita la llave HASP

conectada al PC. Si la respuesta devuelta por HASP es la adecuada y se

identifica el algoritmo HASP correcto, la aplicación se ejecuta. Si la

respuesta es incorrecta, la aplicación no se podrá cargar, puede cambiar a

modo demo, o limitar determinadas prestaciones.

Figura 2.1 Mecanismo de Protección HASP

Page 39: Spanish Manual Hasp v11

Inicio a HASP Conceptos Básicos

15

Identificación de la Llave HASP

La protección se basa en hacer el acceso a la aplicación protegida

dependiente de la presencia de la llave HASP adecuada.

Las llaves HASP contienen información específica para su empresa, lo que

asegura la exclusividad de las llaves HASP que usted distribuye.

La presencia de la llave HASP adecuada puede comprobarse por uno de los

siguientes métodos:

• Use el motor de encriptación basado en hardware

• Use el número ID específico de cada llave

• Utilice la funcionalidad de la memoria

Uso del motor de encriptación

Cuando integra la protección HASP, usted comprueba la presencia de la

llave HASP. El sistema HASP realiza esta comprobación codificando y

decodificando datos a través de la misma HASP.

Verificar la presencia de HASP mediante la encriptación y desencriptación

de datos requiere cierta planificación. Para empezar, debe de disponer de

algunos datos que previamente haya codificado. Entonces debe enviar esos

datos a HASP utilizando el servicio DecodeData. Allí se decodifican y

entonces puede comprobar que la decodificación es correcta. Si es así,

entonces la llave HASP está presente.

Los datos decodificados pueden verficarse utilizándolos en su aplicación

protegida. Consulte “Codifique datos Internos y Externos” (página 135) para

más información sobre el uso de datos decodificados.

Puede codificar datos usando HASP Edit o el API de HASP. Para más

información consulte “Acceso a llaves con HASP Edit” (página 73) o

“Protección con el API de HASP” (página 115).

Page 40: Spanish Manual Hasp v11

Conceptos Básicos Parte 1 - Capítulo 2

16

Figura 2.2 Decodificación de Datos para verificar la llave HASP

Información Específica para el Programador

Cuando usted hace un pedido a Aladdin, recibe llaves que contienen

información exclusiva para su compañía. Esta información se usa para

diferenciar sus llaves de las llaves de otros programadores.

Page 41: Spanish Manual Hasp v11

Inicio a HASP Conceptos Básicos

17

Código del Programador.

El Código de programador es un código único que Aladdin asigna a cada

fabricante de software. El código de programador se quema en el componente

ASIC de HASP para prevenir su duplicación, lo que asegura una protección

total.

Cuando haga pedidos adicionales recibirá llaves HASP con el mismo código

de programador. El código de programador está referenciado con un grupo de

cinco a siete letras impresas en la etiqueta de cada HASP.

Passwords HASP

Las passwords HASP son dos enteros asignados a cada fabricante de

software. Las passwords se basan en su código de programador único.

êê Asegúrese de mantener sus passwords en un lugar seguro, pues

se utilizan para acceder a la HASP, proteger su aplicación y

usar las utilidades HASP.

Comprobación del número ID de HASP

Cada llave de memoria HASP tiene un número ID único. La aplicación

protegida puede verificar este número ID.

Las llaves HASP con Número ID le permiten distinguir entre los usuarios de

su aplicación. Comprobando el número ID de HASP en su aplicación, usted

puede decidir cómo responder si una HASP específica está o no presente.

Puede obtener el número ID de HASP mediante la utilidad HASP Edit. Para

más información consulte “Acceso a las llaves con HASP Edit” (página 73).

ë

No es posible solicitar llaves HASP con números ID específicos.

Éstos se asignan aleatoriamente durante el proceso de

fabricación, así se garantiza que no se repetirán.

Page 42: Spanish Manual Hasp v11

Conceptos Básicos Parte 1 - Capítulo 2

18

Uso de las opciones de Memoria HASP

Todas las llaves HASP excepto HASP4 Std. contienen memoria interna de

lectura/escritura. Puede utilizar la memoria HASP para lo siguiente:

• Control de accesos a diferentes módulos de un software o diferentes

paquetes de software.

• Asignar un código único a cada usuario del software.

• Alquiler o leasing de software y distribución de demos con un contador

de ejecuciones.

• Grabar passwords, código del programa, variables de programa o

cualquier otro tipo de datos.

Para más información acerca de la memoria de lectura/escritura disponible

en las distintas llaves HASP consulte la tabla 1.1 (página 8).

Puede editar la memoria mediante HASP Edit. Para más información

consulte “Acceso a las llaves con HASP Edit” (página 73).

Page 43: Spanish Manual Hasp v11

Inicio a HASP Conceptos Básicos

19

Métodos de Protección HASP

• Envelope HASP

• Application programming interface (API)HASP

Envelope HASP

El método de protección básico es la protección HASP Envelope. Este método

añade un escudo protector alrededor de los archivos ejecutables. La Envelope

encripta su archivo, incorpora testeos de HASP y prestaciones anti-

debugging. Después de proteger con la Envelope, la aplicación protegida no

puede funcionar sin la llave HASP correcta.

El uso de la Envelope no requiere acceder al código fuente de la aplicación, es

un método rápido y sencillo de protección. Al mismo tiempo, incorpora un

nivel muy alto de protección, haciendo virtualmente imposible desensamblar

o debuggear sus aplicaciones.

Para información acerca del uso de la Envelope HASP consulte “Protección

con la Envelope HASP” (página 43)

Application Programming Interface (API) de HASP

Si dispone del código fuente de la aplicación que desea proteger, puede linkar

el API de HASP a su aplicación. Dado que el API de HASP está protegido y

encriptado, este método también ofrece un alto grado de seguridad.

Utilice el API para insertar llamadas a HASP desde su aplicación. Con el

API, puede comprobar la presencia de la llave HASP desde cualquier punto

del programa, y decidir cómo responder si no está conectada la llave HASP

correcta. Además, puede acceder al contenido de la memoria HASP para leer,

escribir y almacenar información delicada.

Debe tener la posibilidad de acceder al código fuente para utilizar el API.

Page 44: Spanish Manual Hasp v11

Conceptos Básicos Parte 1 - Capítulo 2

20

¿Qué Método usar?

Puede utilizar cualquiera de los dos métodos independientemente, o

combinar ambos.

Use la Envelope, cuando pretenda un proceso rápido y sencillo de protección,

o cuando no pueda acceder al código fuente.

Use el API cuando tenga acceso al código fuente y desee personalizar su

protección para añadir llamadas adicionales a la llave.

Tanto la Envelope como el API son métodos de protección muy efectivos y

potentes. Protegiendo su aplicación con cualquiera de ellos, se asegura un

nivel de protección muy alto. Sin embargo, recomendamos utilizar ambos si

es posible. Cada método trabaja de manera diferente y el uno complementa y

mejora al otro.

Incorpore el API de HASP en el código fuente de su aplicación, compile, linke

los archivos objeto o DLLs en su aplicación, y a continuación use la protección

HASP Envelope en su archivo ejecutable.

Full Authorization System (FAS) Full Authorization System es una potente herramienta que incorpora HASP

y que le permite proteger múltiples aplicaciones con una sola llave HASP de

memoria, y especificar bajo que condiciones se puede usar cada aplicación.

Opciones FAS

Con FAS, puede limitar el uso de su aplicación por medio de:

• Fijar un número de activaciones (HASP4 M1, HASP4 M4 y HASP4 Net).

Esta característica es de gran utilidad para suministrar versiones demo

de sus aplicaciones.

• Fijar una fecha de expiración (HASP4 Time).

Page 45: Spanish Manual Hasp v11

Inicio a HASP Conceptos Básicos

21

Esta característica es de gran utilidad para el leasing y alquiler de su

software.

• Fijar el número de estaciones que pueden activar el programa

simultáneamente (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 protección HASP4 Net, tanto si protege

con la Envelope como con el API de HASP.

¿Cómo trabaja FAS?

Una aplicación protegida con HASP que incorpora FAS, realiza varias

comprobaciones.

• La aplicación protegida en primer lugar confirma la presencia de la llave

HASP correcta conectada al PC.

• Si la llave HASP correcta está presente, se comprueba la memoria de

HASP y verifica que la aplicación está en la lista de aplicaciones

autorizadas.

Si la aplicación está autorizada se llevan a cabo diferentes chequeos según el

modelo de llave HASP que se está utilizando:

• Con HASP4 M1 y HASP4 M4, la memoria HASP es chequeada para

comprobar que el número de ejecuciones autorizadas no ha sido agotado.

Con cada ejecución, el número de ejecuciones disminuye de uno en uno.

Cuando llega a 0, la aplicación se interrumpe con un mensaje de error.

• Con HASP4 Time, se comprueba la fecha de caducidad y se compara con

el reloj de tiempo real de la llave. Si la fecha de caducidad ya ha pasado,

se interrumpe la aplicación con un mensaje de error.

• Si está utilizando HASP4 Net, consulte “¿Cómo trabaja HASP4 Net?”

(página 210) para entender cómo FAS se integra automáticamente en el

sistema HASP4 Net.

Page 46: Spanish Manual Hasp v11

Conceptos Básicos Parte 1 - Capítulo 2

22

Preguntas Frecuentes (FAQ)

Pregunta ¿Puedo cambiar las passwords de mi llave HASP?

Respuesta No. Para asegurar el más alto nivel de protección y evitar sistemas reversos sobre el diseño del hardware de la llave, las passwords de HASP se han quemado sobre el componente ASIC de la llave HASP durante su fabricación. Nadie puede acceder a HASP, por tanto, para leer y cambiar estas passwords.

Pregunta ¿Puedo adjudicar a cada cliente una HASP con un código o password único?

Respuesta Sí. Para este propósito, recomendamos utilizar llaves HASP con memoria, que contiene un Número ID único para cada llave. Además, usted puede programar la memoria de las llaves HASP individualmente para cada uno de sus clientes.

Pregunta ¿Es posible que otro programador posea llaves con las mismas passwords que las mías?

Respuesta No. Se suministra cada conjunto de passwords a un solo programador.

Pregunta ¿Qué ocurre cuando se agota la batería de una llave HASP4 Time?

Respuesta La batería de HASP4 Time tiene una vida de 3-5 años, que en términos de licencias de software es un plazo muy largo de tiempo. Cuando la batería se agota, HASP4 Time queda como una llave como una HASP4 M4. Y, la aplicación protegida con la Envelope deja de funcionar. La vida de la batería se alarga si la llave está conectada al PC.

Page 47: Spanish Manual Hasp v11

Inicio a HASP Conceptos Básicos

23

Pregunta ¿Pueden utilizarse llaves HASP monopuesto en entornos de red?

Respuesta Sí. Hay dos opciones para utilizar HASP en entornos de red. La primera es conectar una llave HASP a cada estación en que la aplicación protegida deba funcionar. La segunda y más eficiente de las opciones es proteger la aplicación con HASP4 Net, un sofisticado sistema de protección diseñado especialmente para trabajar en entornos de red.

HASP4 Net permite ejecutar una aplicación protegida en varias estaciones usando una sola llave. Para saber más acerca de HASP4 Net, “Conceptos Básicos de HASP4 Net” (página 209).

Pregunta ¿Pueden conectarse varias llaves HASP una detrás de otra?

Respuesta Sí. Es posible encadenar múltiples llaves HASP sin ningún equipamiento especial.

Las llaves USB HASP son dispositivos terminadores, no es posible encadenarlas.

Pregunta ¿Y respecto a llaves de otros fabricantes?

Respuesta Las llaves HASP son totalmente transparentes. Puede conectarla antes o entre otras llaves, en caso de que sean también transparentes.

Pregunta ¿Pueden protegerse con HASP archivos de datos o aplicaciones escritas con herramientas de software como Lotus y AutoLISP?

Respuesta Sí. Existe un sistema especial para la protección de archivos de datos llamado DataHASP. DataHASP protege archivos Encriptando su contenido y autorizando el acceso sólo a los programas que se indique. DataHASP puede utilizarse con aplicaciones DOS y Win32 con todas las llaves HASP.

Para mayor información, vea “Protección con la Envelope HASP” (página 43).

Page 48: Spanish Manual Hasp v11

Conceptos Básicos Parte 1 - Capítulo 2

24

Pregunta ¿Por qué debo utilizar una llave HASP con memoria?

Respuesta Hay tres buenas razones para elegir llaves HASP con memoria para proteger su aplicación:

• Para distribuir versiones demo de su aplicación, o alquilar su software

• Para proteger múltiples aplicaciones con una sola llave HASP

* Puede usar la memoria de HASP para almacenar datos y utilizarlos más adelante, aumentando la seguridad de su aplicación protegida.

Pregunta ¿Cómo puedo actualizar la memoria HASP después de entregar la aplicación protegida a mi cliente?

Respuesta El Sistema de Actualización Remota de HASP (Remote Update System (RUS)) permite actualizar en modo remoto la memoria de la llave HASP cuando ésta se encuentra en posesión de su cliente. Se actualiza la memoria de HASP enviando unas passwords, sea por teléfono, fax, o e-mail. Este sistema permite añadir módulos de software o actualizar un contador de ejecuciones.

Para más información, contacte con su proveedor local de HASP.

Page 49: Spanish Manual Hasp v11

25

Parte 1 – Capítulo 3

Instalación de HASP

Este capítulo ofrece una visión del software HASP, las principales etapas de

la protección de software y los procesos básicos de instalación 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 distribución

• Aladdin Diagnostic para asistir al usuario final

• APIs HASP y Envelope HASP para integrar la protección en la

aplicación

• 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

Page 50: Spanish Manual Hasp v11

Instalación de HASP Parte 1 - Capítulo 3

26

Device Drivers y Daemons

Los Device Drivers y daemons HASP sirven como enlace entre la llave HASP

y la aplicación protegida. Tanto usted como su cliente necesitan instalar el

driver apropiado para ejecutar la aplicación protegida.

Los Device Drivers y daemons HASP están disponibles para los siguientes

sistemas operativos: Windows 95/98/ME, Windows NT/2000/XP, Mac OS 8.6,

Mac OS 9.x, Mac OS X, Linux.

También puede integrar la instalación del driver en el proceso de instalación

de su aplicación protegida.

Acceso a las llaves HASP con HASP Edit

HASP Edit es una utilidad para acceder a las llaves HASP y editar la

memoria de las llaves de memoria HASP.

Asistencia al usuario final con Aladdin Diagnostic

La utilidad Aladdin Diagnostic permite a sus clientes recoger información de

su sistema y sus llaves HASP.

Protección de Aplicaciones

Envelope HASP

Envelope HASP es una herramienta que le permite proteger su aplicación

envolviéndola en un escudo protector.

Puede usar la Envelope de HASP como herramienta de línea de comando o

desde su interfaz gráfica de usuario. Para mayor información consulte

“Protección con la Envelope HASP” (página 43).

API de HASP

El API (Application Programming Interface) de HASP le permite proteger su

aplicación insertando llamadas a las llaves HASP desde su código fuente.

Page 51: Spanish Manual Hasp v11

Inicio a HASP Instalación de HASP

27

El directorio raíz del CD HASP está subdividido según los sistemas

operativos, entorno de desarrollo y compilador. El directorio de cada

compilador incluye lo siguiente:

• Librerías que deben linkarse a su aplicación

• Una aplicación de ejemplo que muestra el uso del API con todas las

llaves HASP

Para mayor información consulte “Protección con el API de HASP (página

115).

Demo de HASP

Utilidades que le permiten testear los servicios HASP. Para más

información consulte “Utilidades de Test HASP” (página 128).

Suministro de licencias en una red

Para información de HASP4 Net consulte “Conceptos Básicos de HASP4

Net” (página 209).

Administrador de licencias HASP

Una utilidad que comunica la aplicación protegida con la llave HASP4 Net.

Monitor Aladdin

Herramienta para el seguimiento del uso de aplicaciones protegidas y el

administrador de licencias HASP en una red.

Page 52: Spanish Manual Hasp v11

Instalación de HASP Parte 1 - Capítulo 3

28

Protección de Software – Referencia Rápida

A continuación se indican las principales etapas normalmente implicadas en

la protección de su aplicación utilizando cualquier HASP.

Etapa 1: Instalación del HASP Device Driver o Daemon

Permite acceder a la llave HASP. Los últimos drivers pueden descargarse

desde www.ealaddin.com/support/hasp/vendor.asp .

Para información acerca de la instalación de los drivers consulte las

siguientes secciones.

Etapa 2: Uso de la utilidad HASP Edit

Le permite personalizar su protección.

Para más información acerca de HASP Edit consulte “Acceso a las llaves

HASP con HASP Edit” (página 73).

Etapa 3: Uso del API de HASP

Le permite incorporar llamadas a HASP desde la aplicación.

Para más información sobre el uso del API de HASP consulte “Protección con

el API de HASP” (página 115).

Etapa 4: Uso de la utilidad Envelope de HASP

Permite encriptar el archivo de aplicación para aumentar su seguridad.

Para información acerca de la encriptación de archivos de aplicación

“Protección con la Envelope de HASP” (página 43).

Etapa 5: Uso de la utilidad HASP Edit

Permite personalizar sus llaves para distribución con su software protegido.

Para información acerca de HASP Edit consulte “Acceso a llaves HASP con HASP Edit” (página 73) .

Page 53: Spanish Manual Hasp v11

Inicio a HASP Instalación de HASP

29

Instalación de HASP bajo Windows

Instalación del Software HASP

Inserte el CD HASP en su unidad de CD-ROM. Se iniciará automáticamente

el proceso de instalación. Si no es así, ejecute setup.exe del directorio Setup.

Ahora siga las instrucciones de la pantalla.

Instalación del HASP Device Driver

El HASP Device Driver se instala automáticamente cuando usa el setup

general del software HASP. Ofrecemos también diferentes aplicaciones para

instalar el HASP Device Driver:

Tabla 3.1 Herramientas de Instalación del Device Driver (Windows)

Aplicación Sistema Operativo

Hinstall.exe Win32, versión de línea de comando

HDD32.EXE Win32, versión Interfaz Gráfico al usuario

HDD16.EXE Win16, versión Interfaz Gráfico al usuario

Puede encontrar estas aplicaciones en el directorio Drivers de su CD HASP.

Reconocen automáticamente el sistema operativo en uso e instalan los

archivos del driver adecuado en las ubicaciones requeridas.

Para información 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 dinámicamente bajo Windows 95/98/ME si

no ha sido previamente instalado en el PC.

Page 54: Spanish Manual Hasp v11

Instalación de HASP Parte 1 - Capítulo 3

30

Tras la instalación del HASP Device Driver, las aplicaciones protegidas con

HASP con versiones del API de HASP anterior a la versión 6.1 requieren

reiniciar el sistema. El HASP device driver se carga dinámicamente tan

pronto como se accede a HASP después de haber reiniciado el sistema.

Si instala una versión actualizada del HASP device driver después de

ejecutar una aplicación protegida con HASP, debe reiniciar su sistema para

que la nueva versión del driver se cargue dinámicamente.

Personalizar la instalación del HASP device driver

Puede instalar el HASP device driver a cliente de dos maneras:

• Ejecute hinstall.exe o HDD16.EXE/HDD32.EXE. Puede crear un archivo

batch de línea de comando para realizar la instalación y distribuir este

archivo con su aplicación.

• Instale el HASP device driver desde su aplicación creando su propia

aplicación de instalación.

Puede personalizar la instalación a través de una DLL o librería.

En el directorio Drivers\drvapi encontrará interfaces para diversos

compiladores, incluyendo una interface para Install Shield. Cada directorio

de interface de compilador contiene un ejemplo de instalación personalizado.

Para más información acerca de la utilidad hinstall y la instalación API del

HASP device driver, vea el archivo de ayuda hdd.hlp.

La utilidad Hinstall

hinstall.exe es una aplicación 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 línea de comando

Aparece una ventana informando que el HASP device driver se instaló

correctamente.

Page 55: Spanish Manual Hasp v11

Inicio a HASP Instalación de HASP

31

Para desinstalar el HASP Device Driver:

• Teclee hinstall –r desde la línea 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 instalación

detallados anteriormente.

Page 56: Spanish Manual Hasp v11

Instalación de HASP Parte 1 - Capítulo 3

32

Instalación de HASP bajo Mac

El software HASP para Mac incluye el daemon y el driver, el API de HASP,

la utilidad HASP Edit y el administrador de licencias HASP. El software se

encuentra en el archivo sit en el directorio Mac del CD HASP.

Instalación del Daemon HASP para Mac OS X

El daemon HASP aksusbd permite al sistema Mac OS X y a la aplicación

protegida acceder a la llave HASP.

Tanto usted como su cliente necesitan instalar y cargar el daemon aksusbd

para trabajar con la llave HASP bajo Mac OS X. El script dinst le permite

hacerlo.

Para instalar el daemon proceda de la siguiente forma:

1. Acceda como raíz o como usuario con acceso de nivel administrador.

2. Abra una sesión de terminal bajo OS X. Para ello seleccione

Applications del menú Go, abra la carpeta utilities y selecciones

Terminal.

3. Cambie al directorio daemon.

4. Inicie el script tecleando ./dinst. Si no ha accedido como raíz, inicie el

script tecleando sudo ./dinst.

El daemon se iniciará automáticamente en cada arranque del sistema.

Después de que el daemon HASP se haya instalado y cargado correctamente,

su sistema reconocerá las llaves HASP conectadas al puerto USB.

Puede configurar el daemon con los siguientes parámetros de línea de

comando:

Page 57: Spanish Manual Hasp v11

Inicio a HASP Instalación de HASP

33

Tabla 3.2 Parámetros de línea de comando para aksusbd (Mac)

Parámetro Significado

-v Muestra número de versión como decimal, formato xx.xx.

-u <umask> Especifica los bits de permiso para el archivo de socket

especial. Predeterminado es 666 (puede acceder cualquiera)

-l <valor> Selecciona tipo de mensajes de diagnóstico. Los valores

posibles son:

0 – sólo errores

1 – normal (predeterminado)

2 – verbose

3 – ultra verbose

-h Muestra ayuda de línea 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. Añada los parámetros deseados a la línea aksusbd que inicia el daemon.

Instalación del Driver HASP para Mac OS 8.6 y 9.X

El driver HASP permite a los sistemas Mac OS 8.6 y Mac OS 9.x y a la

aplicación protegida acceder a la llave HASP.

Tanto su cliente como usted necesitan instalar el driver para trabajar con la

llave HASP bajo Mac OS 8.6 y 9.x.

Para instalar el driver proceda de la siguiente forma:

1. Copie los archivos MacHasp4Shim y MacHaspUsbDD en la carpeta

Extensions en System Folder.

ë Si los archivos ya existen debe moverlos fuera de la carpeta

previamente, pues no pueden sobrescribirse.

2. Reinicie el sistema.

Page 58: Spanish Manual Hasp v11

Instalación de HASP Parte 1 - Capítulo 3

34

Su sistema ahora reconocerá las llaves HASP conectadas al puerto USB.

Instalación de HASP Edit para Mac

Para instalar HASP Edit para Mac:

1. Abra el archivo sit en el CD HASP.

2. Copie la aplicación HASP Edit a su PC.

Para más información consulte “Acceso a las llaves HASP con HASP Edit”

(página 73).

Instalación de Soporte HASP4 Net y Utilidades

Para información sobre HASP4 Net consulte “Conceptos Básicos de HASP4

Net” (página 209) y subsiguientes capítulos.

Page 59: Spanish Manual Hasp v11

Inicio a HASP Instalación de HASP

35

Instalación de HASP bajo Linux

El software HASP para Linux incluye lo siguiente:

• Drivers modo kernel para varias versiones de kernel y daemon

• Utilidades para preguntar la versión del driver y mostrar puertos

paralelo

• Aplicación Demo HASP y el código fuente

• Librería HASP

Está en el archivo hasplinux101.tgz del directorio Linux del CD de HASP.

Para información detallada sobre los componentes consulte los archivos

readme.

Apertura del Archivo

Para abrir el archivo proceda de la siguiente forma:

1. Cree una subcarpeta nueva

2. Descomprima el archivo mediante la siguiente línea de comando:

Tar –xzf [path/]hasplinux101.tgz

Instalación Daemon y Driver Modo Kernel

Para acceder a la llave HASP, el driver modo kernel aksparlnx.o y el daemon

aksusbd deben ser cargados.

ë Todas las acciones descritas deben ejecutarse como raíz.

Instalación del driver modo kernel (aksparlnz.o)

La instalación del driver incluye los siguientes pasos:

• Genere el nodo dispositivo

• Inicialice el sistema parport

• Carga del driver

Page 60: Spanish Manual Hasp v11

Instalación de HASP Parte 1 - Capítulo 3

36

Generación del nodo dispositivo

Para habilitar el acceso al driver, genere un nodo dispositivo /dev/Hardlock.

Debería usar el mismo número major utilizado al cargar el driver (major=xxx

línea de comando para insmod, o predeterminado 42)

1. Genere el nodo dispositivo con el siguiente comando:

Mknod /dev/Hardlock c 42 o

2. Permitir el acceso al nodo a todos:

Chmod 666 /dev/Hardlock

De forma alternativa, si el acceso a las llaves Aladdin debe restringirse a

un grupo especial de usuarios (por ejemplo grupo Aladdin):

Chgrp aladdin /dev/Hardlock

Chmod 660 /dev/Hardlock

Inicialización del sistema parport

El driver aksparlnx usa el driver parpor Linux para acceder al puerto

paralelo sin interferir otros usuarios del puerto paralelo (ej. Impresoras,

drives zip).

Inicialice el sistema parport antes de cargar el driver aksparlnx:

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 línea de comando:

Insmod <path_to_dirver>/aksparlnx.o

Se genera un mensaje de status en el log del sistema informando si la

instalación ha sido realizada correctamente o no.

Page 61: Spanish Manual Hasp v11

Inicio a HASP Instalación de HASP

37

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 Parámetros de línea de comando para aksparlnx.o (Linux)

Parámetro Significado

-major=<número> El driver usa el dispositivo mayor número 42 por defecto. Puede cambiar ese valor mediante un argumento al comando insmod. También puede cambiar el archivo driver especial mediante el comando mknod /dev/Hardlock c<número> 0

-loglevel=<valor> Seleccione el tipo de mensajes de diagnóstico. Los posibles valores son: 0 – sólo 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 pondrán los mensajes, normalmente es en el archivo /var/log/messages.

Page 62: Spanish Manual Hasp v11

Instalación de HASP Parte 1 - Capítulo 3

38

Parámetro Significado

-timeout=

<valor>

Especifica el tiempo máximo 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.

-

hlportadress

=<address>

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 parámetro sólo si es un usuario

ê experimentado. Dar una dirección ilegal de puerto

puede causar la caída del sistema.

Instalación 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 más nuevas se monta automáticamente (ej.

SuSe 7.0).

Para montar usbdevfx manualmente utilice el siguiente comando:

Mount –t usbdevfx none /proc/bus/usb

Permitiendo acceso a llaves paralelo

Para permitir acceso a las llaves de puerto paralelo, el driver kernel

aksparlnx debe estar instalado antes de iniciar aksusbd.

Cargando el daemon

Cargue el daemon iniciándolo:

<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 instalación

se ha realizado correctamente o no.

Page 63: Spanish Manual Hasp v11

Inicio a HASP Instalación de HASP

39

Reporta su versión, la versión del API utilizado para USB y la versión del

API del driver kernel (sólo 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 aún 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 debería ser iniciado al arrancar el sistema a la

vez con algún script ubicado en /etc/rd.d/init o /etc/init.d (dependiendo de la

distribución Linux).

Opciones para aksusbd

Tabla 3.4 Parámetros de línea de comando para aksusbd (Linux)

Parámetro Significado

-v Muestra el número de versión como decimal, formato xx.xx.

-l <valor> Selecciones el tipo de mensajes de diagnóstico. Los posibles valores son:

0 – sólo 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

Page 64: Spanish Manual Hasp v11
Page 65: Spanish Manual Hasp v11

41

Parte 2

Uso de las herramientas HASP

Esta parte describe las utilidades HASP Envelope HASP, HASP Edit y

Diagnósticos Aladdin.

El capítulo “Protección con la Envelope HASP” (página 43) explica el uso de

la Envelope HASP que ofrece una cómoda forma de proteger su aplicación y

codificar archivos de datos.

El capítulo “Acceso a las llaves con HASP Edit” (página 73) explica el uso de

HASP Edit para Win32 y para Mac que le permite acceder a sus llaves

HASP.

El capítulo “Ayuda al Usuario Final” (página 107) describe cómo puede

asistir a sus clientes con Diagnósticos Aladdin que permite que sus clientes

puedan recoger información acerca de su sistema y su llave HASP.

Page 66: Spanish Manual Hasp v11
Page 67: Spanish Manual Hasp v11

43

Parte 2 – Capítulo 5

Protección con la

Envelope HASP El uso de la HASP Envelope es la forma más rápida de proteger su software

del uso no autorizado. La instalación de la Envelope HASP es sencilla, y hace

innecesario alterar el código fuente de su aplicación.

La Envelope HASP está disponible como herramienta de línea de comando

(DOS, Win16, Win32) y cómo interfaz gráfica de usuario (Win32).

El entorno de la HASP Envelope ofrece una forma cómoda de realizar

cualquiera de las siguientes operaciones:

• Proteger aplicaciones

• Proteger archivos de datos de Windows de 32 bits

• Grabar los parámetros FAS en la memoria de HASP

ê Recuerde que si ha pensado proteger su aplicación con el sistema

Envelope y con la protección desde el API, debe realizar en primer

lugar la protección con el API y a continuación la Envelope.

Page 68: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

44

Acerca del Envolvente de HASP La utilidad HASP Envelope añade un escudo protector sobre archivos

ejecutables de DOS, Windows y Windows de 32 bits, además de DLLs.

La protección Envelope integra encriptación de archivos y avanzadas

prestaciones anti-debugging que incrementan sobremanera el nivel de

seguridad.

Figura 5.1 Protección con Envelope HASP

Tres aspectos a recordar antes de utilizar la protección Envelope:

• Guarde una copia de seguridad de su archivo sin proteger.

Por defecto, durante la protección. El archivo original es destruido y se crea

uno nuevo. La protección es irreversible.

• Asegúrese de disponer de suficiente espacio en el disco.

Después de la protección con la Envolvente, su aplicación necesitará espacio

adicional en el disco. El total de espacio dependerá del tipo de aplicación que

se está protegiendo:

• Las Envelopes de DOS y Win32 quedan residentes en memoria mientras

la aplicación está ejecutándose.

La Envelope de DOS utiliza 28KB de memoria.

Page 69: Spanish Manual Hasp v11

Uso de las Herramientas HASP Protección con la Envelope HASP

45

Inicio a Envelope HASP

Puede proteger una aplicación DOS, Win16 o Win32 utilizando un entorno

gráfico (graphical user interface (GUI)) como se describe aquí, o desde la

línea de comando como se describe en la página 65.

1. Instale el HASP Device Driver. Vea “Instalación de HASP bajo

Windows” en la página 29.

2. Conecte al PC la(s) llave(s) HASP con la(s) que desea proteger su

aplicación.

3. Active la utilidad Envolvente bien seleccionando HASP Envelope de la

carpeta del CD HASP, o ejecutando haspenv.exe.

Aparece la ventana de la Envolvente HASP:

Hay tres opciones disponibles:

• Pulse Start HASP Wizard para acceder al Wizard, que le guía a través

del proceso de protección paso a paso.

• Pulse New Envelope Configuration para iniciar una sesión de

protección utilizando nuevos parámetros de protección.

• Pulse Open Envelope Configuration para iniciar una sesión de

protección utilizando parámetros de protección grabados.

Page 70: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

46

Protección de una aplicación Este capítulo describe el proceso de protección usando las opciones New o

Open de la Envelope.

1. En la pestaña principal de la Envolvente, introduzca el nombre y el path

de la aplicación que desea proteger en el campo Unprotected File.

2. Teclee las passwords de HASP en los campos adecuados.

3. Si está integrando FAS, rellene los parámetros según el modelo HASP

que está usando:

• Con HASP4 M1, introduzca el número de programa y el número de

activaciones autorizadas en la pestaña Options.

• Con HASP4 Time, introduzca el número de programa y la fecha de

caducidad en la pestaña Options.

• Con HASP4 Net, introduzca el número de programa en la pestaña

principal. Puede introducir tanto el número de ejecuciones, el número de

licencias o ambos.

4. Rellene los campos restantes de las pestañas Main, Options y Error

Messages según sus necesidades de protección. Vea las siguientes

secciones para encontrar una descripción detallada de las pestañas y sus

campos.

5. Pulse el icono Protect o seleccione la opción Protect Application del

menú Envelope Tools.

Aparece una ventana informándole que la aplicación se ha protegido

correctamente.

6. Pulse ok.

Si ha asignado parámetros de protección FAS, ahora se le pregunta si

desea grabarlos. Vea el capítulo “Full Authorization System”(FAS) en la

página 20 para mayor información.

La aplicación protegida ya no podrá funcionar sin la HASP adecuada.

Repita los pasos 5 a 9 tantas veces como sea necesario- para diferentes

aplicaciones o para la misma.

Page 71: Spanish Manual Hasp v11

Uso de las Herramientas HASP Protección con la Envelope HASP

47

Protección de archivos de Datos Win32 Con DataHASP, puede proteger archivos de datos, como aplicaciones

desarrolladas con generadores de aplicaciones. DataHASP encripta sus

datos y sólo permite a las aplicaciones autorizadas a desencriptarlos.

ê 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 gráfico

(GUI) como se describe aquí, o desde la línea de comandos como se describe

en la página 65.

ë De forma alternativa, puede crear su propia aplicación y llamar a

los servicios API 60, 61, 88 o 89 para codificar o decodificar

cualquier archivo de datos abierto por su aplicación de la forma que

prefiera.

Al proteger archivos de datos Win32, también debe proteger la aplicación

que los carga y desencripta. Esta sección incluye las instrucciones de proteger

los archivos de datos y la aplicación que accede a ellos.

ê La aplicación que autoriza desencriptar los archivos de datos no

debe soportar la copia o exportación de archivos. Si lo hace, el

usuario final podrá copiar o exportar los archivos encriptados a

otros no-encriptados.

Preparación de la Protección

1. Ponga una copia de la aplicación que accede a los archivos de datos (por

ejemplo Notepad.exe) en un directorio temporal.

2. Cree un archivo de texto en el mismo directorio (por ejemplo test.txt).

3. Conecte la llave HASP con la que desea proteger sus archivos de datos

en el PC, y asegúrese de que el HASP Device Driver está instalado

correctamente

Page 72: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

48

4. Active la utilidad Envolvente seleccionando. HASP Envelope desde la

Carpeta del CD HASP. Aparecerá la ventana del Envelope de HASP.

5. Pulse New Envelope Configuration.

Definición de los Parámetros de Protección

1. En la pestaña principal (Main) de la Envolvente, introduzca el path y el

nombre de la aplicación a proteger (en este ejemplo C:\Notepad.exe) en

el campo Unprotected File.

2. Teclee las passwords HASP en los campos adecuados.

3. En los campos restantes, rellene las opciones y mensajes de error según

sus necesidades de protección. Vea la siguiente sección para una

descripción detallada de las pestañas y sus campos.

4. En la pestaña DataHASP, introduzca los nombres de los archivos de

datos que desee codificar y que desea que se decodifiquen en la ejecución

(en este ejemplo, test.txt).

Page 73: Spanish Manual Hasp v11

Uso de las Herramientas HASP Protección con la Envelope HASP

49

Figura 5.2 Pestaña DataHASP

5. En el campo Encryption Key, introduzca ocho caracteres cualquiera

como clave de codificación.

6. En el campo Data Files to Encript, pulse Add y seleccione C:\test.txt.

7. En Data Files to Decrypt at Run Time, teclee test.txt en el campo

Decrypt. O bien, utilice comodines como, *.*, o *.txt.

Page 74: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

50

Realización de la Protección

1. Pulse el icono Protect o elija Protect Application del menú Envelope

Tools.

Aparecerá una ventana, informando que la aplicación fue protegida

correctamente.

2. Pulse OK y a continuación el botón Encrypt Selected Files al pie de la

ventana.

Aparecerá un mensaje indicando que los archivos seleccionados fueron

encriptados adecuadamente. Con esta protección se asegura que el

documento solo puede ser abierto mediante la aplicación protegida, y no

con otra copia del ejecutable.

Si introdujo parámetros de protección FAS, ahora se le preguntará si desea

grabarlos. Vea “Grabación de los Parámetros FAS” (página 51) para más

detalles.

La aplicación protegida ahora no puede funcionar sin la llave HASP correcta

y sólo esta aplicación puede acceder a los archivos de datos protegidos.

Page 75: Spanish Manual Hasp v11

Uso de las Herramientas HASP Protección con la Envelope HASP

51

Grabación de Parámetros FAS

Después de agregar la protección Envolvente Win32 de ejecutables o archivos

de datos, también puede utilizar la Envolvente para grabar los parámetros

de protección FAS en la memoria de su llave HASP inmediatamente después

del proceso de protección.

f

De manera alternativa, puede utilizar HASP Edit para grabar los

parámetros FAS en sus llaves HASP.

Los parámetros de protección FAS que puede grabar en la memoria HASP

son:

• HASP4 M1 y M4 - el número de aplicación y de ejecuciones permitidas.

• HASP4 Time – el número de aplicación y la fecha de caducidad de la

aplicación.

• HASP4 Net – el número de aplicación, 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 parámetros de protección en la memoria HASP4 Net es obligatorio.

Es opcional usar HASP Edit o la Envelope para definir y grabar los

parámetros FAS en la memoria HASP. Sin embargo, debe usar la

Envolvente para fijar el número de programa. Asignando el número de

programa con la Envolvente, establece un nexo ente la llave HASP y los

parámetros de protección del programa, que se graban en la memoria HASP.

Este nexo permite a la aplicación, cuando es cargada, encontrar sus

parámetros de protección correctos en la memoria HASP.

Puede grabar los parámetros FAS en la memoria HASP inmediatamente

después del proceso de protección HASP Envelope, o independientemente de

ese proceso.

Page 76: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

52

Grabación de los parámetros FAS tras el proceso de protección:

Directamente después de integrar la protección, aparece una caja de dialogo

ofreciendo la opción 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. Pulse Save Parameters

3. Para grabar los mismos parámetros de protección en llaves HASP

adicionales retire la HASP conectada y conecte una nueva. Pulse Save

Parameters.

4. Para dejar de grabar llaves HASP, pulse Close.

Grabación de los parámetros FAS independientemente del proceso de protección:

1. Defina los parámetros FAS que desea grabar en su llave HASP

2. 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. Pulse Save Parameters.

5. Para grabar los mismos parámetros de protección 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.

Page 77: Spanish Manual Hasp v11

Uso de las Herramientas HASP Protección con la Envelope HASP

53

Parámetros de la Envelope HASP

Esta sección describe la utilidad Envelope Win32, pestañas, campos, menús

e iconos.

Pestaña Principal

Debe especificar los parámetros en la pestaña principal (Main) con objeto de

proteger su aplicación. Si sólo está usando una llave HASP monopuesto,

rellene todos los campos excepto los de la sección de parámetros HASP4 Net.

Si sólo está usando una llave HASP4 Net, rellene todos los campos excepto

los de la sección Passwords HASP. Si está utilizando una llave HASP

monopuesto y una llave HASP4 Net, rellene todos los campos implicados.

Figura 5.3 Pestaña Principal de HASP Envelope

Page 78: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

54

Tabla 5.1 Opciones de la Pestaña Principal de la Envelope HASP

Opción Descripción

Unprotected File

(source)

Introduzca el path y el nombre de la aplicación a proteger. Cada archivo debe tener una extensión .exe o .dll. Pulse Browse para buscar en sus discos para un archivo específico.

Protected File

(destination)

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 versión protegida de su aplicación. 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.

Passwords HASP Introduzca las passwords de todas las unidades HASP monopuesto con las que desea proteger su aplicación. Puede introducir las passwords de hasta 3 códigos de programador HASP para proteger una aplicación hasta con 3 llaves HASP.

HASP Demo Key Pulse esta opción para introducir las passwords de la demo HASP automáticamente.

Use HASP4

Security Features

Marque esta casilla para usar las prestaciones de seguridad mejoradas de HASP4. Si necesita mantener la compatibilidad con la generación de llaves HASP-3, no debe marcar esta casilla

Executable Type La HASP Envelope trata de detectar el tipo de ejecutable automáticamente. Si no puede detectarlo, este campo contendrá el valor. Unknown Type

Overlay File Marque esta casilla si el archivo que va a proteger contiene overlays o datos anexos al ejecutable.

Target Computer Valor por defecto: IBM PC y compatibles

Especifica el tipo de sistema en el que se va a ejecutar la aplicación. Si se tratará de un sistema del estándar NEC japonés, cambie el valor a NEC.

NetHASP Passwords Cuando proteja con HASP4 Net, introduzca las passwords que recibió con su llave HASP4 Net.

NetHASP Demo Key Pulse esta opción para introducir las passwords de la llave HASP4 Net Demo automáticamente.

Page 79: Spanish Manual Hasp v11

Uso de las Herramientas HASP Protección con la Envelope HASP

55

Opción Descripción

Program Number Valor por defecto: 1

Con una sola llave HASP4 Net, puede proteger múltiples aplicaciones. Asigne a cada aplicación que proteja con HASP4 Net un número de programa entre el 1 y el 112. Anote este número. Lo necesitará más adelante para grabar los parámetros de protección cuando programe las llaves HASP4 Net de sus clientes.

Number of Licenses Cuando proteja con HASP4 Net, asigne el número de licencias en este campo. Este número se graba en la memoria HASP4 Net. Teclee un número en este campo o utilice las teclas de cursor para fijarlo. Pulse U para asignar un número de licencias ilimitado.

Los valores posibles dependen del modelo HASP4 Net. Puede asignar cada valor desde 0 hasta el número del modelo, por ejemplo 0 a 5 para la llave HASP4 Net 5.

Para grabar el número de licencias en la memoria HASP4 Net, pulse Save Parameters cuando se plantee tras completar la protección Envolvente.

Number of

Activations

Protegiendo con HASP4 Net, asigne un número de ejecuciones para la aplicación en este campo. Este número se grabará en la memoria HASP4 Net.

Teclee un número en este campo o fíjelo con las teclas de cursor. Marque la opción Unlimited para asignar un número de activaciones ilimitadas.

Para grabar el número de ejecuciones en la memoria HASP4 Net, pulse Save Parameters cuando se le solicite tras el proceso de protección Envolvente.

NetHASP

Configuration File

Valor por defecto: nethasp.ini

Puede especificar el nombre del archivo de configuración para el sistema HASP4 Net. Para buscar un archivo, pulse Browse. Para más información sobre el archivo de configuración NetHASP, vea “Personalización del Administrador de Licencias HASP” (página 236).

Si la aplicación encuentra un archivo de configuración, lee el archivo y usa la información contenida en él. Si no lo encuentra, la aplicación usa valores predefinidos.

Page 80: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

56

La Pestaña Options

La pestaña Options contiene parámetros adicionales que puede usar:

Figura 5.4: Pestaña de opciones de la Envolvente HASP

Page 81: Spanish Manual Hasp v11

Uso de las Herramientas HASP Protección con la Envelope HASP

57

Tabla 5.2 Opciones de la pestaña Opciones de la Envelope HASP

Opción Descripción

Use Full Authorization System (FAS)

Valor por defecto: Disabled

Puede usar el Full Authorization System (FAS) con una HASP4 M1, HASP4 M4, o HASP4 Time. Para más información sobre FAS, vea “Grabación de los parámetros FAS” (página 51).

Para usar FAS, pulse la caja Use Full Authorization System.

Dado que FAS es una parte integrante del sistema de protección HASP4 Net, los parámetros FAS de HASP4 Net ya se introdujeron en la sección HASP4 Net Parameters de la pestaña principal.

Application Program Number

Valor por defecto: 1

Si está utilizando una llave monopuesto HASP para proteger múltiples aplicaciones con FAS, asigne un número a la aplicación. Tome nota de este número. Lo necesitará más tarde para grabar los parámetros de protección 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.

Number of Application Activations

Si está utilizando una llave HASP4 M1 o HASP4 M4 junto con FAS, introduzca el número de ejecuciones de la aplicación en este campo. El número se grabará en la memoria.

Teclee el número de ejecuciones en este campo o use las teclas de cursor para fijarlo. Seleccione la casilla Unlimited para permitir ejecuciones ilimitadas de la aplicación.

Para grabar el número de activaciones en la memoria HASP, pulse Save Parameters cuando se solicite tras el proceso de protección Envelope.

Application Expiration Date

Si está utilizando una llave HASP4 Time junto con FAS, introduzca la fecha tras la cual la aplicación dejará de funcionar. La fecha se grabará en la memoria HASP4 Time.

Pulse Date y seleccione el mes, día y año.

Para grabar la fecha de caducidad en la memoria HASP4 Time, pulse Save Parameters cuando se solicite tras la protección Envelope.

Page 82: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

58

Opción Descripción

Perform Background HASP Checks

Valor por defecto: Disabled

Por defecto, el sistema HASP comprueba la presencia de una llave cuando se carga la aplicación. Si desea que esta comprobación se repita durante la ejecución, añada los chequeos HASP.

Para habilitar esta prestación, marque la casilla Perform Backgroud HASP Checks.

Interval in Seconds

Cuando utilice la opción 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 Reverse Engineering

Valor por defecto: Enabled

Con esta prestación puede aumentar el nivel de protección evitando que los usuarios accedan a su programa con un debugger, añadiendo módulos antidebugger adicionales a su archivo de programa.

Para añadir detección de debuggers, marque la casilla User Mode Debugger Protection.

Para añadir módulos antidebugger, mueva el indicador marcado como Anti Debug Modules hacia la derecha.

Use HASP ID Number

Valor por defecto: Disabled

Use este campo para asegurar que la aplicación protegida funciona sólo si la llave HASP con el número ID específico está conectada al PC. Para incorporar esta opción, marque la caja Use HASP ID Number. Esta opción está disponible únicamente para llaves HASP de memoria.

Puede introducir el Número ID adecuado de la llave de una de estas formas:

• Pulse Let Envelope Detect HASP ID para leer el Número 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 Número ID que obtuvo con la utilidad HASP Edit. El Número ID es un entero de 32- bit sin signo que debe introducir en formato hexadecimal. Con este método, no es necesario conectar la HASP del Número ID específico durante la protección. Si protege con más de una llave HASP, use el Número ID de la llave cuyas passwords introdujo en el primer campo de passwords. Los Números ID de las otras llaves no se comprobarán.

Page 83: Spanish Manual Hasp v11

Uso de las Herramientas HASP Protección con la Envelope HASP

59

Opción Descripción

Encrypt Program File

Valor por defecto: Enabled

Esta prestación le permite añadir protección adicional encriptando el archivo de programa. Las aplicaciones que escriben en su ejecutable durante la ejecución no deben ser encriptadas.

Encryption Key (decimal)

El proceso de encriptación requiere varias claves de encriptación seleccionadas aleatoriamente por la utilidad Envolvente HASP. Para asegurar la máxima seguridad, puede definir una de ellas con un número de su elección entre 0 y 65535.

Encryption Level

Puede especificar la frecuencia de acceso a las llaves HASP para la encriptación. Mueva el selector Encryption Level hacia la derecha para incrementar la frecuencia.

Protection Methods

En la sección Protection Methods, usted indica qué método de protección quiere utilizar. Puede utilizar el método Envolvente, incorporar el sistema, Pattern Code Security, o ambos.

Cuando pulse el icono de Protección o elija la opción Protect Application del menú Envelope Tools se incorporan los métodos de protección indicados en este campo.

Install HASP Envelope

Valor por defecto: Enabled

Marque la caja Install HASP Envelope para integrar el método de protección Envolvente. La protección Envolvente tomará efecto cuando pulse el icono Protect o elija la opción Protect Application del menú Envelope Tools.

Install Pattern Code Security (PCS)

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 Protección o elija la opción Protect Application del menú Envelope Tools.

Page 84: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

60

La Pestaña DataHASP

Use la pestaña DataHASP para proteger archivos de datos. En esta pestaña:

• Especifica los archivos de datos que desea encriptar.

• Especifica que archivos de datos encriptados debe desencriptar durante

la ejecución de su aplicación protegida.

• Encripta los archivos de datos.

Además de encriptar los archivos de datos, necesita especificar qué

aplicación está autorizada para desencriptarlos y proteger esa aplicación.

Realice esto introduciendo los valores en los campos adecuados de la pestaña

principal y otras pestañas necesarias y protegiendo la aplicación.

ë

De manera alternativa puede construir su propia aplicación 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.

Page 85: Spanish Manual Hasp v11

Uso de las Herramientas HASP Protección con la Envelope HASP

61

Figura 5.5: Pestaña DataHASP de la Envelope HASP

Page 86: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

62

Tabla 5.3 Opciones de la Pestaña DataHASP de HASP Envelope

Opción Descripción

Data Files to Decrypt at Run Time

Introduzca el nombre del archivo o patrón de los archivos de datos que su aplicación debe decodificar en la ejecución. También introduzca los archivos de datos que su aplicación no deba decodificar (de entre los que ha seleccionado para codificar, si utilizó comodines como * ó ?).

Por ejemplo, consideremos una aplicación que accede a todos sus archivos de datos codificados con un formato *.adb. Supongamos que esa misma aplicación necesita acceder al archivo xyz.adb, que no es uno de sus archivos de datos codificados, pero que es un archivo suministrado por su entorno de aplicación. En este caso, en la casilla Decrypt introduzca *.adb. En la casilla Do Not Decrypt, introduzca xyz.adb. De esta forma su aplicación decodifica todos los archivos con la extensión adb, excepto el archivo xyz.adb

Decrypt Teclee los archivos a desencriptar en la ejecución (representándolos de modo estándar, o usando comodines, por ejemplo *.*, o aa??.txt).

Do Not Decrypt Teclee los archivos (de entre los archivos especificados para su desencriptación) que no deban desencriptarse en la ejecución (represéntelos de modo estándar o mediante comodines, por ejemplo *.*, o aa??.txt).

Protection Parameters

Introduciendo los parámetros de protección, usted define la clave de encriptación usada para encriptar los archivos de datos.

Encryption Key Introduzca hasta 8 caracteres en el campo Encryption Key. Formarán parte del algoritmo de encriptación.

HASP Passwords for Encryption

Las passwords de su llave HASP, que introdujo en la pestaña principal (Main) de la Envolvente, aparecen automáticamente en el campo HASP Passwords for Encryption. Sólo las llaves HASP con esas passwords abrirán los archivos de datos protegidos.

Page 87: Spanish Manual Hasp v11

Uso de las Herramientas HASP Protección con la Envelope HASP

63

Opción Descripción

Antes de codificar archivos de datos, asegúrese de que ha introducido los parámetros de protección en la pestaña DataHASP.

Data Files to Encrypt

êê Nunca codifique el mismo archivo dos veces. Si lo hace, el software no podrá restaurarlo.

Input Data Files to Encrypt

Introduzca los archivos (con sus Paths) a encriptar o pulse Add para seleccionar los archivos de los directorios.

Output Encrypted Data Files

DataHASP copia los nombres de los archivos enumerados en el campo Input Data Files to Encrypt y los coloca en un nuevo directorio. El nuevo Path por defecto de los archivos se muestra aquí.

ë Después de facilitar los archivos de datos encriptados, con la aplicación protegida al usuario final, puede enviar nuevos archivos de datos encriptados. Simplemente encripte los archivos de datos, asegurándose que su denominación 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 pestaña DataHASP y reproteger su aplicación, recordando incluir todos los archivos de datos (los nuevos y los viejos) en los campos Data Files to Decrypt at Run Time.

Page 88: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

64

La Pestaña Error Messages

Esta pestaña enumera los mensajes de error que aparecerán en caso de que

ocurra algún problema durante la ejecución. Puede editar estos mensajes.

Por ejemplo, puede escribir los mensajes en otros idiomas si lo desea.

Figura 5.6: Pestaña Error Messages de la Envolvente HASP

Page 89: Spanish Manual Hasp v11

Uso de las Herramientas HASP Protección con la Envelope HASP

65

Parámetros de línea de Comando de la Envolvente.

La protección con la Envolvente usando los parámetros desde la línea de

comandos puede ahorrarle tiempo y trabajo. El uso de la Envolvente desde la

línea de comandos también permite trabajar con archivos batch sin pasar

por las pantallas de la utilidad Envolvente. Puede ejecutar las Envelopes

DOS, Win16 y Win32 desde la línea de comando utilizando switches.

Tabla 5.4 Motores HASP Envelope

Motor HASP Envelope Nombre del Ejecutable

Envolvente DOS Instdos.exe

Envolvente Win16 Instw16.exe

Envolvente Win32 Instw32.exe

La siguiente tabla enumera los múltiples parámetros de la Envolvente.

Puede usar estos parámetros con cualquier Envolvente, si no se indica lo

contrario:

Tabla 5.5: Parámetros de la Envelope HASP

Parámetro Función

-c Número de módulos debug (1-50). Sólo para Envolvente Win 16 y Win 32.

-cfgfile <nombre de archivo> Carga un archivo de configuración y usa los parámetros que se grabaron en él.

-createcfg <nombre de archivo>

Crea un archivo de configuración.

Sólo para la Envolvente Win32.

-dhfilter <nombre de archivo>

Especifica los archivos o tipos de archivos a desencriptar durante la ejecución (por ejemplo, *.* o aa??.txt). Puede especificar hasta 8 archivos o tipos de archivos.

Sólo para la Envolvente Win32.

Page 90: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

66

Parámetro Función

-dhfilterx <nombre de archivo>

Especifica los archivos o tipos de archivos a no desencriptar de entre los archivos marcados para su desencriptación en la ejecución (por ejemplo, *.* o aa??.txt). Puede especificar hasta 8 archivos o tipos de archivos. Sólo para la Envolvente Win32.

-dhkey <clave> Especifica una clave de encriptación para archivos de datos (hasta 8 caracteres). Sólo para la Envolvente Win32.

-drvwait <segundos> Incrementa el intervalo de tiempo para la búsqueda del driver. Los valores posibles son de 0 a 255. Sólo para Envelope Win32

-enc Predeterminado. Encripta el archivo durante el proceso de protección.

-enclevel Nivel de encriptación para la encriptación de datos (1-5). Sólo para las Envolventes Win 16 y Win 32.

-exsecnum <num> No encripta el número de sección. Sólo para la Envelope Win32.

-fas Usa el Full Authorization System.

-fasprgnum <número de programa>

Especifica el número de programa de Full Authorization System. Sólo para la Envolvente Win32.

-h3easy El programa funcionará si está presente alguna llave HASP.

-h3hard Predeterminado. El programa funcionará sólo si está presente la llave apropiada HASP.

-h3pass <password1> <password2>

Especifica las passwords HASP.

-hasp4 Utiliza las prestaciones de seguridad HASP4. Para las Envelopes Win16 y Win32

-help o -? Muestra una lista con todos los parámetros, con una breve descripción y sale.

Page 91: Spanish Manual Hasp v11

Uso de las Herramientas HASP Protección con la Envelope HASP

67

Parámetro Función

-highsecoff Deshabilita el nivel superior de seguridad. Predeterminado para protección con llaves HASP4 Net, y necesario para procesadores 286 e inferiores. Sólo para la utilidad Envolvente DOS.

-highsecon Activa el nivel superior de seguridad. Predeterminado para protección con llaves HASP monopuesto. Sólo para la Envolvente DOS.

-ibm Predeterminado. El sistema de destino es un PC IBM o compatible.

-interval Especifica un intervalo para background checks en segundos.

-loader <nombre de archivo>

Especifica un nombre para el cargador cuando se protege una aplicación con overlays. Sólo para la Envolvente DOS.

-loginx Use con aplicaciones que no hagan un logout HASP4 Net automático (ej., Visual Basic). Sólo para la Envolvente Win32.

-mhid <ID number> Especifica el Número ID de HASP de las llaves HASP4 M1, HASP4 M4 o HASP4 Time.

-mhpass <pass1><pass2>

Especifica las passwords de una HASP4 M1, HASP4 M4 o HASP4 Time.

-nec Fija el sistema de destino como un NEC.

-netcfg <nombre de archivo>

Especifica el archivo de configuración HASP4 Net.

-nhpass <password1> <password2>

Especifica las passwords HASP4 Net.

-nodbgcheck Desactiva la detección de debuggers. Sólo para la Envolvente Win 32.

-noenc No encripta el archivo durante la protección.

-nofas Predeterminado. No usa el Full Authorization System.

Page 92: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

68

Parámetro Función

-nohasp4 Deshabilita las prestaciones de seguridad de HASP4

-norandomsize Deshabilita la opción Random File Size. Sólo para la Envelope DOS.

-nores Mejora la compatibilidad con programas residentes DOS. Este parámetro deshabilita los background checks de HASP. Sólo para la Envelope DOS.

-nospecial Predeterminado. De uso con aplicaciones que no contengan overlays. Idéntico a: Special Overlays Mode = NO. Sólo para la Envolvente DOS.

-novir Desactiva la protección de virus automática. Sólo para la Envolvente DOS.

-out <nombre del archivo>

Renombra el archivo de aplicación protegido.

-ovl Maneja overlays. Sólo para la Envolvente Win32.

-pcs Instala PCS en modo batch.

-prg <nombre del archivo>

Especifica el archivo de aplicación a proteger.

-prgnum <número de programa>

Especifica el número de programa. (Con las Envolventes Windows y DOS, para FAS o HASP4 Net; con la Envolvente Win32, sólo para HASP4 Net)

-randomsize Predeterminado. Activa la opción Random File Size. Sólo para la Envolvente DOS.

Page 93: Spanish Manual Hasp v11

Uso de las Herramientas HASP Protección con la Envelope HASP

69

Parámetro Función

-special Maneja overlays y DOS extendido. Idéntico a: Special Overlays Mode = YES Default Method. Sólo para la Envolvente DOS.

-special 1 Maneja overlays. Idéntico a: Special Overlays Mode = YES - Method 1. Sólo para la Envelope DOS.

-vir Predeterminado. Protección de virus automática. Sólo para Envolvente DOS.

Page 94: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

70

Información adicional para HASP4 Net

Protección de Software para Redes y PCs monopuesto

La Envolvente le permite proteger su aplicación tanto para entornos de red

como de PCs monopuesto.

Cuando activa una aplicación protegida para ambos entornos, su aplicación

realiza las siguientes comprobaciones:

• En primer lugar, la aplicación comprueba si hay una llave monopuesto

conectada al PC que activa la aplicación.

• Si la aplicación no encuentra una HASP conectada en el PC, busca en la

red una llave HASP4 Net.

Para realizar la protección para ambos entornos introduzca las passwords

para ambas llaves, HASP monopuesto y HASP4 Net en los campos de

passwords adecuados.

Idle Time HASP4 Net Para una aplicación protegida con la Envolvente, el tiempo predeterminado

tras el cual una estación es considerada desocupada, es el tiempo

predeterminado del Administrador de Licencias HASP4 Net.

Logout de HASP4 Net para aplicaciones Win 16

La Envelope añade automáticamente un Login a HASP4 Net al inicio del

programa, y un Logout HASP4 Net cuando finaliza la aplicación. Sin

embargo, si la aplicación es Win16 y el protocolo es sólo TCP/IP, el logout no

se realiza automáticamente. Para asegurar un logout automatizado,

asegúrese de que otro de los protocolos soportados está instalado.

Page 95: Spanish Manual Hasp v11

Uso de las Herramientas HASP Protección con la Envelope HASP

71

Preguntas Frecuentes

Pregunta ¿Cuánto tarda en cargarse en memoria una aplicación protegida con la Envolvente?

Respuesta Depende del tamaño de la aplicación y de la potencia del PC, el tiempo de carga se incrementa en algunos segundos

Pregunta ¿ interfiere las operaciones normales del PC el anti-debugger de HASP?

Respuesta No. El mecanismo anti-debugging de HASP es completamente transparente y no afecta a la ejecución de las aplicaciones.

Pregunta ¿ Comprueba la Envolvente HASP la presencia de la llave a lo largo de la sesión de trabajo con la aplicación protegida?

Respuesta Sí. Las Envolventes DOS y Win32 pueden incorporar series de chequeos background durante el funcionamiento de la aplicación. Para información adicional, vea “La pestaña Options” (página 56).

Pregunta ¿Puedo usar la Envolvente HASP para proteger con una HASP4 M1 o HASP4 M4 y una HASP4 Net?

Respuesta 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. Después de la protección la aplicación buscará en primer lugar la llave en el propio PC en el que la aplicación se está ejecutando. Si no encuentra la HASP4 M1 o HASP4 M4, la aplicación protegida buscará la llave HASP4 Net en la red.

Page 96: Spanish Manual Hasp v11

Protección con la Envelope HASP Parte 2 - Capítulo 5

72

Pregunta ¿Cuándo necesito especificar un número de programa usando la Envolvente HASP?

Respuesta Con HASP4 Net, ¡siempre! Con HASP4 M1 o HASP4 M4, sólo cuando incorpora el Full Authorization System.

Page 97: Spanish Manual Hasp v11

73

Parte 2 – Capítulo 6

Acceso a las llaves con HASP Edit

El HASP Edit es una aplicación que le permite acceder a sus llaves HASP.

HASP Edit está disponible para Mac OS 9.x y Mac OS 10.1 y para Windows

95/98/ME/NT/2000.

Las llaves programadas con una de las aplicaciones HASP Edit pueden

utilizarse en todas las plataformas soportadas. De manera alternativa,

puede usar el API de HASP para programar sus llaves HASP.

Utilice HASP Edit para realizar dos tipos de operaciones principales:

• Preparación para la protección de la aplicación codificando datos y

obteniendo el Número ID

• Programación de las llaves HASP y preparación de éstas para su

distribución a los clientes editando la memoria HSAP, fijando los

parámetros de protección y el reloj en la llave HASP4 Time.

Page 98: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

74

HASP Edit para Windows Este capítulo explica el uso del HASP Edit para Windows realizando las

principales operaciones. Para información detallada consulte la ayuda

online.

Activación de HASP Edit

Para cargar HASP Edit:

1. Conecte la llave HASP a su PC.

ê No conecte más de una llave, porque sólo puede escribir una llave cada vez.

HASP Edit no distingue entre diferentes llaves conectadas con un mismo código, y podría como consecuencia por error destruir los datos almacenados en una o más llaves.

2. Seleccione HaspEdit for Win32 del menú del directorio de programas

Windows HASP CD. Aparece la ventana de HaspEdit:

3. Inicie una nueva sesión de HaspEdit o abra un archivo de configuración

de HaspEdit (para trabajar con un archivo existente).

Page 99: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

75

El Archivo de Configuración de HaspEdit

Un archivo de configuración de HaspEdit almacena los parámetros HASP

fijados mediante HaspEdit. En el archivo de configuración, se graba

información del modelo de HASP que está utilizando, las passwords de las

llaves, su Número ID, la imagen de la memoria y parámetros de protección

FAS. Guardar la información de su sesión HaspEdit es de utilidad si desea

programar múltiples llaves con la misma información.

Cuando selecciona Save del menú File, se graban los parámetros HASP en

un archivo y no en la llave HASP. El nombre del archivo de configuración

aparece entonces en el título de la barra de utilidad de HaspEdit.

Antes de cerrar, HaspEdit pregunta si desea grabar o no los parámetros

actuales de la actual sesión HaspEdit en un archivo de configuración.

ê El archivo de configuración de HaspEdit contiene sus passwords secretas. Considere este archivo como si fuera su código fuente y manténgalo en un lugar seguro.

Cuando activa HaspEdit, puede iniciar una nueva sesión de HaspEdit, o

cargar una sesión previa abriendo un archivo de configuración.

Inicio de una nueva sesión HaspEdit:

Para iniciar una nueva sesión HaspEdit:

1. Seleccione New HaspEdit Session, y pulse OK. Aparece la caja de diálogo de las passwords HASP:

2. Introduzca las passwords HASP. Si está evaluando una llave demo de

HASP, seleccione A Hasp demo key para introducir las passwords de la

demo HASP automáticamente.

3. Pulse OK.

Si las passwords introducidas corresponden con la llave conectada, se

muestra la ventana de Configuración. Ahora puede utilizar HaspEdit.

Page 100: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

76

Apertura de un archivo de configuración HaspEdit existente:

Para abrir un archivo de configuración HaspEdit:

1. Seleccione Open HaspEdit Configuration y pulse OK. Aparece la caja de diálogo Open.

2. Seleccione o introduzca el nombre del archivo de configuración que desea abrir.

3. Pulse Open.

Si las passwords y el modelo de la llave grabado en el archivo de

configuración concuerdan con las de la llave conectada, la ventana de

Configuración se muestra en pantalla. Ahora puede utilizar HaspEdit.

Ventana de Configuración HaspEdit

La ventana de configuración aparece cuando inicia una nueva sesión de

HaspEdit o abre un archivo de configuración existente de HaspEdit. Cuando

cierra esta ventana, HaspEdit pregunta si desea finalizar la sesión.

Figura 14-3: La ventana de Configuración

La ventana de configuración muestra la siguiente información:

• 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 Número ID único de la llave HASP.

Page 101: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

77

Preparación para la Protección de la Aplicación Utilice HaspEdit para preparar la protección de la aplicación codificando datos para su uso en su aplicación y para obtener el Número ID

Codificación de Datos

Esta función le permite codificar datos usando una llave HASP4. Después de

codificar, puede usar los datos en su aplicación y decodificarlos durante la

ejecución utilizando la función 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.

Page 102: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

78

3. Introduzca o seleccione el nombre de un archivo binario de destino para

los datos codificados (opcional).

ë Los datos binarios de salida no pueden pegarse en un editor de texto, puesto que son caracteres no imprimibles.

4. 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 programación.

Esta opción generará un archivo include para su lenguaje de

programación, que puede usar para codificar datos fácilmente desde su

aplicación.

6. Pulse Encode para iniciar el proceso

ë En teoría, 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 prestación de codificación/decodificación de HaspEdit dependen de la cantidad de RAM y del espacio de disco duro en su PC.

Page 103: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

79

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 teoría, 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 prestación de HaspEdit de codificar/decodificar dependen de la cantidad de RAM y del espacio de disco duro en su PC.

Obtención del Número ID HASP

Cada llave de memoria HASP tiene un Número ID único. Puede incorporar la

comprobación de este número dentro de su aplicación utilizando la

Envolvente de HASP o el API. Para ello, primero utilice HaspEdit para

determinar el Número ID de la llave conectada.

Con HASP Edit, puede obtener el ID HASP de las llaves HASP4 con

memoria. Este ID de HASP es único para cada llave. Puede comprobar un ID

de HASP específico en su aplicación protegida con el servicio 6 (HaspID).

Page 104: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

80

Para comprobar el Número ID de una llave de memoria HASP:

1. Conecte la llave HASP a su PC.

2. Seleccione HASP ID del menú HASP Tools o pulse el icono ID. Aparece

la ventana HASP ID:

La ventana muestra el Número 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 Número ID mostrado

en formato hexadecimal. Puede más 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 compárelos con los valores que la rutina hasp() retorna en Par1 y

Par2 del Servicio 6: HASP ID. O bien, anote el Número ID y compárelo

con el valor que obtuvo utilizando la fórmula encontrada en el Servicio 6.

ë Para copiar el contenido de la ventana HASP ID de HASP, pulse Copy del menú Edit.

Page 105: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

81

Fijando Parámetros de Protección con FAS

El Full Authorization System (FAS) le permite alquilar su software,

distribuir versiones demo de su aplicación, y proteger múltiples aplicaciones

con una sola llave de memoria HASP.

Implementar FAS es opcional cuando se protege con HASP4 M1 o HASP4

M4, y se implementa con la Envolvente. Sin embargo, FAS es necesario con

HASP4 Net, y se implementa mediante la Envolvente de HASP y/o el API de

HASP.

FAS sólo puede utilizarse con llaves HASP4 con memoria.

Esta sección describe como programar las llaves HASP si está usando FAS.

Lista FAS de Programas

Con FAS, se crea una lista de aplicaciones a proteger, y fija los parámetros

de protección para cada una.

Utilice FAS para autorizar hasta:

• 16 aplicaciones usando una sola HASP4 M1

• 112 aplicaciones usando una sola HASP4 M4

• 8 aplicaciones usando una sola HASP4 Time

• 112 aplicaciones usando una sola HASP4 Net

Utilice HaspEdit para asignar a cada aplicación del listado FAS de

programas un único número de programa que le identifica y para fijar los

parámetros de protección.

Parámetros de Protección FAS

Con HaspEdit, se especifican los parámetros de protección para cada

programa del listado FAS de programas. Los parámetros que se especifican

dependen del modelo de HASP que se está utilizando.

Utilice FAS para:

• Limitar el número de activaciones para cada aplicación protegida con

una HASP4 M1 o HASP4 M4.

Page 106: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

82

• Fijar la fecha de caducidad a partir de la cual las aplicaciones

protegidas con una HASP4 Time no puedan funcionar.

• Limitar el número de estaciones que puede ejecutar un programa

protegido con HASP4 Net simultáneamente y el número de activaciones

para cada aplicación.

Utilice HaspEdit para fijar y/o editar los parámetros de protección para cada

programa. Una vez fijados los parámetros de protección para cada programa,

escriba la lista de programas y los parámetros de protección 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.

Fijando la Lista FAS de Programas para HASP4 M1 y M4

Use FAS para limitar el número de activaciones permitidas para cada

aplicación protegida con HASP4 M1 y HASP4 M4.

Para fijar la lista FAS de programas para HASP4 M1 o HASP4 M4:

1. Seleccione Full Authorization System (FAS) del menú HASP Tools y

pulse en MemoHASP, o pulse el icono FAS. Aparece La ventana del

Editor MemoHASP FAS:

Page 107: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

83

2. Pulse Add para añadir el/los programa(s) que desea proteger. Aparece la

ventana Add Program:

3. En el campo Program, introduzca un único número de programa al

programa que está protegiendo. El número puede ser de 1 a 16 para

HASP4 M1, o de 1 a 112 para HASP4 M4. El número de programa debe

ser idéntico al número que asigna a su programa cuando lo protege con la

Envolvente.

ë Tome nota del número asignado a cada programa. En la utilidad Envolvente, utilice este número para especificar el programa que está protegiendo.

4. En el campo Activations, introduzca el número máximo de activaciones

permitidas para la aplicación. Pulse Unlimited para permitir un

número ilimitado de activaciones.

5. En el campo Comments, añada información que identifique el

programa, sea el nombre de archivo o cualquier comentario significativo.

ë Los comentarios escritos en el editor HASP de MemoHASP se graban en el archivo de configuración HaspEdit y no en la memoria de la llave.

6. Pulse OK. El programa es añadido a la lista del MemoHASP FAS Editor.

7. Pulse Write. Aparece la ventana Write HASP Memory.

8. Guarde los cambios en la llave HASP. Ahora puede elegir:

Page 108: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

84

• Pulse Write para grabar todos los cambios en la memoria.

• Pulse Write Selected Programs Only para grabar sólo 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.

Fijando la Lista de Programas FAS para HASP4 Time

Utilice FAS para fijar una fecha de caducidad después de la cual la(s)

aplicación(es) protegida(s) de HASP4 Time dejará(n) de funcionar.

Para fijar la lista de programa FAS par HASP4 Time:

1. Seleccione Full Authorization System (FAS) del menú HASP Tools y

pulse TimeHASP o el icono FAS. Aparece la ventana del TimeHASP

FAS Editor:

Page 109: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

85

2. Pulse en Add para añadir el/los programa(s) a proteger. Aparece la ventana Add Program:

3. En el campo Program, introduzca un único número para el programa

que está protegiendo. El número puede ser de 1 a 8. El número del

programa debe ser idéntico al número que asigna a su programa cuando

lo protege con el Envolvente.

ë Tome nota del número asignado a cada programa. En la utilidad Envolvente, usted utiliza este número para especificar el programa que está protegiendo.

4. En los campos proporcionados en la sección Program Expiry Date,

introduzca el día, mes y año de la fecha de caducidad de la aplicación.

Pulse la casilla Unlimited Date si no quiere fijar una fecha de

caducidad.

5. En el campo Comments, añada información identificando el programa,

así como su nombre de archivo, y cualquier comentario.

ë Los comentarios escritos en el Editor FAS de TimeHASP se guardan en el archivo de configuración del HaspEdit, y no en la memoria de la llave HASP.

6. Pulse OK. El programa se añade a la lista del TimeHASP FAS Editor.

7. Pulse Write. Aparece la ventana Write HASP Memory.

Page 110: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

86

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 sólo 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.

Fijando la Lista de Programas FAS para HASP4 Net

Utilice FAS para fijar el número de estaciones que pueden ejecutar el

programa simultáneamente y fijar el número permitido de activaciones para

cada una de las aplicaciones protegidas con HASP4 Net.

ë 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.

1. Seleccione Full Authorization System (FAS) del menú HASP Tools y

pulse NetHASP o el icono FAS aparece NetHASP Program Editor:

Page 111: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

87

2. Pulse Add para añadir los programas a proteger. Aparece la ventana Add

Program.

3. En el campo Program, introduzca un único número de programa para el

programa que está protegiendo. El número puede ser desde 1 a 112. El

número de programa debe ser idéntico al número que usted asigna a su

programa cuando lo protege con la Envolvente HASP o el API de HASP.

ë Tome nota del número asignado a cada programa. Se utiliza este número para especificar el programa cuando está protegiéndolo con el Envolvente y/o el API.

4. En el campo Stations, introduzca el número máximo de estaciones

autorizadas para utilizar el programa simultáneamente.

5. El número máximo posible depende del número 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 número ilimitado de estaciones.

6. En el campo Activations, introduzca el número de activaciones

permitidas para la aplicación o compruebe la caja Unlimited para

permitir un número ilimitado de activaciones.

7. En el campo Comments, añada información 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 configuración HaspEdit y no en la memoria de la llave HASP.

Page 112: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

88

8. Pulse OK.

9. El programa es añadido 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 sólo 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.

Edición de la Memoria HASP Con HaspEdit lee y escribe en la memoria HASP y graba passwords, un

nombre de cliente, partes de su código de programa, o cualquier otro dato.

Navegación a través de las ventanas del HASP Memory Editor

Todas las ventanas del HASP Memory Editor se navegan de forma similar.

Utilice el ratón para moverse entre campos de la ventana y los botones para

realizar diferentes operaciones.

Puede ver en la caja Offset el número de posición del word de memoria

seleccionado. Introduzca el número de posición de un word en esta caja para

seleccionarlo y editarlo.

Pulse Hex (hexadecimal) o Decimal para seleccionar el formato en el que

introducir datos en el panel izquierdo. Introduzca datos en formato ASCII en

el panel derecho. Utilice el ratón para cambiar de panel.

Pulse PageUp y PageDown para moverse por las páginas de la memoria de

HASP4 M4, HASP4 Time y HASP4 Net.

Todos los cambios en la memoria se muestran inicialmente en rojo. Pulsando

Write se graban los cambios en la llave. Todos los datos grabados

aparecerán en azul.

Page 113: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

89

La caja Location Description indica la ubicación 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 número de programa

(ej. (P1) para el programa 1 o (P2) para el programa 2, etc.) asociado con el

word seleccionado. También 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 parámetros de protección están grabados en la lista de programas FAS, asegúrese de no sobrescribir el word con otros datos.

Edición de la memoria HASP4 M1 y HASP4 M4: Use HaspEdit para editar HASP4 M1 (56 words de memoria) y HASP4 M4

(248 words de memoria). Los primeros 24 words de memoria comprenden el

área User y pueden utilizarse para guardar cualquier tipo de datos. El resto

de words de memoria comprenden el área FAS.

ë La memoria no utilizada con FAS puede usarse para guardar cualquier dato adicional de su elección.

Para editar la memoria HASP4 M1 y HASP4 M4

1. Seleccione HASP Memory del menú HASP Tools y pulse en

MemoHASP, o en el icono Memory.

Page 114: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

90

El MemoHASP Memory Editor se abre y muestra el contenido de la

memoria de la llave.

2. Edite la memoria.

3. Pulse Write para grabar los cambios en la memoria.

Edición de la Memoria HASP4 Time

HASP4 Time está compuesta por dos áreas de memoria: el área estándar de

16-bytes de HASP4 Time y un área de usuario de 248 words.

Siga las instrucciones contiguas de “Edición de la Memoria HASP4 Time”

para editar la sección de 16 bytes. Siga las instrucciones siguientes de “Para

editar la memoria de usuario de HASP4 Time” para editar la sección de 248

words.

Los 248 words comprenden el área de usuario y puede ser utilizada para

almacenar cualquier dato…

ë La memoria no utilizada con FAS puede usarse para guardar cualquier dato adicional de su elección.

Para editar la memoria FAS de HASP4 Time:

1. Seleccione HASP Memory del menú HASP Tools y pulse en

TimeHASP, o en el icono Memory.

Page 115: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

91

El TimeHASP Memory Editor se abre y muestra el contenido de la

memoria HASP.

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.

Page 116: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

92

2. Edite la memoria.

3. Pulse Write para guardar los cambios en la memoria.

Edición de la Memoria HASP4 Net

Utilice HaspEdit para editar HASP4 Net (248 words de memoria). Los

primeros 24 words de la memoria HASP4 Net comprenden el área del

usuario y pueden ser utilizados para almacenar cualquier dato suyo. La

memoria restante comprende el área FAS.

ë La memoria no utilizada con FAS puede usarse para guardar cualquier dato adicional de su elección.

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. Edite la memoria.

3. Pulse Write para guardar los cambios en la memoria HASP4 Net.

Page 117: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

93

Sincronización del Reloj HASP4 Time Con HaspEdit puede sincronizar el reloj HASP4 Time. Con HaspEdit, puede

ver y cambiar la hora y fecha del reloj HASP4 Time.

Para sincronizar el reloj HASP4 Time:

1. Seleccione TimeHASP Clock del menú HASP Tools.

Aparece la caja de diálogo TimeHASP Time & Date Properties:

2. Introduzca el mes, día y año en la sección TimeHASP Date.

3. Pulse Write Date para grabar la fecha.

4. Introduzca la hora en hh (horas), mm (minutos) y ss (segundos) en la sección TimeHASP Timer. Para introducir la hora del reloj del sistema, pulse Load System Time y a continuación Write.

El reloj de HASP4 Time utiliza el formato de 24 horas (00:00:00 a 23:59:59)

5. Pulse Write Time para grabar la hora.

6. Pulse Close para salir de la caja de diálogo TimeHASP Time & Date Properties.

Page 118: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

94

Programación de Múltiples llaves HASP

Después de haber protegido su aplicación, puede programar sus llaves HASP

en preparación para enviar(junto con la aplicación) a sus clientes.

Cuando programe múltiples llaves, no las encadene. En su lugar, grabe una

por una la memoria de las llaves. HaspEdit le permite programar múltiples

llaves con los mismos parámetros fijados en el Editor de Memoria y el Editor

FAS utilizando cualquiera de los siguientes métodos:

• Program Key

• Create programming utility

Program key

Cuando utiliza la opción Program key, está programando cada llave HASP

con los datos de la sesión actual de la utilidad de HaspEdit.

Para grabar la memoria HaspEdit para múltiples 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 número 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.

Page 119: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

95

Creación de una Utilidad de Programación

Cuando crea una utilidad de programación, crea un ejecutable monopuesto

para programar cada llave HASP con los parámetros introducidos en la

sesión actual HaspEdit. Cuando cree el archivo, asegúrese de dejar abiertas

las ventanas del Editor FAS y/o la del Editor de Memoria (puede

minimizarlas si lo desea), porque el ejecutable de la utilidad de

programación HASP se crea con sus datos

Creación de una utilidad de Programación HASP:

1. Seleccione Create Programming Utility del menú HASP Tools.

Aparece la ventana HASP Programming Utility:

2. Seleccione el tipo de ejecutable en la sección 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 título que aparezca cuando se cargue el ejecutable.

5. Pulse Create.

Si aún no existe un ejecutable del mismo nombre, aparece un mensaje

confirmando la creación del ejecutable. Pulse OK para volver a la ventana

HASP Programming Utility.

Page 120: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

96

Si ya existe un ejecutable con el mismo nombre, aparece una ventana de

confirmación. 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.

Page 121: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

97

HASP Edit para Mac Este capítulo explica el uso de HASP Edit para Mac en la realización de las

principales operaciones sobre Mac OS X. Para información detallada

consulte la ayuda online.

Primeros Pasos

Para Iniciar HASP Edit para Mac:

1. Conecte una llave HASP a su PC

No conecte más de una llave HASP al PC mientras está usando HASP

Edit. La utilidad HASP Edit sólo 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 automáticamente

de forma predeterminada. Para evitarlo, vaya a Preferences del menú

HASP Edit y active / desactive la opción.

ë También puede iniciar HASP Edit sin conectar una llave HASP, por ejemplo, para editar plantillas.

Definición 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 raíz 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 automáticamente.

Page 122: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

98

• Escanear en busca de llaves conectadas periódicamente.

Para definir sus preferencias, selecciones Preferences del menú HASP Edit

y active / desactive las opciones.

Preparación para la protección de una aplicación

Use HASP Edit para Mac para preparar la protección de la aplicación

codificando datos para el uso en su aplicación y obtener el Número ID de

HASP.

Codificación de datos

Esta función le permite codificar datos utilizando una llave HASP4. Después

de la codificación, puede utilizar los datos codificados en su aplicación y

decodificarlos en tiempo de ejecución con la función apropiada del API de

HASP.

Para codificar datos:

1. Seleccione Encode/Decode en el árbol de navegación.

2. Confirme que ha conectado la llave HASP correcta.

3. Introduzca los datos o pulse Load para cargar un archivo.

4. Seleccione un formato para sus datos de salida.

5. Utilice el ratón o el teclado para seleccionar la sección de datos que desea

codificar (al menos 8 bytes). Pulse Encode para codificar los datos y

pulse Save As para guardar los datos codificados en un archivo.

ë Como opción puede editar el archivo y seleccionar secciones para codificar. Si el tamaño del archivo excede los 1024 bytes puede codificar el archivo pero no puede editarlo o seleccionar secciones.

Obtención del Número 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 específico desde su aplicación utilizando el servicio 6 (HaspID).

Page 123: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

99

Para obtener el ID de HASP, conecte la llave HASP a su PC e introduzca las

passwords. El número ID se muestra automáticamente en la vista Current

HASP.

Puede seleccionar entre tres presentaciones diferentes de 32-bits y 16-bits:

• Hexadecimal

• Decimal Unsigned

• Decimal signed

Programación de llaves HASP

Antes de distribuir las llaves HASP a sus clientes junto con la aplicación

protegida necesita programarlas. Puede rellenar la memoria de las llaves

HASP4 con datos de su elección y/o usar la memoria para el Full

Authorization System (FAS). Las claves programadas con HASP Edit para

Mac pueden usarse en todas las plataformas soportadas.

El proceso de programación implica dos pasos básicos:

Primero crea una llave master o plantilla que sirve como base para

programar un número de llaves. Puede necesitar crear varias llaves master o

plantillas en caso de que utilice más de un tipo de llave.

Después de crear la llave master o plantilla, puede empezar a programar

llaves para la distribución. Para programar varias llaves iguales

rápidamente, utilice la herramienta de programación multi llave.

ê No conecte más de una llave, solamente puede grabarse una llave cada vez.

Programación 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.

Page 124: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

100

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 según sus necesidades.

4. Pulse Write para programar la llave. También puede guardar la imagen

de la memoria en un archivo plantilla (vea a continuación).

Trabajo con plantillas

Los archivos de plantillas HASP Edit guardan los parámetros HASP e

información adicional:

• Tipo de llave HASP

• Passwords de la llave

• Imagen de la memoria y parámetros de protección FAS

• Parámetros HASP4 Time

ê Los archivos de plantillas HASP Edit contienen las passwords de HASP. Contémplelos como parte de su código fuente y guárdelos 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

Page 125: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

101

• Enlazar comentarios desde la plantilla a una llave para su mejor

comprensión

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. Seleccione Save as del Menú n

3. 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 múltiples llaves, usted graba la misma memoria a las

llaves una después 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 navegación

3. Seleccione Multi Key Programming del menú n

4. Desconecte la llave

5. Conecte una nueva llave y confirme

Page 126: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

102

6. Repita los pasos 4 a 5 para cada nueva llave.

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 múltiples aplicaciones

con una sola llave HASP de memoria y especificar las condiciones bajo las

que cada aplicación puede utilizarse. Con HASP Edit, puede especificar los

parámetros de protección para cada programa en la lista de programas FAS.

Los parámetros se especifica según el modelo de HASP que esté usando.

Dispone de las siguientes opciones:

• Limitar el número de activaciones para cada aplicación protegida con

HASP4 M1 (hasta 16 aplicaciones) o HASP4 M4 (112 aplicaciones).

• Fijar las fechas de caducidad tras las cuales las aplicaciones protegidas

no podrán funcionar.

• Limitar tanto el número de estaciones que pueden ejecutar una

aplicación protegida con HASP4 Net simultáneamente y el número de

veces que puede activarse cada aplicación.

Para ver los parámetros de protección FAS:

1. Conecte la llave o seleccione la plantilla

2. Seleccione As FAS List o Split del menú View.

Para establecer los parámetros de protección FAS:

1. Conecte la llave o seleccione la plantilla y pulse la casilla FAS

Page 127: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

103

2. Introduzca el número de posibles activaciones (HASP4 M1, HASP4 M4,

HASP4 Net), estaciones (HASP4 Net) y fecha de caducidad (HASP4

Time).

3. Para establecer el número 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 número de

programa especifico. Los dos primeros words están reservados para el

programa número 1, el segundo par de words para el programa número 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 sólo están grabados en el archivo plantilla, no en la memoria de la llave.

Page 128: Spanish Manual Hasp v11

Acceso a las llaves con HASP Edit Parte 2 - Capítulo 6

104

Preguntas Frecuentes

Pregunta He utilizado HASP4 Net para proteger una sola aplicación. Los primeros 24 words de la memoria HASP4 Net no son suficientes. ¿Qué puedo hacer?

Respuesta Los 224 words que quedan de la memoria HASP4 Net están reservados para los parámetros de protección de las 112 aplicaciones que usted puede proteger con una sola HASP4 Net. Como está protegiendo una sola aplicación, puede utilizar parte de esta memoria reservada para otros propósitos.

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 ¿ Es el HaspEdit la única utilidad con la que yo puedo programar mis llaves HASP?

Respuesta No. Dispone otras opciones para hacerlo. La primera es crear una utilidad de programación automática con parámetros de protección predefinidos que introdujo con la utilidad de HaspEdit. Para más información sobre la utilidad de programación, vea la página 94. La segunda opción es escribir su propio programa que incorpora el API de HASP y escribe datos en la memoria HASP. Para más información sobre el API de HASP, vea la página 115. Finalmente, una opción llamada “Program HASP”, que permite grabar parámetros FAS desde la utilidad Envolvente de Win32. Para más información sobre el uso de la Envolvente de HASP junto con FAS, vea “Grabación de los Parámetros FAS” (página 51).

Page 129: Spanish Manual Hasp v11

Uso de las Herramientas HASP Acceso a las llaves con HASP Edit

105

Pregunta ¿Puedo utilizar las llaves HASP programadas con HASP Edit para Mac o HASPEdit para Windows en la otra plataforma?

Respuesta Sí. Las llaves programadas con una de las aplicaciones HASP Edit pueden ser usadas en todas las plataformas soportadas. Otra opción es utilizar el API de HASP para programar sus llaves HASP.

Page 130: Spanish Manual Hasp v11
Page 131: Spanish Manual Hasp v11

107

Parte 2 – Capítulo 7

Ayudas para el usuario final

La utilidad Aladdin Diagnostic permite a sus clientes recoger información

acerca de su sistema y su llave HASP. Esta información le ayudará a usted y

a sus clientes a resolver problemas que puedan encontrar con el uso de las

aplicaciones protegidas.

Sus clientes pueden usar la utilidad Aladdin Diagnostic para:

• Testear una llave HASP

• Crear un archivo de informe que contenga datos acerca de los

dispositivos de Aladdin e información relacionada de su sistema

Aladdin Diagnostic está disponible para los siguientes entornos: Windows

95 / 98 / ME y Windows NT / 2000 / XP.

Cuando sus clientes ejecutan la utilidad Aladdin Diagnostic, indíqueles que

activen la opción Use HASP mode para testear una llave HASP. Además,

pueden crear un informe con la información relacionada del sistema.

Page 132: Spanish Manual Hasp v11

Ayudas para el usuario final Parte 2 - Capítulo 7

108

Figura 7.1 La ventana Aladdin Diagnostic

Creación de Informes

Sus clientes pueden crear un archivo de informe que contenga datos sobre los

dispositivos de Aladdin y otra información relevante del sistema.

Si sus clientes encuentran algún problema con el sistema HASP, le pueden

enviar por e-mail el informe a usted o al equipo de soporte técnico de su

representante Aladdin.

Para crear un informe:

• Pulse Create Report en la ventana principal de Aladdin Diagnostic.

Automáticamente 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 automáticamente, permitiendo grabarlo con

un nombre distinto o imprimirlo.

Page 133: Spanish Manual Hasp v11

Uso de las Herramientas HASP Ayudas para el usuario final

109

Diagnósticos de las llaves HASP

Cuando desee comprobar una llave HASP, desde la ventana de Aladdin

Diagnostic, seleccione Use HASP mode, y pulse Check Key; aparece la caja

de diálogo Check HASP.

Para comprobar una llave HASP

En la caja de diálogo Check HASP, bajo Access Mode, seleccione una de las

siguientes opciones:

• Check if any HASP key is connected (comprobar si hay una llave

HASP conectada)

• Check a HASP demo key (comprobar una llave HASP demo)

• Check a specific HASP key (Comprobar una llave HASP específica)

Comprobando una llave HASP remota

Puede acceder a una llave remota seleccionando Acces to HASP LM en la

caja de diálogo Check HASP. Introduzca el número del programa al que

desea acceder y pulse OK.

Page 134: Spanish Manual Hasp v11

Ayudas para el usuario final Parte 2 - Capítulo 7

110

Para comprobar si hay una llave HASP conectada:

1. Seleccione Check if any HASP key is connected.

2. Pulse OK.

Se muestra información sobre el resultado de la comprobación.

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 información sobre el resultado de la comprobación.

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 específica:

1. Seleccione Check a specific HASP key.

2. Pulse OK.

Se muestra información sobre el resultado de la comprobación.

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 corazón del concepto de protección HASP, por lo tanto, nunca debe revelarlas a sus clientes. Esta opción de la utilidad Aladdin Diagnostic debe ser, por tanto, utilizada únicamente por personal de su compañía que conozca las passwords.

Page 135: Spanish Manual Hasp v11

Uso de las Herramientas HASP Ayudas para el usuario final

111

Panel Key Access History

El Panel Key Access History de la ventana principal muestra todos los accesos a las llaves HASP. Esta información se tabula y muestra secuencialmente, con los accesos recientes en primer lugar, de esta forma

Columna Valor Descripción

any Se ha comprobado la presencia de cualquier llave HASP conectada localmente.

demo Se ha comprobado la presencia de una llave HASP demo.

Password

custom Se ha comprobado la presencia de una llave HASP específica

local La llave HASP se encontró en un puerto local.

Access

remote La llave HASP se encontró en un puerto remoto

Muestra el número del puerto en el que la llave HASP está conectada.

Si se encuentra una llave y se ha accedido a través de un puerto remoto con HASP LM, también se muestra el número de programa.

Port/Prog.

Si no se puede acceder a la llave, se muestra (n/a)

p1-p4 Muestra el status del API

Page 136: Spanish Manual Hasp v11
Page 137: Spanish Manual Hasp v11

113

Parte 3

Uso del API de HASP

Esta parte es una introducción a los métodos y estrategias de protección con

e API de HASP. Ofrece detalladas descripciones de todos los servicios del

API de HASP.

El capítulo “Protección con el API de HASP” (página 115) explica cómo usar

la rutina hasp() y ofrece una visión acerca de los servicios del API de HASP.

El capítulo “Estrategias de Protección” (página133) contiene información

sobre cómo maximizar su protección.

El capítulo “Servicios Básicos HASP” (página 143) describe los servicios

relacionados con todas las llaves HASP monopuesto.

El capítulo “Servicios de Memoria HASP4” (página 151) describe los

servicios relacionados con las llaves HASP4 M1, HASP4 M4 y HASP4 Time.

El capítulo “Servicios HASP4 Time” (página 159) describe los servicios

relacionados con las llaves HASP4 Time.

El capítulo “Servicios HASP4 Net” (página 171) describe los servicios

relacionados con las llaves HASP4 Net.

El capítulo “Códigos de Status del API de HASP” (página 197) explica los

códigos de status devueltos por el sistema HASP.

Page 138: Spanish Manual Hasp v11
Page 139: Spanish Manual Hasp v11

115

Parte 3 – Capítulo 9

Protección con el API de HASP

El API (Application programming interface) de HASP es un poderoso método

de protección, cuya fuerza depende de cómo se implemente. Cuanto más

sofisticadas y complejas sean las llamadas del API, mejor será la protección

de HASP.

Este y los siguientes capítulos del API describen las rutinas y servicios de

HASP. Encontrará más información sobre el uso del API en esta guía del

programador HASP.

Utilice el API para insertar llamadas al HASP a través de la aplicación y así

aumentar la seguridad. Puede comprobar la presencia de la llave HASP en

cualquier punto de la aplicación y decidir como responder de acuerdo al

resultado de la comprobación. También puede llamar a una llave HASP de

memoria para leer los datos almacenados en su memoria.

La manera en la que se realizan las comprobaciones es un factor crucial y

determinante para la seguridad. Es esencial, por lo tanto, que consulte el

capítulo “Estrategias de Protección” (página 133) indicando la mejor forma

de usar HASP.

Antes de proteger con el API HASP, recomendamos que compruebe los

archivos API para su compilador. Cada interface HASP incluye una

aplicación de ejemplo mostrando el uso del API.

Page 140: Spanish Manual Hasp v11

Protección con el API de HASP Parte 3 - Capítulo 9

116

Preparación para el uso del API

Para usar el API de HASP, debe instalar el HASP Device Driver o un

daemon. Consulte “Instalación de HASP” (página 25) para más información

acerca de la instalación de los drivers de HASP.

Antes de usar el API, utilice el HaspEdit (vea capítulo 14) para hacer lo

siguiente:

Codificar datos para su uso en la aplicación.

Use el servicio HaspEncodeData o la utilidad HASP Edit para codificar

datos. Puede decodificar estos datos con el API cuando esté conectada la

llave HASP correcta.

Edite la memoria HASP.

Si está protegiendo su aplicación con una llave HASP con memoria, y

almacenando información delicada en ella, anote los datos almacenados en

cada dirección de memoria. El API le permite para acceder a la memoria, y

leer y escribir datos en una dirección especifica.

Puede usar HASP Edit o los servicios WriteWord, WriteBlock y WriteByte

(sólo en HASP4 Time) para escribir en la memoria.

Determine el número de identificación de HASP

Las llaves HASP de memoria tienen un número de identificación. Con el API,

puede comprobar la presencia de una HASP especifica verificando su

Número ID.

Puede usar HASP Edit para determinar el número ID.

Page 141: Spanish Manual Hasp v11

Uso del API de HASP Protección con el API de HASP

117

Usando el API Después de haber ejecutado las operaciones necesarias usando HASP Edit,

está preparado para proteger su aplicación con el API incorporando llamadas

a la rutina hasp() a través de su código fuente.

Principales etapas de la integración

Para implementar el API:

1. Analice el código de ejemplo que corresponde al entorno de desarrollo de

su elección.

2. Añada las llamadas a hasp() en su código fuente.

3. Use el API para decodificar y verificar los datos relevantes que su

aplicación utiliza.

4. Según el resultado a partir del paso 3, si aparece algún error,

compruébelo y muestre la notificación adecuada al usuario.

5. Repita los pasos 2-4 varias veces, incorporando estos chequeos en

diferentes módulos.

6. Compile su código fuente y línkelo con los archivos objeto HASP o con las

librerías suministradas.

7. Use la utilidad HASP Envelope para añadir una capa adicional de

protección a su aplicación.

Uso de la rutina hasp( )

Use la rutina hasp() para incorporar la protección API dentro de su

aplicación. La rutina hasp() hace una comprobación de la presencia de una

HASP, codifica datos y accede a la memoria de una llave HASP para

operaciones de lectura y escritura.

Las llamadas a la rutina hasp() son diferentes para las llaves monopuesto y

las llaves HASP4 Net.

Page 142: Spanish Manual Hasp v11

Protección con el API de HASP Parte 3 - Capítulo 9

118

Parámetros para llaves HASP monopuesto

hasp (Service, SeedCode, PortNum, Password1, Password2,

Par1, Par2, Par3, Par4)

La rutina hasp() acepta los siguientes nueve parámetros.

Tabla 9.1 Parámetros para llaves HASP monopuesto

Parámetro Descripción

Service Determina la operación realizada por la rutina.

SeedCode Se usa sólo por compatibilidad con modelos anteriores.

PortNum Especifica el puerto para la búsqueda de la llave HASP

Password 1 Primera Password de la llave HASP

Password 2 Segunda Password de la llave HASP

Par1 a Par4 Los valores de Par1 a Par4 cambian según el servicio.

Parámetros para llaves HASP4 Net

hasp (Service, SeedCode, ProgNum, Password1, Password2,

Par1, Par2, Par3, Par4)

La rutina hasp() acepta los siguientes nueve parámetros.

Tabla 9.2 Parámetros para llaves HASP4 Net

Parámetro Descripción

Service Determina la operación realizada por la rutina.

SeedCode Se usa sólo por compatibilidad con modelos anteriores.

ProgNum Número de programa asignado a la aplicación protegida en la memoria HASP4 Net

Page 143: Spanish Manual Hasp v11

Uso del API de HASP Protección con el API de HASP

119

Parámetro Descripción

Password 1 Primera Password de la llave HASP

Password 2 Segunda Password de la llave HASP

Par1 a Par4 Los valores de Par1 a Par4 cambian según el servicio.

Especificación del Puerto

Puede usar el parámetro PortNum para especificar un puerto paralelo o

USB. Las aplicaciones protegidas con HASP4 Net buscan en todos los

puertos la llave HASP4 Net, así que si está usando HASP4 Net, puede

saltar esta sección.

Especificación de Puerto Paralelo

Puede usar el parámetro PortNum para especificar un puerto paralelo en el

que buscar las llaves HASP monopuesto.

Si fija el PortNum a 0, la aplicación protegida automáticamente busca todos

los puertos paralelos en el siguiente orden: 378h, 278h, 3BCh. La búsqueda

automática se detiene cuando la aplicación encuentra una HASP.

Puede indicar la búsqueda de HASP en un puerto paralelo específico o

direccionar a un puerto hardware directamente (ignorando el área de datos

de la BIOS). La siguiente tabla lista los diferentes valores que se pueden

asignar a PortNum para buscar un puerto específico.

Tabla 9.3 Valores PortNum y Puertos buscados

PortNum Puerto Buscado

0 Búsqueda automática en todos los puertos

1 Sólo LPT1

2 Sólo LPT2

3 Sólo LPT3

101 Sólo 03BCh

Page 144: Spanish Manual Hasp v11

Protección con el API de HASP Parte 3 - Capítulo 9

120

PortNum Puerto Buscado

102 Sólo 0378h

103 Sólo 0278h

201-255 HASP en puerto USB

Especificación del puerto con HASP para USB

Utilice el parámetro PortNum para especificar el número de puerto USB.

Con el propósito de enumeración 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 números en secuencia consecutiva.

El siguiente ejemplo muestra como usar la enumeración HASP USB:

1. Llame a la rutina hasp() con el servicio IsHasp(). El valor devuelto en P2

es el número de puertos a testear para su llave HASP específica.

2. Trate el número en P2 como la variable n, donde n es el número 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 Número ID de HASP, transfiriendo el primer

número de puerto USB en el parámetro PortNum. Debe comprobar datos

específicos 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 específica que usted quiere, guarde su número de puerto USB. Si

no lo es, vuelva al paso 3 con el siguiente número de puerto USB, y así n

veces.

Más adelante en su código, comunique con la llave concreta utilizando el

número de puerto específico.

Page 145: Spanish Manual Hasp v11

Uso del API de HASP Protección con el API de HASP

121

Comprobación de errores vitales

Para llaves HASP monopuesto hay dos códigos de error vitales a comprobar

después de cada llamada a la rutina hasp(). Los códigos relacionados se

devuelven en p3:

• “HASP not found”: error –3. Si encuentra este error, indique al usuario

que conecte la llave HASP (correcta).

• “Port Busy”: error –6. Llame de nuevo a la llave HASP después de una

breve pausa, o avise al usuario que debe esperar que la impresora o

cualquier otro dispositivo finalice antes de continuar con la aplicación.

Es importante incluir al principio de la aplicación una comprobación para

establecer que el HASP Device Driver está instalado. Para ello busque los

errores –100, -101, -110 y –111 en la primera llamada a hasp(). Si encuentra

alguno de esos errores, instale el driver y continúe con el programa.

Page 146: Spanish Manual Hasp v11

Protección con el API de HASP Parte 3 - Capítulo 9

122

Servicios HASP

Consulte la tabla 9.4 para información de los servicios a utilizar con los diversos modelos HASP.

Tabla 9.4 Modelos HASP y Servicios relacionados

Modelo HASP Servicios Relacionados

HASP4 Std. Servicios Básicos HASP

HASP4 M1, M4 Servicios Básicos HASP

Servicios de Memoria HASP4

HASP4 Time Servicios Básicos HASP

Servicios de Memoria HASP4

Servicios de HASP4 Time

HASP4 Net Servicios de HASP4 Net

Page 147: Spanish Manual Hasp v11

Uso del API de HASP Protección con el API de HASP

123

Servicios Básicos HASP

Puede utilizar los servicios básicos HASP con HASP4 Std., HASP4 M1,

HASP4 M4 y con HASP4 Time. Estos son los servicios disponibles.

Tabla 9.5 servicios básicos de HASP

Servicio Nombre Operación

1 IsHasp Comprueba si cualquier HASP está conectada al PC.

5 HaspStatus Comprueba el tipo de HASP conectada al PC.

Comprueba qué puerto paralelo tiene una llave conectada.

Comprueba el tamaño de la memoria de una llave de memoria.

Comprueba la versión del API

60 HaspEncodeData Datos codificados enviados a la llave HASP4 conectada. Se usa junto con HaspDecodeData para verificar la presencia de una llave HASP4 concreta.

61 HaspDecodeData Datos decodificados enviados a la llave HASP4 conectada. Se usa junto con HaspEncodeData para verificar la presencia de una llave HASP4 concreta

Page 148: Spanish Manual Hasp v11

Protección con el API de HASP Parte 3 - Capítulo 9

124

Servicios HASP4 Memoria

Puede usar los servicios HASP4 Memoria con HASP4 M1, HASP4 M4, y con HASP4

Time (área de 496 bytes). Estos son los servicios disponibles.

Tabla 9.6: Servicios HASP4 Memoria

Servicio Nombre Operación

3 ReadWord Lee un word de datos de la memoria HASP.

4 WriteWord Escribe un word de datos en la memoria HASP.

6 HaspID Obtiene el ID de HASP

50 ReadBlock Lee un bloque de datos de la memoria HASP.

51 WriteBlock Escribe un bloque de datos en la memoria HASP.

Page 149: Spanish Manual Hasp v11

Uso del API de HASP Protección con el API de HASP

125

Servicios HASP4 Time

Puede usar los servicios HASP4 Time con las llaves HASP4 Time.

Use los servicios 74 a 77 para acceder a la memoria HASP4 Time de 16

bytes. Use los servicios de HASP4 Memoria 3, 4, 50, y 51 para acceder a la

memoria de 496 bytes de la llave HASP4 Time.

Estos son los servicios disponibles.

Tabla 9.7: Descripción de los Servicios HASP4 Time

Servicio Nombre Operación

70 SetTime Sincroniza el reloj HASP4 Time.

71 GetTime Obtiene la hora del reloj HASP4 Time.

72 SetDate Fija la fecha en el reloj HASP4 Time.

73 GetDate Obtiene la fecha del reloj HASP4 Time.

74 WriteByte Escribe un byte de datos en la memoria HASP4 Time.

75 ReadByte Lee un byte de datos de la memoria HASP4 Time .

76 WriteBlock Escribe un bloque de datos en la memoria HASP4 Time.

77 ReadBlock Lee un bloque de datos de la memoria HASP4 Time.

78 GetHaspID Obtiene el número de identificación del HASP4 Time (Número ID)

Page 150: Spanish Manual Hasp v11

Protección con el API de HASP Parte 3 - Capítulo 9

126

Servicios HASP4 Net

Puede usar los servicios HASP4 Net únicamente con las llaves HASP4 Net. Estos son los servicios disponibles.

Tabla 9.8: Descripción de la Tabla de Servicios HASP4 Net

Servicio Nombre Operación

40 LastStatus Comprueba el status de la última llamada. Use este servicio después de cada llamada la rutina hasp().

42 Login Pide permiso del Administrador de Licencias HASP para activar la aplicación.

A menos que use los servicios 85 ó 96, el login debe ser la primera llamada a la rutina hasp().

43 Logout Finalización de la sesión en el Administrador de Licencias HASP.

44 ReadWord Lee una word de la memoria HASP4 Net.

45 WriteWord Escribe una word en la memoria HASP4 Net.

46 HaspID Obtiene el número ID de HASP4 Net.

48 IdleTime Fija un tiempo máximo para desactivar una estación que no esté trabajando con la aplicación protegida.

52 ReadBlock Lee un bloque de datos de la memoria HASP4 Net.

53 WriteBlock Escribe un bloque de datos en la memoria HASP4 Net.

85 SetConfigFilename Fija el nombre del archivo de configuración HASP4 Net.

Page 151: Spanish Manual Hasp v11

Uso del API de HASP Protección con el API de HASP

127

Servicio Nombre Operación

88 HaspEncodeData Datos codificados enviados a la llave HASP4 Net conectada. Se usa junto con HaspDecodeData para verificar la presencia de una llave HASP4 Net concreta.

89* HaspDecodeData Datos codificados enviados a la llave HASP4 Net conectada. Se usa junto con HaspDecodeData para verificar la presencia de una llave HASP4 Net concreta.

96 SetServerByName Fija el nombre del Administrador de Licencias HASP con que la aplicación protegida realizará un login HASP4 Net.

ë Para acceder a una llave HASP4 Net conectada a un puerto paralelo local, se puede usar los servicios básicos HASP y de HASP Memoria.

Protección Local y de red

El API le permite proteger su aplicación tanto para entornos de red como

monopuesto.

Para habilitar la protección desde el API para entornos de red y

monopuesto:

1. Use los servicios básicos HASP, HASP Memoria y HASP4 Time para

comprobar la presencia de la llave HASP monopuesto correcta conectada

en el puerto local de su PC.

2. Si no encuentra la llave HASP monopuesto, utilice los servicios HASP4

Net para buscar la llave HASP4 Net.

Page 152: Spanish Manual Hasp v11

Protección con el API de HASP Parte 3 - Capítulo 9

128

Utilidad HASP Test

Con la utilidad de test HASP, puede comprobar los servicios API de HASP y

las operaciones de HASP4 Net. También puede usar la utilidad en su puesto

de trabajo para testear las operaciones HASP.

La utilidad de test disponible es haspdemo.exe para Windows y Win32.

Con esta utilidad, puede testear las llaves HASP de todos los modelos.

haspdemo.exe es un programa ejemplo multi-objeto de utilidad para testear

llaves con diferentes versiones del API de HASP. Acceda a él pulsando

HASP Test for Win16 o Win32 en el menú del CD HASP. Puede encontrar

directamente el ejecutable en Utility\Haspdemo\Windows\Win16 o Win32

êê Necesita introducir las passwords para la mayoría de las funciones de la utilidad Test de HASP. El centro del concepto de protección 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.

Page 153: Spanish Manual Hasp v11

Uso del API de HASP Protección con el API de HASP

129

Preguntas Frecuentes

Pregunta ¿Cuánto tiempo dura la comprobación de HASP?

Respuesta Con las llaves HASP monopuesto, una llamada a la rutina hasp() toma alrededor de 20 milisegundos. Un login HASP4 Net dura en torno a dos segundos, dependiendo del tráfico de la red. Las llamadas a otros servicios HASP4 Net requiere aproximadamente medio segundo. Como se desprende de estos valores, se pueden realizar tantas llamadas a HASP como desee.

Pregunta ¿Cómo previene HASP el trazado del código?

Respuesta Más del 60% de nuestras rutinas están diseñadas específicamente para prevenir el trazado del código de la aplicación protegida. Naturalmente, no podemos revelar todos nuestros “trucos”, pero mencionamos algunos ejemplos:

Tomando las interrupciones del debugger y dificultando su auto debugger.

Bloqueos especiales para debuggers del hardware

Auto-generación de código difícil de trazar

Trampas de tiempo

Frecuentes actualizaciones que incorporen nuevas prestaciones y mejoras en la seguridad.

Page 154: Spanish Manual Hasp v11

Protección con el API de HASP Parte 3 - Capítulo 9

130

Pregunta El lenguaje de programación o compilador que estoy usando no es compatible con ninguno de los lenguajes y compiladores que soporta el HASP. ¿Cómo protejo mi software?

Respuesta 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

están incorporando nuevos drivers para lenguajes y compiladores.

• Utilice la utilidad Envelope.

Pregunta ¿Cómo puedo proteger una DLL con HASP?

Respuesta 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

línkelos con su DLL. Incorpore llamadas a la rutina hasp() dentro de

su aplicación.

• 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 aplicación.

Page 155: Spanish Manual Hasp v11

Uso del API de HASP Protección con el API de HASP

131

Pregunta He utilizado el API para comprobar el número de identificación de HASP. Algunas veces, HaspID retorna un número negativo en IDLow. Cuando calculo el número de identificación, obtengo un número diferente al que retorna HaspEdit.

Respuesta Cuando IDLow es negativo, utilice la siguiente ecuación para calcular el Número ID:

Número 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 parámetros IDLow y IDHigh devueltos por la rutina hasp() sin calcular el número ID.

Pregunta ¿Dónde puedo encontrar un ejemplo de programa que demuestre como implementar el API?

Respuesta Hay un programa ejemplo en nuestro CD para la mayoría de los compiladores más comunes. Por ejemplo, para Visual C++, puede encontrar un ejemplo en el directorio win32api\msc.

Page 156: Spanish Manual Hasp v11
Page 157: Spanish Manual Hasp v11

133

Parte 3 – Capítulo 10

Estrategias de Protección

El sistema de protección HASP incluye las mejores herramientas de

protección hardware y software del mercado actual. Sin embargo, el sistema

de protección de software basado en HASP es sólo tan seguro como lo sea el

modo en que se ha instalado. Las llamadas a la rutina hasp(), que

finalmente introduce en su código, controlan el acceso a su aplicación. Dado

que el hardware HASP es virtualmente imposible de duplicar o emular, los

ataques se centran normalmente en trazar el código de la protección y

eliminar las rutinas de protección.

Para conseguir la máxima protección con HASP, use los dos métodos de

protección, la Envolvente y el API. Cada método tiene prestaciones únicas y

complementa y mejora el otro.

Para aumentar la seguridad del software protegiendo con el API, utilice las

técnicas comentadas en este capítulo. Este capítulo describe:

• Ataques a los esquemas de protección que pueden ser evitados mediante

las técnicas de instalación adecuadas

• Trucos para optimizar de la seguridad de las aplicaciones protegidas

Si desea asistencia a la hora de proteger su aplicación contra posibles

ataques, podemos ofrecer un servicio de soporte más personalizado desde

nuestro equipo de Consultores de Aladdin. Ellos podrán ayudarle en gran

número de aspectos, incluyendo estrategias de protección y técnicas de

implantación.

Page 158: Spanish Manual Hasp v11

Estrategias de Protección Parte 3 - Capítulo 10

134

Posibles Ataques al Software

Existen dos métodos principales de ataque a las aplicaciones protegidas:

• Parchear las llamadas a la rutina de protección

• Parchear el software del fabricante de la llave

Para parchear las llamadas a la rutina de protección, es necesario cambiar el

ejecutable protegido para que no envíe 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 código.

Este tipo de ataques se producen cuando se asume que la protección 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 métodos, en el caso de que se consiga evitar

la protección, son válidos sólo para esa aplicación y no podrán aplicarse a

otras aplicaciones protegidas.

Page 159: Spanish Manual Hasp v11

Uso del API de HASP Estrategias de Protección

135

Consejos y trucos

En esta sección se ofrecen consejos y trucos para combatir los ataques

descritos en la sección anterior. Use tantas estrategias como sea posible

para optimizar el nivel de seguridad de sus aplicaciones.

Tenga en cuenta que cuando incorpora la protección, debe hacerlo de manera

que se considere en qué se implica al usuario legal del software. Por ejemplo,

un usuario legítimo puede olvidar conectar la llave al PC, su esquema de

protección debe considerar esto. Una estrategia de protección hábil combate

los ataques a su software, no a usuarios inocentes.

Use Múltiples Llamadas

Inserte numerosas llamadas a la rutina hasp() y marcas PCS para agotar

los recursos, humanos y técnicos, de quien ataque su software protegido. Una

estructura complicada de llamadas genera grandes dificultades en el

seguimiento y ataque a su esquema de protección.

Cuantas más llamadas y códigos devueltos se comprueben, más difícil es

trazarlos y eliminarlos. Las llamadas deben efectuarse desde tantos lugares

diferentes de su software como sea posible.

Codifique datos internos y externos de su aplicación

Codifique algunos de los datos que utiliza su aplicación y decodifíquelos

dependiendo de la presencia de la llave HASP.

La codificación de sus datos incrementa en gran medida la seguridad de su

aplicación. Use las prestaciones de HASP4 para codificar cadenas o datos

binarios que afecten gravemente al programa si se decodifican mal. Así crea

una asociación entre su aplicación y la llave HASP que no puede eliminarse

fácilmente. No sólo deberán piratear la aplicación y eliminar todos los

chequeos de HASP, sino que también tendrán que decodificar los datos. No

es necesario codificar todos los datos que su aplicación maneja, pero puede

codificar ciertos datos clave. Buenas opciones son cabeceras de archivos,

Page 160: Spanish Manual Hasp v11

Estrategias de Protección Parte 3 - Capítulo 10

136

constantes importantes en cálculos, o pequeños campos en una base de

datos. Cualquier cosa que altere las principales funciones de la aplicación es

candidato potencial para su codificación. Tenga la precaución de notificar al

usuario que HASP no está presente para evitar dañar datos de valor.

Cuando un hacker elimina estos chequeos y cajas de dialogo, se manifestará

la dependencia de su aplicación de esos datos.

Describimos un proceso simple que puede modificar a su criterio.

1. Conecte su llave HASP4

Asegúrese de que la llave HASP4 que desea usar para proteger su

aplicación 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. También puede optar por crear un archivo

include en formato VB o C. Esto le permite acceder a valores codificados

directamente desde su aplicación.

3. Incorpore los datos codificados en su aplicación

Sustituya los datos originales de su aplicación con el archivo include o los

datos codificados.

4. Decodifique los datos a solicitud de su aplicación

Utilice el servicio 61 – HaspDecodeData para decodificar los datos

codificados a través 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 codificación HASP-dependientes. Dado que esas frases se

muestran cuando la HASP no está conectada, su propia decodificación no debe

depender de una respuesta de HASP. Para este tipo de frases utilice una clave

de encriptación de su elección y cualquier método de codificación disponible.

Page 161: Spanish Manual Hasp v11

Uso del API de HASP Estrategias de Protección

137

Evite Esquemas Repetitivos

Un esquema que se repite a lo largo del código es fácil de aprender y

localizar. Una vez que su esquema es entendido, es obvio que se va a buscar

de nuevo, haciendo los siguientes ataques más fáciles.

Más aún cuando su aplicación consiste en múltiples ejecutables o DLLs

protegidas, cambie el esquema de un archivo a otro. Utilice todos los

servicios HASP, llamando a cada uno de ellos varias veces, e incorporando un

esquema de protección diferente en cada llamada. Use, además, la Envelope

de HASP para proteger sus ejecutables. La Envelope de HASP usa

tecnología Multi-capa, que integra un esquema de protección diferente para

cada archivo ejecutable.

Evitando esquemas repetitivos la inversión de tiempo en tratar de atacar la

protección se multiplica. Cada búsqueda e intento de pirateo a cada llamada

a HASP debe ser una nueva tarea cada vez que se planea un ataque.

Separe los Pasos de la Llamada

La comprobación de HASP significa tres pasos principales:

• Llamada a la rutina hasp()

• Evaluación de los valores retornados por la rutina de protección

• Respuesta según los valores devueltos.

Para mejorar la seguridad, coloque los tres pasos en diferentes lugares de su

software. Al separarlos es mucho más difícil 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 opción

de un menú. Permita al usuario empezar a trabajar, incluso si no está la

llave conectada. Muestre el mensaje “HASP not found” sólo cuando se

encuentre en una operación completamente distinta para dificultar la

relación entre la llamada a HASP y la respuesta.

Page 162: Spanish Manual Hasp v11

Estrategias de Protección Parte 3 - Capítulo 10

138

Codifique la Memoria de HASP

Además del alto nivel de seguridad inherente que aporta el chip ASIC, puede

asegurar el contenido de la memoria de HASP encriptándolo.

Por ejemplo, puede usar el Número ID de HASP como clave de encriptación

para la memoria HASP. Durante la ejecución, asegúrese de desencriptar la

memoria usando el Número ID.

Puesto que la clave de encriptación es diferente para cada HASP, el proceso

de desencriptación para cada llave es distinto. Este proceso incorpora otro

obstáculo en la copia del contenido de la memoria de una llave a otra, pues el

Número ID de HASP no se puede copiar. La memoria de la “falsa” HASP se

desencripta utilizando una clave de desencriptación no válida, resultando

una lectura incorrecta de los datos.

Realice Checksums en Su Código

Realice un checksum para comprobar que su código no ha sido modificado.

Para realizar un checksum sencillo:

1. Calcule el checksum.

2. Compárelo con el valor correcto.

3. Si ambos no coinciden emita un mensaje de error. Si coinciden continúe.

Desgraciadamente, esta técnica es vulnerable a varios ataques.

• El código puede ser parcheado para que omita el checksum.

• Es posible forzar el checksum para que retorne el valor correcto.

Para ello, debe identificarse el algoritmo del checksum y utilizar técnicas de

parcheado del código e interrupciones para compensar los bytes cambiados.

Es posible defenderse contra este tipo de ataques evitando simples módulos

de adición o mediante operaciones XOR. Use CRC (cyclic redundancy check) u

otro algoritmo sensible al orden de los bytes.

Page 163: Spanish Manual Hasp v11

Uso del API de HASP Estrategias de Protección

139

Otra técnica de defensa es evitar la comparación 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 más

adelante como clave de desencriptación para desencriptar una parte del

código o datos. Así tiene la ventaja de retrasar la reacción. Además, el valor

de checksum esperado no se almacena explícitamente en la aplicación.

Limite la Funcionalidad del Programa como Respuesta, en lugar

de “HASP not Found”

Existen múltiples respuestas que puede incluir en su código cuando la llave

HASP no está conectada. La más 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

interrupción en el proceso de ejecución del programa si no encuentra HASP.

Por ejemplo, instruya a la aplicación para inhabilitar el teclado si no

encuentra la llave HASP, y que reinicie la operatividad normal cuando se

conecte la llave más tarde. Los usuarios ilegítimos pueden pensar que el

problema surgió de un bug del programa. No sabrán que se realizó un

chequeo de HASP, y que el problema es debido a la ausencia de la llave.

Asegúrese de usar la funcionalidad del programa teniendo en consideración

los usuarios legítimos que, por error han olvidado conectar la llave.

Ocultación de Passwords

Oculte las passwords en la aplicación protegida mediante:

• Su encriptación

• Grabándolos en diferentes lugares del código fuente

• Comparando los diferentes lugares donde se han grabado y chequeando

su integridad

Page 164: Spanish Manual Hasp v11

Estrategias de Protección Parte 3 - Capítulo 10

140

Añada Distorsiones

Llame a la rutina hasp( ) y envíele parámetros con valores irrelevantes.

Estos valores puede producirlos con generadores de números 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 obstáculos adicionales a

quien intente atacar su aplicación protegida.

Use Datos dependientes de HASP

Utilizando datos almacenados en la memoria HASP, normalmente se

comprueba que el valor es correcto antes de continuar. Sin embargo, este

proceso le obliga a incluir el valor real que se comprueba en su aplicación. El

valor es en ese momento susceptible de ser atacado.

Para prevenir el acceso a esos datos, léalos y úselos en su aplicación sin

comprobar explícitamente su validez. Si la HASP está conectada, el valor es

válido. Si no está la HASP, el valor no es válido y resulta un error.

Por ejemplo, en lugar de chequear datos leídos de la memoria HASP, puede

utilizarlos directamente para realizar operaciones como se muestra en el

siguiente pseudo-código:

Begin

Global variable FLAG is assigned an initial value.

Call the hasp( ) routine with the ReadWord service.

FLAG is assigned the value of the data read from the HASP memory (100 in

this example).

Goto FLAG

...

...

Label 100:

Perform an operation that is required for the correct program flow.

Page 165: Spanish Manual Hasp v11

Uso del API de HASP Estrategias de Protección

141

En el ejemplo anterior, cuando la HASP está conectada y se lee de la

memoria el valor 100, el programa continúa y realiza la operación de ir a

label 100. Si la HASP no está conectada, el programa no va al lugar

designado, label 100, y no realiza la operación solicitada.

Esta estrategia previene del uso del IF que se traduce a Asembler CMP, y

así es más difícil de trazar.

Use la Envolvente de HASP

La Envelope añade un escudo de protección sobre su aplicación. La protección

Envelope ofrece encriptación de archivos y avanzadas prestaciones anti-

debugging que dificultan en gran medida los ataques.

Si está protegiendo una serie de ejecutables, la Envelope HASP, con su

tecnología Envelope Multi-capa, incorpora un esquema de protección para

cada archivo ejecutable. Variando los esquemas de protección se dificulta

aún más el entendimiento y pirateo de una aplicación.

Cambie su Estrategia

Para mantener un alto novel de seguridad del software, debe cambiar a

menudo su esquema de protección. Varíe sus métodos, agregando diferentes

medidas de seguridad para cada versión de su aplicación. Actualice sus

herramientas de defensa regularmente.

El compromiso de Aladdin es suministrarle la mejor tecnología de protección

disponible en el mercado, y mejorar continuamente su línea de productos.

Visite la web de Aladdin periódicamente para informarse de las últimas

novedades que se incorporan al sistema de protección HASP y contacte con

Aladdin para obtener las últimas actualizaciones del software HASP.

En sintonía con Aladdin estará siempre un paso por delante de quien trate

de atacar su software.

Page 166: Spanish Manual Hasp v11
Page 167: Spanish Manual Hasp v11

143

Parte 3 – Capítulo 11

Servicios Básicos HASP

Este capítulo describe los servicios básicos del API de HASP que son de

aplicación para HASP4 Standard, HASP4 M1 y HASP4 M4. Cada uno de los

servicios se describen con detalle.

La tabla 11.1 muestra los parámetros de la rutina hasp() para cada servicio.

Cada servicio de la tabla tiene asignadas dos filas:

• La fila, C (Call), lista los parámetros que usted envía a la rutina hasp().

• La fila, R (Return), lista los parámetros que la rutina hasp() retorna.

Los valores de Par1, Par2, Par3 y Par4 cambian según el servicio.

Todos los parámetros son de 16 bits en aplicaciones 16-bits y 32 bits en

aplicaciones 32-bits.

Page 168: Spanish Manual Hasp v11

Servicios Básicos HASP Parte 3 - Capítulo 11

144

Tabla 11.1: Servicios Básicos HASP y sus Correspondientes Parámetros

Servicio

(Num).

Cód

igo

Sem

illa

Por

tNu

m

Pas

swor

d1

Pas

swor

d2

Par

1

Par

2

Par

3

Par

4

IsHasp(1) C

Por

tNu

m

R

En

cuen

tra

HA

SP

HaspStatus(5) C

Por

tNu

m

Pas

swor

d1

Pas

swor

d2

R

Tam

año

mem

oria

Tip

o H

asp

Lpt

num

actu

al

HaspEncodeData(60) C

Por

tNu

m

Pas

swor

d1

Pas

swor

d2

0 Bu

ffer

Bu

ffer

Bu

ffer

R

Sta

tus

HaspDecodeData(61) C

Por

tNu

m

Pas

swor

d1

Pas

swor

d2

0 Bu

ffer

Bu

ffer

Bu

ffer

R

Sta

tus

Page 169: Spanish Manual Hasp v11

Uso del API de HASP Servicios Básicos HASP

145

ë El parámetro Buffer Segment sólo es de relevancia para aplicaciones Windws 16 bits

Page 170: Spanish Manual Hasp v11

Servicios Básicos HASP Parte 3 - Capítulo 11

146

Servicio 1: IsHasp

Descripción Comprueba la presencia de cualquier HASP conectada al PC.

Llaves implicadas HASP4 Std., HASP4 M1, HASP4 M4, HASP4 Time

Sintaxis hasp (Servicio, CódigoSemilla, LptNum, Password1, Password2,

Par1, Par2, Par3, Par4)

Parámetros Utilizados

Servicio 1

PortNum Valor que indica el puerto para la búsqueda.Vea

“Especificación del Puerto” en la página 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 búsqueda, Vea

“Especificación del Puerto” en la página 119.

Par3 Código que indica el status de la operación. Vea

“Códigos de status del API HASP” en la página 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 código de programador) está conectada, use Servicio 61, HaspDecodeData. Para una simple comprobación de presencia utilice el Servicio 5, HaspStatus.

Page 171: Spanish Manual Hasp v11

Uso del API de HASP Servicios Básicos HASP

147

Servicio 5: HaspStatus

Descripción Comprueba el tipo de llave HASP conectada al PC. También

chequea en qué puerto está conectada la llave.

Llaves implicadas HASP4 Std., HASP4 M1, HASP4 M4, HASP4 Time

Sintaxis hasp (Servicio, CódigoSemilla, LptNum, Password1, Password2,

Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 5

PortNum Valor que indica el puerto para la búsqueda de la

llave HASP.

Password1 Primera password HASP.

Password2 Segunda password HASP.

Valores Devueltos

Par1 Tamaño de la Memoria

1 HASP4 M1

4 HASP4 M4

0 otras llaves

Par2 Tipo de HASP

0 HASP4 sin memoria

1 HASP4 M1 o HASP4 M4

5 HASP4 Time

Par3 Número de puerto actual, vea “Especificación del Puerto” en la página 119.

Par4 HASP Object Version – La versión actual del API.

Page 172: Spanish Manual Hasp v11

Servicios Básicos HASP Parte 3 - Capítulo 11

148

Comentarios • Para minimizar el tiempo de búsqueda, utilice el valor del LptNum Actual recibido en Par3, y envíelo en el Parámetro 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 tamaño de memoria devuelto en Par1 es 4, y el tipo de llave HASP devuelto en Par2 es 1.

• Las anteriores llaves TimeHASP-1 devolverán un status 3 en el Par2. Las aplicaciones que usen ese tipo de llaves deben actualizarse para contemplar status 3 ó 5.

Page 173: Spanish Manual Hasp v11

Uso del API de HASP Servicios Básicos HASP

149

Servicio 60: HaspEncodeData

Descripción Codifica datos a través de una llave HASP conectada.

Llaves implicadas HASP4 Std., HASP4 M1, HASP4 M4, HASP4 Time

Sintaxis hasp (Servicio, CódigoSemilla, LptNum, Password1, Password2,

Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 60

PortNum Valor que indica el puerto para la búsqueda de la

llave HASP

Password1 Primera password HASP.

Password2 Segunda password HASP.

Par1 0 (reservado).

Par2 Tamaño del buffer. El tamaño en bytes del buffer a

codificar. El buffer debe tener al menos un tamaño de

8 bytes.

Par3 Segmento de buffer. La dirección de segmento del

buffer. Solamente para aplicaciones 16 bits

Par4 Buffer offset. Dirección offset del buffer.

Valores Devueltos Par3 Status – Código que indica el status de la operación.

Vea “Códigos de status del API de HASP” en la

página 197.

Comentarios El contenido del buffer de programa se codifica vía la llave HASP conectada y actualizado en el sitio.

Este servicio sólo puede usarse con la generación HASP4 de llaves HASP. Si esta conectada una llave de una generación anterior, no se codificarán los datos y el servicio devolverá un código de error.

Page 174: Spanish Manual Hasp v11

Servicios Básicos HASP Parte 3 - Capítulo 11

150

Servicio 61: HaspDecodeData

Descripción Decodifica datos a través de una llave HASP conectada.

Llaves implicadas HASP4 Std., HASP4 M1, HASP4 M4, HASP4 Time

Sintaxis hasp (Servicio, CódigoSemilla, LptNum, Password1, Password2,

Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 60

PortNum Valor que indica el puerto para la búsqueda de la

llave HASP

Password1 Primera password HASP.

Password2 Segunda password HASP.

Par1 0 (reservado).

Par2 Tamaño del buffer. El tamaño en bytes del buffer a

decodificar. El buffer debe tener al menos un tamaño

de 8 bytes.

Par3 Segmento de buffer. La dirección de segmento del

buffer. Solamente para aplicaciones 16 bits

Par4 Buffer offset. Dirección offset del buffer.

Valores Devueltos Par3 Status – Código que indica el status de la operación.

Vea “Códigos de status del API de HASP” en la

página 197.

Comentarios El contenido del buffer de programa se decodifica vía la llave HASP conectada y actualizado en el sitio.

Este servicio sólo puede usarse con la generación HASP4 de llaves HASP. Si esta conectada una llave de una generación anterior, no se decodificarán los datos y el servicio devolverá un código de error.

Page 175: Spanish Manual Hasp v11

151

Parte 3 – Capítulo 12

Servicios HASP Memoria

Este capítulo describe los servicios del API para HASP4 M1, HASP4 M4, y

HASP4 Time. Cada uno de los servicios está descrito con detalle.

La tabla 12.1 de la página 152 lista los parámetros de la rutina hasp() para

cada servicio. Cada servicio listado en la siguiente tabla tiene asignadas dos

filas:

• La fila Call, C, lista los parámetros que se envían a la rutina hasp().

• La fila Return, R, lista los parámetros que la rutina hasp() devuelve.

Los valores de Par1, Par2, Par3 y Par4 cambian de acuerdo con el servicio.

Todos los parámetros 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 relación con Intel.

Considérelo cuando lea y escriba en una llave HASP con estos servicios, o utilice los servicios ReadBlock y WriteBlock que operan Endian independientemente.

Page 176: Spanish Manual Hasp v11

Servicios HASP Memoria Parte 3 - Capítulo 12

152

Tabla 12.1: Servicios HASP4 Memoria y sus parámetros

Servicio (no.)

Cód

igo

Sem

illa

Lpt

Num

Pas

swor

d1

Pas

swor

d2

Par

1

Par

2

Par

3

Par

4

ReadWord (3) C

Lpt

Num

Pas

swor

d1

Pas

swor

d2

Add

ress

R

Dat

a

Sta

tus

WriteWord (4) C

Lpt

Num

Pas

swor

d1

Pas

swor

d2

Add

ress

Dat

a

R

Sta

tus

HaspID (6) C

Lpt

Num

Pas

swor

d1

Pas

swor

d2

R

IDL

ow

IDH

igh

Sta

tus

ReadBlock (50) C

Lpt

Num

Pas

swor

d1

Pas

swor

d2

Sta

rt

Add

ress

Blo

ck

Len

gth

Bu

ffer

S

egm

ent

Bu

ffer

O

ffse

t

R

Sta

tus

Page 177: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP Memoria

153

Servicio (no.)

Cód

igo

Sem

illa

Lpt

Num

Pas

swor

d1

Pas

swor

d2

Par

1

Par

2

Par

3

Par

4

WriteBlock (51) C

Lpt

Num

Pas

swor

d1

Pas

swor

d2

Sta

rt

Add

ress

Blo

ck

Len

gth

Bu

ffer

S

egm

ent

Bu

ffer

O

ffse

t

R

Sta

tus

ëë El parámetro Buffer Segment es de relevancia únicamente para aplicaciones 16 bits

Page 178: Spanish Manual Hasp v11

Servicios HASP Memoria Parte 3 - Capítulo 12

154

Servicio 3: ReadWord

Descripción Lee un word de datos de la memoria HASP.

Llaves Relacionadas HASP4 M1, HASP4 M4, HASP4 Time

Sintaxis hasp (Service, SeedCode, LptNum, Password1, Password2,

Par1, Par2, Par3, Par4)

Parámetros Utilizados

Servicio 3

PortNum Valor que indica el puerto a buscar por la HASP.

Vea “Especificación del Puerto” en la página 119

Password1 Primera password de HASP.

Password2 Segunda password de HASP.

Par1 Address – La dirección de memoria HASP que

quiere leer de:

0 a 55 – HASP4 M1

0 a 247 – HASP4 M4

0 a 247 – HASP4 Time

Códigos Devueltos

Par2 Data – Una palabra de datos que lee de la

memoria HASP.

Par3 Status – Código que indica el estado de la operación de la memoria. Vea “Códigos de Status del API de HASP” en la página 197.

Page 179: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP Memoria

155

Servicio 4: WriteWord

Descripción Escribe un word de datos en la memoria HASP.

Llaves relacionadas HASP4 M1, HASP4 M4 y HASP4 Time

Sintaxis hasp (Service, SeedCode, LptNum, Password1, Password2,

Par1, Par2, Par3, Par4)

Parámetros Utilizados

Servicio 4

PortNum Valor que indica el puerto a buscar por la HASP.

Password1 Primera password de HASP.

Password2 Segunda password de HASP.

Par1 Address – La dirección 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 código indicando el estado de la operación de

memoria. Vea “Códigos de status del API de HASP” en la

página 197.

Page 180: Spanish Manual Hasp v11

Servicios HASP Memoria Parte 3 - Capítulo 12

156

Servicio 6: HaspID

Descripción Determina el número de identificación de HASP (ID Number).

Llaves Relacionadas HASP4 M1, HASP4 M4 y HASP4 Time

Sintaxis hasp (Servicio, SeedCode, LptNum, Password1, Password2,

Par1, Par2, Par3, Par4)

Parámetros Utilizados

Servicio 6

PortNum Valor que indica en qué puerto buscar HASP.

Password1 Primera password de HASP.

Password2 Segunda password de HASP.

Valores Devueltos

Par1 IDLow – Word bajo (el menos significativo) del

número ID.

Par2 IDHigh – Word alto (el más significativo) del

número ID.

Par3 Status – Un código indicando el estado de la

operación de memoria. Vea “Códigos de status del

API de HASP” en la página 197.

Comentarios El Número ID es un entero largo (32 bits). Se calcula como sigue, si IDLow y IDHigh son sin signo:

Número ID = IDLow + 65536 * IDHigh Si el IDLow y el IDHigh son con signo, necesitará compensar valores negativos añadiendo 65535.

Page 181: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP Memoria

157

Servicio 50: ReadBlock Descripción Lee un bloque de datos de la memoria HASP.

Llaves Relacionadas HASP4 M1, HASP4 M4 y HASP4 Time

Sintaxis hasp (Servicio, SeedCode, LptNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetro utilizados

Servicio 50

PortNum Valor que indica el puerto para la búsqueda de HASP

Password1Primera Password HASP

Password2Segunda Password HASP

Par1 Start Address – Define el inicio de la dirección de memoria de HASP para leer el bloque:

0 a 55 – HASP4 M1

0 a 247 – HASP4 M4

0 a 247 – HASP4 Time

Par2 Block length – El tamaño del bloque, en words.

Par3 Buffer segment – Dirección del segmento de un buffer de programa(variable).

Par4 Buffer Offset – Dirección del Offset de un buffer de programa(variable).

El tamaño del buffer debe ser como mínimo tan largo como el tamaño del bloque

Códigos Devueltos Par3 Status – Un código indicando el estado de la operación de memoria. Vea “Códigos de status del API de HASP” en la página 197.

Resultado El contenido de la memoria HASP es leído dentro del buffer de programa.

Page 182: Spanish Manual Hasp v11

Servicios HASP Memoria Parte 3 - Capítulo 12

158

Servicio 51: WriteBlock Descripción Escribe un bloque de datos en la memoria HASP.

Llaves implicadas HASP4 M1, HASP4 M4, HASP4 Time

Sintaxis hasp (Servicio, SeedCode, LptNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 51

PortNum Valor que indica el puerto para la búsqueda de HASP.

Password1 Primera password de HASP.

Password2 Segunda password de HASP.

Par1 Start Address – Define la dirección inicial de memoria HASP para escribir un bloque:

0 a 55 – HASP4 M1

0 a 247 – HASP4 M4

0 a 247 – HASP4 Time

Par2 Block length – El tamaño del bloque, en words.

Par3 Buffer segment – Dirección del segmento de un buffer de programa (variable).

De relevancia sólo para aplicaciones 16 bits

Par4 Buffer Offset – Dirección del Offset de un buffer de programa (variable).

El tamaño del buffer debe ser como mínimo tan largo como el tamaño del bloque.

Valores Devueltos

Par3 Status – Un código indicando el estado de la operación de memoria. Vea “Códigos de status del API de HASP” en la página 197.

Resultado Los contenidos del buffer del programa están escritos en la memoria HASP.

Page 183: Spanish Manual Hasp v11

159

Parte 3 – Capítulo 13

Servicios HASP4 Time

Este capítulo describe los servicios del API de HASP aplicables para HASP4

Time. Cada servicio se describe en detalle.

La batería de HASP4 Time tiene una vida de 3-5 años. Al integrar el API con

HASP4 Time, se recomienda incorporar llamadas que comprueben el

funcionamiento del reloj en primer lugar y actuar consecuentemente cuando

éste se detenga.

La tabla 13.1 muestra los parámetros de la rutina hasp() para cada servicio.

Para cada servicio se asignan dos columnas en la tabla:

• La columna Llamada, C (Call), lista los parámetros que usted envía a la

rutina hasp().

• La columna Retorno, R, lista los parámetros que la rutina hasp()

devuelve.

Los valores de Par1, Par2, Par3, y Par4 cambian según el servicio.

Todos los parámetros son de 16 bits en aplicaciones de 16-bits y 32 bits en

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 relación con Intel.

Considérelo cuando lea y escriba en una llave HASP con estos servicios, o utilice los servicios ReadBlock y WriteBlock que operan Endian independientemente.

Page 184: Spanish Manual Hasp v11

Servicios HASP4 Time Parte 3 - Capítulo 13

160

Tabla 13.1: Servicios HASP4 Time y sus Parámetros

Service (no.)

Seed

Cod

e

PortN

um

Pas

swor

d1

Pas

swor

d2

Par1

Par2

Par3

Par4

SetTime (70) C

PortN

um

Pas

swor

d1

Pas

swor

d2

Seg

undo

Min

uto

Hor

a

R

Stat

us

GetTime (71) C

PortN

um

Pas

swor

d1

Pas

swor

d2

R

Seg

undo

Min

uto

Stat

us

Hor

a

SetDate (72) C

PortN

um

Pas

swor

d1

Pas

swor

d2

Día

Mes

Año

R

Stat

us

GetDate (73) C

PortN

um

Pas

swor

d1

Pas

swor

d2

R

Día

Mes

Stat

us

Año

WriteByte (74) C

PortN

um

Pas

swor

d1

Pas

swor

d2

Dire

cció

n

Dat

os

Page 185: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Time

161

Service (no.)

Seed

Cod

e

PortN

um

Pas

swor

d1

Pas

swor

d2

Par1

Par2

Par3

Par4

R

Stat

us

ReadByte (75) C

PortN

um

Pas

swor

d1

Pas

swor

d2

Dire

cció

n

R

Dat

os

Stat

us

WriteBlock (76) C

PortN

um

Pas

swor

d1

Pas

swor

d2

Dire

cció

n de

Inic

io

Tam

año

del

Bloq

ue

Segm

ento

de B

uffe

r

Buf

fer

Offs

et

R

Stat

us

ReadBlock (77) C

PortN

um

Pas

swor

d1

Pas

swor

d2

Dire

cció

n de

Inic

io

Tam

año

del

Bloq

ue

Segm

ento

de B

uffe

r

Buf

fer

Offs

et

R

Stat

us

HaspID (78) C

LptN

um

Pas

swor

d1

Pas

swor

d2

R

IDLo

w

IDH

igh

Stat

us

ëë El parámetro Segmento de Buffer sólo es de relevancia para aplicaciones de 16 bits.

Page 186: Spanish Manual Hasp v11

Servicios HASP4 Time Parte 3 - Capítulo 13

162

Servicio 70: SetTime

Descripción Pone en hora el reloj de HASP4 Time

Llaves implicadas HASP4 Time

Sintaxis hasp (Servicio, CódigoSemilla, LptNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 70

PortNum Valor que indica el puerto para la búsqueda 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).

Par2 Minute - Minutos de la hora que desea fijar (00 a 59).

Par4 Hour - Horas de la hora que desea fijar (00 a 23).

Valores Devueltos

Par3 Status – Un código que indica el status de la operación. Véase “Códigos de Status del API de HASP” en la página 197.

Page 187: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Time

163

Servicio 71: GetTime

Descripción Consulta la hora del reloj HASP4 Time.

Llaves implicadas HASP4 Time

Sintaxis hasp (Servicio, CódigoSemilla, LptNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 71

PortNum Valor que indica el puerto para la búsqueda de la llave.

Password1 Primera password HASP4 Time.

Password2 Segunda password HASP4 Time.

Valores Devueltos

Par1 Second – Los segundos leídos del reloj HASP4 Time.

Par2 Minute – Los minutos leídos del reloj HASP4 Time.

Par3 Status – Un código que indica el status de la operación. Véase “Códigos de Status del API de HASP” en la página 197.

Page 188: Spanish Manual Hasp v11

Servicios HASP4 Time Parte 3 - Capítulo 13

164

Servicio 72: SetDate

Descripción Fija la fecha en el reloj de HASP4 Time

Llaves implicadas HASP4 Time

Sintaxis hasp (Servicio, CódigoSemilla, LptNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 72

PortNum Valor que indica el puerto para la búsqueda de la llave.

Password1 Primera password HASP4 Time.

Password2 Segunda password HASP4 Time.

Par1 Day – Día que desea fijar en el reloj HASP4 Time (1 a 31).

Par2 Month – Mes que desea fijar en el reloj HASP4 Time (1 a 12).

Par4 Year – Año que desea fijar en el reloj HASP4 Time (0 a 99).

Valores Devueltos

Par3 Status – Un código que indica el status de la operación. Véase “Códigos de Status del API de HASP” en la página 197.

Comentarios El rango de Años es de 0 a 99, donde 92 a 99 se refiere a los años 1992-1999, y 00 a 91 a 2000-2091.

Page 189: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Time

165

Servicio 73: GetDate

Descripción Obtiene la fecha del reloj HASP4 Time.

Llaves implicadas HASP4 Time

Sintaxis hasp (Servicio, CódigoSemilla, LptNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros Utilizados

Servicio 73

PortNum Valor que indica el puerto para la búsqueda de la llave.

Password1 Primera password HASP4 Time.

Password2 Segunda password HASP4 Time.

Valores Devueltos

Par1 Day – Día leído del reloj HASP4 Time (1 a 31).

Par2 Month – Mes leído del reloj HASP4 Time (1 a 12).

Par3 Status – Un código que indica el status de la operación. Véase “Códigos de Status del API de HASP” en la página 197.

Par4 Year – Año leído del reloj HASP4 Time (0 a 99).

Comentarios El rango de años es de 0 a 99, donde 92 a 99 se refieren a 1992-1999, y 00 a 91 a 2000-2091.

Page 190: Spanish Manual Hasp v11

Servicios HASP4 Time Parte 3 - Capítulo 13

166

Servicio 74: WriteByte

Descripción Escribe un byte de datos en la memoria HASP4 Time.

Llaves implicadas HASP4 Time

Sintaxis hasp (Servicio, CódigoSemilla, LptNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros Utilizados

Servicio 74

PortNum Valor que indica el puerto para la búsqueda de la llave.

Password1 Primera password HASP4 Time.

Password2 Segunda password HASP4 Time.

Par1 Address – La dirección de memoria HASP4 Time en la que desea escribir (0 a 15).

Par2 Data – Un byte de datos.

Valores Devueltos

Par3 Status – Un código que indica el status de la operación. Véase “Códigos de Status del API de HASP” en la página 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 (página 155)

Page 191: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Time

167

Servicio 75: ReadByte

Descripción Lee un byte de datos de la memoria HASP4 Time.

Llaves implicadas HASP4 Time

Sintaxis hasp (Servicio, CódigoSemilla, LptNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros Utilizados

Servicio 75

PortNum Valor que indica el puerto para la búsqueda de la llave.

Password1 Primera password HASP4 Time.

Password2 Segunda password HASP4 Time.

Par1 Address – La dirección de memoria HASP4 Time en la que desea leer (0 a 15).

Valores Devueltos

Par2 Data – Un byte de datos leído de la memoria HASP4 Time.

Par3 Status – Un código que indica el status de la operación. Véase “Códigos de Status del API de HASP” en la página 197.

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 (página 154).

Page 192: Spanish Manual Hasp v11

Servicios HASP4 Time Parte 3 - Capítulo 13

168

Servicio 76: WriteBlock

Descripción Escribe un bloque de datos en la memoria HASP4 Time.

Llaves implicadas HASP4 Time

Sintaxis hasp (Servicio, CódigoSemilla, LptNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros Utilizados

Servicio 76

PortNum Valor que indica el puerto para la búsqueda de la llave.

Password1 Primera password HASP4 Time.

Password2 Segunda password HASP4 Time.

Par1 Start Address – Define la dirección de memoria inicial para escribir un bloque (0 a 15).

Par2 Block length – Tamaño, en bytes, del bloque de datos (el máximo es 16).

Par3 Buffer segment– Dirección de Segmento de un buffer de programa (variable). De relevancia únicamente en aplicaciones de 16 – bits.

Par4 Buffer Offset – Dirección Offset de un programa de buffer (variable). De relevancia únicamente en aplicaciones de 16 – bits.

Valores devueltos

Par3: Status – Un código que indica el status de la operación. Véase “Códigos de Status del API de HASP” en la página 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 (página 158).

Page 193: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Time

169

Servicio 77: ReadBlock

Descripción Lee un bloque de datos de la memoria HASP4 Time.

Llaves implicadas HASP4 Time

Sintaxis hasp (Servicio, CódigoSemilla, LptNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 77

PortNum Valor que indica el puerto para la búsqueda de la llave.

Password1 Primera password HASP4 Time.

Password2 Segunda password HASP4 Time.

Par1 Start Address – dirección inicial de la memoria HASP4 Time para leer un bloque (0 a 15).

Par2 Block length – El tamaño, en bytes, del bloque de datos (máximo 16).

Par3 Buffer segment – Dirección del Segmento del buffer De relevancia sólo en aplicaciones 16 bits.

Par4 Buffer Offset – Dirección Offset de un buffer de programa (variable). El tamaño del buffer debe ser al menos tan largo como el tamaño del bloque.

Valores Devueltos

Par3 Status – Un código que indica el status de la operación. Véase “Códigos de Status del API de HASP” en la página 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 (página 157).

Page 194: Spanish Manual Hasp v11

Servicios HASP4 Time Parte 3 - Capítulo 13

170

Servicio 78: HaspID

Descripción Determina el Número ID de HASP4 Time.

Llaves implicadas HASP4 Time

Sintaxis hasp (Servicio, CódigoSemilla, LptNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 78

PortNum Valor que indica el puerto para la búsqueda de la llave.

Password1 Primera password HASP4 Time.

Password2 Segunda password HASP4 Time.

Valores Devueltos

Par1 IDLow – Palabra inferior (menos significante) del ID Number.

Par2 IDHigh – Palabra superior (más significante) del Número ID.

Par3 Status – Un código que indica el status de la operación. Véase “Códigos de Status del API de HASP” en la página 197.

Comentarios El Número ID es un entero (32 bits). Donde IDLow y IDHigh no tienen signo.

Número ID = IDLow + 65536 * IDHigh,

Si IDLow e IDHigh son con signo, deberá compensar los valores negativos sumando 65535.

Page 195: Spanish Manual Hasp v11

171

Parte 3 – Capítulo 14

Servicios HASP4 Net

Este capítulo describe los servicios del API de HASP para HASP4 Net. Cada

uno de los servicios se describe con detalle.

La Tabla 14.1 “Servicios y Parámetros HASP4 Net” de la página 173 lista

los parámetros de la rutina hasp() para cada servicio. A cada servicio listado

en la siguiente tabla se le asignan dos filas:

• La fila Call, C, lista los parámetros que se envían a la rutina hasp().

• La fila Return, R, rutina hasp(), lista los parámetros que devuelve la

rutina hasp().

Los valores de Par1, Par2, Par3, y Par4 cambian según el servicio.

Todos los parámetros son de 16 bits en las aplicaciones 16-bits y de 32 bits

en las aplicaciones de 32-bits.

Page 196: Spanish Manual Hasp v11

Servicios HASP4 Net Parte 3 - Capítulo 14

172

Uso de los servicios HASP4 Net El API de HASP4 Net requiere que algunos servicios sean llamados de

forma secuencia, cómo se describe a continuación:

1. De forma opcional, llame a la rutina hasp() con el servicio

SetConfigFilename y a continuación con el servicio LastStatus.

2. Opcionalmente, llame a la rutina hasp() con el servicio

SetServerByName y a continuación con LastStatus

3. Llame a la rutina hasp() con el servicio Login y a continuación con el

servicio LastStatus.

4. Cuando llame al servicio Login, ya puede llamar a cualquier servicio

HASP4 Net. Después de cada llamada a un servicio, llame a la rutina

hasp() con el servicio LastStatus.

5. Llame a la rutina hasp() con el servicio Logout y seguidamente con el

servicio LastStatus.

êê Bajo el protocolo TCP/IP, una aplicación Windows 16-bits que

llama a la rutina hasp() obtiene control automáticamente

mientras la rutina se está procesando. El control se toma a través

del bucle de mensajes de la aplicación en lugar de a través de la

siguiente instrucción después de llamar a la rutina hasp().

No llame a la rutina hasp() de nuevo hasta que se recupere el

control a través de la siguiente instrucción a la llamada. Si lo

hace, la aplicación se bloqueará. Para evitar esta situación, utilice

marcas para prevenir nuevas llamadas a la rutina hasp()

mientras se procesa la llamada previa.

Page 197: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Net

173

Tabla 10.1: Servicios HASP4 Net y sus correspondientes parámetros

Service (no.)

See

d

Cod

e

Pro

gNum

Pas

swor

d

1 Pas

swor

d

2 Par

1

Par

2

Par

3

Par

4

LastStatus (40) C

R

Est

ado

de

la re

d

Err

or d

el

Sis

tem

a

Cód

igo

de

avis

o

Login (42) C C

ódig

o

Sem

illa

Pro

gNum

Pas

swor

d

1 Pas

swor

d

2

R

Logout (43) C

Pro

gNum

Pas

swor

d

1 Pas

swor

d

2

R

ReadWord (44) C

Pro

gNum

Pas

swor

d

1 Pas

swor

d

2 Dire

cció

n

R

Dat

os

Sta

tus

WriteWord (45) C

Pro

gNum

Pas

swor

d

1 Pas

swor

d

2 Dire

cció

n

Dat

os

R

Sta

tus

Page 198: Spanish Manual Hasp v11

Servicios HASP4 Net Parte 3 - Capítulo 14

174

Service (no.)

See

d

Cod

e

Pro

gNum

Pas

swor

d

1 Pas

swor

d

2 Par

1

Par

2

Par

3

Par

4

HaspID (46) C

Pro

gNum

Pas

swor

d

1 Pas

swor

d

2

R ID

Low

IDH

igh

Sta

tus

IdleTime (48) C

Tiem

po

deso

cupa

do

Pro

gNum

Pas

swor

d

1 Pas

swor

d

2

R

ReadBlock (52) C

Pro

gNum

Pas

swor

d

1 Pas

swor

d

2 Dire

cció

n

Inic

ial

Long

itud

del b

loqu

e

Seg

men

to

del B

uffe

r

Buf

fer

Offs

et

R

Sta

tus

WriteBlock (53) C

Pro

gNum

Pas

swor

d

1 Pas

swor

d

2 Dire

cció

n

Inic

ial

Long

itud

del b

loqu

e

Seg

men

to

del B

uffe

r

Buf

fer

Offs

et

R

Sta

tus

SetConfigFilename (85) C

Tam

año

del B

uffe

r

Seg

men

to

del B

uffe

r

Buf

fer

Offs

et

R

Page 199: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Net

175

Service (no.)

See

d

Cod

e P

rogN

um

Pas

swor

d

1 Pas

swor

d

2 Par

1

Par

2

Par

3

Par

4

HaspEncodeData

(88)

C

Pro

gNum

Pas

swor

d

1 Pas

swor

d

2 Tam

año

del B

uffe

r

Seg

men

to

del B

uffe

r

Buf

fer

Offs

et

R

Sta

tus

HaspDecodeData

(89)

C P

rogN

um

Pas

swor

d

1 Pas

swor

d

2 Tam

año

del B

uffe

r

Seg

men

to

del B

uffe

r

Buf

fer

Offs

et

R

Sta

tus

SetServerByName (96) C

Tam

año

del B

uffe

r

Seg

men

to

del B

uffe

r

Buf

fer

Offs

et

R

HaspQueryLicense C

Pro

gNum

Pas

swor

d

1 Pas

swor

d

2

R

Lice

ncia

s

Activ

as

Lice

ncia

s

Máx

imas

Tipo

de

Llav

e

Act

ivac

ione

s

Page 200: Spanish Manual Hasp v11

Servicios HASP4 Net Parte 3 - Capítulo 14

176

Servicio 40: LastStatus

Descripción Comprueba el estado de la llamada previa a la rutina hasp(). Llame a hasp() con el servicio LastStatus después de cada llamada con uno de los servicios HASP4 Net.

Llaves implicadas HASP4 Net

Sintaxis hasp (Servicio, SeedCode, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 40

Par1 Net Status - Un código 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 código de error – consulte la tabla 15.3 “Códigos de Status HASP4 Net” en la página 200.

Par2 System error - Un código de error que depende del contexto. Por ejemplo:

• Un error de comunicación de NetBIOS devuelve un código de error específico de NetBIOS.

• Un error en el archivo de configuración HASP4 Net retorna el número de línea del archivo de configuración donde se encuentra el error.

Par3 Warning – Un código de aviso. Vea la tabla 15.4 “Códigos de aviso de HASP4 Net” en la página 204.

Comentarios Si ocurre un error, su aplicación debe mostrar en pantalla el Net status, System Error y Warning.

Page 201: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Net

177

Servicio 42: Login

Descripción Ejecute un login HASP4 Net. La aplicación protegida accede al Administrador de Licencias HASP solicitando una licencia.

Llaves implicadas HASP4 Net

Sintaxis hasp (Servicio, SeedCode, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 42

ProgNum El número asignado a la aplicación en la memoria HASP4 Net, mediante la utilidad HaspEdit. Vea “Acceso a las llaves con HASP Edit” en la página 73.

Password1 Primera password HASP4 Net.

Password2 Segunda password HASP4 Net.

Valores Devueltos Use el Servicio 40: LastStatus (página 176) para comprobar si la llamada se ha realizado correctamente.

Comentarios Para una descripción del proceso de login, vea “Cómo trabaja HASP4 Net” en la página 210.

A excepción de SetConfigFilename, SetServerByName, y LastStatus, llame a login antes que a otro servicio.

Si llama a la rutina hasp() con el servicio login más de una vez desde la misma estación, el Administrador de Licencias HASP no añade la estación y la aplicación a la tabla log una segunda vez. En otras palabras, el Administrador de Licencias HASP no consume una licencia adicional de la aplicación.

Si no se apagó adecuadamente el PC, al reiniciar la aplicación protegida está listada en la tabla log y el Administrador de Licencias HASP4 Net no consume una licencia adicional.

Page 202: Spanish Manual Hasp v11

Servicios HASP4 Net Parte 3 - Capítulo 14

178

Múltiples procesos Win32 bajo Windows NT o Windows 95/98/ME toman sólo una licencia con un solo protocolo, o cuando NetBIOS e IPX son utilizados en combinación. Sin embargo, estos procesos bajo estos sistemas operativos toman dos licencias si TCP/IP es utilizado junto con NetBIOS y/o IPX.

Page 203: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Net

179

Servicio 43: Logout

Descripción Realiza un logout de HASP4 Net. Cuando llama a hasp() con el servicio logout, el Administrador de Licencias HASP borra la estación y la aplicación de la tabla de log HASP4 Net. Como resultado, se libera una licencia.

Llaves implicadas HASP4 Net

Sintaxis hasp (Servicio, SeedCode, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 43

ProgNum El número asignado a la aplicación en la memoria HASP4 Net mediante la utilidad HaspEdit. Vea “Acceso a las llaves con HASP Edit” en la página 73.

Password1 Primera password HASP4 Net.

Password2 Segunda password HASP4 Net.

Valores devueltos Use el Servicio 40: LastStatus (página 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 número de logins.

Si no se realiza un logout HASP4 Net, la estación permanece listada en la tabla log de HASP4 Net. En este caso el comportamiento es el siguiente:

Page 204: Spanish Manual Hasp v11

Servicios HASP4 Net Parte 3 - Capítulo 14

180

• El número de estaciones ejecutando la aplicación al mismo tiempo permanece inalterado y no se libera una licencia. Si ha autorizado a una aplicación protegida a funcionar en n estaciones, y n estaciones han realizado un login HASP4 Net, ninguna otra estación puede ejecutar la aplicación hasta que una de esas n estaciones realice un logout HASP4 Net.

• Si la misma estación reactiva la aplicación, la aplicación funciona utilizando la licencia que ya ha sido concedida.

* Cuando el número de estaciones ejecutando una aplicación protegida alcanza el máximo y hay un intento de activar la aplicación desde otra estación, el Administrador de Licencias HASP busca en la tabla log una estación inactiva. Si encuentra una, el Administrador de Licencias HASP elimina la estación inactiva de la tabla log de HASP. Como resultado, libera una licencia e inmediatamente la concede a la estación que realizó la solicitud. Por defecto, el tiempo para considerar inactiva una estación es de 36 horas. Puede cambiar este valor mediante el servicio 48: IdleTime (página 184).

Page 205: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Net

181

Servicio 44: ReadWord Descripción Lee un word de datos de la memoria HASP4 Net.

Llaves implicadas HASP4 Net

Sintaxis hasp (Servicio, SeedCode, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 44

ProgNum El número asignado a la aplicación en la memoria HASP4 Net mediante la utilidad HASP Edit. Vea “Acceso a las llaves con HASP Edit” en la página 73.

Password1 Primera password HASP4 Net.

Password2 Segunda password HASP4 Net.

Par1 Address - La dirección de memoria HASP4 Net desde la que desea leer (0 a 247).

Valores Devueltos Use el Servicio 40: LastStatus (página 176) para comprobar si la llamada se ha realizado correctamente.

Par2 Data Datos leídos de la memoria HASP4 Net.

Par3 Status – Código que indica el status de la operación. Vea “Códigos de Status del API de HASP” en la página 197.

Page 206: Spanish Manual Hasp v11

Servicios HASP4 Net Parte 3 - Capítulo 14

182

Servicio 45: WriteWord Descripción Escribe un word de datos en la memoria HASP4 Net.

Llaves implicadas HASP4 Net

Sintaxis hasp (Servicio, SeedCode, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 45

ProgNum

Password1 Primera password HASP4 Net.

Password2 Segunda password HASP4 Net.

Par1 Address - La dirección de memoria HASP4 Net donde quiere escribir (0 a 247).

Par2 Data - Una palabra de datos.

Valores Devueltos Use el Servicio 40: LastStatus (página 176) para comprobar si la llamada se ha realizado correctamente.

Par3 Status – Código que indica el status de la operación. Vea “Códigos de Status del API de HASP” en la página 197.

Comentarios Los offsets de los words 24 y posteriores de la memoria HASP4 Net están reservados para la lista de programa HASP4 Net. Si quiere escribir en alguno de esos offsets, puede sobrescribir los parámetros de protección que ha salvado previamente en el área de memoria.

Page 207: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Net

183

Servicio 46: HaspID

Descripción Determina el número ID de HASP4 Net (ID Number).

Llaves implicadas HASP4 Net

Sintaxis hasp (Servicio , SeedCode, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 46

ProgNum El número asignado a la aplicación en la memoria HASP4 Net mediante la utilidad HASP Edit. Véase “Acceso a las llaves con HASP Edit” en la página 73.

Password1 Primera password HASP4 Net.

Password2 Segunda password HASP4 Net.

Valores Devueltos Use el Servicio 40: LastStatus (página 176) para comprobar si la llamada se ha realizado correctamente.

Par1 IDLow - Word inferior (el menos significativo) del número ID

Par2 IDHigh - Word superior (el más significativo) del número ID

Par3 Status - Un código que indica el status de la operación. Vea “Códigos de Status del API de HASP en la página 197.

Comentarios El número de identificación es un entero largo (32 bits). Se calcula como sigue, si IDLow e IDHigh son sin signo.

Número ID = IDLow + 65536 * IDHigh,

Si IDLow e IDHigh son con signo, necesita compensar el valor negativo sumando 65535.

Page 208: Spanish Manual Hasp v11

Servicios HASP4 Net Parte 3 - Capítulo 14

184

Servicio 48: IdleTime

Descripción Controla las estaciones que no utilizan una aplicación protegida. Con IdleTime, se especifica una franja de tiempo. Si la estación que utiliza la aplicación protegida no accede a HASP4 Net dentro de este tiempo, el Administrador de Licencias HASP considera la estación como inactiva.

Llaves implicadas HASP4 Net

Sintaxis hasp (Servicio, IdleTime, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados Servicio 48

IdleTime La franja de tiempo en minutos (0 a 65535).

Una estación que no accede a la llave durante este espacio de tiempo se considera inactiva.

ProgNum El número asignado a la aplicación en la memoria HASP4 Net mediante la utilidad HASP Edit. Véase “Acceso a las llaves con HASP Edit” en la página 73.

Password1 Primera password HASP4 Net.

Password2 Segunda password HASP4 Net.

Valores Devueltos Use el Servicio 40: LastStatus (página 176) para comprobar si la llamada se ha realizado correctamente.

Comentarios

Cuando el número de estaciones ejecutando una aplicación protegida ha alcanzado su máximo y se intenta activar la aplicación desde otra estación, el Administrador de Licencias HASP busca en la tabla log una estación inactiva. Si encuentra una, el Administrador de Licencias HASP borra la estación inactiva de la tabla log de HASP. Como resultado, se libera una licencia que se asigna a la estación que realizó un login.

Page 209: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Net

185

La aplicación protegida, funcionando en la estación que fue eliminada de la tabla log, retornará un código de error (error 135 ó 139) la próxima vez que intenta acceder a HASP4 Net.

Cuando una estación 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 después de un servicio login. Si no fija el idletime, el Administrador de Licencias HASP utiliza su valor predeterminado, que es de 36 horas.

Page 210: Spanish Manual Hasp v11

Servicios HASP4 Net Parte 3 - Capítulo 14

186

Servicio 52: ReadBlock

Descripción Lee un bloque de datos de la memoria HASP4 Net.

Llaves implicadas HASP4 Net

Sintaxis hasp (Servicio, SeedCode, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 52

ProgNum El número asignado a la aplicación en la memoria HASP4 Net mediante la utilidad HASP Edit. Véase “Acceso a las llaves con HASP Edit” en la página 73.

Password1 Primera password HASP4 Net.

Password2 Segunda password HASP4 Net.

Par1 Start Address - Define la dirección inicial de memoria HASP4 Net para leer el bloque (0 a 247).

Par2 Block Size - Tamaño del bloque de datos en words (máximo 24 words).

Par3 Buffer segment - Dirección del segmento de un buffer de programa (variable). De relevancia sólo en aplicaciones de 16 bits

Par4 Buffer Offset – Dirección Offset de un buffer de programa (variable). El tamaño del buffer debe ser al menos tan largo como el tamaño del bloque.

Page 211: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Net

187

Valores Devueltos Use el Servicio 40: LastStatus (página 176) para comprobar si la llamada se ha realizado correctamente.

Par3 Status - Un código que indica el status de la operación. Vea “Códigos de Status del API de HASP en la página 197.

Page 212: Spanish Manual Hasp v11

Servicios HASP4 Net Parte 3 - Capítulo 14

188

Servicio 53: WriteBlock

Descripción Escribe un bloque de datos en la memoria HASP4 Net.

Llaves implicadas HASP4 Net

Sintaxis hasp (Servicio, SeedCode, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 53

ProgNum El número asignado a la aplicación en la memoria HASP4 Net mediante la utilidad HASP Edit. Véase “Acceso a las llaves con HASP Edit” en la página 73.

Password1 Primera password HASP4 Net.

Password2 Segunda password HASP4 Net.

Par1 Start Address - Define la dirección inicial de la memoria HASP4 Net para escribir un bloque (0 a 247).

Par2 Block Size - Tamaño del bloque de datos en words (máximo 24 words).

Par3 Buffer segment - Dirección del segmento de un buffer de programa (variable).

No necesita especificar el parámetro del segmento del buffer para aplicaciones de 32-bits.

Par4 Buffer Offset - Dirección Offset de un buffer de programa (variable). El tamaño del buffer debe ser al menos tan largo como el tamaño del bloque.

Valores Devueltos Use el Servicio 40: LastStatus (página 176) para comprobar si la llamada se ha realizado correctamente.

Page 213: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Net

189

Comentarios Los offsets del word 24 en delante de la memoria HASP4 Net están reservados para el listado de programas HASP4 Net.

Si escribe en cualquier de estos offsets, se podrían sobrescribir los parámetros de protección que ha guardado previamente en esta área de memoria.

Page 214: Spanish Manual Hasp v11

Servicios HASP4 Net Parte 3 - Capítulo 14

190

Servicio 85: SetConfigFilename

Descripción Fija el nombre del archivo de configuración de HASP4 Net. El archivo de configuración de HASP4 Net contiene parámetros de ajuste para la aplicación protegida.

Llaves Implicadas HASP4 Net

Sintaxis hasp (Servicio, SeedCode, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 85

Par2 Buffer Size - El tamaño en bytes del buffer que contiene el nombre del archivo de configuración HASP4 Net.

Par3 Buffer Segment - La dirección del segmento del buffer que contiene el nombre del archivo de configuración de HASP4 Net. De relevancia sólo para aplicaciones 16 bits.

Par4 Buffer Offset - La dirección offset del buffer que contiene el nombre del archivo de configuración de HASP4 Net.

Valores Devueltos Use el Servicio 40: LastStatus (página 176) para comprobar si la llamada se ha realizado correctamente.

Comentarios Si utiliza el servicio SetConfigFilename, llámelo antes de realizar un login HASP4 Net. Si no usa el SetConfigFilename, la aplicación protegida o bien no utiliza un archivo de configuración de HASP4 Net, o utiliza el archivo por defecto llamado nethasp.ini si lo encuentra. Para más información sobre el archivo de configuración HASP4 Net, vea “Configuración de clientes HASP4 Net” (página 247).

Page 215: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Net

191

Servicio 88: HaspEncodeData

Descripción Codifica datos a través de HASP4 Net.

Llaves implicadas HASP4 Net

Sintaxis hasp (Servicio, SeedCode, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 88

ProgNum El número asignado a la aplicación en la memoria HASP4 Net mediante la utilidad HASP Edit. Véase “Acceso a las llaves con HASP Edit” en la página 73.

Password1 Primera Password HASP4 Net

Password2 Segunda Password HASP4 Net

Par1 0 (reservado)

Par2 Buffer Size- El tamaño en bytes del buffer a codificar. Debe tener al menos 8 bytes de tamaño.

Par3 Buffer Segment - La dirección del segmento del buffer. De relevancia sólo en aplicaciones 16 bits.

Par4 Buffer Offset - La dirección offset del buffer.

Valores Devueltos Use el Servicio 40: LastStatus (página 176) para comprobar si la llamada se ha realizado correctamente.

Par3 Status - Un código que indica el status de la operación. Vea “Códigos de Status del API de HASP” en la página 197.

Comentarios El contenido del buffer de programa se codifica a través de la HASP conectada y se actualiza sobre el terreno.

Page 216: Spanish Manual Hasp v11

Servicios HASP4 Net Parte 3 - Capítulo 14

192

Este servicio sólo puede usarse con la generación HASP4 de llaves HASP. Si hay una llave anterior a la generación HASP4 conectada, los datos no se codificarán y el servicio devolverá un código de error.

Este servicio no está disponible para aplicaciones DOS.

Si los datos se codifican con una aplicación Win16, el tamaño máximo del buffer es 64K. Los datos codificados con una aplicación Win32 que excedan las 64K no podrán decodificarse desde el API Win16.

La codificación durante la ejecución debe reducirse al mínimo. En su lugar, entregue al usuario final archivos y datos codificados previamente para su decodificación. Vea el capítulo 13 para mayor información.

Page 217: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Net

193

Servicio 89: HaspDecodeData

Descripción Decodifica datos a través de HASP4 Net.

Llaves implicadas HASP4 Net

Sintaxis hasp (Servicio, SeedCode, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 89

ProgNum El número asignado a la aplicación en la memoria HASP4 Net mediante la utilidad HASP Edit. Véase “Acceso a las llaves con HASP Edit” en la página 73.

Password1 Primera Password HASP4 Net

Password2 Segunda Password HASP4 Net

Par1 0 (reservado)

Par2 Buffer Size- El tamaño en bytes del buffer a codificar. Debe tener al menos 8 bytes de tamaño.

Par3 Buffer Segment - La dirección del segmento del buffer. De relevancia sólo en aplicaciones 16 bits.

Par4 Buffer Offset - La dirección offset del buffer.

Valores Devueltos Use el Servicio 40: LastStatus (página 176) para comprobar si la llamada se ha realizado correctamente.

Par3 Status - Un código que indica el status de la operación. Vea “Códigos de Status del API de HASP” en la página 197.

Comentarios El contenido del buffer de programa se decodifica a través de la HASP conectada y se actualiza sobre el terreno

Page 218: Spanish Manual Hasp v11

Servicios HASP4 Net Parte 3 - Capítulo 14

194

Este servicio sólo puede usarse con la generación HASP4 de llaves HASP. Si hay una llave anterior a la generación HASP4 conectada, los datos no se decodificarán y el servicio devolverá un código de error.

Si los datos se decodifican con una aplicación Win16, el tamaño máximo del buffer es 64K. Los datos codificados con una aplicación Win32 que excedan las 64K no podrán decodificarse desde el API Win16.

Page 219: Spanish Manual Hasp v11

Uso del API de HASP Servicios HASP4 Net

195

Servicio 96: SetServerByName

Descripción Especifica el nombre del Administrador de Licencias HASP e instruye a la aplicación protegida para comunicarse con el Administrador de Licencias HASP específico.

Llaves implicadas HASP4 Net

Sintaxis hasp (Servicio, SeedCode, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados Servicio 96

Par2 Buffer Size - El tamaño en bytes del buffer con el nombre del Administrador de Licencias HASP.

Par3 Buffer Segment - La dirección del segmento del buffer que contiene el nombre del Administrador de Licencias HASP. No es necesario especificar el parámetro del segmento del buffer para aplicaciones de 32-bits.

Par4 Buffer Offset - La dirección offset del buffer con el nombre del Administrador de Licencias HASP.

Valores Devueltos Use el Servicio 40: LastStatus (página 176) para comprobar si la llamada se ha realizado correctamente.

Comentarios Si llama a la rutina hasp() con el servicio SetServerByName, hágalo antes de realizar un login HASP4 Net.

Para nombrar un Administrador de Licencias HASP, cárguelo con el switch –srvname, vea “Parámetros del Administrador de Licencias HASP” (página 236).

Cuando una aplicación 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 ubicación del Administrador de Licencias HASP. Cuando la aplicación realiza un login HASP4 Net, se accede al Administrador de Licencias HASP de la ubicación guardada.

El nombre del Administrador de Licencias HASP puede ser de hasta siete caracteres.

Page 220: Spanish Manual Hasp v11

Servicios HASP4 Net Parte 3 - Capítulo 14

196

Servicio 104: HaspQueryLicense

Descripción Averigua los atributos actuales de la licencia desde la HASP4 Net.

Llaves implicadas HASP4 Net

Sintaxis hasp (Servicio, SeedCode, ProgNum, Password1, Password2, Par1, Par2, Par3, Par4)

Parámetros utilizados

Servicio 104

ProgNum El número asignado a la aplicación en la memoria HASP4 Net con la utilidad HASP Edit. Vea “Acceso a las llaves con HASP Edit” en la página 73.

Password1 Primera Password HASP4 Net

Password2 Segunda Password HASP4 Net

Valores Devueltos Use el Servicio 40: LastStatus (página 176) para comprobar si la llamada se ha realizado correctamente.

Par1 Número de licencias activas actualmente (usuarios concurrentes) para ese ProgNum

Par2 Máximo número de licencias disponibles para ese ProgNum

Par3 Tipo de llave HASP4 Net

Par4 Número de activaciones restantes para ese ProgNum (-1 = ilimitadas).

Page 221: Spanish Manual Hasp v11

197

Parte 3 – Capítulo 15

Códigos de Status del API de HASP

Cuando utiliza el API para acceder a HASP, la rutina hasp () devuelve un

código de status en Par3. Las siguientes tablas enumeran los códigos de

status devueltos según el tipo de llave HASP que esté utilizando.

Tabla 15.1: Códigos de Status para todas las llaves HASP

Código Descripción

0 Operación realizada con éxito.

-1 Time-out: error en una operación de escritura.

-2 La dirección indicada no está dentro del rango.

-3 No se ha encontrado una HASP con la password indicada.

-4 Se encontró una HASP pero no es una HASP de memoria.

-5 Error en una operación de escritura.

-6 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.

Page 222: Spanish Manual Hasp v11

Códigos de Status del API de HASP Parte 3 - Capítulo 15

198

Código Descripción

-7 El tamaño del buffer es muy pequeño. Este error ocurre únicamente con los servicios que requieren un tamaño mínimo de buffer.

-8 El hardware no soporta el servicio solicitado. Este servicio requiere una llave de la generación HASP4 conectada

-9 Puntero no válido. El puntero enviado al servicio no es válido

-10 Acceso a la llave prohibido porque la aplicación está trabajando a través de una pantalla remota en Citrix Winframe o Windows Terminal Server (la aplicación sólo funciona en la pantalla de consola)

-11 Acceso a la llave prohibido porque la aplicación está trabajando a través de una pantalla remota en Citrix Winframe o Windows Terminal Server (se requiere Service Pack 4 + para detectar si está trabajando en la consola).

-12 Se envió al servicio un parámetro no válido o fuera de rango.

-100 No puede abrir el HASP Device Driver

De aplicación para aplicaciones Win32.

Instale el HASP Device Driver

-101 No puede abrir el HASP Device Driver

De aplicación para aplicaciones Win32

-102 No puede cerrar el HASP Device Driver

De aplicación para aplicaciones Win32

-110 No puede abrir el HASP Device Driver

De aplicación 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 aplicación a aplicaciones DOS, DOS Extender, y Windows que tratan de acceder al HASP Device Driver.

Page 223: Spanish Manual Hasp v11

Uso del API de HASP Códigos de Status del API de HASP

199

Código Descripción

-112 No puede cerrar el HASP Device Driver

De aplicación a aplicaciones DOS, DOS Extender, y Windows que tratan de acceder al HASP Device Driver.

-120 No puede ubicar memoria DOS

De aplicación para aplicaciones DOS Extender y Windows con llaves monopuesto

Trate de liberar memoria.

-121 Error liberando memoria DOS

De aplicación para aplicaciones DOS Extender y Windows con llaves monopuesto

-999 Servicio no válido

Códigos de Status para HASP4 Time Tabla 15.2 Códigos de Status para HASP4 Time

Código Descripción

0 Operación realizada con éxito.

-20 Día no válido.

-21 Mes no válido.

-22 Año no válido.

-23 Segundos no válidos.

-24 Minutos no válidos.

-25 Horas no válidas.

-26 Dirección no válida: la dirección no está dentro del rango 0 a 15.

-27 Time-out: error en una operación de escritura.

-28 No se encontró una HASP con las passwords especificadas.

-29 Se encontró una llave HASP pero no es una HASP4 Time.

Page 224: Spanish Manual Hasp v11

Códigos de Status del API de HASP Parte 3 - Capítulo 15

200

Códigos LastStatus de HASP4 Net Cuando llama a la rutina hasp() con el servicio LastStatus de HASP4 Net, la

rutina hasp() retorna un código de status en Par1 (NetStatus), con el status

de la llamada anterior. Si ocurre un error que depende del contexto, recibirá

en Par2 (Error de Sistema) cuando llame a LastStatus. La rutina hasp()

también puede devolver un código de alerta en Par3.

Cuando la rutina hasp() retorna un error, la ejecución del servicio se detiene y

no se completa.

Los códigos LastStatus se dividen en dos grupos:

Códigos de Status 1 a 127 – indican errores en las comunicaciones entre la

aplicación protegida y el Administrador de Licencias HASP, o errores en los

parámetros que ha enviado a la rutina hasp().

Códigos de Status 129 a 151 – indican errores que ocurren después de

establecerse la comunicación entre cliente y servidor.

La siguiente tabla enumera los posibles valores de Par1 (NetStatus).

Tabla 15.3: Códigos NetStatus de HASP4 Net

Código Descripción

0 Operación realizada con éxito.

1 Los protocolos IPX, NetBIOS, o TCP/IP no se han instalado adecuadamente, actúe en consecuencia.

2 Error de comunicaciones; no es posible obtener el número de socket (de aplicación para IPX y TCP/IP).

Verifique que el protocolo está bien instalado.

3 Error de comunicaciones.

NetBIOS no puede establecer la sesión.

IPX no puede obtener la dirección del Administrador de licencias HASP. Verifique que el protocolo está bien instalado.

TCP/IP no puede conectar con el servidor. Verifique que la dirección del servidor es correcta.

Page 225: Spanish Manual Hasp v11

Uso del API de HASP Códigos de Status del API de HASP

201

Código Descripción

4 No se encontró el Administrador de Licencias HASP.

Compruebe que su aplicación tiene acceso al archivo de dirección.

5 No puede leer el archivo de dirección del Administrador de Licencias HASP.

6 No pudo cerrar el archivo de dirección del Administrador de Licencias HASP.

7 Error de Comunicación en envío de un paquete (aplicable a IPX y NetBIOS). Verifique que el protocolo está bien instalado.

8 Sin respuesta del Administrador de Licencias HASP. IPX – la red está ocupada o se han encontrado archivos de dirección incorrectos. En el último caso, borre todas las copias de los archivos haspaddr.dat y newhaddr.dat.

10 Ha llamado a la rutina hasp() con uno de los servicios, sin llamar antes al servicio login.

11 Error de Comunicación de adaptador (de aplicación sólo para NetBIOS). Verifique que el protocolo está bien instalado.

15 No se encontró activo el Administrador de Licencias HASP.

18 No puede realizar un login de HASP4 Net debido a una llamada SetServerByName infructuosa.

19 Error de sintaxis en el archivo de configuración. El servicio LastStatus retorna el número de la línea que contiene el error en Par2. Si LastStatus devuelve 0 en Par2, existe un valor ilegal en una variable de entorno.

20 Error en el manejo del archivo de configuración HASP. Una operación de archivo de tipo “abrir archivo” o “ leer archivo” ha fallado. El servicio LastStatus retorna el código de error de sistema en Par2.

Page 226: Spanish Manual Hasp v11

Códigos de Status del API de HASP Parte 3 - Capítulo 15

202

Código Descripción

21 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.

22 HASP4 Net no pudo liberar memoria DOS. Este error se produce únicamente en entornos HASP4 Net bajo DOS extendido y Windows.

23 Dirección de memoria HASP4 Net no válida.

25 Error al cargar winsock.dll (de aplicación sólo a TCP/IP e IPX).

26 Error al descargar winsock.dll (de aplicación sólo a TCP/IP e IPX).

28 Error al iniciar winsock.dll (de aplicación sólo a TCP/IP e IPX).

30 Fallo al cerrar un socket (de aplicación sólo con TCP/IP)

33 Se ha solicitado el servicio SetProtocol sin realizar un logout.

34 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).

129 La HASP4 Net conectada al Administrador de Licencias HASP no es correcta

130 El número de programa especificado no está en la lista de programas de la memoria HASP4 Net.

131 Error de lectura de la memoria HASP4 Net.

132 Error de escritura de la memoria HASP4 Net.

133 El login actual excede el número de estaciones autorizadas para ejecutar la aplicación simultáneamente.

134 El login actual excede el número de ejecuciones autorizadas para la aplicación.

Page 227: Spanish Manual Hasp v11

Uso del API de HASP Códigos de Status del API de HASP

203

Código Descripción

135 Ha llamado a la rutina hasp() con el servicio Logout sin llamar antes al servicio Login.

136 El Administrador de Licencias HASP esta saturado, esto puede ocurrir si su sistema HASP4 Net no está bien adaptado a la red.

137 No hay espacio en la tabla log HASP.

138 Error interno de HASP4 Net, el número de estaciones autorizadas es mayor que el número de estaciones que soporta el modelo HASP4 Net instalado.

139 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.

140 El Administrador de Licencias HASP no sirve a la red de su estación.

141 Servicio no válido, o una nueva versión del API de HASP está comunicando con una versión anterior del Administrador de Licencias HASP.

142 No se ha encontrado el Administrador de Licencias HASP con el nombre especificado en el archivo de configuración HASP4 Net.

150 No se ha encontrado el Administrador de Licencias HASP con el nombre especificado. Este error procede del servicio SetServerByName.

151 Se han encontrado dos o más Administradores de Licencias HASP con un mismo nombre asignado. Este error procede del servicio SetServerByName.

Page 228: Spanish Manual Hasp v11

Códigos de Status del API de HASP Parte 3 - Capítulo 15

204

Código Descripción

152 Ha fallado la operación de codificado porque el hardware no soporta el servicio.

153 Ha fallado la operación de decodificado porque el hardware no soporta el servicio.

155 Se ha encontrado una versión antigua del Administrador de Licencias HASP. El API utilizado requiere la instalación de una versión más actual del Administrador de Licencias.

La siguiente tabla enumera los posibles códigos de alerta devueltos en Par3 utilizando el servicio LastStatus. Cuando Par3 retorna una alerta, la ejecución del servicio se completa excepto en lo indicado en la alerta.

Tabla 15.4: Códigos de Alerta HASP4 Net

Código Descripción

1 IPX está habilitado vía nethasp.ini o vía variable de entorno NETHASPPROTOCOL, pero el protocolo IPX no está instalado.

Esta alerta ocurre bajo el login de HASP4 Net.

2 NetBIOS está habilitado vía nethasp.ini o vía una variable de entorno, pero el protocolo NetBIOS no está instalado.

Esta alerta ocurre bajo el login de HASP4 Net.

3 IPX y NetBIOS están habilitados vía nethasp.ini o vía una variable de entorno, pero ambos protocolos no están instalados.

Esta alerta ocurre bajo el login de HASP4 Net.

4 TCP/IP está habilitado vía nethasp.ini o vía una variable de entorno, pero el protocolo TCP/IP no está instalado.

Esta alerta ocurre bajo el login de HASP4 Net.

5 IPX y TCP/IP están habilitados vía nethasp.ini o vía una variable de entorno, pero ambos protocolos no están instalados.

Esta alerta ocurre bajo el login de HASP4 Net.

Page 229: Spanish Manual Hasp v11

Uso del API de HASP Códigos de Status del API de HASP

205

Código Descripción

6 TCP/IP y NetBIOS están habilitados vía nethasp.ini o vía una variable de entorno, pero ambos protocolos no están instalados.

Esta alerta ocurre bajo el login de HASP4 Net.

7 IPX, NetBIOS y TCP/IP están habilitados vía nethasp.ini o vía una variable de entorno, pero ninguno de los tres protocolos están instalados.

Esta alerta ocurre bajo el login de HASP4 Net.

18 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.

19 Existe algún valor no válido en nethasp.ini, o no se ha reconocido una nueva palabra por parte de la versión antigua del API.

Este error ocurre bajo el login de HASP4 Net.

20 Los protocolos TCP o UDP se han especificado en el nethasp.ini junto con otro protocolo. Si la dirección 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 código de alerta para notificarle que TCP o UDP no están siendo utilizados debido a la falta de dirección IP.

Esta alerta ocurre después de usar SetProtocol.

22 El API de HASP no puede liberar memoria.

Esta alerta puede ocurrir después de cualquier servicio del API de HASP4 Net.

Los códigos LastStatus de HASP4 Net se actualizan constantemente. Para obtener las últimas actualizaciones, vea el archivo de ayuda del Administrador de Licencias HASP.

Page 230: Spanish Manual Hasp v11
Page 231: Spanish Manual Hasp v11

207

Parte 4

Uso de HASP4 Net en una red

Esta parte describe el sistema HASP4 Net y las herramientas y procesos

relacionados.

El capítulo “Conceptos Básicos HASP4 Net “ (página 209) explica los

términos y conceptos de importancia si está protegiendo software con HASP4

Net.

El capítulo “Protección de aplicaciones con HASP4 Net“ (página 221)

describe cómo puede proteger su aplicación para usar HASP4 Net.

El capítulo “Administración de Licencias HASP4 Net” (página 227) explica

la instalación del Administrador de Licencias HASP que provee licencias

HASP4 Net en la red.

El capítulo “Configuración de los clientes HASP4 Net” (página 247) describe

cómo una aplicación protegida con HASP4 Net – el cliente HASP4 Net –

puede configurarse con un archivo de configuración.

El capítulo “Monitorización de Licencias HASP4 Net” (página 257) explica el

uso del Monitor Aladdin que permite centralizar la administración de las

aplicaciones Administrador de Licencias HASP y las llaves HASP4 Net.

Page 232: Spanish Manual Hasp v11

Uso de HASP en una Red Parte 4

208

El capítulo “Adaptación de HASP4 Net a la red” (página 263) ofrece

información acerca de la adaptación de HASP4 Net a una red definiendo el

rango de estaciones y la adaptación del timeout.

Page 233: Spanish Manual Hasp v11

209

Parte 4 – Capítulo 17

Conceptos Básicos HASP4 Net

Este capítulo contiene términos y conceptos que son importantes si se está

protegiendo software con HASP4 Net. Antes de empezar el capítulo,

familiarícese con los términos y conceptos generales de HASP. Si no esta

usando HASP4 Net, puede saltarse este capítulo.

¿Qué es HASP4 Net?

HASP4 Net es una llave HASP diseñada para redes. Le permite una

distribución efectiva de su aplicación para entornos de red controlando el

número 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 aplicación contra el uso no autorizado, y monitorizar el número

de estaciones usando la aplicación simultáneamente.

Page 234: Spanish Manual Hasp v11

Conceptos Básicos de HASP4 Net Parte 4 – Capítulo 17

210

Figura 17.1 El Sistema HASP4 Net

¿Cómo trabaja HASP4 Net?

Cuando una aplicación protegida es activada desde una estación de la red,

accede al Administrador de Licencias HASP y solicita permiso de acceso

realizando un login HASP4 Net. El Administrador de Licencias HASP

entonces comprueba la llave HASP y accede a la memoria HASP4 Net para:

• Verificar que la aplicación protegida tienen licencia para funcionar.

• Comprobar que el número de estaciones permitidas para ejecutar la

aplicación protegida al mismo tiempo no ha sido excedido.

Si todos los resultados del chequeo son positivos, el Administrador de

Licencias HASP da a la aplicación permiso para funcionar y actualiza la

tabla log de HASP4 Net. Si no es así, devuelve un código de error.

Las imágenes de las siguientes páginas muestran el mecanismo de

protección HASP4 Net. La red mostrada en estas imágenes consta de cuatro

estaciones. En una de las estaciones, hay una HASP4 Net conectada y el

Administrador de Licencias HASP está activo.

La aplicación protegida número 1 esta autorizada para funcionar

simultáneamente en cinco estaciones. Las imágenes muestran el proceso por

el cual la estación 3 prueba a activar la aplicación protegida número 1.

Page 235: Spanish Manual Hasp v11

Uso de HASP en una Red Conceptos Básicos de HASP4 Net

211

Figura 17.2 Antes de un login HASP4 Net…

Las estaciones 1 y 2 están ejecutando la aplicación protegida 1, y ambas

están listadas en la tabla log. De las cinco estaciones que están autorizadas

para ejecutar la aplicación protegida concurrentemente, dos están ya

listadas en la tabla log.

Figura 17.3 Se realiza un login de HASP4 Net …

La estación 3 carga la aplicación protegida 1, la cual accede al

Administrador de Licencias HASP con un login de HASP4 Net. El

Administrador de Licencias HASP determina si la estación 3 está

autorizado o no para activar la aplicación.

Page 236: Spanish Manual Hasp v11

Conceptos Básicos de HASP4 Net Parte 4 – Capítulo 17

212

Figura 17.4 Después de un login HASP4 Net...

Los chequeos realizados por el Administrador de Licencias HASP son positivos, y la

aplicación 1 es autorizada para funcionar en la estación 3. La tabla de log se actualiza y

ahora incluye la estación 3.

Preparación de la Protección

Protección de aplicaciones con HASP4 Net

Al proteger su aplicación, puede elegir entre proteger su aplicación para uso

en modo local, para uso en red o para ambos. Para habilitar HASP4 Net, use

uno de los siguientes métodos:

• habilite HASP4 Net al utilizar la Envelope HASP

• Use los servicios HASP4 Net del API HASP en lugar de, o además de

otros servicios del API.

Para más información vea “Protección de aplicaciones con HASP4 Net”

(página 221).

Page 237: Spanish Manual Hasp v11

Uso de HASP en una Red Conceptos Básicos de HASP4 Net

213

Generación de Licencias con llaves HASP4 Net

Las llaves HASP4 Net le permiten hacer lo siguiente:

• Limitar el número de estaciones para cada aplicación protegida.

• Limitar el número de activaciones para cada aplicación protegida.

Existen diversos modelos de llaves HASP4 Net. El modelo de HASP4 Net

determina el número máximo de licencias disponible para cada aplicación

(ej. El número máximo de estaciones que pueden acceder a la aplicación

simultáneamente). Por ejemplo, HASP4 Net5 puede permitir desde cero

hasta cinco licencias. Otros modelos permiten hasta 10, 20, 50 ó 100 . Con

HASP4 NetU, su aplicación puede tener un número ilimitado de licencias.

Las llaves HASP4 Net están disponibles para puerto paralelo o puerto USB.

Uso de HASP4 Net

Instalación de HASP4 Net

Los pasos necesarios para instalar HASP4 Net en una red son los siguientes:

• Instale el HASP Device Driver o daemon adecuado y conecte la llave

HASP4 Net.

• Instale e inicie el Administrador de Licencias HASP en la misma

máquina. Para más información vea “Administración de licencias

HASP4 Net” (página 227)

• Personalice el Administrador de Licencias HASP y el cliente HASP4

Net, si es necesario. Para mayor información consulte “Personalización

del Administrador de Licencias HASP” (página 236) y “Configuración de

clientes HASP4 Net” (página 247).

Page 238: Spanish Manual Hasp v11

Conceptos Básicos de HASP4 Net Parte 4 – Capítulo 17

214

Administración de licencias con el Administrador de Licencias

HASP

El Administrador de Licencias HASP es la aplicación que comunica con la

aplicación protegida y la llave HASP4 Net, funcionando como enlace entre

ambos. Puede comunicar con varias aplicaciones protegidas funcionando en

la red y con múltiples llaves HASP4 Net conectadas al PC.

El Administrador de Licencias HASP está disponible para los siguientes

entornos: Windows 95/ 98/ ME, Windows NT /2000 / XP, Mac OS X y Novel

Netware 3.12 y posteriores.

El Administrador de Licencias HASP mantiene una tabla log que lista todas

las aplicaciones protegidas que han realizado un login HASP4 Net. La lista

identifica cada aplicación protegida, y la estación que activó la aplicación.

Una aplicación y su estación permanecen en la tabla log hasta que la

aplicación realiza un logout HASP4 Net.

Para más información consulte “Administración de Licencias HASP4 Net”

(página 227).

Solicitud de Licencias con el cliente HASP4 Net

La aplicación protegida actúa como cliente HASP4 Net. Solicita la licencia

HASP4 Net y comunica con el Administrador de Licencias HASP. Cuando

activa la aplicación protegida, realiza un login HASP4 Net para acceder al

Administrador de Licencias HASP con la solicitud para funcionar. Cuando la

aplicación protegida es cerrada, informa al Administrador de Licencias

HASP mediante un HASP4 Net logout.

ëë No confunda el login y logout de HASP4 Net con el login y logout estándar 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.

Page 239: Spanish Manual Hasp v11

Uso de HASP en una Red Conceptos Básicos de HASP4 Net

215

Los clientes HASP4 Net pueden configurarse individualmente. Para más

información consulte “Configuración de clientes HASP4 Net” (página 247).

Monitorización de Licencias con Aladdin Monitor

Aladdin Monitor permite centralizar la administración de aplicaciones de

Administrador de Licencias HASP y las llaves HASP4 Net.

Opciones disponibles:

• Comprobación de propiedades del Administrador de Licencias HASP.

• Comprobación de las llaves HASP4 Net.

• Inicio y detención del servicio Administrador de Licencias HASP.

Aladdin Monitor está disponible para los siguientes entornos: Windows 98 /

ME, Windows NT / 2000 / XP. Puede comunicar vía TCP / IP e IPX.

Para más información consulte “Monitorizando Licencias HASP4 Net”

(página 257).

Distribución de HASP4 Net

Distribución de HASP4 Net

Junto con la aplicación protegida, debe suministrar a su cliente con lo

siguiente:

• La llave HASP4 Net

• HASP Device Driver

• Administradores de Licencias HASP (con archivo de configuración

Nhsrv.ini)

• Aladdin Monitor

• Archivo de configuración para clientes HASP4 Net Nethasp.ini

Page 240: Spanish Manual Hasp v11

Conceptos Básicos de HASP4 Net Parte 4 – Capítulo 17

216

Asistencia al usuario final

La utilidad Aladdin Diagnostic permite a sus clientes recoger información

acerca de su sistema y de su llave HASP. Esta información le ayudará a

usted y a su cliente a resolver problemas que puedan encontrar con el uso de

aplicaciones protegidas.

Sus clientes pueden usar la utilidad Aladdin Diagnostic para:

• Chequear una llave HASP.

• Crear un archivo informe que contenga datos de los dispositivos Aladdin

y otra información relevante del sistema.

Aladdin Diagnostic está disponible para los siguientes entornos: Windows

95 / 98 / ME y Windows NT / 2000 / XP.

Para más información consulte “Asistencia a usuarios finales” (página 107).

Page 241: Spanish Manual Hasp v11

Uso de HASP en una Red Conceptos Básicos de HASP4 Net

217

Protocolos, Plataformas y Sistemas Operativos soportados

HASP4 Net es una solución multi-plataforma que soporta los siguientes

sistemas operativos.

Tabla 17.1 Plataformas Soportadas con HASP4 Net

Windows 3.x

Windows 95 / 98 /

ME / NT / 2000 /XP

Mac OS 8.6

Mac OS 9.x

Mac OS X

Novell

Cliente HASP4 Net

Si Si Si Si Si

Administrador de Licencias HASP

Si Si Si Si

Aladdin Monitor Si

Aladdin Diagnostic Si Si

Para la comunicación entre el cliente HASP4 Net y el Administrador de

Licencias HASP pueden utilizarse los siguientes protocolos.

Windows Apple Macintosh Novel Netware

IPX Soportado Soportado

TCP /IP (UDP / IP) Soportado Soportado

NetBIOS soportado

ë Se usa TCP / IP para referirse tanto a TCP / IP como a UDP / IP

Page 242: Spanish Manual Hasp v11

Conceptos Básicos de HASP4 Net Parte 4 – Capítulo 17

218

Preguntas Frecuentes

Pregunta ¿Es necesario instalar HASP4 Net en el servidor de archivos de la red?

Respuesta No. Se puede instalar la llave HASP4 Net y el Administrador de Licencias HASP en cualquier estación de la red. La estación asignada debe estar activa y el Administrador de Licencias HASP cargado mientras que la aplicación protegida con HASP4 Net se está ejecutando.

Pregunta ¿Puedo ver qué estaciones acceden a la llave HASP4 Net?

Respuesta Sí. La utilidad Aladdin Monitor muestra todas las estaciones que han activando una aplicación que ha realizado un login HASP4 Net al Administrador de Licencias HASP. Vea “Monitorización de licencias HASP4 Net” (página 257) para más información.

Pregunta ¿Si yo conecto dos llaves HASP4 Net5 del mismo código a una única estación, dispongo de 10 licencias?

Respuesta No. Cuando hay dos llaves HASP4 Net con el mismo código en el mismo PC, sólo una de ellas responde. Para permitir 10 licencias con dos llaves HASP4 Net5, conecte cada llave a una estación 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 estación de la red y un Administrador de Licencias HASP cargado. ¿Qué debo hacer para instalar mi llave HASP4 Net?

Respuesta 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.

Page 243: Spanish Manual Hasp v11

Uso de HASP en una Red Conceptos Básicos de HASP4 Net

219

Pregunta ¿Puede HASP4 Net trabajar sobre Internet?

Respuesta Sí. HASP4 Net trabaja sobre Internet con el protocolo TCP / IP.

Pregunta Si, por ejemplo, yo tengo una HASP4 Net20 ¿puedo dar acceso a sólo 17 usuarios?

Respuesta Si, usando HASP Edit puede especificar cualquier número de usuarios hasta 20.

Pregunta ¿Usando HASP4 Net, en que estación debo instalar el HASP Device Driver?

Respuesta Sólo en la estación con la llave HASP4 Net. El HASP Device Driver sirve como enlace entre la HASP y la aplicación protegida.

Puesto que la aplicación 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 estación que cargue el administrador de licencias HASP.

Page 244: Spanish Manual Hasp v11
Page 245: Spanish Manual Hasp v11

221

Parte 4 – Capítulo 18

Protección de aplicaciones

con HASP4 Net Este capítulo describe cómo puede proteger su aplicación con HASP4 Net.

Cuando proteja su aplicación, usted puede elegir entre la protección de su aplicación

para uso local, para su uso en red o para ambos. Para habilitar HASP4 Net use uno

de los siguientes métodos:

• Habilite HASP4 Net al utilizar la Envelope HASP

• Use los servicios HASP4 Net del API en lugar de, o además de, otros

servicios del API de HASP.

Page 246: Spanish Manual Hasp v11

Protección de Aplicaciones con HASP4 Net Parte 4 – Capítulo 18

222

Opciones de la Envelope HASP para HASP4 Net

La Envelope HASP le permite proteger su aplicación sin tener que alterar el

código fuente. Para información de los procesos básicos consulte “Protección

con la Envelope HASP” (página 43).

Envelope HASP para Win32

Además del proceso usual, realice los siguientes pasos:

• Introduzca las passwords HASP4 Net.

• Especifique un número para el programa.

• Indique cuantas licencias y activaciones desea suministrar para ese

archivo de programa. Si no desea limitar el número, active la opción

Unlimited. Esta información sólo es de interés si usted desea escribirlo

en la llave HASP4 Net conectada después del proceso de protección.

• Introduzca el nombre del archivo de configuración HASP4 Net, o

búsquelo. Para más información acerca del archivo de configuración

HASP4 Net, consulte “Configuración de clientes HASP4 Net” (página

247).

ë Si desea proteger su aplicación para uso local y de red, puede especificar los parámetros de HASP4 Net además de los parámetros para uso local.

Page 247: Spanish Manual Hasp v11

Uso de HASP en una Red Protección de Aplicaciones con HASP4 Net

223

La herramienta HASP Envelope de línea de comando

Si está utilizando la herramienta HASP Envelope de línea de comando, los

siguientes parámetros son de aplicación para habilitar HASP4 Net:

Tabla 18.1 Parámetros HASP Envelope para HASP4 Net

Parámetro Función

-nhpass <password1> <password2> Indica las passwords HASP4 Net

-prgnum <número de programa> Indica un número único de programa entre 1 y 112

-netcfg <nombre de archivo> Indica un archivo de configuración HASP4 Net

Servicios del API para HASP4 Net

Al proteger su aplicación para su uso en redes añadiendo llamadas API a su

código fuente, necesita usar los servicios HASP4 Net. Para una descripción

detallada acerca de cada servicio, consulte “Servicios HASP4 Net” (página

171).

ë Si desea proteger su aplicación para uso en modo local y de red, debe implementar tanto los servicios HASP4 Net como los servicios básicos y de memoria.

Page 248: Spanish Manual Hasp v11

Protección de Aplicaciones con HASP4 Net Parte 4 – Capítulo 18

224

Tabla 18.2 Servicios del API HASP4 Net

Servicio Nombre Operación

40 LastStatus Comprueba el status de la última llamada. Utilice este servicio después de cada llamada a la rutina hasp()

42 Login Solicita permiso al Administrador de Licencias HASP para activar la aplicación. Excepto para los servicios 85 ó 96, login debe ser la primera llamada a la rutina hasp()

43 Logout Solicita finalizar la sesión HASP4 Net al Administrador de Licencias HASP

44 ReadWord Lee un word de datos de la memoria HASP4 Net

45 WriteWord Escribe un word de datos en la memoria HASP4 Net

46 HaspID Obtiene el número ID de HASP4 Net

48 IdleTime Establece la máxima franja de tiempo para estaciones inactivas

52 ReadBlock Lee un bloque de datos de la memoria HASP4 Net

53 WriteBlock Escribe un bloque de datos en la memoria HASP4 Net

85 SetConfigFilename Establece el nombre del archivo de configuración HASP4 Net.

Page 249: Spanish Manual Hasp v11

Uso de HASP en una Red Protección de Aplicaciones con HASP4 Net

225

Servicio Nombre Operación

88 HaspEncodeData Codifica datos enviados a la llave HASP4 Net conectada. Utilícese junto con HaspDecodeData para verificar la presencia de una llave HASP4 Net determinada en la red.

89 HaspDecodeData Decodifica datos enviados a la llave HASP4 Net conectada. Utilícese junto con HaspEncodeData para verificar la presencia de una llave HASP4 Net determinada en la red.

96 SetServerByName Establece el Administrador de Licencias HASP al que la aplicación protegida realizará un login HASP4 Net.

Page 250: Spanish Manual Hasp v11
Page 251: Spanish Manual Hasp v11

227

Parte 4 – Capítulo 19

Administración de

Licencias HASP4 Net Este capítulo describe como administrar licencias HASP4 Net con el

Administrador de Licencias HASP.

El Administrador de Licencias HASP es la aplicación que comunica con la

aplicación protegida y la llave HASP4 Net, funcionando como enlace entre

ambas. Puede comunicar con múltiples aplicaciones protegidas trabajando

en la red y con múltiples llaves HASP4 Net conectadas al PC.

El Administrador de Licencias HASP está disponible para los siguientes

entornos: Windows 95 / 98 / ME, Windows NT/ 2000 / XP, Mac OS X y Novell

Netware 3.12 y posteriores.

Page 252: Spanish Manual Hasp v11

Administración de Licencias HASP4 Net Parte 4 – Capítulo 19

228

¿Cómo trabaja el Administrador de Licencias

HASP?

El Administrador de Licencias HASP mantiene una tabla log que lista todas

las aplicaciones protegidas que han realizado un login HASP4 Net. La lista

identifica cada aplicación protegida, y la estación que ha activado la

aplicación. Una aplicación y su estación permanecen en la tabla log hasta

que la aplicación realizar un logout HASP4 Net.

El Administrador de Licencias HASP usa la tabla log para controlar el

número de estaciones que están ejecutando una aplicación protegida al

mismo tiempo. Lo que asegura que el número de estaciones no excede el

máximo número de licencias permitidas por el programador. Por defecto la

tabla login puede controlar logins para hasta 250 aplicaciones.

Page 253: Spanish Manual Hasp v11

Uso de HASP en una Red Administración de Licencias HASP4 Net

229

Administrador de Licencias HASP para Windows El Administrador de Licencias HASP para Windows está disponible como

ejecutable para Windows 95 / 98 /ME / NT / 2000 / XP y como servicio para

Windows NT /2000 / XP.

El Administrador de Licencias HASP para Windows puede comunicar vía

TCP / IP, IPX y NetBIOS. Los protocolos pueden cargarse y descargarse

mediante la interfaz gráfica de usuario del Administrador de Licencias

HASP o mediante parámetros de línea de comando.

Instalación del Administrador de Licencias HASP bajo Windows

Ambos tipos de Administradores de Licencias HASP pueden instalarse con

el archivo de setup lmsetup.exe.

Instale el Administrador de Licencias HASP apropiado en la estación donde

esté conectada la llave HASP4 Net.

La instalación puede personalizarse usando los siguientes métodos:

• Inicie el Administrador de Licencias HASP con parámetros, vea

“Parámetros para el Administrador de Licencias HASP” (página 236).

• Use el archivo de configuración nhsrvw32.ini, vea “El archivo de

configuración nhsrv.ini” (página 239).

• Use el API de Instalación del Administrador de Licencias (sólo como

servicio Win32), vea “API de Instalación del Administrador de

Licencias” (página 240).

En una estación Windows 95/98/ME

El Administrador de Licencias HASP para Windows es nhsrvw32.exe. Use el

archivo de setup lmsetup.exe para instalarlo.

1. Instale el HASP Device driver y conecte la llave HASP4 Net a una

estación.

2. Instale el Administrador de Licencias HASP mediante lmsetup.exe

desde su CD HASP y siga las instrucciones del proceso de instalación.

Page 254: Spanish Manual Hasp v11

Administración de Licencias HASP4 Net Parte 4 – Capítulo 19

230

En una estación 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 sesión en la estación

para disponer de su funcionalidad.

1. Instale el HASP device driver y conecte HASP4 Net en una estación.

2. Instale el Administrador de Licencias ejecutando lmsetup.exe desde su

CD HASP y siga las instrucciones del proceso de instalación. Como

instalación tipo, seleccione Service.

ëë También puede integrar la instalación del servicio Administrador de Licencias HASP en su aplicación usando el API de Instalación del Administrador de Licencias HASP, que encontrará en el directorio utility\servers\win32\service\lmapi

Activación y Desactivación del Administrador de Licencias HASP

Aplicación Administrador de Licencias HASP

Para activar la aplicación Administrador de Licencias HASP, iníciela desde

el menú Inicio o desde el Explorador Windows. La aplicación

Administrador de Licencias HASP está siempre activa cuando se carga

cualquier protocolo y la llave HASP4 Net está conectada. Para desactivarlo,

pulse Exit del menú principal

Servicio Administrador de Licencias HASP

Para activar el servicio Administrador de Licencias HASP, inícielo desde el

menú Inicio o el Explorador Windows. Para desactivar el servicio

Administrador de Licencias HASP, use desde el panel de control Servicios de

Windows.

También puede usar Aladdin Monitor para iniciar y detener el servicio

Administrador de Licencias HASP.

Page 255: Spanish Manual Hasp v11

Uso de HASP en una Red Administración de Licencias HASP4 Net

231

Trabajo con Administrador de Licencias HASP

Puede operar con el Administrador de Licencias HASP mediante la interfaz

gráfica de usuario. También puede trabajar con él desde línea de comando.

Para abrir la ventana principal de la interfaz gráfica de usuario, pulse doble

clic sobre el icono de la llave HASP4 Net roja de la bandeja del sistema.

La ventana principal del Administrador de Licencias HASP mostrará la

siguiente información:

• Número de versión del Administrador de Licencias HASP

• Status de cada protocolo (loaded, unloaded, o failed to load) y la fecha

y hora del último cambio de status.

• Status del Administrador de Licencias HASP (activo o inactivo)

Puede cerrar la ventana principal del Administrador de Licencias HASP

pulsando el botón de cierre de la esquina derecha de la barra del título. 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 opción del menú.

Carga de protocolos

Para habilitar un protocolo, selecciónelo en el menú Load. Sólo puede

habilitar los protocolos que han sido instalados en el sistema.

Descarga de protocolos

Para deshabilitar un protocolo, selecciónelo en el menú Remove.

Visión 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.

Page 256: Spanish Manual Hasp v11

Administración de Licencias HASP4 Net Parte 4 – Capítulo 19

232

El Administrador de Licencias HASP para Mac

El Administrador de Licencias HASP para Mac está disponible para Mac OS

X. Se comunica vía TCP / IP.

El Administrador de Licencias HASP para Mac consiste en un daemon y la

interfaz gráfica de usuario. El Administrador de Licencias HASP para Mac

puede ser operado mediante la interfaz gráfica de usuario. También puede

operar daemon como herramienta de línea de comando.

Instalación del Administrador de Licencias HASP

Para instalar el Administrador de Licencias HASP bajo MAC OS X use la

utilidad de instalación de instalación del Administrador de Licencias HASP.

ë Para instalar el Administrador de Licencias HASP es necesario acceder al sistema como administrador.

1. Pulse doble clic sobre el archivo HASP License Manager Install en el

directorio License Manager del CD HASP.

2. Introduzca su password de administrador

3. Seleccione Install para realizar la instalación.

Activación y Desactivación del Administrador de Licencias HASP

Para activar el Administrador de Licencias HASP, inicie la aplicación desde

el menú de aplicaciones e inicie el daemon mediante Start Daemon en la

ventana de la aplicación. También puede iniciar el daemon utilizando el

script instalación.

ë Para cargar el Administrador de Licencias HASP automáticamente, active la opción Activate in system startup

Page 257: Spanish Manual Hasp v11

Uso de HASP en una Red Administración de Licencias HASP4 Net

233

Trabajo con Administrador de Licencias HASP

Puede operar con el Administrador de Licencias HASP mediante la interfaz

gráfica de usuario. También puede trabajar con él desde línea de comando,

vea “Parámetros del Administrador de Licencias HASP” (página 236).

El Administrador de Licencias HASP para Mac muestra la siguiente

información:

• Nombre y dirección del Servidor

• Parámetros disponibles

• Si el daemon se ha iniciado durante el inicio del sistema

• Status de Daemon

Opciones disponibles:

• Definición de parámetros (sólo cuando el proceso daemon está detenido)

• Inicio y detención de daemon

• Activación de daemon al iniciar

Definición 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 opción SRVNAMES e introduzca hasta seis nombres. Separe los

nombres con punto y coma, coma o espacio. Los nombres se asignarán cuando

se inicie el daemon.

ë Evite utilizar caracteres no-ASCII en los nombres de servidor, sus códigos difieren entre sistemas. Los nombres de server no diferencian entre mayúsculas y minúsculas.

Page 258: Spanish Manual Hasp v11

Administración de Licencias HASP4 Net Parte 4 – Capítulo 19

234

Definición de un archivo de configuración

Puede configurar el Administrador de Licencias HASP para Mac utilizando

un archivo de configuración. Para definir el nombre y el path del archivo de

configuración, active la opción CFGFILE e introduzca path y nombre. Para

información acerca del archivo de configuración consulte “Definición del

archivo de configuración nhsrv.ini” (página 239).

Inicio y detención de Daemon

Para iniciar y detener Daemon, use los botones en la ventana de la

aplicación.

Activación automática de Daemon

Dispone de la opción de activar daemon de forma automática al iniciar el

sistema. Para ello, active la opción Activate in system startup.

Page 259: Spanish Manual Hasp v11

Uso de HASP en una Red Administración de Licencias HASP4 Net

235

El Administrador de Licencias HASP en un

servidor de archivos Novell

El Administrador de Licencias HASP para servidores de archivos Novell

Netware es haspserv.nlm. Se comunica vía IPX.

ë Bajo Novell, las llaves USB no están soportadas.

Carga del Administrador de Licencias HASP

Para cargar el Administrador de Licencias HASP:

1. Conecte la llave HASSP al servidor Novell.

2. Copie haspserv.nlm al directorio system del servidor de archivos.

3. Cargue el Administrador de Licencias HASP introduciendo:

load haspserv

Aparece la pantalla del Administrador de Licencias HASP aparece

mostrando los detalles de la operación.

ëë Para cargar el Administrador de Licencias HASP automáticamente, añada la línea load haspserv en el archivo autoexec.ncf en el directorio sys:system.

Desinstalación del Administrador de Licencias HASP

Para desinstalar el Administrador de Licencias HASP introduzca unload

haspserv

Page 260: Spanish Manual Hasp v11

Administración de Licencias HASP4 Net Parte 4 – Capítulo 19

236

Personalización del Administrador de Licencias

HASP

Al instalar y operar con el Administrador de Licencias HASP puede desear

adaptarlo al entorno de red. Puede utilizar los siguientes métodos:

• Operar con el Administrador de Licencias HASP mediante parámetros

• Usar el archivo de configuración nhsrv.ini

• Usar el API de Instalación del Administrador de Licencias (sólo servicio

Win32)

Parámetros para el Administrador de Licencias HASP

El Administrador de Licencias HASP puede ser activado con diferentes

parámetros que instruyen al sistema HASP4 Net con protocolos a usar y

como dar servicio a los clientes HASP4 Net.

Tabla 19.1 Parámetros del Administrador de Licencias HASP

Parámetro Explicación N

ovel

l

Win

dow

s

Mac

-? Muestra una lista de los parámetros disponibles Si

-addrpath= <path>

Indica una ubicación para guardar haspaddr.dat. Por defecto, el Administrador de Licencias HASP lo coloca en el directorio desde donde se ha cargado

Si Si

-c Indica la ubicación del archivo de configuración del Administrador de Licencias HASP.

Si

-help Muestra una lista de los parámetros disponibles Si Si

-ipx Instruye al sistema HASP4 Net para usar el protocolo IPX con SAP.

Si Si

Page 261: Spanish Manual Hasp v11

Uso de HASP en una Red Administración de Licencias HASP4 Net

237

Parámetro Explicación

Nov

ell

Win

dow

s

Mac

-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 parámetros –tcpip o –netbios o ambos. Con este parámetro, el Administrador de Licencias HASP crea un archivo llamado newhaddr.dat. Este archivo contiene la dirección del nodo de la estación que está ejecutando el Administrador de Licencias HASP. Cuando carga el Administrador de Licencias HASP con este parámetro, sólo las aplicaciones protegidas con acceso a newhaddr.dat pueden comunicar con el Administrador de Licencias HASP.

Si Si

-ipxsocketnum= <número>

Utilice este parámetro si desea cambiar el socket IPX que el Administrador de Licencias está usando para la comunicación. Por defecto es 7483 (hex).

Si Si

-localnet Utilice este parámetro si desea que el Administrador de Licencias HASP sirva únicamente las solicitudes de estaciones en la red local.

Si Si

-nbname= <nombre>

Asigna un nombre NetBIOS al Administrador de Licencias HASP. Este parámetro es idéntico a - nethaspnbname.

Si

-netbios Fuerza al sistema HASP4 Net a escuchar sólo al protocolo NetBIOS. Con el Administrador de Licencias HASP para Win32, aún puede cargar otros protocolos usando tanto –tcpip como –ipxnosap o ambos.

Si

-portnum= <número>

Si está utilizando el protocolo TCP / IP, puede usar este parámetro para instruir al Administrador de Licencias HASP a escuchar en el puerto que le especifique. El Número de Puerto predeterminado es 475.

Si Si

Page 262: Spanish Manual Hasp v11

Administración de Licencias HASP4 Net Parte 4 – Capítulo 19

238

Parámetro Explicación

Nov

ell

Win

dow

s

Mac

-saptofile Cuando utiliza este parámetro, el Administrador de Licencias HASP crea un archivo newhaddr.dat. Este archivo contiene la dirección del nodo de la estación con el Administrador de Licencias HASP activo.

Si

-srvname= <nombre>[,nombre]

Asigna uno o más 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.

Si Si Si

-tcpip Fuerza al sistema HASP4 Net a escuchar sólo el protocolo TCP/IP. Con el Administrador de Licencias HASP para Win32, aún puede cargar otros protocolos usando –ipx o –netbios o ambos

Si

-uselananum= <x>[,<x>]

Instruye al Administrador de Licencias HASP a escuchar a determinados números lana

Si

-userlist Limita o aumenta el número máximo de usuarios servidos por el Administrador de Licencias HASP. El valor predeterminado es 250.

Si

Page 263: Spanish Manual Hasp v11

Uso de HASP en una Red Administración de Licencias HASP4 Net

239

Definición del archivo de configuración nhsrv.ini

Para configurar el Administrador de Licencias HASP puede utilizar el

archivo nhsrv.ini. Se incluye una copia de nhsrv.ini con las utilidades HASP.

Orden de Búsqueda

Puede situar nhsrv.ini y el ejecutable del Administrador de Licencias HASP

en el mismo directorio o en cualquier otra ubicación de acuerdo con el orden

de búsqueda de nhsrv.ini descrito en la siguiente tabla.

Tabla 19.2 Orden de búsqueda de nhsrv.ini

Sistema Operativo Orden de Búsqueda

Windows 95 / 98 / ME Directorio del archivo ejecutable

Directorio Actual

Directorio System de Windows

Directorio Windows

Path

Windows NT4 / 2000 / XP Directorio del archivo ejecutable

Directorio Actual

Directorio System de Windows

Directorio Windows

Path

Novell Directorio actual

Mac Directorio actual. Puede establecer un nombre y un path para el archivo de configuración con el parámetro -c

Claves para la sección [NHS_SERVER]

Modifique las claves en la sección [NHS_SERVER] del archivo nhsrv.ini para

personalizar el Administrador de Licencias HASP de acuerdo con sus

necesidades.

Page 264: Spanish Manual Hasp v11

Administración de Licencias HASP4 Net Parte 4 – Capítulo 19

240

Nhs_ip_limit

Valores posibles <Dir IP>,<Dir IP>,…

Descripción 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 <Dir IP-SubMask>,<DirIP-SubMask>,…

Descripción Indica la dirección IP de uno o más 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.111-255.255.0.0

API de Instalación del Administrador de Licencias HASP

El API ofrece un conjunto de funciones con las que puede instalar y

desinstalar el servicio Administrador de Licencias HASP.

Instalación con HaspLMInstall()

Propósito Instala y/o introduce la correcta configuración en el registro para el servicio NT del Administrador de Licencias HASP.

Estructura DWORD HaspLMInstall(

DWORD InstallMode //Installation mode

LPSTR LMPath //Path del Administrador de Licencias HASP

LPSTR CmdLineSwitches //Parámetros de línea de comando

);

Page 265: Spanish Manual Hasp v11

Uso de HASP en una Red Administración de Licencias HASP4 Net

241

Parámetros InstallMode Define las características del proceso de instalación.

LMPath Path completo de la ubicación 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 función 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

Opciones InstallMode

LM_SERVICE_INSTALL Instala el Administrador de Licencias HASP como servicio Windows NT.

LM_SERVICE_START Mientras LM_SERVICE_INSTALL instala el Administrador de Licencias HASP como servicio de Windows NT, esta opción le permite ejecutar el Administrador de Licencias HASP sin reiniciar. Llame HaspLMInstall() con este parámetro después de la primera llamada con LM_SERVICE_INSTALL, o llame este parámetro ORED LM_SERVICE_INSTALL

Page 266: Spanish Manual Hasp v11

Administración de Licencias HASP4 Net Parte 4 – Capítulo 19

242

Valores Devueltos Si todo es correcto, la función devuelve el valor LM_SUCCESS. Si falló, la función devuelve el valor LM_FAIL. Puede obtener detalles del error llamado a HaspLMLastError().

Consideraciones Especiales

Esta función no copia los archivos Administrador de Licencias HASP.

Desinstalación con HaspLMRemove()

Propósito Elimina las entradas en el registro del servicio Administrador de Licencias HASP o desinstala el servicio.

Estructura DWORD HaspLMRemove(

DWORD RemoveMode //Removal mode

LPSTR LMPath //Para su uso futuro

);

Parámetros RemoveMode Establece las características del proceso de eliminación.

LMPath Para uso futuro. Actualmente, el valor es NULL.

Opciones RemoveMode

LM_REMOVE_SERVICE

Elimina el servicio Windows NT Administrador de Licencias HASP.

LM_REMOVE_SERVICE_UNLOAD

Elimina de la memoria el servicio de Windows NT Administrador de Licencias HASP. El servicio permanece instalado y volverá a funcionar en el próximo inicio del sistema.

Valores Devueltos Si todo es correcto, la función retorna el valor LM_SUCCESS. Si ha fallado, la función devuelve el valor LM_FAIL. Puede obtener los detalles del error llamando a HILastErrorEx().

Consideraciones Especiales

La eliminación del servicio de Windows NT Administrador de Licencias HASP envía un comando al Administrador de Licencias HASP para cerrarlo si está activo.

Page 267: Spanish Manual Hasp v11

Uso de HASP en una Red Administración de Licencias HASP4 Net

243

Mostrado de información con HaspLMInfo()

Propósito Recibe información relativa al servicio de Windows NT Administrador de Licencias HASP instalado y otra información general.

Estructura DWORD HaspLMInfo(

LPLMINFO lpLMInfo, // Dirección de estructura de información

);

Parámetros lpLMInfo Apunta a la estructura LMINFO que recibe información referente al servicio Administrador de Licencias HASP instalado.

Valores Devueltos Si todo es correcto, la función retorna el valor LM_SUCCESS. Si ha fallado, la función devuelve el valor LM_FAIL. Puede obtener los detalles del error llamando a HILastErrorEx().

Solicitud de Status con HaspLMLastError()

Propósito Recoge información acerca de la última llamada a una de las funciones del Administrador de Licencias HASP.

Estructura DWORD HaspLMLastError(

DWORD *System Error // Dirección de localización de error de sistema

LPSTR Error Str // Dirección de buffer de descripción de error

);

Page 268: Spanish Manual Hasp v11

Administración de Licencias HASP4 Net Parte 4 – Capítulo 19

244

Parámetros *System Error Apunta a una variable que contiene el número de error de sistema

ErrorStr Apunta a un buffer para recibir la última descripción de error del servicio Administrador de Licencias HASP.

ErrorStrSize Tamaño del buffer de ErrorStr (en bytes).

Valores Devueltos Si todo es correcto, la función retorna el valor LM_SUCCESS. Si ha fallado, la función devuelve el valor LM_FAIL.

Mensajes de error

Las funciones de HASP LM Installation retornan los siguientes mensajes de error:

Tabla 19.3 Códigos de Error del API HASP LM Installation

Error Descripción

CLOSE_KEY_FAIL Fallo al cerrar la llave

CLOSE_SERVICE_FAIL Fallo al cerrar el servicio

CLOSE_SERVICE_MANAGER_FAIL Fallo al cerrar el administrador de base de datos del servicio

CONTROL_SERVICE_FAIL Fallo en el control del servicio

CREATE_SERVICE_FAIL Fallo al crear el servicio

DELETE_SERVICE_FAIL Fallo al borrar el servicio

FREE_LIB_FAIL Fallo al liberar la DLL

GET_DATE_FAIL Fallo al obtener la fecha

GET_PROC_ADDR_FAIL Fallo al obtener una dirección desde la DLL

INVALID_PARAM Parámetro Inválido

LOAD_LIB_FAIL Fallo al cargar la DLL

Page 269: Spanish Manual Hasp v11

Uso de HASP en una Red Administración de Licencias HASP4 Net

245

Error Descripción

OPEN_KEY_FAIL Fallo al abrir la llave

OPEN_SERVICE_FAIL Fallo al abrir el servicio

OPEN_SERVICE_MANAGER_FAIL Fallo al abrir el administrador de base de datos del servicio

SERVICE_NOT_SUPPORTED Este servicio no está soportado

SET_VALUE_FAIL Fallo al fijar un valor

START_SERVICE_FAIL Fallo al iniciar el servicio

Page 270: Spanish Manual Hasp v11
Page 271: Spanish Manual Hasp v11

247

Parte 4 – Capítulo 20

Configuración de clientes

HASP4 Net Este capítulo describe cómo una aplicación protegida por HASP4 Net – el

cliente HASP4 Net – puede ser configurado con un archivo de configuración.

Si el cliente encuentra su respectivo archivo de configuración, lo lee y usa la

información. Si no, se utilizan los valores predeterminados.

En el archivo de configuración HASP4 Net puede afinar la búsqueda del

Administrador de Licencias HASP por parte del cliente HASP4 Net.

El nombre por defecto del archivo de configuración HASP4 Net es

nethasp.ini. Se incluye una copia de nethasp.ini con las utilidades HASP y

también con cada API HASP. Si desea cambiar el nombre, debe indicarlo

cuando proteja su aplicación con la Envelope o el API de HASP.

Secuencia de Búsqueda del Archivo de

configuración

La secuencia de búsqueda del archivo depende del sistema operativo y del

tipo de aplicación.

La aplicación protegida busca el archivo de configuración cuando se accede al

primer servicio HASP4 Net. Busca el archivo de configuración HASP4 Net en

las siguientes ubicaciones:

Page 272: Spanish Manual Hasp v11

Configuración de Clientes HASP4 Net Parte 4 – Capítulo 20

248

Tabla 20.1 Orden de Búsqueda del archivo de configuración

Tipo de aplicación / Sistema Operativo

Secuencia de Búsqueda

Win16 Directorio Actual à directorio Windows à directorio system de Windows à directorio del archivo ejecutable à Path

Win32 Directorio del archivo ejecutable à directorio actual à directorio system de Windows à directorio Windows à Path

Mac OS 8.6, 9.1, Mac OS X (sólo aplicaciones Carbon)

Directorio Actual

Mac OS X Directorio Actual à Directorio Home del usuario actual à directorio etc

Secciones en el archivo de configuración

El archivo de configuración cliente de HASP4 Net se compone de cuatro

secciones, todas ellas opcionales:

• [NH_COMMON] para ajustes generales

• [NH_IPX] para el protocolo IPX

• [NH_NETBIOS] para el protocolo NetBIOS

• [NH_TCPIP] para el protocolo TCP / IP

La sección [NH_COMMON] contiene indicaciones generales para todas las

secciones del archivo de configuración. Cada una de las otras secciones

contiene indicaciones de ajuste de operaciones para el protocolo específico.

Page 273: Spanish Manual Hasp v11

Uso de HASP en una Red Configuración de Clientes HASP4 Net

249

Especificación de claves

En cada sección, puede indicar tanto claves generales como las específicas de

la sección. Si define una de las claves generales en una de las tres secciones

de protocolos, ésta mandará sobre la indicación de la sección

[NH_COMMON] (sólo para ese protocolo).

Use las claves específicas de sección para ajustar las indicaciones

adicionales para un protocolo particular.

Las indicaciones de API y Envelope mandan sobre las del archivo de

configuración.

Cada línea del archivo de configuración HASP que ha recibido con el software

HASP está precedida de un punto y coma (;). Para usar una línea, borre el

punto y coma. Si desea añadir comentarios, precédalos con un punto y coma.

ë Los nombres de los archivos de configuración HASP4 Net y sus claves pueden ser escritos indiferentemente en mayúsculas o minúsculas (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 sección del archivo de configuración

cliente de HASP4 Net. Para cada clave, se incluye una breve descripción y los

valores posibles. Cuando existe un valor predeterminado, se muestra.

Page 274: Spanish Manual Hasp v11

Configuración de Clientes HASP4 Net Parte 4 – Capítulo 20

250

[NH_COMMON]

Claves específicas de sección para [NH_COMMON]

nh_ipx

Valores posibles Enabled, disabled (habilitado, deshabilitado)

Descripción Usa el protocolo IPX

nh_netbios

Valores posibles Enabled, disabled (habilitado, deshabilitado)

Descripción Usa el protocolo NetBIOS

nh_tcpip

Valores posibles Enabled, disabled (habilitado, deshabilitado)

Descripción Usa el protocolo TCP / IP

Claves Generales para [NH_COMMON]

nh_session

Valores posibles <número>

Descripción Establece la longitud de tiempo durante el cual la aplicación protegida trata de establecer comunicación con el Administrador de Licencias HASP.

Predeterminado 2 segundos

Page 275: Spanish Manual Hasp v11

Uso de HASP en una Red Configuración de Clientes HASP4 Net

251

nh_send_rcv

Valores posibles <número>

Descripción Fija el tiempo máximo para que el Administrador de Licencias HASP envíe o reciba un paquete

Predeterminado 1 segundo

[NH_IPX]

Claves específicas de sección para [NH_IPX]

nh_use_bindery

Valores Posibles Enabled, disabled (habilitado, deshabilitado)

Descripción Usa IPX con bindery. Se ignora bajo API de Win32. Este parámetro sustituye al antiguo parámetro llamado NH_USE_SAP

Predeterminado Disabled (deshabilitado)

nh_use_broadcast

Valores posibles Enabled, disabled (habilitado, deshabilitado)

Descripción Usa el mecanismo IPX Broadcast

Predeterminado Enabled (habilitado)

nh_bc_socket_num

Valores posibles <número>

Descripción Establece el número de socket para el mecanismo broadcast. El número es hexadecimal

Predeterminado 7483H

Page 276: Spanish Manual Hasp v11

Configuración de Clientes HASP4 Net Parte 4 – Capítulo 20

252

nh_use_int

Valores posibles 2F_NEW, 7ª_OLD

Descripción 2F_NEW significa que el protocolo IPX usará la interrupción 2Fh SOLAMENTE. 7F_OLD significa que el protocolo IPX usará la interrupción 7Ah SÓLO.

Predeterminado 2F_NEW

nh_server_name

Valores posibles <nombre1>,<nombre2>,…

Descripción Comunica con el Administrador de Licencias HASP con el nombre indicado.

Máximo: 6 nombres, de hasta 7 caracteres cada uno.

nh_search_method

Valores posibles Localnet, internet

Descripción Determina que la aplicación protegida comunique únicamente con el Administrador de Licencias HASP en la red local, o con algún Administrador de Licencias HASP en la interred.

Predeterminado Internet

nh_datfile_path

Valores posibles <path>

Descripción Especifica la ubicación del archivo de dirección del Administrador de Licencias HASP.

Claves Generales para [NH_IPX]

Page 277: Spanish Manual Hasp v11

Uso de HASP en una Red Configuración de Clientes HASP4 Net

253

nh_session

Valores posibles <número>

Descripción Establece la longitud de tiempo durante el cual la aplicación protegida trata de establecer comunicación con el Administrador de Licencias HASP.

Predeterminado 2 segundos

nh_send_rcv

Valores posibles <número>

Descripción Fija el tiempo máximo para que el Administrador de Licencias HASP envíe o reciba un paquete

Predeterminado 1 segundo

Page 278: Spanish Manual Hasp v11

Configuración de Clientes HASP4 Net Parte 4 – Capítulo 20

254

[NH_NETBIOS]

Claves específicas de sección para [NH_NETBIOS]

nh_nbname

Valores posibles <nombre>

Descripción Asigna un nombre al Administrador de Licencias HASP. Máximo: 1 nombre, de hasta 8 caracteres

nh_uselananum

Valores posibles <número>

Descripción Asigna un número de lana para usarlo como canal de comunicación.

Claves Generales para [NH_NETBIOS]

nh_session

Valores posibles <número>

Descripción Establece la longitud de tiempo durante el cual la aplicación protegida trata de establecer comunicación con el Administrador de Licencias HASP.

Predeterminado 2 segundos

nh_send_rcv

Valores posibles <número>

Descripción Fija el tiempo máximo para que el Administrador de Licencias HASP envíe o reciba un paquete

Predeterminado 1 segundo

Page 279: Spanish Manual Hasp v11

Uso de HASP en una Red Configuración de Clientes HASP4 Net

255

[NH_TCPIP]

Claves específicas de sección para [NH_TCPIP]

nh_server_addr

Valores posibles <dirección1>,<dirección2>

Descripción Establece una dirección IP para todos los Administradores de Licencias HASP que desea buscar. Son posibles ilimitadas direcciones IP y múltiples líneas.

Los posibles formatos de dirección incluyen:

Dirección IP: 192.114.176.65

Nombre de host local: ftp.aladdin.co.il

nh_server_name

Valores posibles <nombre1>,<nombre2>,…

Descripción Comunica con el Administrador de Licencias HASP con el/los nombre(s) indicado(s). Máximo: 6 nombres, de hasta 7 caracteres cada uno.

nh_port_number

Valores posibles <número>

Descripción Fija el número de puerto TCP/IP (opcional).

Predeterminado 475

nh_tcpip_method

Valores posibles TCP, UDP

Descripción Envía un paquete TCP o un paquete UDP

Predeterminado UDP

Page 280: Spanish Manual Hasp v11

Configuración de Clientes HASP4 Net Parte 4 – Capítulo 20

256

nh_use_broadcast

Valores posibles Enabled, disabled (habilitado, deshabilitado)

Descripción Usa el mecanismo UDP broadcast

Predeterminado Enabled (habilitado)

Claves Generales para [NH_TCPIP]

nh_session

Valores posibles <número>

Descripción Establece la longitud de tiempo durante el cual la aplicación protegida trata de establecer comunicación con el Administrador de Licencias HASP.

Predeterminado 2 segundos

nh_send_rcv

Valores posibles <número>

Descripción Fija el tiempo máximo para que el Administrador de Licencias HASP envíe o reciba un paquete

Predeterminado 1 segundo

Page 281: Spanish Manual Hasp v11

257

Parte 4 – Capítulo 21

Monitorización de Licencias

HASP4 Net Aladdin Monitor permite centralizar la administración de las aplicaciones

del Administrador de Licencias HASP y las llaves HASP4 Net.

Las opciones disponibles son:

• Comprobar las propiedades del Administrador de Licencias HASP.

• Comprobar las llaves HASP4 Net.

• Iniciar y detener el servicio Administrador de Licencias HASP.

Aladdin Monitor está disponible para los siguientes entornos: Windows 98 /

ME, Windows NT / 2000 / XP. Puede comunicar vía TCP/IP e IPX.

Distribución de Aladdin Monitor

Entregue a sus clientes Aladdin Monitor. Aladdin Monitor dispone de un

archivo de ayuda online.

ë Puede configurar Aladdin Monitor con un archivo de configuración cliente HASP4 Net, vea “Configuración de Clientes HASP4 Net” (página 247)

Page 282: Spanish Manual Hasp v11

Monitorización de Licencias HASP4 Net Parte 4 – Capítulo 21

258

Instalación de Aladdin Monitor

Puede instalar Aladdin Monitor en cualquier estación de la red. No es

necesario instalar el Administrador de Licencias HASP en la misma

estación.

Para instalar Aladdin Monitor use la utilidad de instalación aksmon.exe y

siga las instrucciones del proceso de instalación.

Indicaciones para Aladdin Monitor

Puede adaptar el programa para que reúna sus requisitos:

• El lenguaje utilizado (Alemán o Inglés)

• La frecuencia de refresco para la caja de dialogo (por defecto cada 2

segundos)

• La frecuencia de solicitudes a la red (por defecto cada 3 minutos)

• Si desea utilizar modo Hardlock, modo HASP o ambos.

• Si desea usar el archivo de configuración nethasp.ini

Page 283: Spanish Manual Hasp v11

Uso de HASP en una Red Monitorización de Licencias HASP4 Net

259

Comprobación de las Propiedades del

Administrador de Licencias HASP

En la parte izquierda de la ventana, pulse el Administrador de Licencias

HASP para el que desea comprobar la información del login

ë 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.

La información del Administrador de Licencias HASP se muestra en la parte

derecha de la ventana.

ë Los Administradores de Licencias HASP que atienden únicamente NetBIOS no son reconocidos actualmente por Aladdin Monitor.

Se muestra la siguiente información acerca del Administrador de Licencias

HASP seleccionado:

• Información general acerca del Administrador de Licencias HASP

seleccionado (Tabla 21.1).

• Información acerca de las llaves HASP4 Net que se están

administrando (Tabla 21.2).

Tabla 21.1 Información del Administrador de Licencias HASP

Caja Significado

Name Nombre del PC en el que se está ejecutando el Administrador de Licencias HASP.

Version Versión del Administrador de Licencias HASP.

IP Dirección IP del PC.

Page 284: Spanish Manual Hasp v11

Monitorización de Licencias HASP4 Net Parte 4 – Capítulo 21

260

Caja Significado

IPX Dirección IPX del PC

LM Type Versión del Administrador de Licencias HASP.

TCP / IP, IPX Aquí, puede ver qué protocolos se están usando.

Tabla 21.2 Información de la llave HASP

Caja Significado

HASP # Número acumulativo de la llave HASP.

HASP Model Máximo numero de licencias posible

Current Stations Estaciones que actualmente han realizado un login

Comprobación de llaves HASP

En la parte izquierda de la ventana, pulse la llave HASP para la que desea

chequear la información del login. La llave HASP sólo puede ser comprobada

si se ha realizado un login.

ë 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 información HASP se muestra en la parte derecha de la ventana.

La información que se muestra acerca de la llave HASP seleccionada es la

siguiente:

• Información 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)

Page 285: Spanish Manual Hasp v11

Uso de HASP en una Red Monitorización de Licencias HASP4 Net

261

Tabla 21.3 Información HASP

Caja Significado

HASP # Numero acumulativo de la llave HASP

Tabla 21.4 Tabla de Programas

Caja Significado

Program No. Número que representa el programa protegido

Current Stations Estaciones que actualmente han realizado un login

Maximum

Stations

Número máximo posible de estaciones

Activations Máximo de activaciones del programa

Tabla 21.5 Tabla Login

Caja Significado

No. Número acumulativo de logins

Login ID Dirección bajo la que la estación ha realizado login

Protocol Protocolo utilizado

Timeout Tiempo que debe transcurrir sin actividad hasta que la

entrada de login se borra o cancela (en segundos)

Page 286: Spanish Manual Hasp v11

Monitorización de Licencias HASP4 Net Parte 4 – Capítulo 21

262

Inicio y detención del Administrador de Licencias

HASP como servicio

El servicio Administrador de Licencias HASP le permite administrar las

llaves HASP4 Net en una estación NT.

Inicio del servicio

Seleccione Start HASP LM Service en el menú HASP LM Service o en

Services/HASP. Se inicia el servicio y ahora puede hacer disponible las

llaves HASP4 Net conectadas localmente a través de la red.

También puede iniciar el servicio pulsando el botón derecho sobre la carpeta

HASP LM y seleccionar Start HASP LM.

Detención del servicio

Seleccione Stop HASP LM Service en el menú HASP LM Service o en

Services/HASP.

El servicio es detenido. La vista se refresca. Esto puede llevar algún tiempo

puesto que supone una búsqueda a través de toda la red.

También puede detener el servicio pulsando el botón derecho sobre la carpeta

HASP LM y seleccionar Stop HASP LM.

Page 287: Spanish Manual Hasp v11

263

Parte 5 – Capítulo 22

Adaptación de HASP4 Net

a la Red

Definición del Rango de Estaciones bajo IPX Esta sección describe parámetros adicionales del Administrador de

Licencias HASP y claves de nethasp.ini que puede utilizar para ajustar el

sistema HASP4 Net a su entorno de red.

Con IPX, puede autorizar el acceso a estaciones específicas en un segmento

diferente al Administrador de Licencias HASP.

Para autorizar el acceso desde un segmento diferente:

1. Cargue el Administrador de Licencias HASP con el parámetro -

ipxnosap.

Esto asegura que la dirección del Administrador de Licencias HASP no se

difunde mediante el mecanismo SAP, sino que se encuentra en el archivo

de dirección de HASP4 Net newhaddr.dat.

2. Edite el archivo nethasp.ini como sigue:

• En la sección [NH_COMMON], fije NH_IPX = Enabled

• En la sección [NH_IPX], fije NH_USE_BROADCAST = Disabled

Page 288: Spanish Manual Hasp v11

Adaptación de HASP4 Net a la Red Parte 5 – Capítulo 22

264

• En la sección [NH_IPX], fije NH_USE_BINDERY = Disabled

Estas estructuras instruyen a la aplicación protegida para funcionar en

estaciones del entorno para buscar el archivo de dirección y leer la

dirección del Administrador de Licencias HASP.

3. Copie la aplicación protegida y el archivo nethasp.ini en el mismo

directorio. Asegúrese de que cada estación en el rango, y sólo estaciones

en el rango, cargan la aplicación desde este directorio.

Definición del Rango de Estaciones bajo TCP/IP Hay dos métodos para definir el rango de estaciones bajo TCP/IP. Puede

especificar el rango de estaciones que el Administrador de Licencias HASP

sirve, o especificar el rango de estaciones que busca un Administrador de

Licencias HASP concreto.

Especificación del rango utilizando nhsrv.ini Los Administradores de Licencias HASP de Windows y Win32 pueden leer el

archivo de configuración nhsrv.ini. Puede editar este archivo para especificar

qué estaciones debe servir el Administrador de Licencias bajo TCP/IP.

Para especificar el rango de estaciones, edite nhsrv.ini como sigue:

• En la sección [NHS_SERVER], NHS_IP_LIMIT = <ipaddr> [,<ipaddr....]

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

Page 289: Spanish Manual Hasp v11

Uso de HASP en una Red Adaptación de HASP4 Net a la Red

265

El Administrador de Licencias HASP sirve sólo a la estación con la dirección IP

especificada.

• 10.1.2.*

El Administrador de Licencias HASP sirve sólo a estaciones dentro de la

dirección IP especificada, p.e. 10.1.2.0 hasta 10.1.2.255.

• 10.1.*.*

El Administrador de Licencias HASP sirve sólo a estaciones dentro de la

dirección IP especificada, p.e. 10.1.0.0 hasta 10.1.255.255.

• 10.1.2.3-5

El Administrador de Licencias HASP sirve sólo a estaciones con las

direcciones IP 10.1.1.3, 10.1.1.4, 10.1.1.5.

Observe que también puede excluir ciertas direcciones utilizando el

símbolo !. Por ejemplo, escribiendo !10.1.2.7.

Para permitir sólo a algunas estaciones acceder a HASP4 Net en una red

basada en TCP/IP:

1. Edite nhsrv.ini y fije el rango de estaciones.

2. Copie nhsrv.ini en un directorio accesible por el Administrador de Licencias HASP.

Especificación del Rango Utilizando nethasp.ini

Puede editar el archivo de configuración HASP4 Net para especificar el

Administrador de Licencias HASP (según su dirección) que buscará unas

determinadas estaciones.

Para especificar el Administrador de Licencias HASP que buscarán

determinadas estaciones:

1. Edite el archivo nethasp.ini: En la sección [NH_TCPIP], fije

NH_SERVER_ADDRESS= <dirección del Administrador de Licencias

HASP>

2. Copie nethasp.ini en un directorio accesible sólo para el rango de las

estaciones que se desee.

Page 290: Spanish Manual Hasp v11

Adaptación de HASP4 Net a la Red Parte 5 – Capítulo 22

266

Definición del Rango de Estaciones bajo NetBIOS Para permitir el acceso sólo a algunas de las estaciones en una red

basada en NetBIOS:

1. Cargue el Administrador de Licencias HASP con el parámetro -nbname

con un nombre de su elección (hasta 8 caracteres). Así da un nombre

NetBIOS del Administrador de Licencias HASP.

Por ejemplo, para cargar haspserv.exe y definir el nombre de la estación de

NetBIOS como firstsrv, introduzca:

haspserv -nbname = firstsrv

2. Edite el archivo nethasp.ini:

• En la sección [NH_COMMON], fije NH_NETBIOS = Enabled

• En la sección [NH_NETBIOS], fije NH_NBNAME = firstsrv

Esto enlaza las estaciones con el nombre NetBIOS.

3. Copie la aplicación protegida y el archivo nethasp.ini en el mismo

directorio. Asegúrese de que cada estación del rango, y sólo estaciones del

rango, cargan la aplicación desde este directorio.

ë No puede tener dos estaciones con el mismo nombre NetBIOS. Si quiere cargar el Administrador de Licencias HASP en más de una estación, debe definir un nombre NetBIOS diferente para cada Administrador de Licencias HASP.

Page 291: Spanish Manual Hasp v11

Uso de HASP en una Red Adaptación de HASP4 Net a la Red

267

Adaptación de la Longitud del Timeout

El Administrador de Licencias HASP no puede servir más de una llamada al

mismo tiempo. La longitud del timeout determina cuanto tiempo intenta acceder

una aplicación protegida repetidamente al Administrador de Licencias HASP antes

de dejarlo.

En casi todas las redes, los valores por defecto del timeout son suficientes, así sólo

necesita cambiar los valores por defecto en redes que tienen una HASP4 Net

conectada a una estación lenta u ocupada.

Para definir la longitud del timeout:

En la sección 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.

Definición del Número de Aplicaciones Protegidas Soportadas

Con el Administrador de Licencias HASP, usted puede cambiar el número de

aplicaciones protegidas soportadas. Por defecto el Administrador de Licencias

HASP puede servir un máximo de 250 aplicaciones protegidas, o 1000 (Win32,

Mac).

Para cambiar la ubicación de espacio de memoria predeterminado

Cargue el Administrador de Licencias HASP con el parámetro:

nhsrvw32 –userlist = n

donde n es el número de aplicaciones protegidas que sirve.

El parámetro –userlist sólo está disponible para Win32.

Page 292: Spanish Manual Hasp v11
Page 293: Spanish Manual Hasp v11

269

Parte 5

Uso del Remote Update

System

Esta parte le ofrece información acerca del Remote Update System (Sistema

de Actualización remota), que le permite actualizar la memoria de las llaves

HASP que ya están en posesión de sus clientes.

El capítulo “Remote Update System (página 271) describe el concepto RUS y

herramientas relacionadas.

El capítulo “API Win32 Remote Update System” (página 291) contiene

información acerca del API que puede utilizarse para actualizar las llaves

remotamente.

Page 294: Spanish Manual Hasp v11
Page 295: Spanish Manual Hasp v11

271

Parte 5 – Capítulo 24

Remote Update System

El Sistema de Actualización Remota (Remote Update System (RUS)) es una

avanzada utilidad para la actualización segura de llaves HASP de clientes.

RUS le permite actualizar la memoria de las llaves HASP que ya están en

posesión de sus clientes. Usted encripta los cambios a realizar en la

memoria y los envía a sus clientes vía teléfono, fax o e-mail.

Sus revisiones de la memoria permiten habilitar o modificar la ejecución de

módulos de software. Por ejemplo, con los nuevos parámetros que establezca,

los clientes pueden actualizar una aplicación demo a una versión completa.

Con RUS, puede actualizar la memoria de los modelos HASP4 M1, M4,

HASP4 Time y HASP4 Net.

Page 296: Spanish Manual Hasp v11

Remote Update System Parte 5 – Capítulo 24

272

Implantación de RUS

La implantación de RUS supone los siguientes dos pasos:

• Creación de las utilidades RUS

• Actualización 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 Actualización

Para actualizar la memoria de HASP:

1. El cliente utiliza la utilidad Customer para obtener el Número ID de la

llave que requiere la actualización y comunicarle a usted el número.

2. Introduzca el Número ID y actualice los datos actualizados en la utilidad

Vendor.

3. Genere las passwords RUS en la utilidad Vendor, y suminístreselas a su

cliente.

4. Su cliente introduce las passwords RUS en la utilidad Customer y

actualiza la memoria de la llave HASP.

Page 297: Spanish Manual Hasp v11

Uso del Remote Update System Remote Update System

273

ë El proceso de actualización de la llave HASP del cliente es completamente seguro. Todos los datos intercambiados entre su cliente y usted están encriptados aleatoriamente. Además, las passwords RUS son específicas para cada llave para la que se generan, y no pueden actualizar ninguna otra llave que no sea esa.

Etapas del Sistema de Actualización Remota

Las siguientes ilustraciones muestran los dos pasos en la actualización

remota de las llaves HASP:

Figura 24.1: Paso 1: Creación de las utilidades RUS

Page 298: Spanish Manual Hasp v11

Remote Update System Parte 5 – Capítulo 24

274

Figura 24.2: Paso 2: Actualización de la HASP

Page 299: Spanish Manual Hasp v11

Uso del Remote Update System Remote Update System

275

Creación de las Utilidades RUS

Cuando genera las dos utilidades separadas – una para usted y otra para su

cliente – usa los dos programas de instalación RUS: vendinst.exe y

custinst.exe.

En concreto, vendinst.exe genera la utilidad Vendor, vendor.exe, y custinst.exe

genera la utilidad Customer, customer.exe.

Ambos, vendinst.exe y custinst.exe se encuentran en el directorio RUS. El

directorio RUS también contiene dos subdirectorios. El subdirectorio IBM

contiene los archivos BIN necesarios para generar las utilidades RUS para

ordenadores IBM y compatibles. El subdirectorio NEC contiene los archivos

BIN necesarios para generar las utilidades RUS para ordenadores NEC

japoneses. Cuando genera las utilidades, copie el contenido del directorio

apropiado en el directorio RUS.

ë Debe suministrar a sus clientes con customer.exe y customer.hlp.

Generación de las utilidades RUS

Cuando genere las utilidades RUS, asegúrese de que los archivos

vendinst.exe, vendor.bin, custinst.exe y customer.bin están en el mismo

directorio:

• Si va a utilizar las utilidades RUS en un IBM, copie el contenido del

subdirectorio IBM en el directorio raíz RUS.

• Si va a utilizar las utilidades RUS en un sistema NEC, copie el

contenido del subdirectorio NEC en el directorio raíz RUS.

Para generar las utilidades RUS:

1. Conecte la llave HASP de su aplicación al PC.

2. Introduzca la siguiente línea de comando desde el DOS para generar la

utilidad Vendor: vendinst <password1> <password2> [pc destino]

Page 300: Spanish Manual Hasp v11

Remote Update System Parte 5 – Capítulo 24

276

3. Introduzca la siguiente línea de comando desde el DOS para generar la

utilidad Customer:

custinst <password1> <password2> [pc destino]

Ahora ya ha generado las utilidades RUS

ë Como las utilidades Vendor y Customer se han generado con las passwords correspondientes a una llave HASP específica (o a una serie de llaves con el mismo código de programador), están personalizadas para actualizar esa llave concreta (o serie de llaves).

Parámetros de Instalación RUS

Cuando genere las utilidades RUS desde la línea de comandos, especifique

los siguientes parámetros:

password1, password2

Las passwords de la llave HASP concreta.

target pc

Un parámetro opcional que define en qué tipo de sistema se va a poder

utilizar la utilidad RUS:

Parámetro Función

-ibm El sistema de destino es un PC IBM o compatible. Predeterminado.

-nec El sistema de destino es del estándar japonés NEC.

Page 301: Spanish Manual Hasp v11

Uso del Remote Update System Remote Update System

277

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” (página 286) para ver cómo debe usar su

cliente estas passwords para actualizar la llave HASP.

Generación de las Passwords RUS

Para generar las passwords RUS:

1. Para ejecutar vendor.exe teclee desde la línea de comando: Vendor.

La pantalla principal de Vendor:

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 Número ID de la HASP de su cliente en el campo ID

Number.

Page 302: Spanish Manual Hasp v11

Remote Update System Parte 5 – Capítulo 24

278

Este número se lo puede proporcionar su cliente, que lo conocerá a través

de la utilidad Customer. Para más información, vea “La Utilidad

Customer” en la página 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 parámetros de protección del

sistema Full Authorization System (FAS). La pantalla FAS muestra

los parámetros FAS para el modelo HASP que ha seleccionado. Vea la

siguiente sección, “Introducción de Datos en Modo FAS”.

• Pulse Direct para editar la memoria HASP. Vea la sección

siguiente, “Introducción de datos en Modo Directo”,

Durante una sola sesión RUS puede introducir, o bien parámetros

FAS, o bien editar la memoria de la llave, pero no ambas cosas.

5. Pulse Config si desea usar un archivo de configuración. En la ventana que

se abre puede:

• Grabar los parámetros definidos en un archivo de configuración.

Teclee el nombre del archivo, o seleccione un archivo pulsando

Browse, y a continuación pulse Save.

• Cargar parámetros grabados previamente de un archivo de

configuración.

Teclee el nombre del archivo, o seleccione un archivo pulsando

Browse, y a continuación 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 opción Save

RUS passwords to a File, introduzca el nombre de un archivo, y luego

OK. Este archivo, después puede usarlo la utilidad Customer para cargar

las passwords RUS automáticamente.

Page 303: Spanish Manual Hasp v11

Uso del Remote Update System Remote Update System

279

Ahora entregue las passwords RUS a su cliente, que ya puede actualizar la

llave HASP utilizándolas en la utilidad Customer.

Introducción de Datos en Modo FAS

Con la información para el sistema Full Authorization System (FAS), puede

definir los parámetros de protección de su(s) programa(s), Consulte las

páginas 20 y 159 para más información sobre FAS.

Estos son los parámetros de protección FAS que puede definir en RUS:

Program Number

A cada programa se le asigna su propio número. Si está actualizando los

parámetros de protección de un programa, especifique el número que

previamente le adjudicó. Si está añadiendo un programa, asígnele un número

nuevo.

ë Puede definir los parámetros FAS para un solo programa durante una sesión RUS. Para cada programa que se actualice se generan las passwords por separado.

No asigne un valor superior que el número máximo de programas que puede

grabarse en la llave HASP. Según las diferentes llaves, este es el rango de

números 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 número máximo de ejecuciones autorizadas para una

aplicación protegida. Introduzca un número de su elección en este campo.

Como alternativa, introduzca U para autorizar un número ilimitado de

ejecuciones. Puede especificar este parámetro con HASP4 M1, M4 y HASP4

Net.

Page 304: Spanish Manual Hasp v11

Remote Update System Parte 5 – Capítulo 24

280

Expiry Date

Este parámetro, que únicamente es de aplicación para las llaves HASP4

Time, indica la fecha a partir de la cual, el programa protegido no puede

funcionar. Introduzca números de dos dígitos para el día, mes y año de

caducidad de la aplicación. Pulse “00-00-00” para una fecha ilimitada.

Number of Authorized Stations

Este parámetro, que únicamente es de aplicación para las llaves HASP4

Net, indica el número máximo de estaciones autorizadas a ejecutar el

programa protegido simultáneamente.

Asigne un valor inferior al número 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 número

ilimitado de estaciones.

Introducción de Datos en Modo Directo Cuando introduce datos en modo Directo, puede editar hasta 16 celdas de

memoria consecutivas.

La pantalla Edit Memory in Direct Mode se muestra así:

Introduzca datos en los siguientes campos:

Page 305: Spanish Manual Hasp v11

Uso del Remote Update System Remote Update System

281

Start Address

En esa dirección, se inicia la actualización de la memoria HASP. Introduzca

un valor decimal. No deje este campo vacío.

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 simultáneamente

las correspondientes celdas en los otros paneles con valores análogos.

Para moverse entre paneles, pulse el ratón en cualquier celda del panel

deseado.

ë Puede introducir datos en menos de 16 celdas. Sin embargo, no deje una celda de memoria vacía entre dos celdas que contengan valores.

Page 306: Spanish Manual Hasp v11

Remote Update System Parte 5 – Capítulo 24

282

Activación de la Utilidad Vendor con parámetros Mediante parámetros de la línea de comando del DOS puede ahorrar tiempo

y trabajo sobre el teclado. También puede ejecutar la utilidad Vendor desde

archivos batch o desde sus propias aplicaciones sin pasar por las pantallas

de la utilidad.

Parámetros de línea de comando de la utilidad Vendor

La siguiente tabla enumera los parámetros de la línea de comando y una

breve descripción de cada uno. Puede usar la cadena completa o un

parámetro con su abreviación representada por mayúsculas contenidas en la

cadena. Por ejemplo, puede introducir tanto, -HT como -HaspType.

Tabla 24.1: Parámetros de línea de comando de la utilidad Vendor

Parámetro Función

-Help Muestra una lista de todos los parámetros y una breve explicación de cada uno.

-HaspType <Tipo de HASP >

Introduzca el tipo de llave HASP que usa su cliente.

Los valores posibles son:

• memo para llaves HASP4 M1 y M4

• time para HASP4 Time

• net para HASP4 Net

-IDnum < HASP ID number>

El valor hexadecimal del Número ID de la HASP del cliente.

-CfgFile <archivo de configuración >

El path completo y nombre del archivo de configuración donde se grabaron todos o alguno de los parámetros definidos previamente en la utilidad Vendor.

-DiRect Indica que los datos se han introducido en modo FAS.

-Fas Los datos que se han definido en los parámetros FAS.

-GenPassFile <nombre de archivo>

El nombre del archivo en que graba los passwords RUS.

Page 307: Spanish Manual Hasp v11

Uso del Remote Update System Remote Update System

283

Parámetro Función

-PrgNum <program number>

El número que asigna al programa.

-STations <número de estaciones >

El número de estaciones autorizadas a ejecutar el programa. Sólo para llaves HASP4 Net.

-ACtivations <número de ejecuciones >

El número máximo de ejecuciones para un programa. Introduzca Upara permitir un número de ejecuciones ilimitadas. Este parámetro FAS es aplicable a HASP4 M1, M4 y HASP4 Net.

-ExpDate <mm-dd-yy> La caducidad del programa. Introduzca 00-00-00 para una fecha ilimitada. Sólo para llaves HASP4 Time.

-StartAddr <dirección de inicio >

La dirección de inicio para editar la memoria en modo Directo.

-DataD <dataD1>..<dataD16>

Hasta 16 valores decimales con que edita la memoria HASP.

-DataH <dataH1>..<dataH16>

Hasta 16 valores hexadecimales con que edita la memoria HASP.

-DataS <"cadena" > El número 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.

-BatcH Ejecuta la utilidad Vendor en modo batch sin acceder a las pantallas de la utilidad.

Ejemplo del Uso de los Parámetros en la Línea de Comando

Los siguientes ejemplos muestran la ejecución de la utilidad Vendor desde la

línea 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 Número ID es 7a37381e (-id 7a37381e).

La actualiza usando FAS (-f), fijando para el programa número 5 (-pn 5) un

número ilimitado de ejecuciones autorizadas (-ac u). Genera las passwords

RUS, guardándolas en un archivo llamado ruspass.txt (-gpf ruspass.txt)

Page 308: Spanish Manual Hasp v11

Remote Update System Parte 5 – Capítulo 24

284

ë El archivo ruspass.txt puede usarse junto con la utilidad Customer para cargar las passwords RUS automáticamente.

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

carácter y hexadecimal recibirán sus correspondientes valores

automáticamente.)

Códigos de Error de la Utilidad Vendor

La utilidad Vendor retorna los códigos de error de nivel DOS enumerados:

Tabla 24.2: Códigos de Error de la Utilidad Vendor

Código Descripción

2, 5 Número ID no válido o no se encuentra

3, 4 Tipo de llave Hasp no válido o no se encuentra

7, 8 Número de Programa FAS no válido o no se encuentra

9, 10 Número de ejecuciones autorizadas no válido o no se encuentra

11, 12 Número de estaciones autorizadas no válido o no se encuentra

13, 14, 16 Dirección de inicio no válida o no se encuentra

15, 20 Datos no válidos o no se encuentra

17, 18 Datos fuera de rango

22 No se encuentra cadena de datos

23, 24 Cadena de datos demasiado larga

25 Sólo puede usar un parámetro de datos (DataD, DataH, o DataS)

Page 309: Spanish Manual Hasp v11

Uso del Remote Update System Remote Update System

285

Código Descripción

26, 27 Fecha de caducidad no válida o no se encuentra

29 Imposible utilizar el parámetro CfgFile desde el archivo de configuración

30 No encuentra el archivo de configuración

31, 35 Error al abrir o leer el archivo de configuración

32, 39 No encuentra o no puede crear el archivo de passwords RUS

33 Desbordamiento de memoria al leer un archivo

34 No es un archivo de configuración de la utilidad Vendor

36 No encuentra el modo de introducción de datos (FAS/Direct)

40 Demasiadas palabras de datos

41 Parámetro no válido

52 Número ID no válido

55, 56 No puede usar parámetros FAS para modo directo y viceversa

59 El rango de ejecuciones es 0-65534, o U para ilimitadas

60 El rango de estaciones es 1-65534, o U para ilimitadas

Page 310: Spanish Manual Hasp v11

Remote Update System Parte 5 – Capítulo 24

286

La Utilidad Customer

Para que su cliente pueda actualizar la llave HASP, debe proporcionarle la

utilidad Customer, customer.exe. Las siguientes instrucciones explican cómo

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.

Uso de la Utilidad Customer

Cuando usted, el cliente, usa la utilidad Customer, tiene dos opciones

principales:

• Obtener el Número ID de la llave HASP

• Actualización de la llave HASP

Obtención del Número ID HASP

En este paso, usted comprueba el Número ID de su llave HASP, y se lo

comunica a su proveedor.

Para obtener el Número ID HASP:

1. Conecte la llave HASP a su PC.

2. Desde la línea de comando del DOS teclee:

customer.

Aparece la pantalla principal de la utilidad Customer.

3. Pulse Get ID para obtener el Número ID de HASP (y saber el tipo de

HASP que tiene).

Aparece la pantalla Número ID HASP, mostrando el Número ID de HASP y

el tipo de su llave HASP:

Page 311: Spanish Manual Hasp v11

Uso del Remote Update System Remote Update System

287

4. Si desea grabar esta información en un archivo de configuración, 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 Número ID HASP de la llave y el tipo de HASP

bien dictándoselos directamente o enviando el archivo de configuración. Con

esos datos, el proveedor puede generar las passwords RUS que necesita para

actualizar su llave HASP.

Actualización 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 grabarán 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 línea 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:

Page 312: Spanish Manual Hasp v11

Remote Update System Parte 5 – Capítulo 24

288

• Pulsando Manual y tecleando las passwords en la siguiente pantalla:

• Pulsando Config, teclee el nombre del archivo de configuración que

contiene las passwords RUS (o pulsando Browse para encontrarlo) y

pulsando OK. Este proceso carga las passwords automáticamente del

archivo de configuración suministrado por su proveedor.

Aparecen en pantalla las passwords RUS.

4. Pulse Update cuando las passwords estén introducidas o cargadas desde

el archivo de configuración para actualizar su llave HASP.

Ejecución de la Utilidad Customer con parámetros

Mediante los parámetros de la línea de comando del DOS puede ahorrar

tiempo y labor de teclado. Con los parámetros también puede ejecutar la

utilidad Customer desde archivos batch o desde sus propias aplicaciones sin

pasar por las pantallas de la utilidad.

Parámetros de línea de comando de la utilidad Customer

La siguiente lista enumera los parámetros de línea de comando y una breve

descripción. Puede usar la cadena completa o una abreviación representada

por las mayúsculas de la cadena. Por ejemplo, puede teclear -UP o -UPdate.

Page 313: Spanish Manual Hasp v11

Uso del Remote Update System Remote Update System

289

Tabla 24.3: Parámetros de línea de comando de la Utilidad Customer

Parámetro Función

-Help Muestra una lista de todos los parámetros con una breve explicación de cada uno.

-GetId Muestra el Número ID de HASP.

-VenFile <nombre de archivo> Nombre de un archivo donde se graba el Número ID de HASP.

-UPdate <pass1>..<pass11> Actualiza la llave HASP con las passwords RUS específicas. Pueden haber hasta 11 passwords.

-CfgFile <archivo de configuración >

Nombre del archivo de configuración que contiene las passwords RUS.

-BatcH Ejecuta la utilidad Customer en modo batch sin acceder a las pantallas de la utilidad.

-NoBatch Deshabillita el modo batch (como cuando se desea cargar las passwords RUS desde un archivo de configuración).

Ejemplo de Uso de los parámetros desde la Línea de Comando:

Los siguientes ejemplos muestran la ejecución de la utilidad Customer

desde la línea 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 configuración 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 configuración llamado ruspass.txt (-cf ruspass.txt).

Page 314: Spanish Manual Hasp v11

Remote Update System Parte 5 – Capítulo 24

290

Códigos de Error de la Utilidad Customer

La utilidad Customer retorna códigos de error de nivel DOS enumerados en

la siguiente tabla de errores:

Tabla 24.4: Códigos de Error de la Utilidad Customer

Código Descripción

1, 2 Passwords RUS no válidos o no se encuentran

4 No se encuentra el archivo de configuración

6 Error abriendo el archivo de configuración

7 Archivo de configuración ilegal

8 Desbordamiento de memoria leyendo el archivo de configuración

12 Llave HASP incorrecta

13 Imposible generar el archivo de configuración sin el Número ID

14 No encuentra el nombre del archivo para grabar el Número ID

18 Error al abrir/crear el archivo para grabar el Número ID

19 Parámetro no válido

101 No se encontró la llave HASP

104 Número ID HASP erróneo

106 Dirección de inicio no válida

107 Demasiadas palabras de datos

108 Passwords RUS incorrectas

109 Error de lectura de la memoria HASP

Page 315: Spanish Manual Hasp v11

291

Parte 5 – Capítulo 25

Remote Update System API Win32

Con el API de Win32 puede actualizar remotamente la memoria de las

llaves HASP4 M1, M4, HASP4 Time y HASP4 Net. La actualización genera

un conjunto de cadenas seguras que pueden enviarse al usuario, para ser

interpretadas por una llave específica. Los siguientes componentes son de

interés a la hora de actualizar las llaves HASP utilizando este sistema. El

directorio RUS API del CD de HASP contiene los siguientes archivos:

haspdev.dll

Librería para el vendedor. Esta librería ofrece dos funciones diferentes para

crear las cadenas de actualización para llaves HASP: una para una

actualización de la memoria general, y la segunda para actualizar la

memoria FAS.

Haspclnt.dll

Librería para el cliente. Esta librería ofrece dos funciones diferentes de

utilidad para la actualización de las llaves HASP: una para la integración de

las actualizaciones de memoria en las llaves del cliente, y la segunda para

obtener los IDs de las llaves HASP.

Utilidad de personalización

La utilidad de personalización (confdll.exe) es una aplicación de línea de

comando para la incorporación de las passwords HASP en la DLL de cliente,

haspclnt.dll.

Page 316: Spanish Manual Hasp v11

Remote Update System API Win32 Parte 5 – Capítulo 25

292

Aplicaciones de ejemplo

El API de Win32 se entrega con aplicaciones de ejemplo para ayudarle a

integrar el RUS de Win32 en su aplicación.

Las siguientes secciones describen la implantación del API de Win32 en su

aplicación y cómo realizar actualizaciones utilizándolo.

Implantación 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 implementación del API de RUS supone dos etapas:

Paso1: Preparación de su aplicación para RUS

1. Personalice haspclnt.dll con sus passwords HASP. La DLL personalizada

puede enviarse junto con su aplicación. Vea la página 299, utilidad de

personalización.

2. Incorpore las rutinas de actualización RUS cliente en su aplicación. Vea

las aplicaciones de ejemplo.

Paso2: Realización de Actualizaciones

1. Utilice haspclnt.dll (DLL de cliente) para obtener el Número ID de la llave a actualizar.

2. Utilice haspdev.dll desde su entorno de producción para crear las cadenas de actualización necesarias.

Envíe los datos de actualización a su cliente para que los introduzca en la aplicación.

Page 317: Spanish Manual Hasp v11

Uso del Remote Update System Remote Update System API Win32

293

Funciones Suministradas en la DLL Vendor La librería haspdev.dll es el API Win32 para vendedores. Contiene estas dos

funciones:

• Signed int RUS_CreateUpdateDirect para actualización de la memoria

general, y

• Signed int RUS_CreateUpdateFAS para actualizar la memoria FAS

Ambas funciones generan cadenas de actualización, que deben enviarse al

cliente para la actualización de la memoria de su llave HASP.

RUS_CreateUpdateDirect

Descripción

Cuando utilice esta función 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)

Parámetros Utilizados

IdNum Número ID de la llave HASP del cliente. Introduzca el Número ID único de 32-bits de la llave HASP de su cliente. Si desea generar datos para llaves sin comprobar el Número ID durante el proceso de actualización, introduzca 0. Esto actualizará todas las llaves con las passwords que se especifiquen.

Password1, Password2

Passwords de las llaves HASP a actualizar.

Page 318: Spanish Manual Hasp v11

Remote Update System API Win32 Parte 5 – Capítulo 25

294

KeyType Tipo de la llave HASP. Las llaves posibles son HASP4 M1, M4, HASP4 Net o HASP4 Time

Address Dirección de inicio de la memoria HASP a partir de la que va a actualizar la memoria HASP:

NumOfBytesToUpdate Número de Bytes a actualizar en la memoria HASP.

MemoryImage Puntero de los datos que desea escribir en la memoria HASP

CodeBufferSize Longitud del buffer provisto

Code Puntero del área de datos que va a contener las cadenas ASCIIZ (ASCII zero) de códigos generados.

SKey Parámetro (puntero) reservado para uso futuro. Actualmente debe fijarse a NULL.

Valores Devueltos Consulte la sección “Valores Devueltos” más adelante.

Page 319: Spanish Manual Hasp v11

Uso del Remote Update System Remote Update System API Win32

295

RUS_CreateUpdateFAS

Descripción

Cuando utilice esta función, no es necesario que tenga una llave HASP conectada. La función 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)

Parámetros usados

IdNum Número ID de la llave HASP del cliente. Introduzca el Número ID único de 32-bits de la llave HASP de su cliente. Si desea generar datos para llaves sin comprobar el número ID durante el proceso de actualización, introduzca 0. Esto actualizará todas las llaves con las passwords que se especifiquen.

Password1, Password2

Passwords de las llaves a actualizar

KeyType Tipo de llave HASP. Los tipos de llave posibles son HASP4 M1, M4, HASP4 Net o HASP4 Time.

ProgramNumber Cada programa tiene asignado su propio número. Si está actualizando los parámetros de protección de un programa, especifique el número que le asignó previamente. Si está añadiendo un programa nuevo, asígnele un nuevo número.

Page 320: Spanish Manual Hasp v11

Remote Update System API Win32 Parte 5 – Capítulo 25

296

Activations Número de activaciones autorizadas para la aplicación protegida. Sólo aplicable para llaves HASP4 Net y HASP4 M1, M4. Introduzca 65535 para autorizar un número ilimitado de activaciones

Year, Month, Day Fecha de caducidad. De aplicación sólo para HASP4 Time. Observe que el rango que debe dar es 1992 – 2091. Fije todos los valores a 0 para dar una fecha ilimitada

Stations Número de estaciones autorizadas. De aplicación sólo para HASP4 Net. Este parámetro indica el número de estaciones autorizadas a ejecutar la aplicación simultáneamente. Fije el valor 0 para autorizar un número ilimitado de estaciones.

CodeBufferSize Longitud del Buffer provisto.

Code Puntero del área de datos que va a contener las cadenas ASCIIZ (ASCII zero) de códigos generados.

SKey Parámetro (puntero) reservado para uso futuro. Actualmente debe fijarse a NULL.

Valores Devueltos Consulte la sección “Valores Devueltos” más adelante.

Page 321: Spanish Manual Hasp v11

Uso del Remote Update System Remote Update System API Win32

297

Funciones Provistas en la DLL de cliente La librería haspclnt.dll incluye las siguientes funciones que deben ser llamadas desde el PC con la correspondiente HASP conectada:

• signed int RUS_PerformUpdate para actualizar la memoria de la HASP del cliente.

• Signed int Get_KeyID para obtener el ID de la llave HASP conectada

Antes de llamar a una de estas funciones, la DLL debe haberse personalizado. Vea “Utilidad de Personalización” en la página 301.

RUS_PerformUpdate

Descripción

Esta función actualiza la memoria de una o más llaves HASP. Si la actualización se realiza contemplando el Número ID, se comprobará el Número ID, el tipo de llave y las passwords. Si no es así, sólo se comprueba el tipo de llave y las passwords.

Sintaxis

Signed int RUS_PerformUpdate (char *Code)

Parámetros usados

Code Cadenas de datos ASCIIZ para la actualización (generadas usando la correspondiente función de la DLL del vendedor.)

Valores Devueltos Consulte la sección “Valores Devueltos” más adelante.

Page 322: Spanish Manual Hasp v11

Remote Update System API Win32 Parte 5 – Capítulo 25

298

Get_KeyID

Descripción

Esta función obtiene el Número ID de la llave conectada. Esta función es similar a la correspondiente función del API de HASP, pero se incluye en la DLL para la optimización de la instalación.

Sintaxis

Signed int Get_KeyID (unsigned int *KeyID)

Parámetros usados

KeyID Devuelve el ID de la llave conectada en ese momento

Valores Devueltos

Consulte la sección “Valores Devueltos” más adelante.

Page 323: Spanish Manual Hasp v11

Uso del Remote Update System Remote Update System API Win32

299

Valores Devueltos General

SUCCESS La función se ejecutó correctamente.

HASP_ERROR_IN_LOW_WORD Error durante una llamada a HASP. Se devuelve un código de error del API de HASP en low word

OPERATION_FAILED La operación no se realizó correctamente

DLL_NOT_CUSTOMIZED La librería no ha sido personalizada.

RUS ID

HASP_NOT_FOUND No se encuentra la llave HASP

UNDEFINED_HASP La llave HASP

HASP_3_DETECTED Se ha detectado una llave HASP 3

BATTERY_DEAD_OR_MEMORY_CORRUPT

La batería de la llave no funciona o la memoria está corrompida

Page 324: Spanish Manual Hasp v11

Remote Update System API Win32 Parte 5 – Capítulo 25

300

RUS Update

INVALID_CODE La cadena especificada en el parámetro Code no es válida

INVALID_KEY_ID La actualización es dependiente del número ID; el ID de la llave conectada no coincide.

KEY_NOT_FOUND No se encuentra la llave HASP con las passwords especificadas

KEYTYPE_MISMATCH La llave HASP conectada no corresponde al tipo especificado

Memory Update

BUFFER_TOO_SMALL

La longitud del buffer especificado en el parámetro CodeBufferSize es demasiado pequeña

ILLEGAL_MODULE_NUMBER El número de programa está fuera de rango para el tipo de llave especificada

INVALID_PARAMETER

Al menos uno de los parámetros introducidos no es válido, por ejemplo, no se especificaron passwords

ILLEGAL_KEYTYPE El tipo de llave especificada en el parámetro KeyType es desconocido.

DETECTED_TAMPERING Se ha detectado una manipulación en la información de la licencia

HASH_MEMORY_OVERFLOW El buffer que contiene el hash es demasiado pequeño

Page 325: Spanish Manual Hasp v11

Uso del Remote Update System Remote Update System API Win32

301

Utilidad de Personalización

Cada vendedor genera una DLL única con las funciones necesarias para la

actualización remota de las llaves. Esta DLL contiene las passwords HASP

y está protegida con la Envolvente HASP Win32 contra ingeniería inversa.

Para personalizar la DLL, debe utilizarse una sencilla utilidad de línea 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.

Page 326: Spanish Manual Hasp v11
Page 327: Spanish Manual Hasp v11

303

Apéndice A

Solución de Problemas

La primera parte de este apéndice ofrece una lista de pruebas que le puede ayudar

a resolver algunos de los problemas más comunes que podría encontrar cuando

utiliza HASP. La segunda parte le ayuda listando problemas específicos que usted

y sus clientes puedan encontrar, junto con sus soluciones.

La línea de productos HASP representa el más alto estándar de calidad asegurada.

Sin embargo, como cualquier otro dispositivo periférico, podría no operar en ciertas

configuraciones del PC debido a un equipo defectuoso o a una instalación

inadecuada. Este apéndice de Solución de problemas le puede guiar si se encuentra

en esta situación.

Para evitar dificultades, asegúrese 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 diagnósticos. Comunique los resultados a su distribuidor local

HASP.

Page 328: Spanish Manual Hasp v11

Apéndice A: Solución de Problemas

304

Listado de Comprobación 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 asegúrese de que se ajusta

a los estándares IEEE. Debe estar escrito en el mismo cable.

Si el cable se ajusta a los estándares, 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 algún problema de impresión?

Si es así, compruébelo con otra impresora en el mismo PC para

determinar si el problema es específico de la impresora. Ejecute hinstall

con el parámetro –i –cnt=yes

• ¿Está el PC infectado por un virus (que podría estar evitando el

funcionamiento correcto de la aplicación)?

• ¿Persiste el problema cuando la aplicación protegida funciona en otro PC del mismo

modelo?

Page 329: Spanish Manual Hasp v11

Apéndice A Solución de Problemas

305

Problemas y Soluciones

Problema La HASP está conectada pero la aplicación protegida no la encuentra.

Solución A pesar del esfuerzo realizado para asegurar la mejor comunicación, en raras ocasiones una llamada a la rutina hasp() podría 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 Obtiene errores de impresión cuando intenta imprimir desde una aplicación protegida de Windows.

Solución Esta situación 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 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.

Solución Abra la ventana Principal del Administrador de Programas.

Seleccione Panel de Control.

Seleccione 386 Extendido.

Seleccione LPT1 en la sección Contención de Dispositivo y active Nunca Alertar.

Repita el paso 4 para LPT2 y LPT3.

Pulse OK.

Page 330: Spanish Manual Hasp v11

Apéndice A: Solución de Problemas

306

Problema Intenta utilizar hinstall.exe para instalar el HASP Device Driver bajo Windows NT pero recibe el error 9121.

Solución Si usted intenta activar la utilidad Hinstall bajo Windows NT sin los privilegios del administrador, recibirá este error. Asegúrese de que tiene los privilegios del administrador.

Problema Intenta activar una aplicación protegida con HASP4 M1 / M4 bajo Windows NT / 2000 / XP y Windows 95 / 98 / ME, pero la aplicación no puede encontrar la llave.

Solución Asegúrese 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 número de versión, fecha de instalación, y tipo de sistema. Contacte con su distribuidor local de HASP con la información de estos parámetros.

Problema Sus aplicaciones de 16-bits están protegidas con HASP4 Net y la Envelope. Aunque el número de estaciones activando la aplicación es menor que el número de licencias autorizadas, cuando una estación adicional intenta activarla, recibe un error “too many users”.

Solución Una aplicación 16-bits, protegida sólo con HASP4 Net y la Envelope, no realiza un logout HASP4 Net. Cuando esta aplicación termina, permanece listada en la tabla log, y por lo tanto la licencia no es liberada.

Vuelva a proteger su aplicación utilizando el API de HASP para ejecutar un logout HASP4 Net. Esto borra su aplicación de la tabla log y libera la licencia.

Page 331: Spanish Manual Hasp v11

Apéndice A Solución de Problemas

307

Problema Ha protegido una aplicación para red y monopuesto con HASP4 M1 / M4 y HASP4 Net. Ahora descubre que puede activar la aplicación una estación más del número de licencias que ha autorizado.

Solución Esta situación ocurre porque la aplicación primero intenta acceder al puerto local para encontrar una HASP4 M1 / M4. Si los códigos deprogramador de su HASP4 M1 / M4 y HASP4 Net son los mismos, la aplicación activada desde la estación con la HASP4 Net conectada encuentra la HASP4 Net local. La aplicación trata la HASP4 Net local como si ésta fuera una llave monopuesto y no informa de la activación en la tabla log de HASP4 Net. Por lo tanto, la aplicación no utiliza una licencia.

Para evitar esta situación, asegúrese de que HASP4 M1 / M4 y HASP4 Net tienen diferentes códigos de programador.

Problema Su aplicación de Windows protegida con HASP4 Net retorna el Error 21 del LastStatus de HASP4 Net.

Solución 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 sólo las aplicaciones protegidas HASP4 Net, sino otras aplicaciones Windows están desactivadas.

Para resolver este problema, descargue algún programa residente o salga de alguna aplicación abierta de Windows. Debe utilizar la misma solución con cualquier aplicación que se queje sobre memoria DOS insuficiente.

Page 332: Spanish Manual Hasp v11

Apéndice A: Solución de Problemas

308

Problema Su aplicación está funcionando en una estación que no tiene drivers de red cargados. La estación se deja de responder cuando la aplicación ejecuta un login HASP4 Net.

Solución Esto ocurre cuando el archivo de configuración de HASP4 Net activa un protocolo específico. El sistema HASP4 Net intenta utilizar el protocolo especificado sin comprobar si está realmente presente. Si la estación no tiene drivers de protocolo instalados, reacciona parándose.

La solución es borrar el archivo de configuración de HASP4 Net. O, si lo necesita, cargar los drivers de red.

Problema Al acceder al puerto paralelo el PC se cuelga.

Solución 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 pestaña una tarjeta paralelo, acceder al puerto paralelo puede causar que el PC se cuelgue. Por ejemplo: imprimir, acceder a llaves de protección de software, y acceder a periféricos 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 dirección I/O con jumpers. Vea la documentación suministrada con la tarjeta para una descripción de las posiciones del jumper para una dirección I/O determinada.

Con las tarjetas nuevas, puede cambiar la dirección I/O utilizando el software suministrado con las tarjetas.

Page 333: Spanish Manual Hasp v11

Apéndice A Solución de Problemas

309

Problema Su aplicación protegida con HASP4 Net está funcionando sobre una estación en Windows para trabajo en grupo en una red Novell utilizando IPX y retorna el error 3.

Solución Los tipos de estructura en el archivo net.cfg y en el setup de la red de Windows no son idénticos. Compruebe el tipo de estructura en net.cfg y fije una idéntica para el tipo de estructura de Windows.

Para fijar los tipos de estructura en Windows:

Seleccione Configuración 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 Su aplicación tarda mucho tiempo en encontrar la HASP4 Net en una red Novell muy grande.

Solución En este caso, es recomendable personalizar el mecanismo de búsqueda. Utilice el archivo de configuración HASP4 Net para desactivar los mecanismos de búsqueda 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 dirección, que es mucho más rápido.

Page 334: Spanish Manual Hasp v11

Apéndice A: Solución de Problemas

310

Problema Su aplicación tarda mucho tiempo en encontrar la HASP4 Net en una red TCPIP grande.

Solución En este caso, es recomendable personalizar el mecanismo de búsqueda. Use el archivo de configuración para especificar el método de búsqueda UDP o TCP y fijar la dirección IP del Administrador de Licencias HASP4 Net. De esta forma, el cliente HASP4 Net busca el Administrador de Licencias HASP4 Net con la dirección IP específica, lo que es mucho más rápido.

Problema Se recibe el error 8 con HASP4 Net.

Solución 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 duración del timeout en el archivo de configuración de HASP4 Net.

Problema Se recibe un error 15 con HASP4 Net bajo TCPIP o IPX

Solución El error 15 bajo TCPIP/IPX ocurre sólo cuando se utiliza el mecanismo de búsqueda broadcast. El error 15 significa que se ha emitido por parte del cliente HASP4 Net, pero no se ha encontrado ningún Administrador de Licencias HASP.

Incremente el valor del timeout en el archivo nethasp.ini a 8 segundos. Si después 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.

3 Si se ha utilizado el protocolo IPX, entonces SAP no está soportado.

Si recibe repetidamente el error 15, intente utilizar otro mecanismo de búsqueda.

Page 335: Spanish Manual Hasp v11

Apéndice A Solución de Problemas

311

Problema Usted está utilizando una HASP4 Net5 y autorizó a su aplicación cinco licencias, pero sólo tres usuarios pueden activar la aplicación.

Solución Primero utilice HaspEdit y asegúrese de que su aplicación está programada para cinco licencias en la HASP4 Net. Si es así, es posible que se desconozca que las cinco licencias están siendo utilizadas. Utilice Aladdin Monitor para confirmar qué estaciones están utilizando licencias.

Page 336: Spanish Manual Hasp v11
Page 337: Spanish Manual Hasp v11

313

Apéndice B

Passwords de las Demos HASP

Cuando pide las llaves HASP, se asigna un único código de programador con

passwords únicas de HASP. Recibe las passwords junto con sus llaves

HASP.

Las Tablas B.1 y B.2 lista las passwords a utilizar con la llave demo de

HASP que recibe en su kit de evaluación de HASP.

Tabla B-1: Passwords de las Llaves Demo de Memoria

Código de Programador Password 1 Password 2

DEMOMA 15417 9632

DEMOMB 29875 28774

DEMOMC 29313 23912

Tabla B-2 Passwords de las Llaves Demo HASP4 sin memoria

Código de Programador Password 1 Password 2

DEMO3A 5932 25657

DEMO3B 20580 22012

DEMO3C 10038 15697

Page 338: Spanish Manual Hasp v11
Page 339: Spanish Manual Hasp v11

315

Apéndice C

Especificaciones Técnicas

Tabla C.1 Especificaciones Generales para todas las llaves HASP

Material caja de plástico ………………………………………………………..ABS

Temperatura operativa ……………………………….0° - 55° C (32° - 131° F)

Temperatura de almacenaje …………………….-25° - 70° C (-13° - 158° F)

Tasación de humedad …………………………0 – 100% sin condensación

UL-6C61 1950 standard ……………………………………….…………….94-V0

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 ……… Mínimo 100,000

Retención de la fecha en la memoria HASP ………………….…Mínimo 10 años

Page 340: Spanish Manual Hasp v11

Apéndice C: Especificaciones Técnicas

316

Tabla C.2 Especificaciones para HASP4 Std., HASP4 M1, HASP4 M4, HASP4 Net

Dimensiones ………………………………………………………………………………….39 x 53 x 17 mm

Peso ……………………………………………………………………………………….…~33 g

Conectores ………………………………………………………………………………….DB25

Líneas usadas ………………………………………………………………………….D0-D7, INIT, ATFDXT, PE

Memoria Lectura/escritura

HASP4 sin memoria ………………………………………………………..no dispone

HASP4 M1 ………………………………………………………………..112 bytes

HASP4 M4 ………………………………………………………………..496 bytes

HASP4 Net ………………………………………………………………..496 bytes

Baterías/alimentación externa no

Tabla C.3 Especificaciones para HASP4 Time

Dimensiones …………………………………………………………….…………………52 x 53 x 16 mm

Peso ……………………………………………………………….………………………~50 g

Conectores ……………………………………………………….………………….….DB25

Líneas usadas ……………………………………………….…………………….D0-D7, INIT, ATFDXT, PE

Memoria Lectura/escritura ………………………………………………………………512 bytes

HASP4 Time reloj cuenta ……………………………………………………………hora, minuto, segundo, año, mes, día

Exactitud del reloj HASP4 Time ……………………………………………………2 horas por año

Tiempo de vida de la batería ……………………………………………………4+ años

Page 341: Spanish Manual Hasp v11

Apéndice C Especificaciones Técnicas

317

Tabla C.4 Modelos USB

Dimensiones ………………………………………………..……………..………..…..57 x 16 x 8 mm

Peso ………………………………………………………………..…..……………….~7 g

Conectores ……………………..…………………………………..…………………USB Tipo A

Líneas usadas ………………………………………………..…………………..Alimentación, tierra, dos líneas de datos

Memoria lectura/escritura

HASP4 USB ……………………………………………………….…..no dispone

HASP4 USB M1 ……………………………………………..…………….112 bytes

HASP4 USB M4 ………………………………………………….….…….496 bytes

HASP4 USB Net ……………………………………....….………496 bytes

Baterías / alimentación externa …………………………………………………..no

Tabla C.5 HASP4 PC-Card

Dimensiones ……..……………………………………………………………………Tipo II

Peso …………………………………………………………..………………………..~25g

Temperatura operativa ……………………………………………………………….0° - 70° C (32° - 158° F)

Tasación de humedad ……………………………………………………….………20 – 80 % Humedad Relativa

Consumo …………………………………………………………..………………...<100mA (normalmente 50 mA)

Voltaje para operatividad ….………………………………………………………..5 V

Baterías / Alimentación externa ………………………………………………….. no

Tecnología ASIC …………….………………………………………….….………CMOS 2µA con celdas E2

Número de ciclos de programación ………………………………….……..……> 100.000

Retención de datos …………………………………………….…..……………...> 10 años

Page 342: Spanish Manual Hasp v11

Apéndice C: Especificaciones Técnicas

318

Tabla C.6 AladdinCard ISA

Dimensiones ………………………………………………………..... 113 mm x 100 mm

Peso ………………………………….…………………………….…. ~105 g. (incluyendo cables adaptadores)

Conector ………………………………………………….…….……. Bus ISA a slot de 8 bits

Direcciones IO ………………………………………………………..278h, 378h, 3BCh

IRQ ………………………….…………………………………………No, IRQ5, IRQ7

Voltaje para operatividad ……………………………………………..4.5 V – 5.5 V

Tabla C.7 AladdinCard PCI

Dimensiones …………………………………………………………180 mm x 124 mm

Peso ………………………………………………………………….~105 g (incluyendo cables adaptadores

Conector …………………………………………………………….Conector PCI 32 bits /33 MHz /5v conector

DB25 interno hembra

Direcciones IO …………………………………………………….. Asignadas dinámicamente

IRQ ………………………………………………………………….Asignada dinámicamente

Voltaje para operatividad ………………………………………….5 V

Page 343: Spanish Manual Hasp v11

319

Glosario

Activaciones El número de veces que una aplicación protegida con HASP puede ser iniciada

Mecanismo de Búsqueda de Archivos de Dirección

Un mecanismo de búsqueda en el que el cliente HASP4 Net accede a un archivo para obtener la dirección del Administrador de Licencias HASP.

ASIC El Application Specific Integrated Circuit (ASIC) de HASP es un chip propietario, completamente personalizado, con un algoritmo único.

Background HASP Checks

Chequeos activos de la presencia de la llave HASP realizados por la Envelope HASP durante la ejecución de la aplicación.

Mecanismo de Búsqueda Bindery

Mecanismo de búsqueda en el que el cliente HASP4 Net busca el bindery Novell para encontrar el Administrador de Licencias HASP.

Broadcast Método de comunicación a través de la red enviando (broadcasting) mensajes a cada estación de trabajo. Durante la transmisión de mensajes, define un PC concreto como destino, o emite el mismo mensaje para todas las estaciones de la red.

Mecanismo de Búsqueda Broadcast

Mecanismo de búsqueda en el que el cliente HASP4 Net usa una emisión SAP para encontrar el Administrador de Licencias HASP

Encadenamiento La conexión de llaves HASP una detrás de otra.

DataHASP Una prestación de la utilidad HASP Envelope que usa para proteger archivos de datos.

Page 344: Spanish Manual Hasp v11

Glosario

320

DemoMA El código de programador de las llaves HASP demo.

Código de Programador

Un código único asignado a cada fabricante de software y quemado en el componente ASIC de HASP.

Fecha de Caducidad

La fecha a partir de la cual la aplicación protegida no puede ejecutarse.

Full Authorization System (FAS)

Poderosa prestación que le permite proteger múltiples aplicaciones con una sola llave, y especificar las condiciones bajo las cuales cada aplicación puede ser utilizada.

HASP HASP es un sistema de protección de software basado en hardware.

Application Programming Interface HASP (API)

Un interface a un archivo objeto o DLL HASP que usted linka a su aplicación, y que le permite insertar llamadas a HASP desde su código fuente.

Llave HASP Demo Una llave HASP con passwords demo (15417 9632)Y CÓDIGO DE PROGRAMADOR DEMOMA que se usa para la evaluación del sistema de protección HASP.

Kit de Evaluación HASP

Un paquete que contiene todo lo necesario para evaluar el sistema de Protección HASP.

HASP Device Driver

Un driver que interviene entre la aplicación protegida con HASP y la llave HASP.

HASP Device Driver de Carga Dinámica

HASP Device Driver propietario que permite su carga sin necesidad de reiniciar el sistema.

Aladdin Diagnostic Herramienta utilizada para comprobar toda la información de su sistema relativa a HASP.

HASP Envelope Utilidad HASP que envuelve una aplicación en un escudo protector y asegura que la aplicación protegida no puede funcionar excepto si está conectada al PC la llave HASP correcta.

Page 345: Spanish Manual Hasp v11

Glosario

321

HASP Envelope Wizard

Guía paso a paso a través del proceso de protección utilizando HASP Envelope

Número ID HASP Un número único asignada a cada llave de memoria HASP durante el proceso de fabricación.

Memoria HASP Memoria Interna de lectura / escritura, la cantidad de memoria varía dependiendo del modelo HASP

Llave de memoria HASP

Las llaves de memoria HASP tienen una memoria interna de lectura / escritura, cuyo tamaño 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)

Passwords HASP Dos passwords únicas asignadas a cada fabricante de software, que le permiten el acceso a las HASP.

Rutina hasp() La rutina del API de HASP que accede a HASP.

Llave HASP monopuesto

Llave HASP diseñada para PCs monopuesto.

Kit de Inicio HASP Paquete que contiene todo lo que precisa para evaluar el sistema HASP y proteger su software de forma inmediata.

Utilidades HASP Test

Utilidades para testear el API de HASP y las operaciones HASP4 Net.

HASP4 Time Llave HASP monopuesto que contiene un chip ASIC, reloj de tiempo real interno, y según el modelo, hasta 512 bytes de memoria interna de lectura / escritura.

Hinstall Aplicación que instala el HASP Device Driver

Idle Time Periodo tras el cual la estación es considerada inactiva si no ha accedido a HASP4 Net.

Búsqueda automática HASP4 Net.

Método predeterminado por el que la aplicación protegida con HASP4 Net busca el Administrador de Licencias HASP.

Page 346: Spanish Manual Hasp v11

Glosario

322

Cliente HASP4 Net

La estación que activa la aplicación protegida con HASP4 Net.

Archivos de configuración HASP4 Net

Arcbivos que contienen las indicaciones para el ajuste del cliente HASP4 Net y el Administrador de Licencias HASP dentro de la red.

Búsqueda personalizada de HASP4 Net

Método personalizado por el que el cliente HASP4 Net busca el Administrador de Licencias HASP.

Administrador de Licencias HASP

Aplicación que comunica entre la aplicación protegida y la llave HASP4 Net, funcionando como enlace entre ambas.

Tabla Log HASP4 Net

Lista de todas las aplicaciones protegidas que han realizado un Login a HASP4 Net y las estaciones desde donde se han activado.

Login HASP4 Net Proceso por el que una aplicación protegida con HASP4 Net solicita permiso para la activación al Administrador de Licencias HASP.

Logout HASP4 Net

Proceso por el que una aplicación protegida con HASP4 Net informa al Administrador de Licencias HASP que no va a continuar utilizando la licencia.

Nethasp.ini El archivo de configuración HASP4 Net para la aplicación protegida. Contiene las indicaciones para el ajuste de HASP4 Net en la red.

Modelos HASP4 Net

Las series de llaves HASP4 Net que permiten diferente número máximo de licencias para una aplicación protegida.

Monitor HASP4 Net

Herramienta usada para el seguimiento del uso de las aplicaciones protegidas con HASP4 Net en una red (monitor.exe)

Nhsrv.ini El archivo de configuración para el Administrador de Licencias HASP. Contiene las indicaciones para el ajuste del Administrador de Licencias HASP Net.

Número de Activaciones

El número de veces que una aplicación protegida puede ejecutarse.

Page 347: Spanish Manual Hasp v11

Glosario

323

Número de licencias

El número de estaciones que pueden ejecutar una aplicación protegida al mismo tiempo.

Pattern Estructura en la aplicación protegida que se actualiza cuando se realiza una llamada oculta a HASP.

PC-CardHASP Avanzada tarjeta de protección de software que se inserta en el slot PC-Card (PCMCIA) que se encuentra en la mayoría de notebooks.

Page 348: Spanish Manual Hasp v11
Page 349: Spanish Manual Hasp v11

HASP4 Programmer’s Guide 325

AAccess to HASP key.......................... 32 - 33Activations ................................................ 102Adapt timeout length............................... 267AKS Monitor. See Aladdin Monitor

aksparlnx.o .................................................. 35aksusbd ................................................. 32, 35Aladdin Diagnostic .................................... 26

check HASP keys.............................. 109diagnose HASP keys ........................ 108Key Access History pane................. 111

Aladdin Monitor... 215, 218, 257 - 262, 311Anti debug modules................................... 65Anti-debugging........................................... 71API ....................................................... 19 - 20Application activations, limit........... 21, 279Application programming interface ...... 115Application protection, prepare............... 73ASCIIZ...................................................... 297ASIC........................................................ 5, 17

BBackground HASP checks........................ 71Basic services ............................................ 143Batch code. See Developer Code

Battery in HASP4 Time ............................ 22Big Endian................................................. 151

C-c .................................................................. 65Cascading. See Daisy-chaining

-cfgfile ......................................................... 65Chaining. See Daisy-chaining

Checkclock date .......................................... 165clock time .......................................... 163for HASP presence.......................... 146HASP ID number..... 88, 156, 170, 183HASP type ........................................ 147port..................................................... 147status of call to HASP4 Net ........... 176

Checksumming ........................................ 138Clearing the memory................................. 97Clock

check date.......................................... 165check time ......................................... 163setting date ........................................ 164setting time........................................ 162

Compilers, support.................................. 130Configuration file ...................................... 65Conflicts with parallel devices, avoid ... 305Crash, reactivating after.......................... 177Create templates ...................................... 101-createcfg..................................................... 65custinst.exe. See Customer utility

Customer utility .. 272 - 273, 276, 286 - 290

Index

Page 350: Spanish Manual Hasp v11

Index

326 © Aladdin Knowledge Systems, 2002

Status codes ....................................... 290

DDaemon....................................................... 32Daisy-chaining ............................................ 23Data

decode ....................................... 150, 193encode .............................. 135, 149, 191

Data files, protecting. See DataHASP

DataHASP............................................ 23, 60Dates. See Clock

Decode data ..................................... 150, 193DecodeData service................................... 15Defining range of stations ........... 263 - 266Demo applications ................................... 115Demo key passwords............................... 313Demo keys ................................................ 313Determine HASP ID.......................... 79, 98Determining HASP ID ........................... 116Developer code .......... 15, 17, 218, 307, 313Device conflict, avoiding ........................ 305Device driver. See HASP device driver

-dhfilter ........................................................ 65-dhfilterx ...................................................... 66-dhkey .......................................................... 66dinst.............................................................. 32Disk space requirements ........................... 44Distribution

preparing for........................................ 73DLLs

protecting........................................... 130DOS extender............................................. 69DOS, memory requirements .................. 307Driver........................................................... 33-drvwait........................................................ 66

EEditing HASP memory ........................... 116

Editing memory ......................................... 88HASP4 M1/M4.................................. 89HASP4 Net ......................................... 92Remote Update System.......... 278, 280

-enc .............................................................. 66-enclevel ...................................................... 66Encode ...................................................... 138Encode data.................... 116, 135, 149, 191

with HASP Edit............................ 77, 98Encode of HASP memory ..................... 138Encryption key........................................... 66endian ........................................................ 151Envelope. See HASP Envelope

Error codes. See Status codes

Error messagesHASP Envelope ................................. 64

Errorserror 15 .............................................. 310error 21 .............................................. 307error 3 ................................................ 309error 8 ................................................ 310error 9121 .......................................... 306HASP not found .............................. 306

Expiration dates ....................................... 102Expiry date................................................ 280-exsecnum................................................... 66

FFAS ............................................................ 102

HASP Envelope ................................. 46-fas................................................................ 66FAS area.................................................... 103-fasprgnum.................................................. 66File pattern.................................................. 65Frame types .............................................. 309Full Authorization System........ 20 - 21, 102

program list ................................. 81 - 88Remote Update System......... 278 - 279

Page 351: Spanish Manual Hasp v11

Index

HASP4 Programmer’s Guide 327

GGetDate..................................................... 165GetHaspID............................................... 170GetTime .................................................... 163Getting started...................................... 1 - 39

H-h3easy......................................................... 66-h3hard ........................................................ 66-h3pass......................................................... 66Hard disk space .................................. 78 - 79Hardware....................................................... 8HASP

in a network......................................... 23interfaces............................................ 115problems ............................................ 303software updates............................... 303

HASP API ................. 19 - 20, 26, 115 - 131basic services ..................................... 143HASP4 Net services .............. 171 - 196HASP4 Time services............ 159 - 170Memory services..................... 151 - 158status codes ............................. 197 - 205

HASP basic concept.......................... 13 - 24HASP daemon .................................. 32, 116HASP Demo .............................................. 27HASP demo keys....................................... 97HASP Developer Kit ................................ 11HASP Device Driver ..................... 215, 306

for Windows NT.............................. 306removing.............................................. 31

HASP device driver ................................... 26HASP driver .............................. 32 - 33, 116

for Mac OS 8.6, 9 ............................... 33for Mac OS X ..................................... 32

HASP Edit ................................. 26, 73 - 104configuration file ................................ 75prepare for application protection... 98

retrieve HASP ID ........................ 79, 98setting preferences ............................. 97template files..................................... 100

HASP Envelope ......... 19 - 20, 43 - 72, 141and API protection............................ 43error messages .................................... 64Instdos.exe .......................................... 65Instw16.exe ......................................... 65Instw32.exe ......................................... 65switches ............................................... 65window ................................................ 45with HASP4 Net .............................. 306

HASP hardware............................................ 8HASP ID number ... 17, 22, 76, 79, 98, 272

and HASP API protection ............. 116and HASP Envelope protection...... 58calculating.......................................... 131check ........................... 88, 156, 170, 183entering in Vendor utility................ 277retrieving with Customer utility..... 286

HASP keycheck presence of .............................. 15

HASP keysdemo .................................................. 313

HASP License Manager 177, 195, 200, 215, 263

switches ........................... 236 - 238, 263HASP License Manager configuration file..

264HASP memory........................................... 21

options................................................. 17HASP memory, encode of..................... 138HASP passwords................ 17, 22, 276, 313

changing .............................................. 22hiding ................................................. 139

HASP protection keys ................................. 8HASP software, overview................ 25 - 27HASP Starter Kit....................................... 11HASP test utilities ..................................... 27

Page 352: Spanish Manual Hasp v11

Index

328 © Aladdin Knowledge Systems, 2002

HASP Test Utility .................................... 128hasp( ) routine....... 117, 129, 133, 143, 151,

159, 171, 197, 305and TCP/IP....................................... 172time required to call.......................... 129

-hasp4........................................................... 66HASP4 key models ...................................... 9HASP4 key types.......................................... 9HASP4 M1............................................. 8, 10

services .................................... 151 - 158HASP4 M1/M4.......................................... 24

editing memory ................................... 89HASP Envelope.................................. 46update ................................................... 24

HASP4 M4....................................... 8, 10, 89services .................................... 151 - 158

HASP4 Net ......................... 10, 55, 209, 219and the HASP Envelope ................. 306client configuration file ......... 247 - 256editing memory ................................... 92error 21............................................... 307HASP Envelope.................................. 46Internet............................................... 219key ........................................................... 8LastStatus codes..................... 200 - 205LastStatus service.............................. 176License Manager ............................... 215log table ........... 177, 179, 185, 214, 228login ........................................... 177, 308logout................................... 70, 179, 306program list......................... 86, 182, 189services .................................... 171 - 196

HASP4 Net configuration files .............. 263client ........................................ 247 - 256setting the name................................ 190

HASP4 Standard .......................................... 9HASP4 Std .............................................. 8 - 9HASP4 Time.................................... 8, 10, 22

clock...................................................... 92

HASP Envelope ................................. 46setting clock ........................................ 97

HASP4 Time services ................... 159 - 170HASP4 without memory.......................... 81HaspDecodeData ........................... 150, 193haspdemo.exe ............................................... 128HaspEdit ................................................... 311HaspEdit. See HASP Edit

HaspEncodeData ........................... 149, 191haspenv.exe................................................. 45HaspID............................................. 156, 183HaspQueryLicense .................................. 196HaspStatus ................................................ 147HDD16.EXE............................................. 29HDD32.EXE............................................. 29-highsecoff .................................................. 67-highsecon................................................... 67Hinstall utility ..................................... 30, 306

II/O base, changing.................................. 308IBM...................................................... 54, 276-ibm.............................................................. 67ID number............................................ 17, 22Identify key ................................................. 15Idle time ...................................................... 70IdleTime.................................................... 184Implementing API................................... 117Installation .......................................... 25 - 39

customize under Linux................ 37, 39customize under Mac OS X ............. 32customize under Windows ............... 30Linux ............................................ 35 - 39Mac............................................... 32 - 34Windows...................................... 29 - 31

Installingdriver .................................................... 33

Instdos.exe.................................................. 65

Page 353: Spanish Manual Hasp v11

Index

HASP4 Programmer’s Guide 329

Instw16.exe ................................................. 65Instw32.exe ................................................. 65Interfaces................................................... 115-interval........................................................ 67IPX protocol

defining range of stations................ 263IsHasp........................................................ 146

Kkernel mode driver..................................... 35

LLanguages

support ............................................... 130LastStatus .................................................. 176

codes......................................... 200 - 205error 21 .............................................. 307

Licensing .......................... 55, 218, 306 - 307Limit

application activations ....................... 21Limiting

applications served ........................... 267licenses ................................................. 55number of licences ............................. 55

Linux............................................................ 35Little Endian............................................. 151-loader.......................................................... 67Loading time............................................... 71Log table......... 177, 179, 185, 214, 228, 306Login......................................... 177, 214, 308-loginx.......................................................... 67Logout ............................... 70, 179, 214, 306LptNum..................................................... 119

MMac 9.x ........................................................ 33Mac OS 8.6 ................................................. 33Mac OS X ................................................... 32

Memory....................................................... 21editing .................................................. 88HASP4 Net reserved...... 104, 182, 189reading .... 154, 157, 167, 169, 181, 186remote update..................................... 24update .................................................. 24writing to 155, 158, 166, 168, 182, 188

Memory services............................ 151 - 158-mhid ........................................................... 67-mhpass....................................................... 67Micro .............................................................. 5Micro-controller ........................................... 5Multi key programming tool.................. 101

NNEC

as target computer ........................... 276-nec .............................................................. 67NetBIOS protocol

defining range of stations ............... 266station name...................................... 266

-netcfg ......................................................... 67NetHASP

login ................................................... 214logout................................................. 214

NetHASP Monitor. See Aladdin Monitor

Network cards.......................................... 308Networks and HASP4 Net ............ 209, 219New Envelope Configuration ................. 45NH_COMMON ............................. 248, 250NH_IPX................................................... 251NH_NETBIOS....................................... 254NH_TCPIP.............................................. 255-nhpass ........................................................ 67-nodbgcheck............................................... 67-noenc ......................................................... 67-nofas........................................................... 67-nohasp4 ..................................................... 68

Page 354: Spanish Manual Hasp v11

Index

330 © Aladdin Knowledge Systems, 2002

-norandomsize ............................................ 68-nores ........................................................... 68-nospecial..................................................... 68Novell network......................................... 309-novir............................................................ 68Number of Licenses field

HASP4 Net.......................................... 55

OOpen Envelope Configuration ................ 45-out ............................................................... 68Overlay File field ........................................ 54Overlay handling ........................................ 69-ovl................................................................ 68

PParallel keys................................................... 9Parallel port ...................................... 119, 308Parameters

hasp( ) routine 118, 143, 151, 159, 171Passwords. See HASP passwords

PC-Cards ....................................................... 9PCMCIA........................................................ 9-pcs ............................................................... 68Port, check ................................................ 147Prepare for application protection .......... 98Preparing HASP keys ................................ 99-prg ............................................................... 68-prgnum....................................................... 68Printing problems ......................... 304 - 305Problems.................................................... 303Program list ........................ 81 - 88, 182, 189Program number ...... 51, 66, 68, 83 - 87, 89

Remote Update System ................... 279Programming HASP keys ......................... 99Programming multiple keys............. 94, 101Programming single HASP keys..... 99, 101Protect Application............................. 46, 50

Protect icon ................................................ 46Protection

for networks and stand-alone keys 127for networks and stand-alones ....... 307HASP API........................... 19, 26 - 131HASP Envelope ................................. 19main stages .......................................... 28maximizing ..................... 133 - 141, 221methods ............................................... 19of data files .......................................... 23of DLLs ............................................. 130quick reference ................................... 28

Protection parameters............................. 102

Q-quiz ............................................................. 68

RRAM .................................................... 78 - 79-randomsize ................................................ 68Reactivating, after crash.......................... 177Read/write memory .................................. 10ReadBlock................................ 157, 169, 186ReadByte ................................................... 167Reading memory... 154, 157, 167, 169, 181,

186ReadWord........................................ 154, 181Real-time clock........................................... 10Remote Update System . 24, 269, 271 - 301

client DLL ......................................... 297Customer utility .. 272 - 273, 276, 286 -

290customization utility........ 291, 299, 301DLL for customer............................ 291DLL for vendor................................ 291editing memory........................ 278, 280Full Authorization System .... 278 - 279passwords ......................... 272, 277, 287

Page 355: Spanish Manual Hasp v11

Index

HASP4 Programmer’s Guide 331

performing updates.......................... 292preparing your application .............. 292sample applications .......................... 292switches.............................................. 288vendor DLL ...................................... 293Vendor utility ....... 272 - 273, 277 - 285Win32 API for HASP keys... 291 - 301

Report, Aladdin Diagnostic utility......... 108Retrieve HASP ID............................... 79, 98Return codes

hiding.................................................. 139Rmote Update System

preparing your application .............. 292RUS. See Remote Update System

SSample applications ................................. 115Scanning for connected keys.................... 98Searching, parallel port............................ 119Security, improving........................ 133 - 141Serial number.See HASP ID

Servicesbasic.................................................... 143HASP Memory ....................... 151 - 158HASP4 Net ............................. 171 - 196HASP4 Time........................... 159 - 170Service 1............................................. 146Service 104......................................... 196Service 3............................................. 154Service 40........................................... 176Service 42........................................... 177Service 43........................................... 179Service 44........................................... 181Service 45........................................... 182Service 46........................................... 183Service 48........................................... 184Service 5............................................. 147Service 50........................................... 157

Service 51 .......................................... 158Service 52 .......................................... 186Service 53 .......................................... 188Service 6 ............................................ 156Service 60 .......................................... 149Service 61 .......................................... 150Service 70 .......................................... 162Service 71 .......................................... 163Service 72 .......................................... 164Service 73 .......................................... 165Service 74 .......................................... 166Service 75 .......................................... 167Service 76 .......................................... 168Service 77 .......................................... 169Service 78 .......................................... 170Service 85 .......................................... 190Service 88 .......................................... 191Service 89 .......................................... 193Service 96 .......................................... 195Service4 ............................................. 155

SetConfigFilename.................................. 190SetDate...................................................... 164SetServerByName.................................... 195SetTime ..................................................... 162Setting

clock date .......................................... 164clock time.......................................... 162FAS Program List for HASP4 M1/M4

82FAS Program List for HASP4 Time 84frame type ......................................... 309HASP License Manager name ....... 195HASP4 Net configuration file ....... 190HASP4 Time clock............................ 92number of licences............................. 55

Setup utility................................................. 29setup.exe. See Setup utility

SoftwareHASP, overview......................... 25 - 27

Page 356: Spanish Manual Hasp v11

Index

332 © Aladdin Knowledge Systems, 2002

updates ............................................... 303-special ......................................................... 69-special1 ....................................................... 69Specifying the port ................................... 119Specifying USB port number ................. 120Stand-alone HASP keys in a network ..... 23Start HASP Wizard.................................... 45Status codes

Customer utility ................................ 290HASP API .............................. 197 - 205HASP4 Net LastStatus ......... 200 - 205Vendor utility .................................... 284

SwitchesCustomer utility ................................ 288HASP Envelope.................................. 65HASP License Manager 236 - 238, 263Remote Update System ................... 288Vendor utility ......................... 282 - 284

TTCP/IP protocol

and hasp( ) routine............................ 172defining range of stations ................ 264

Technical support .................................... 108Template files ........................................... 100Time. See Clock

Timeout length ......................................... 267Troubleshooting....................................... 303

UUnprotected File ................................. 46, 48Update HASP keys ............... 269, 291 - 301Update System....................... 269, 291 - 301USB enumeration..................................... 120USB HASP.................................................... 5USB keys ....................................................... 9USB port number..................................... 120Use HASP4 Security Features field......... 54

Using API ................................................. 117Using Full Authorization System .......... 102

Vvendinst.exe. See Vendor utility

Vendor utility .............. 272 - 273, 277 - 285status codes ....................................... 284switches.................................... 282 - 284

Verifypresence of HASP.............................. 15

-vir................................................................ 69

WWin32 data files

protecting ............................................ 47Working with templates.......................... 100WriteBlock............................... 158, 168, 188WriteByte .................................................. 166WriteWord ....................................... 155, 182Writing to HASP keys............................... 99Writing to memory 155, 158, 166, 168, 182,

188

Page 357: Spanish Manual Hasp v11
Page 358: Spanish Manual Hasp v11

HASP4 _Guide.fh9 2/12/2001 11:55 Page 1

Composite

C M Y CM MY CY CMY KVersion 11

HA

SP

® P

rogram

mer’s G

uid

e

Securing the

global

vi l lage

Programmer’s Guide

0 3 7 8 2à03782!ä

Printed in Israel 11/2001 © Aladdin Know

ledge Systems Ltd. HASP

® is a registered trademark of Aladdin Know

ledge Systems Ltd.

All other product names are tradem

arks or registered trademarks of their respective ow

ners.

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 PInternational T: +972-3-636-2222 F: +972-3-537-5796, [email protected] America T: 1-800-562-2543, 1-847-818-3800, F: 1-847-818-3810, [email protected] T: +44-1753-622266 F: +44-1753-622262, [email protected] T: +49-89-89-42-21-0 F: +49-89-89-42-21-40, [email protected] T: +31-30-688-0800 F: +31-30-688-0700, [email protected] T: +33-1-41-37-70-30 F: +33-1-41-37-70-39, [email protected] T: +972-3-636-2222 F: +972-3-537-5796, [email protected] T: +55-21-235-2499 F: +55-21-236-0768, [email protected] T: +81-426-60-7191 F: +81-426-60-7194, [email protected] T: +7-095-923-0588 F: +7-095-928-6781, [email protected] T: +34-91-375-99-00 F: +34-91-754-26-71, [email protected] T: +86-10-6526-9920 F: +86-10-6526-9921, [email protected]

Page 359: Spanish Manual Hasp v11

HASP4 _Guide.fh9 2/12/2001 11:55 Page 2

Composite

C M Y CM MY CY CMY K

Guía del Programador

Versión 11