首页
社区
课程
招聘
[原创]穿山甲Armadillo4.0中英文对照帮助,已翻译完毕,欢迎批评指正:)
发表于: 2006-12-21 20:43 55402

[原创]穿山甲Armadillo4.0中英文对照帮助,已翻译完毕,欢迎批评指正:)

2006-12-21 20:43
55402
收藏
免费 7
支持
分享
最新回复 (119)
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
26
How can I set certain parts of my program so only certain people can use them?
我如何设置程序的某些部分只有某些人能使用?
The most secure way is to use Secured Section markers to completely remove the sections that you don't want certain people to have access to. With this option, anyone who doesn't have a key that can access those sections, simply won't see them -- they won't be in your program at all.
最安全的方法是使用安全段标记完全移除你不想某些人使用的那些段。使用这个选项,任何没有密匙的人可以访问或者仅仅是看见这些段--他们根本不在你的程序里。???
For those who don't need the extra security that this offers, there is another option; just include an Environment Variable in each certificate, then test for it in your program. For example, add an environment variable labelled PAIDFOR in your certificate, set to YES or NO. Then in your program, check for this (using the environment variable functions -- please see the FAQ questions on this for more information on how to use them with Visual BASIC, C/C++, Delphi, Visual FoxPro, or Clarion) before allowing your customers to access the appropriate areas.
对于那些不需要这个提供的额外的安全的人,有另一个选项;仅包括一个环境变量在每个授权,然后在你的程序里检测他。例如,增加一个环境变量PAIDFOR在你的授权,设置为YES or NO。然后在你的程序里,检查这个变量(使用环境变量函数-另见FAQ里关于这个问题的更多信息,如何在Visual BASIC, C/C++, Delphi, Visual FoxPro, or Clarion里使用)在允许你的用户访问适当的区域前。
2006-12-22 13:22
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
27
How do I use the environment variables that SoftwarePassport/Armadillo passes to my program? (Visual Basic 5.0 or higher)
我如何使用SoftwarePassport/Armadillo传递到我的程序的环境变量?(Visual Basic 5.0 或更高版本)
The easiest way is to use the Visual BASIC built-in Environ$ function. You can also do it by way of the Windows API function GetEnvironmentVariable, but we no longer recommend that; Environ$ is much easier to deal with and has no conversion and comparison problems.
最简单的方法就是使用Visual BASIC内建的环境函数。你也可以通过使用Windows API 函数GetEnvironmentVariable来做,但是我们不推荐;Environ$很容易处理,没有变换和比较问题。
To make Visual BASIC programs work with SoftwarePassport/Armadillo's Environ$ function, rather than the one built into Visual BASIC itself (which cannot access the SoftwarePassport/Armadillo-generated environment variables), add the following line to any module file:
为了使Visual BASIC程序与SoftwarePassport/Armadillo的环境变量函数合作,而不是Visual BASIC自身内建的(他不能访问SoftwarePassport/Armadillo生成的环境变量),增加下边的一行到任何模块文件:
Public Declare Function Environ Lib "ArmAccess.DLL" (ByVal Name$) As String  
Then use Environ$ normally. For more information on how to use it, please refer to the Visual BASIC documentation.
然后正常的使用Environ$。了解如何使用的更多信息,参考VB文档。
Note: While this works for most people, several have still had problems after adding it; apparently VB uses the original Environ function in some projects despite this declaration. If you have this problem, you must use an alias to access the function by a different name:
注意:虽然这个对大多数人有效,个别人在增加后仍然有问题;显然VB使用原来的环境函数在一些工程里而不管这个申明。如果你遇到这个问题,你必须使用一个别名来访问这个函数。
Public Declare Function ArmEnviron Lib "ArmAccess.DLL" Alias "Environ" (ByVal Name$) As String  
Then use the function ArmEnviron$ in place of Environ$ to retrieve the strings.
然后使用函数ArmEnviron$ 代替 Environ$来找回字符串。
Another possible problem is caused by setting Intercept None. SoftwarePassport/Armadillo must intercept the MSVBVM?0.DLL file appropriate to your version of VB (MSVBVM50.DLL or MSVBVM60.DLL) to provide access to the virtual ArmAccess.DLL's functions. If you set it to Intercept None, or remove those entries from the default interception list, then it won't be able to.
另一个可能的问题是通过设置中断None引起。SoftwarePassport/Armadillo必须中断MSVBVM?0.DLL文件,根据你的VB版本(MSVBVM50.DLL or MSVBVM60.DLL)来提供到virtual ArmAccess.DLL's函数的访问。如果你设置中断None或者你移除了那些入口从默认的中断列表,他将不能访问。
If you continue to have problems, please check the version of the MSVBVM60.DLL file that the affected customer is using. The version that ships with Windows Millennium (marked 6.0.84.95 or 6.00.8495, with a comment of "May 10, 1999") has issues with SoftwarePassport/Armadillo (version 6.0.92.37 (or 6.0.9237), with a comment of "May 29, 2001", works), and some versions of installation programs (such as Wise Install v7) won't always update it properly -- we're told that the current version (Wise Install v9) works as it should.
如果你还是有问题,请检查受影响的用户使用的MSVBVM60.DLL文件的版本。和Windows Millennium一起发布的版本(标记为 6.0.84.95 or 6.00.8495, 注释 "May 10, 1999")有问题,(版本 6.0.92.37 (or 6.0.9237), 注释 "May 29, 2001",工作正常),并且一些版本的安装程序(例如 Wise Install v7)并不总是完全更新―我们被告知当前的版本(Wise Install v9)工作正常。
If all else fails, you can select the "Store Environment Variables Externally" option, on the Other Options page of the Project Settings, and use VB's built-in Environ$ command. You won't be able to update the variables after your program starts, and they'll be visible to anyone with the right tools, but it will work.
如果所有这些都失败了,你可以选择"Store Environment Variables Externally"在外部储存环境变量选项,在工程设置的另一个选项页,并使用VB内建的Environ$命令。你不能在程序启动后更新变量,他将是可见的对那些使用正确工具的人,但是他工作正常。
Example 例如
The following example simply retrieves the USERNAME environment variable, and stores it in the User variable. To retrieve a different variable, simply replace the name.
下边的例子简单的找回USERNAME环境变量,并且储存他到用户变量。找回一个不同的变量,简单的替换变量名
Dim User as String
User = Environ$("USERNAME")
2006-12-22 18:06
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
28
How do I use the environment variables that SoftwarePassport/Armadillo passes to my program? (Visual C/C++)
如何使用SoftwarePassport/Armadillo传递到我的程序的环境变量(Visual C/C++)
We recommend using the GetEnvironmentVariable() Windows API function. The standard C library includes a function to retrieve environment variables as well (getenv()), but we've found that it does not recognize changes made to the environment after the program is started (such as by the ArmAccess.DLL).
我们建议使用GetEnvironmentVariable() Windows API函数。标准C库还包括一个函数(getenv())用来找回环境变量,但是我们发现他不能识别程序启动后对环境变量进行的改变(例如通过 ArmAccess.DLL).
Example 例如
This example code tests the environment variables to see what the user's name and key are, and displays them.
这段例子代码测试环境变量来看用户名和密匙是什么,并显示他们
#include <windows.h> /* For declaration of GetEnvironmentVariable() */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
bool ShowUserNameAndKey(void) {
    char name[256]="", key[256]="", display[512];
    /* Check the USERNAME; it should always be set if the program is protected */
    if (!GetEnvironmentVariable("USERNAME", name, 255)) {
        MessageBox(0, "Is the program protected?", "Error!", MB_OK|MB_ICONERROR);
        return false;
    };
    if (!GetEnvironmentVariable("USERKEY", key, 255)) strcpy(key, "No key!");
    if (!stricmp(name, "DEFAULT")) {
        strcpy(display, "Program is using the default key; no username or key is available.");
    } else {
        sprintf(display, "Program is registered to %s (%s).", name, key);
    };
    MessageBox(0, display, "Information", MB_OK|MB_ICONINFORMATION);
    return true;
}
2006-12-22 18:12
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
29
How do I use the environment variables that SoftwarePassport/Armadillo passes to my program? (Delphi)
如何使用SoftwarePassport/Armadillo传递到我的程序的环境变量(Delphi)
Thanks to Carl Peeraer for contributing this information.
感谢Carl Peeraer贡献这个信息。
The following code uses the Windows API function GetEnvironmentVariable() to access an environment string, the name of which you can pass to it:
下边的代码使用Windows API函数GetEnvironmentVariable()来访问一个环境字符串,字符串的名你可以传送给他:
function GetEnvironmentVariable(lpName: PChar; lpBuffer: PChar; nSize: DWORD): DWORD; stdcall;  
  Function Read_Arm_Var(XENV:PCHAR) : String;  
  Var Env_String : ARRAY[0..255] OF CHAR;  
  Begin
     Env_String:='';  
       If (GetEnvironmentVariable(XENV,@Env_String,255)<>0)  
       Then Read_Arm_Var:=Trim(Env_String)  
       Else Read_Arm_Var:='';  
   End;  
      Dmitry Skorniakov suggests the following instead, as being simpler:
function GetEnvVar(Name:string):string;  
  begin  
      Result := SysUtils.GetEnvironmentVariable(Name);  
  end;
2006-12-22 18:14
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
30
How do I use the environment variables that SoftwarePassport/Armadillo passes to my program? (Visual FoxPro)
如何使用SoftwarePassport/Armadillo传递到我的程序的环境变量(Visual FoxPro)
Use the GetEnvironmentVariable function, from the Windows API. Here's an example which checks to see whether the program is using the default certificate by retrieves the username:
从Windows API使用GetEnvironmentVariable函数。这里有一个例子检查程序是否使用了默认的授权通过找回用户名:
DECLARE LONG GetEnvironmentVariable IN Kernel32.dll STRING, STRING, LONG  
   strVar=SPACE(256)  
   GetEnvironmentVariable("USERNAME", @strVar, 256)  
   IF strVar = "DEFAULT"  
      MESSAGEBOX("Using default certificate!")  
   ELSE  
      messagebox("Not using default certificate.")  
   ENDIF
2006-12-22 18:17
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
31
How can I extend someone's evaluation period without giving them a whole new program?
如何延长某人的评估期而不用给他们整个新程序?
If you know that you're going to need to do this, or just think you might, it's easy to set your program up to handle it in advance. Simply make another certificate with the same information as your default one (the Dupe button comes in handy for this) and give it a different encryption template. When someone requests an extended evaluation period, you can give them a key made from this certificate, which will give them a whole new evaluation period. Variations on this theme could allow a longer evaluation by people who are seriously testing your programs.
如果你知道你将需要这样做或者仅仅可能是你考虑的,很容易设置你的程序进一步处理他。简单的制作另一个授权,使用与默认的那个相同的信息(dupe按钮这时很方便)给他一个不同的加密模板。当一些人要求延长评估期限时,你可以给他们一个用这个授权制作的密匙,他将给他们一个完整的新的评估期。变更这个主题可以允许一个更长的评估期对那些成批测试你的程序的人。
2006-12-22 19:12
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
32
How do I use the Network Licensing (Limit Copies) option in peer-to-peer mode?
如何在对等网络模式使用网络许可(有限副本)选项?
Very simply. Set up a certificate with Network Licensing turned on. On the Network Licensing page, select peer-to-peer, then select the other options you want and protect your program.
非常简单。设置一个授权打开网络许可。在网络许可页,选择对等网络,选择你想用来保护你的程序的其他选项。
You give your user a single key, which he must enter on all the computers he wishes to use the program on. SoftwarePassport/Armadillo will take care of limiting the number of copies he can use at a time.
你给你的用户一个密匙,他必须安装在他想使用该程序的所有计算机上。SoftwarePassport/Armadillo将关心他可以同时使用的副本数量的限制。
Generally, the only requirement for this option to work is a working network. SoftwarePassport/Armadillo will use Windows' native communications support, so it should be independent of the network and the protocols loaded (but see note below). You will notice that your program takes roughly three seconds longer to start up -- that's the minimum time required to query the network and see how many other copies are running. If the network is busy and there are a lot of computers running your program, the time required will be higher, though it should never be more than a few seconds. (You can change the default time-out value using an INI file entry.)
通常,这个选项有效的唯一需求是一个工作网络,SoftwarePassport/Armadillo将使用Windows自身的通讯支持,因而他将独立于网络和加载的协议(但是看下边的备注)。你将注意到你的程序启动时间增加大概3秒钟―这是需要查询网络来看有多少个副本运行的最少时间。如果网络忙和有很多计算机运行你的程序,需要的时间就更长,尽管不应该多很多秒。(你可以改变默认的超时值使用INI文件输入)。
Note: Although SoftwarePassport/Armadillo uses Windows' native communications support, Windows may opt to use UDP packets on port 138, which can be blocked by firewalls (and as of this writing, is blocked in one direction by Windows XP SP2's automatic firewall settings). SP2 machines can see non-SP2 machines on the network, but non-SP2 machines cannot see machines with the firewall active. We're exploring ways around this problem.
注意:尽管SoftwarePassport/Armadillo使用Windows自身的通讯支持Windows将选择使用UDP包在138端口,他可能被防火墙阻止(就像这里写的,被Windows XP SP2's的自动防火墙设置在一个方向阻止。SP2及其可以看见网络上的非SP2机器,但是非SP2 的机器不能看见防火墙激活的机器。我们在探索解决这个问题的方法。
2006-12-22 20:24
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
33
How do I use the Network Licensing (Limit Copies) option in client/server mode?
如何在客户端/服务器端使用网络许可(有限副本)选项?
(See the end of this page for information on making it work with the Windows XP SP2 firewall.)
(见本页末尾了解更多信息关于使其与Windows XP SP2防火墙合作)
This is a little more difficult to set up than peer-to-peer mode, but it's also more powerful. Set up a certificate with Network Licensing turned on. On the Network Licensing window, select client/server, then select the other options you want and protect your program.
这比对等模式设置难一些,但是也是强大的。设置一个授权打开网络许可。在网络许可窗口,选择客户端/服务器端,然后选择你想用来保护你的程序的其他选项。
You give your user a single key for that certificate. He must enter it using the SERVER REGISTER command-line options (for example, "YourProgram.exe SERVER REGISTER" -- the SERVER command must be the first one on the command line).
你给你的用户那个授权的一个密匙。他必须输入密匙使用服务器注册命令行选项(例如"YourProgram.exe SERVER REGISTER"―服务器命令必须是命令行的第一个)
Now, each time your user wishes to use the program, he should start up the server with the SERVER command-line option (i.e. "YourProgram.exe SERVER"). This will start a server instance (and display the window for sixty seconds). Then he just runs your program on whatever other systems he wants to; those systems will get the appropriate key information from the server. There can only be one server instance at a time per program; if a second server instance is started, it will politely inform the user that a server is already running and exit.
现在,每次你的用户希望使用程序时,他应该启动服务器使用服务器命令行选项(i.e. "YourProgram.exe SERVER").这将启动一个服务实例(并显示窗口60秒)然后运行你的程序在任何其他系统,那些系统将从服务器获得适当的密匙信息。每个程序同一时间只能有一个服务实例,如果启动第二个服务实例,他将通知用户一个服务已经运行并退出。
There are several alternative forms of the SERVER command-line option:
服务器命令行选项有几个可替换的形式:
• You can use a number after it (with no spaces, i.e. SERVER10) to override the default sixty-second delay before the window disappears. The number that you specify will tell SoftwarePassport/Armadillo how long (in seconds) to display the window; for example, SERVER0 will start up the server without showing the window at all.  
你可以后跟一个数字(不用空格,例如:SERVER10)来覆盖窗口消失前的默认的60秒延时。你定义的数字将告诉SoftwarePassport/Armadillo显示窗口多长之间(单位:秒);例如,SERVER0将启动服务而根本不显示窗口。
• You can use SERVERX to start it up without a timeout, so that the window will remain on the screen until the user dismisses it.  
你可以使用SERVERX启动他而没有终止,这样窗口将保持在屏幕上直到用户去掉他。
• You can use SERVERDOWN to programmatically shut down a server copy of your program.  
你可以使用SERVERDOWN计划关闭你的程序的一个服务的副本
Note that when using this method, all users must be using the same version of your program as the server. If they're not, they will be informed of the problem.
注意,当使用这种方式,所有的用户必须使用你的程序的相同的版本和你的服务一样。如果不是,他们将被通知有问题。
If you run a program that includes a client/server certificate, it will search first for a serv er. If no server is found, it will check the system for a valid local key, then fall back to the default certificate (if any).
如果你运行一个程序包括客户端/服务器端授权,他将首先搜索一个服务。如果找不到,他将检查系统是否有有效的本地密匙,然后后退到默认授权(如果有)
This option requires a working TCP/IP network to function. Since this protocol is loaded by default in most versions of Windows, and is needed for Internet access, this should cause no hardship.
这个选项需要一个工作TCP/IP网络来完成功能。因为这个协议在大多数win版本被默认加载,并需要internet连接,这因该没有困难。
You can optionally specify the TCP/IP address where your program should look for the server, or change the time-out value, using an INI file setting. Note that this is seldom necessary, it's needed only if your protected program cannot automatically locate the server using UDP broadcasts.
你可以随意指定你的程序寻找服务的TCP/IP地址,或者改变超时值,使用INI文件设置。注意这很少需要,只有如果你的被保护程序不能自动定位使用UDP广播的服务器时才需要。
Working with the Windows XP SP2 firewall
与Windows XP SP2 防火墙一同工作
Windows XP Service Pack 2 introduced the Windows Firewall. Although far better than no firewall at all, it leaves something to be desired in the realm of compatibility. Here is the way to open the proper UDP port and make the client/server Network Licensing work:
Windows XP Service Pack 2引进了Win防火墙。尽管比没有防火墙好,他在兼容性领域产生一些延缓。这里是打开正确的UDP端口使客户端/服务器端网络许可正常工作的方法:
• First, run the software in server mode, and note the UDP port number that it is listed on the server message window. It will be on the line saying something like "Locator started on UDP port XXXXX", where XXXXX is the number.  
首先,用服务器模式运行软件,注意UDP列在服务信息窗口的端口号,他将用在这样的行中就像“定位启动在UDP端口XXXXX,这里XXXXX就是那个数字
• Go to your Control Panel and click on the Security Center icon.  
到控制面板,双击安全中心图标
• Click on Windows Firewall.  
点击windows防火墙
• Select the "exceptions" tab on the dialog that will appear.  
在出现的对话框上选择“排除”tab
• Click on the button labelled "Add Port". It will ask for a program name and a port number.  
点击按钮“增加端口”。他将要求程序名和端口号码
• Enter the full path and filename for the program file, and the port number you found in the first step, into the edit boxes on that dialog. Also, press the UDP radio button, to change it from TCP to UDP. Then click the OK button.  
输入程序文件的完整路径和文件名和你在第一步中发现的端口号到对话框上的编辑框。而且,点击UDP单选按钮 ,从TCP改变到UDP,然后点击OK按钮
That should let the client copies locate the server and work as designed.
这将使客户端副本定位到服务器并像设计的那样正常工作。
2006-12-22 22:46
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
34
How do I determine which systems are using the Peer-to-Peer Network Licenses?
如何确定哪种系统使用对等网络许可?
Your protected program has a command-line option, SHOWNETUSERS, which will display the computers currently using the peer-to-peer licenses for your program. Just start your protected program with the SHOWNETUSERS option, like this...
你的被保护程序有一个命令行选项,SHOWNETUSERS,他将显示当前使用你的程序的对等网许可的计算机
YourProgram.exe SHOWNETUSERS  
  ...and SoftwarePassport/Armadillo will show a message-box containing the names of all the systems using licenses for your program, along with the number of licenses they're using (if it's counted by copy).
SoftwarePassport/Armadillo将显示一个信息框包括使用你的程序许可的所有系统的名称,和他们使用的许可的数量(如果按照副本数来计算)
2006-12-22 22:54
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
35
Hardware Locking/Hardware Fingerprints in detail
硬件锁和硬件指纹细节
The concept behind the hardware locking feature of SoftwarePassport/Armadillo is simple: it allows you, the software author, to prevent your program from being used on any computer besides the one(s) you've licensed it for. For a simpler (though less secure) method of enforcing your licensing agreements, please see the Network Licensing option.
SoftwarePassport/Armadillo的硬件锁功能背后的概念是简单的:他允许你,软件作者,防止你的程序被使用在任何计算机上除了你已经许可的那台。对于增强你的许可协议的简单方法,请看网络许可选项。
SoftwarePassport/Armadillo does this by looking carefully at the user's computer and calculating a number that it believes uniquely describes it. It gives this number to the user on the Register dialog box (and passes it to your program in the FINGERPRINT or ENHFINGERPRINT environment strings). The user then gives the number to you (or whoever is generating the key); you put it into SoftwarePassport/Armadillo, and SoftwarePassport/Armadillo creates a key that will only work on that computer, which you then return to the user.
SoftwarePassport/Armadillo仔细寻找用户的计算机并计算一个他认为可以唯一描述的值(机器码)。在注册对话框上把机器码给到用户,(并在FINGERPRINT or ENHFINGERPRINT环境变量字符串传递到你的程序)。用户把这个机器码给你(或任何产生这个机器码的人),你把他放入SoftwarePassport/Armadillo, and SoftwarePassport/Armadillo将生成一个只在该计算机上有效的密匙,然后你把他返回到用户。
What are the pros and cons of using hardware locking?
使用硬件锁的好处和坏处(或者说是优点和缺点)是什么?
Most of the pros should be obvious: the user can't use your program on a dozen computers while only paying for one copy. One that might not be obvious is that only Hardware Locked keys can be securely removed from a system, if (for example) a customer wants a refund.
大多数优点是显而易见的:用户不能个只付一个的钱而在很多计算机上使用你的程序。还有一个不明显的优点是只有硬件锁密匙可以从系统安全的删除,如果(例如)用户想退款。
The drawbacks all stem from the same problem: if the hardware fingerprint changes for any reason (the user upgrades the motherboard or CPU, the user's computer breaks and he gets a new one, the user replaces his hard drive, etc), the old key won't work anymore, and you'll have to issue the user a new one. We recommend that only those who truly need this feature enable it; it can become an annoyance for the legitimate users, and a maintenance nightmare for you if you have a popular program. For ways to minimize this risk, please see the customized hardware locking options page.
缺点来自相同的问题:如果硬件指纹改变因某些原因(用户升级主板或者CPU,用户更换新电脑,用户更换了硬盘等),旧的密匙不再有效,你将不得不给用户一个新的。我们建议只有那些确实需要这个功能的人才使用他。对合法用户来说是一个烦恼的事情,对你来说,如果你的程序是一个流行的程序会造成可怕的维护上的困难。为了最小化这个风险,请参考用户硬件锁选项页。
Do I need the "standard" or the "enhanced" hardware locking?
我确实需要“标准”或“增强”硬件锁吗?
Armadillo originally didn't have the customizable hardware locking options. You could only use the Standard or Enhanced hardware locking. For backward compatibility, we've kept that model for the default hardware locking options (although you can now customize it to make it more or less sensitive).
Armadillo最初没有定制硬件锁的选项。你只可以使用标准或增强硬件锁。为了向上兼容性,我们为硬件锁选项保留了模块(尽管我们现在可以定制他使他增加和减少敏感性)
If you're using the custom hardware locking option, then you'll simply have two hardware locking "slots" to customize -- you can use either one, or both if you wish, just make sure you're using the right setting in each certificate, and the right environment variable (FINGERPRINT or ENHFINGERPRINT) if you're retrieving them in your program.
如果你使用定制硬件锁选项,你只有简单的2个硬件锁选项来定制―你可以使用其中一个,或者2个同时使用,如果你想的话,确定你在每个证书里使用正确的设置和正确的环境变量(FINGERPRINT or ENHFINGERPRINT)如果你要在你的程序里找回他们。
How do I use it?
如何使用 ?
Two parts: first, before you protect your program, you have to set up a certificate that uses it (the default certificate cannot, since it is intended to work on any system). This takes nothing more than selecting a radio button on the Edit Certificate screen.
2点,第一,在保护你的程序之前,你不得不设置一个使用他(这个程序)的证书(不是默认证书,因为他将在任何系统上有效。)这只需要在编辑证书屏幕选择一个radio按钮。
Then, when you create keys for that certificate, you'll have to get and enter the user's hardware fingerprint (which SoftwarePassport/Armadillo will give to your program by way of the FINGERPRINT or ENHFINGERPRINT environment strings, and show to the user on the Enter Key dialog). That's all there is to it!
然后,当你创建了证书的密匙,你将不得不输入用户的硬件指纹(SoftwarePassport/Armadillo 将通过FINGERPRINT or ENHFINGERPRINT环境字符串给到你的程序没,并显示在用户的输入注册码对话框)。这就是如何使用的全部内容。
2006-12-23 12:47
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
36
Keys and Security Certificates in detail
密匙和证书详述
The security certificates you define control who can use your program, and for how long. They are the heart of SoftwarePassport/Armadillo's license manager.
安全证书定义来控制谁可以使用你的程序和使用多长时间。这是SoftwarePassport/Armadillo许可管理的核心。
Every security certificate has an encryption template (this is referred to as encryption key in the SoftwarePassport GUI). This is what SoftwarePassport/Armadillo uses to create the encryption for the certificate, and is the primary reason it's so hard for someone to create a bogus "key generator" crack for a SoftwarePassport/Armadillo-protected program -- unless a cracker can get your encryption template (which he would have to get from you, since it isn't stored anywhere else except in valid keys), he can't know which of the over four billion possible key values you used. (Note: with Signed Keys, even if a cracker DOES get a valid key from you, he wouldn't be able to create a key generator -- he would need your actual encryption template for this.)
每个安全证书有一个加密模板(这在SoftwarePassport GUI中指加密匙)。这就是SoftwarePassport/Armadillo用来创建证书加密,也是一些人创建伪造的注册机来破解SoftwarePassport/Armadillo保护的程序如此困难的主要原因―除非破解者获得了你的加密模板(他不得不从你那里得到,因为他不储存在任何地方除了有效的密匙。)他不可能知道你可能使用的超过40亿密匙中的那个。(注意:使用有符号的密匙,即使一个破解者却实得到一个有效的密匙,他也不能都生成注册机―要这样做,他需要你的实际的加密模板。
A special security certificate, called the default certificate, works a little differently. Used mostly for evaluation versions of programs, this certificate uses a fixed encryption template ("DEFAULT"), which allows SoftwarePassport/Armadillo to access it even when the user doesn't have a key for your program. Note that the default certificate is optional; if you don't want to allow people to use your program without a key, you don't have to make one. If SoftwarePassport/Armadillo doesn't have a key, and doesn't find a default certificate, it tells the user he can't access the program until he gets a key from you.
一个特殊的安全证书,称作默认证书,工作有些不同。主要用户程序评估版本,这个证书使用一个固定的加密模板("DEFAULT"),允许SoftwarePassport/Armadillo访问,即使用户没有你的程序的密匙。注意:默认模板是可选的;如果你不想你的用户在没有密匙的情况下使用你的程序, you don't have to make one.如果SoftwarePassport/Armadill没有密匙,又找不到默认的证书,他将告诉用户他不能访问程序知道他从你那里获得一个密匙。
A SoftwarePassport/Armadillo key is to a security certificate what a physical key is to a lock. It lets a user into the program. There are literally billions of keys that will unlock a certain security certificate, but they're hidden in the many octillions of possible keys. Pure math makes SoftwarePassport/Armadillo's keys secure; in order to crack the encryption template on a single certificate by brute force, a cracker would have to try every possible key combination. If the cracker's smart about it, it would only take 2,000 years on a 100MHz Pentium-class system; if not, it could take exponentially longer. Since there is no mathematical way to attack this encryption system (like the quadratic sieve or general number sieve for RSA encryption), it would have to be done with a brute force attack, probably with a much faster system (a 200 gigahertz system would still need about a year to go through them all... at the time of this writing, Intel and AMD are just about to come out with the first 2.5 gigahertz chips). We can increase the difficulty by an arbitrary amount (with no other changes) as computers get faster.
一个SoftwarePassport/Armadillo密匙对于安全认证就像是钥匙对锁头。他允许用户进入程序。理论上说10亿的密匙可以打开一个确定的安全认证,但是他们隐藏在1000^9次方的可能的密匙中。纯数学使得SoftwarePassport/Armadillo的密匙是安全可靠的,为了暴力破解一个认证的加密模板,破解者可能不得不尝试每一个可能的密匙组合,如果破解者聪明的话,他将需要使用2000年在一个100Mhz的奔腾系统上,如果不是,使用的时间将需要指数集的增长,因为没有数学的方法来攻击这个加密系统(就像是RSA加密系统的二次方筛选或普通数字筛选),不得不使用暴力破解,或许使用一个更快的系统(一个200Ghz的系统仍然需要大约1年时间来尝试所有的密匙…,写到这里,Intel和AMD刚发布第一款2.5Ghz的芯片)。我们可以增加难度通过一个任意的数量(其他不变)当计算机更快时。
When a user enters a key, it is stored on that system, in an encrypted form, in such a way that it's very difficult to tamper with it without SoftwarePassport/Armadillo knowing. After that, the key is on the system permanently, unless the user enters another valid one. Even if your program is uninstalled and reinstalled at a later date, SoftwarePassport/Armadillo will remember it.
当一个用户输入一个密匙,他储存在系统,一个加密的表格,用这样一种方式他很难被篡改如果没有SoftwarePassport/Armadillo知识。之后,这个密匙永久存在于系统上,除非用户输入另一个有效的密匙。即使你的程序被卸载和以后重新安装,SoftwarePassport/Armadillo仍然记得他。
Every key stores the date that it was made (you can use SoftwarePassport/Armadillo's key-checker to see the information coded into a key), which helps SoftwarePassport/Armadillo to determine if a key is valid or not, and if the user's system clock has been set back.
每个密匙储存他生成的日期(你可以使用SoftwarePassport/Armadillo的密匙检查来查看密匙里的信息代码),这帮助SoftwarePassport/Armadillo确定这个密匙是否有效,和是否用户的系统时钟被设置回以前。
That's all there is to keys and security certificates. If something still isn't clear about them, please contact us for more information.
这就是密匙和安全证书的所有内容。如果还有什么不清楚,请联系我们了解更多信息。
2006-12-23 20:47
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
37
The Network Licensing option 网络许可选项
In the Professional Edition of SoftwarePassport/Armadillo, you have the option of setting a "limit copies" number for a certificate. This is a simpler way to help you enforce your program's licensing agreement than hardware locking.
在专业版里,你有设置一个证书的“有限副本”的数量的选项。这是一个简单的方式帮助你增强你的程序的许可协议相比硬件锁。
How is this different from the hardware locking option?
和硬件锁选项有什么区别?
The hardware locking feature is the most secure that SoftwarePassport/Armadillo can provide, but it can also be a pain to support... if the user upgrades the computer, you have to re-issue the key. If the user wants to run the program on five different computers, you're forced to issue five separate keys. You have to get the hardware fingerprint code for the user's machine before you can issue the keys. All this makes hardware-locked keys very difficult to manage.
硬件锁功能是SoftwarePassport/Armadillo能提供的最安全的功能,但是在维护上也是一种痛…,如果用户升级了计算机,你不得不重新提供密匙。如果用户想运行程序在5个不同的计算机,你将被迫提供5个单独的密匙。在你可以提供密匙前你不得不获取用户机器的硬件指纹代码(机器码)。
The Network Licensing option (previously known as the Limit Copies option) offers a simpler way to protect your work. You can offer a  company a single key which will unlock between 1 and 255 different computers at the same time, and let SoftwarePassport/Armadillo take care of enforcing the number. In the peer-to-peer model, the user is responsible for entering the key on all the computers using the program; in the client/server model, he or she only needs to enter it on one system, and you can combine it with hardware-locking for the most possible protection.
网络许可选项(就像上边知道的有限副本选项)提供了一个简单的方法来保护你的程序。你可以提供一个公司一个单独的密匙,他将在同一时间解锁1到255台不同的计算机,并让SoftwarePassport/Armadillo限制数量。在对等网模式,用户负责在使用程序的所有计算机上输入密匙;在客户端/服务器端模式,他只需要在一个系统输入密匙,并且你可以结合硬件锁来尽可能的保护
How does it work? 如何工作?
The Network Licensing option uses the customer's local-area network (LAN) to confirm that no more than the specified number of copies are running at the same time using the same key.
网络许可选项使用用户的本地网络(LAN)来确定不超过指定数量的副本使用相同的密匙同时运行。
Why might I choose to use (or not use) it? 为什么选择是否使用他?
There are several considerations. First of all, can you use it? To make effective use of this option, the customer's computers must be on a LAN. With the peer-to-peer model, they must share the same primary domain or workgroup, and must be using the same key -- a different key will allow that many more users to use your program, even if it's for the same certificate. For the client/server option, they all must have the TCP/IP protocol installed.
有几种考虑。首先,你能使用吗?为了有效使用这个选项,用户的计算机必须在一个LAN上。在对等网模式,他们必须共享相同的主域名或工作组,必须使用相同的密匙―一个不同的密匙将允许更多的用户使用程序,即使他们是对于相同的证书。对于客户端/服务器段选项,它们都必须安装TCP/IP协议。
How do I use it? 如何使用?
The usage is different depending on which model you use. You can find more information about using them by clicking the appropriate link, peer-to-peer or client/server.
依赖于你使用的模式使用方法是不同的。你可以找到关于使用他们的更多信息通过单击适当的链接peer-to-peer 或 client/server.
If you have any further questions regarding this option, please contact us. We will be more than happy to answer them.
关于这个选项如果你有更深一层的问题,请联系我们,我们将非常乐于回答。
2006-12-23 21:26
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
38
My customer's hardware fingerprint keeps changing!
我的用户的机器码经常改变!
When a hardware fingerprint changes enough to break a key (for reasons other than being transferred or invalidated by your program), the Hardware Change Log will show the recently history of what has changed on that system.
当一个机器码改变足以终止一个密匙(因某些原因而不只是被转让或被你的程序使其无效),硬件改变日志将显示最近的系统上什么被改变的历史。
2006-12-23 21:33
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
39
Can I use SoftwarePassport/Armadillo to protect my database/spreadsheet program?
我可以使用SoftwarePassport/Armadillo来保护我的数据库/电子制表程序吗?
SoftwarePassport/Armadillo can only directly protect PE-format EXEs at present. However, it is possible to license programs designed for Microsoft Office with SoftwarePassport/Armadillo, just not directly: you would need to write a small "gateway" program that just sets something that an Office program can detect, like a mutex, then protect that gateway program with SoftwarePassport/Armadillo. If your Office program doesn't detect that the mutex has been set, then it would refuse to allow access to the rest of the program.
SoftwarePassport/Armadillo目前只能直接保护PE格式的EXE.可是,可能使用SoftwarePassport/Armadillo许可使用Microsoft Office设计的程序。非直接的:你需要写一个小的“网关”程序,设置一些Office程序可以检测的东西
The gateway application can be written in any language, but the Office program has to use Visual BASIC for Applications -- that's the only language Office understands.

This is not overly secure, because SoftwarePassport/Armadillo cannot actually protect the program file, but it is enough to keep most honest people honest.,就像一个mutex,然后使用SoftwarePassport/Armadillo保护“网关”程序。如果你的Office程序检测不到设置的mutex,他将拒绝允许访问程序的其余部分。
Unfortunately we don't have any code detailing this method -- we know that several of our customers are using it, but they haven't supplied us with their code. It shouldn't be difficult, if you know a little VB programming, though. We can help with the mutex stuff, contact us if you need it.
不幸的是我们没有任何描述这种方式的代码―我们知道个别用户在使用他,但是他们没有把代码提供给我们。他应该不是很难的,如果你知道一些VB编程。我们可以帮助mutex材料,如果你需要请联系我们。
2006-12-23 22:10
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
40
Can I use SoftwarePassport/Armadillo to protect my .NET program?
我能使用SoftwarePassport/Armadillo保护.NET程序吗?
.NET programs are designed to operate together easily, and use a standard interpreted language. Because of this, they are even more difficult to protect than non-.NET ("unmanaged") programs. We have an idea how it could be done, but we'll need to some time to experiment with it and see how useful it might be -- we don't know when we might get the time necessary to do this. SoftwarePassport/Armadillo cannot protect such programs at present.
.NET被设计为易于操作,并使用一个标准的解释语言。因此,他们难于保护比非.NET("unmanaged")程序。我们有一个如何实现的相法,但是我们需要一些时间来试验并看他会多有用―我们不知道什么时候有必要的时间来做。SoftwarePassport/Armadillo目前不能保护这样的程序。
If you understand that limitation, but still want to use SoftwarePassport/Armadillo for licensing purposes, it can be done. You'll need to make an "unmanaged" DLL (i.e. a non-.NET DLL), which you can protect with SoftwarePassport/Armadillo, and somehow make your .NET program dependent on that DLL, so that it cannot run without it. Then just use the licensing portion of SoftwarePassport/Armadillo normally, for that DLL.
如果你理解了这些限制,但是仍然想使用SoftwarePassport/Armadillo做许可,他也可以做。你将需要做一个"unmanaged" DLL (i.e. a non-.NET DLL),,你可以使用SoftwarePassport/Armadillo保护他,使你的.NET程序依赖于那个DLL,因此程序没有他将不能运行。然后只对DLL使用SoftwarePassport/Armadillo许可。
2006-12-23 22:29
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
41
How do I get rid of the "key required" window?
如何去掉"key required"窗口?
The "key required" dialog appears when SoftwarePassport/Armadillo doesn't have a key to decrypt the program with. Since the program can't be decrypted, there's no way to get into it to run your replacement enter-key dialog. You can change the text of that dialog in SoftwarePassport/Armadillo's language editor, but the only way to get rid of it completely is to provide a default certificate.
当SoftwarePassport/Armadillo没有密匙解密程序时将出现"key required"对话框。因为程序不能解码,没有办法进入运行你的输入密匙对话框。你可以改变对话框的文本在SoftwarePassport/Armadillo的语言编辑器里,但是完全去掉他的唯一方法是提供一个默认证书。
If you don't want to let your program run when the default certificate is used, just make the customer enter a key, you can check the USERNAME environment variable when the program is first starting up. If it is "DEFAULT" (without the quotes), then the customer is using the default certificate, and you should immediately go to your replacement Enter Key dialog instead of letting the program run. There are ways to make that more secure, using Secured Sections for example, if you're concerned about it (for most programs, you probably don't need to be).
如果你不想当使用默认证书时让你的程序运行,让用户输入一个密匙,你可以检查USERNAME环境变量当程序第一次启动时。如果他是"DEFAULT"(没有双引号),那么用户在使用默认证书,你应该立即转到你的复位输入密匙对话框而不是让程序运行。有些方法使这更安全,例如使用安全段,如果你关心他的话。(对大多数程序,你或许不需要这样)。
2006-12-23 22:42
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
42
How can I increase the start-up speed of my protected program?
如何加快被保护程序的启动速度?
There are several options that can affect the start-up speed of your protected program.
有几个选项可以影响被保护程序的启动速度。
The biggest time-eater is the Network Licensing code. Turning that off (if you're using it) should reduce the startup time by about three to six seconds. Please note that if you have any certificates that use client/server Network Licensing, your program will be affected, even if the customer is not using a client/server certificate. Peer-to-peer Network Licensing only affects the program if the customer is using a certificate that includes it.
最耗时间的的是网络许可代码。关闭他(如果你正在使用他)将减少3到6秒启动时间。请注意,如果你有任何证书使用客户端/服务器端网络许可,你的程序将被影响,即使那个用户没有使用客户端/服务器端证书。对等网络许可只影响那些程序,用户使用包括他的一个证书。
After that, the compression level affects the startup time somewhat. Lowering the compression level will increase the start-up speed, but will result in a larger EXE file, which usually cannot be compressed afterwards because of the encryption SoftwarePassport/Armadillo employs -- encrypting data hides the redundancies that compression programs use to compress it.
之后,压缩级别也有些影响启动时间。降低压缩级别将加快启动速度,但是将导致一个较大的EXE文件,这个文件通常不能被压缩因为SoftwarePassport/Armadillo使用的加密―加密数据隐藏冗余-压缩程序用来压缩他。
The more certificates you have, and the higher the signature level on them, the longer it may take to process them and locate the one that a key was made for, and confirm that a key is valid.
证书越多,签名级别越高,越需要更多的时间处理他们并定位他们制作的密匙,并确定那个密匙是有效的。
Using CopyMem-II or the Debugger-Blocker can also have an impact (CopyMem-II more than the Debugger-Blocker).
使用CopyMem-II 或者 Debugger-Blocke也有影响。(CopyMem-II 比 Debugger-Blocker更多).
So far as we know, nothing else should have much effect on it.
就我们所知,没有别的有更多的影响
Besides the above, we recommend using a startup bitmap if at all possible... it shows people that your program really is starting, and (for some psychological reason we can't determine) it gives the impression that your program starts faster than it really does.
除了上边这些,我们推荐使用一个启动位图如果可能的话…他提示用户你的程序在启动并且(对于一些我们不能确定的心理上的原因)他给人一种你的程序比实际上启动快的印象。

*****************************************************
今天就到这里吧:)
2006-12-23 23:29
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
43
Why are my keys always different?
为什么我的密匙总是不同的?
Unsigned keys will be the same only if you use the same name, hardware fingerprint, and other-info number, and make them on the same day.
无符号的密匙将是相同的,只有如果你使用相同的名字,硬件指纹(机器码),和其他数字信息,并且同一天生成。
Signed keys will always be different, even if you make two of them simultaneously for the same information. This is because the signature algorithm that SoftwarePassport/Armadillo uses contains a random value. The only way to confirm if a key will work or not is to try using it in your program, or run it through SoftwarePassport/Armadillo's key-checking dialog.
有符号的密匙将是不同的,即使你使用相同的信息同时生成他们中的2个。这是因为SoftwarePassport/Armadillo的签名运算法则使用一个随机数。确认一个密匙是否有效的唯一方法就是在你的程序里试用他,或者通过在SoftwarePassport/Armadillo'的密匙检查对话框中运行。
2006-12-24 12:26
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
44
Why does my SoftwarePassport/Armadillo-protected program start up so slowly on systems with VIA C3 CPUs?
为什么我用 SoftwarePassport/Armadillo保护的程序在使用VIA C3 CPUs的系统上启动时如此的慢?
VIA C3 CPUs (a very low-power, low-heat CPU) seem to be badly underpowered for their megahertz rating. Reports suggest that a C3 system rated at 500MHz can take up to fifteen seconds to load a SoftwarePassport/Armadillo-protected program; by comparison, a 300MHz Celeron can start such a program in under three seconds. The problem seems to be endemic to the cur rent crop of C3 CPUs. At present, there is no known work-around for this.
VIA C3 CPUs(非常低能耗、低发热CPU),在他们的Mhz频率似乎严重能力不足。报告显示一个运行在500Mhz的C3系统将使用15秒来加载一个SoftwarePassport/Armadillo保护的程序;通过比较,一个300MHz Celeron可以在3秒内启动这样一个程序。这个问题似乎只是对于C3 CPUs。目前,还不知道其他CPU有这个问题。
2006-12-24 12:34
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
45
Some of my customers are complaining that their trial versions expire long before they should. Why does this happen?
一些用户抱怨他们的试用版终止期比应该的要长,为什么发生这个问题?
We've had a number of scattered complaints of this, but we were never able to reproduce it, until one of our customers discovered the source of the problem: under Windows 95, 98, and earlier service packs of NT4, the Control Panel date/time dialog does not need the OK or Apply buttons to change the date, it does so immediately. See the Microsoft articles 174229, 194078, and 237493 for more information on the problem.
我们收到许多关于这个问题的零散的抱怨,但是我们不能再现他,直到我们的一个用户发现这个问题的原因:在Windows 95, 98,和早期的NT4 的服务包,控制面板的date/time(日期/时间)对话框不需要OK 或Apply(应用)按钮来改变时间,他是立即起效的。见Microsoft 文章174229, 194078, and 237493了解关于这个问题的更多信息。
Many people use that dialog as a general calendar, and set the month or year forward to see what day a specific date falls on. This was changing the date on their systems, usually without their knowledge, and triggering the clock-back error or the expiration of their time-limited key.
很多人使用这个对话框作为一个通用的日历,并向前设置月份和年度来看一个特殊的日期在哪一天。这就改变了系统的时间,而通常他们不知道,触发了clock-back错误或他们的时间限制密匙的终止。
Resolution: if you've included an extended trial certificate (a duplicate of your default certificate, but with a different encryption template and probably using a different key system), you can just issue them a key for that certificate. If you did not (most people don't think to until after they run into this problem), then there is no easy solution except to add such a certificate, re-protect your program, and send the new executable file to the customer, along with a key for the new extended-trial certificate.
解决方法:如果你包含了一个延长的试用证书(你的默认证书的一个副本,但是使用不同的加密模板并且或许使用一个不同的密匙系统),你可以提供给他们一个那个证书的密匙。如果没有(大多数人没有考虑直到他们遇到这个问题之后),没有简单的解决方法处理增加这样一个证书,重新保护你的程序,发送新的可执行文件给用户,和一个新的延长试用证书的密匙。
2006-12-24 12:51
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
46
SoftwarePassport/Armadillo-Protected Programs Won't Run Under VirtualPC for the Mac
SoftwarePassport/Armadillo保护的程序不能运行在Mac机的虚拟PC系统下
Apparently, VirtualPC for the Macintosh pre-translates blocks of Windows code to Mac-native code to achieve good speed. However, this causes problems with programs that use self-modifying code (like SoftwarePassport/Armadillo). To use a SoftwarePassport/Armadillo-protected program on VPC/Mac, you need to disable this pre-translation. Fortunately, this is possible, as of VirtualPC 6.1 (which is a free update for VirtualPC 6.0 users):
显然地,Mac机的虚拟PC预先转化Windows代码块到Mac自己的代码来达到较好的速度。然而,这对使用自解压代码程序导致问题(像 SoftwarePassport/Armadillo).为了在VPC/Mac上使用SoftwarePassport/Armadillo保护的程序,你需要禁止这个预先转化。幸运的是,这是可能的,在VirtualPC 6.1(VirtualPC 6.0来说是免费更新的)
• Start the Virtual PC session as normal.  
正常启动虚拟PC。
• In the Mac Finder, navigate to the 'Documents' folder in your 'Home' folder. Open the 'Virtual PC Scripts' folder.  
在Mac管理器(像win的资源管理器?)导航到你的'Home'文件加里的'Documents'文件夹,打开'Virtual PC Scriptss文件夹
• Open the 'Toggle Compatibility Mode' script by double clicking it.  
打开'Toggle Compatibility Mode'脚本通过双击。
• The script opens in Script Editor.  
  在脚本编辑器中打开脚本
• Click the 'Run' button at the top of the script window.  
单击脚本窗口上边的'Run'按钮
• Click 'OK' to the informational dialog that appears.  
单击显示出来的信息对话框上的'OK'
• Click 'Enable' in the next dialog.  
在下一个对话框单击'Enable'
• Return to the PC session, which is now running in compatibility mode and will be slower, and run the SoftwarePassport/Armadillo-protected program as normal.  
返回到PC进程,他现在运行在兼容模式并会慢一些,正常运行SoftwarePassport/Armadillo保护的程序。
• When complete, close the program and return the Virtual PC to normal mode by re-running the script above and selecting 'Disable' at the appropriate time.  
当结束,关闭程序并返回虚拟PC到正常模式通过重新运行上边的脚本,并选择'Disable'在适当的时间。
Note that this "compatibility mode" is not the same as the Windows 2000 and XP Compatibility Modes, which SoftwarePassport/Armadillo is generally incompatible with.
注意这个“兼容模式”不同于Windows 2000 和 XP的兼容模式,SoftwarePassport/Armadillo一般不兼容(适合?)
2006-12-24 13:09
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
47
My program crashes on shutdown!
我的程序关闭时崩溃!
There are a few common causes of access violations when your protected program exits.
有一些常见的非法访问的原因,当你的被保护程序退出时。
The easiest one to test is SoftwarePassport/Armadillo's "monitoring thread." To test this, set the "Disable Monitoring Thread" option (on the Edit Project dialog) and re-protect your program, then see if it still happens. (Please note, with the monitoring thread disabled, some options in SoftwarePassport/Armadillo won't operate any more, so if that's not the problem, be sure to turn it back on.)
最容易的就是SoftwarePassport/Armadillo'的 "monitoring thread."监视线程的检测。为了测试这个,设置"Disable Monitoring Thread"选项(在编辑工程对话框上)并重新保护你的程序,然后是否仍然发生。(请注意,在监视线程选项禁用时,一些SoftwarePassport/Armadillo选项不再启动,因此如果不是这个问题,确定重新打开。
If that's not the problem, then are you using HTML Help? There's a known timing bug in the de initialization function of the HTML Help control. The best solution we've found is NOT to call the deinitialization function at all. If you must call it, try putting a short (one-tenth of a second or so) delay between calling the deinitialization function and letting your program exit, or use one of the recommendations listed in the page that the above link will take you to.
如果不是这个问题,使用超文本帮助。有一个大家都知道的定时bug在超文本帮助控制的初始化函数中。我们发现的最好的解决办法就是根本不要调用初始化函数。
Even if you're not using HTML Help, you might consider putting a short delay before the shutdown of your program. We've heard of a couple cases where that solved the problem.
即使你没有使用超文本帮助,你可以考虑放置一个短的延时在你的程序关闭前。我们已经知道一对案例解决了这个问题。
The final option isn't a SoftwarePassport/Armadillo problem per se, though it may aggravate an already existing one. There may be something in the deinitialization code for one of your global variables, or one of the variables declared in your entrypoint function, that is causing the crash. This will usually appear even without SoftwarePassport/Armadillo protecting the program, but it's worth checking if the above solutions don't help.
最后一个选项不是一个SoftwarePassport/Armadillo本身的问题,尽管他可能加重一个已经存在的。或许是你的一个全局变量的初始化代码里有些问题,或者是一个在你的入口点函数中,申明的变量,导致程序崩溃。这是经常出现的即使没有SoftwarePassport/Armadillo保护的程序,但是他是值得检查的,如果上边的解决方法没有帮助的话。
(If you're protecting an Explorer extension DLL, or one that is loaded and unloaded from the host program instead of just unloaded when the host program exits, you may also need to try Intercept None.)
(如果你在保护一个Explorer extension DLL,或者一个从主程序加载和卸载的dll而不是只是在主程序退出时卸载的dll,你或许需要尝试None中断。)
2006-12-24 14:40
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
48
What command line options does Armadillo recognize in my protected program?
在我的被保护程序里Armadillo认识什么命令好选项?
The following is a list of the command line parameters that will be recognized by your Armadillo protected program:
下边是一个命令行参数的列表,将被你的用Armadillo保护的程序识别:
• FIXCLOCK - shows a screen where the user can enter a FIXCLOCK code.  
FIXCLOCK固定时钟―显示一个屏幕,用户可以输入一个固定时钟代码
• HWCHANGELOG - shows a hardware change log, itemising which components of a hardware fingerprint have changed.  
HWCHANGELOG改变日志-显示一个硬件变化的日志,这些项目组成的一个硬件指纹发生改变
• INFO - displays registration name and key*.  
INFO 信息-显示注册名和密匙
• QUIETEXIT - added in v4.10, this will programmatically exit your program (with no dialogs).  
QUIETEXIT 安静退出-在v4.10中增加,将有计划的退出你的程序(没有对话框)
• QUIETREGISTER - same as REGISTER without the confirmation dialog box.  
QUIETREGISTER安静注册-和注册一样,没有确认对话框。
• QUIETUNREGISTER - same as UNREGISTER without the confirmation dialog box.  
QUIETUNREGISTER安静反注册-和反注册一样,但是没有确认对话框
• REGISTER - displays the built-in Enter Key dialog*.  
REGISTER 注册-显示内奸的输入密匙对话框
• SHOWNETUSERS - displays all computers running your peer-to-peer protected program.  
SHOWNETUSERS显示网络用户-显示对等网内运行你的保护程序的所有的计算机
• TRANSFER - used for transferring a hardware locked key to a new machine.  
TRANSFER传送 ?用于传送一个硬件锁密匙到一个新的机器
• UNREGISTER - unregisters a hardware locked program by changing the hardware fingerprint*.  
UNREGISTER反注册 ?反注册一个硬件锁程序通过(因)改变硬件指纹(机器码)
The following is a list of the command line parameters that will be recognized by your Armadillo protected SERVER program, for use in Client/Server networks:
下边是一个命令行参数列表,将被你的Armadillo保护的SERVER程序识别,用于客户端/服务器端网络:
• SERVER - starts the license server for client/server network licensing. Can also be appended with a timeout value (see: How do I use the Network Licensing (Limit Copies) option in client/server mode?)  
  SERVER服务器-在客户/服务器网络许可中启动许可服务器。还可以跟一个超时值(见:在客户/服务器端模式中如何使用网络许可(有限副本)选项?)
• SERVERDOWN - used to programmatically shut down a server copy of your program.  
SERVERDOWN ?常用于有计划的关闭你的程序的服务的副本
• SERVERX - used to start the server copy without a timeout, so that the window will remain on the screen until the user dismisses it.  
SERVERX ?常用于启动服务的副本而没有timeout,因此那个窗口将保持在屏幕上直到用户取消他。
• SERVER FIXCLOCK - shows a screen where th e user can enter a FIXCLOCK code.  
SERVER FIXCLOCK ?显示一个屏幕,用户可以输入FIXCLOCK代码。
• SERVER HWCHANGELOG - shows a hardware change log, itemising which components of a hardware fingerprint have changed.  
SERVER HWCHANGELOG ?显示硬件改变日志,组成一个硬件指纹的内容?发生改变。
• SERVER INFO - displays registration name and key*.  
SERVER INFO ?显示注册名和密匙
• SERVER QUIETEXIT - added in v4.10, this will programmatically exit your program (with no dialogs).  
SERVER QUIETEXIT ? 在 v4.10,增加,将有计划的退出你的程序(没有对话框)
• SERVER QUIETREGISTER - same as REGISTER without the confirmation dialog box.  
SERVER QUIETREGISTER -和注册一样,没有确认对话框。
• SERVER QUIETUNREGISTER - same as UNREGISTER without the confirmation dialog box.  
SERVER QUIETUNREGISTER -和反注册一样,但是没有确认对话框
• SERVER REGISTER - displays the built-in Enter Key dialog for entering the registration name and key into the license server for client/server licensing*.  
SERVER REGISTER ?显示内建的输入密匙对话框用来输入注册名和密匙到许可服务,对于客户端/服务器端许可。
• SERVER SHOWNETUSERS - displays all computers running your peer-to-peer protected program.  
SERVER SHOWNETUSERS -显示对等网内运行你的保护程序的所有的计算机
• SERVER TRANSFER - used for transferring a hardware locked key to a new machine.  
SERVER TRANSFER -用于传送一个硬件锁密匙到一个新的机器
• SERVER UNREGISTER - unregisters a hardware locked program by changing the hardware fingerprint*.  
ERVER UNREGISTER -反注册一个硬件锁程序通过(因)改变硬件指纹(机器码)
2006-12-24 15:21
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
49
Overviews and Details
概述和细节
This section is designed to give you a brief tour of SoftwarePassport/Armadillo's features. The interface is very simple; these overviews are all you will probably need to get SoftwarePassport/Armadillo to do what you wish.
这节计划给你一个SoftwarePassport/Armadillo的功能的简要的浏览。界面非常简单,这些概述是所有将可能需要的,你想使用SoftwarePassport/Armadillo做什么时
2006-12-26 12:48
0
雪    币: 214
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
50
Security Features
安全特征
There are a number of features built into SoftwarePassport/Armadillo to enhance the security of programs protected by it. They were specifically designed to give program-crackers and would-be pirates a very bad day.
SoftwarePassport/Armadillo内建大量的特征来增强被保护程序的安全性。他们是被特殊设计的,给程序破解者和盗版者很大困难
Encryption/Compression  加密/压缩
SoftwarePassport/Armadillo encrypts your program's information, creating a different randomly-generated encryption key each time you use it. This encryption key is stored in the security certificates, which are themselves encrypted with a secret encryption template you specify. If anyone tries to decompile or reverse-engineer your program, all they'll get is garbage.  
SoftwarePassport/Armadillo加密你的程序信息,在你每次使用程序时创建一个不同的随机产生的密匙。这个加密匙储存在安全证书里,他们是由你指定的加密模板自己加密的,如果有人尝试反编译或者逆向工程,他们将变成废物。
It also compresses your program's information; many programs will actually be smaller when protected by SoftwarePassport/Armadillo than in their original unprotected forms.  
他同时压缩你的程序,很多程序当被SoftwarePassport/Armadillo保护时将比原来未保护时实际上小很多。
Stolen Codes Database  
偷换代码数据库???
Occasionally, a code slips through the cracks and gets posted to the 'net. SoftwarePassport/Armadillo lets you selectively invalidate certain codes as they're discovered via the Stolen Codes database.  
(以上这段该如何翻译?)
Tamper-Resistant Digital Packaging  防修改数据包装
Your program, and the security features of SoftwarePassport/Armadillo, are kept in a tamper-resistant digital "envelope." This prevents a program-cracker from modifying your program or the SoftwarePassport/Armadillo protection code to avoid the security features.  
你和程序和安全特征放置在一个防修改的数据“信封”里。这防止了程序破解者编辑你的程序或者SoftwarePassport/Armadillo保护的代码来消除安全功能。
Security Certificates  安全证书
Security certificates are like the doors into your program -- locked and guarded doors, that is. They let you control who can enter, the Reminder Message they have to see when they run it, what features they will be permitted to access (by way of the additional strings), and how long they can use the program.  
  安全证书就像是程序的大门??锁住和看住大门,就是说,他们使你控制谁可以进入,当他们运行时他们不得不看的提醒信息,他们允许访问的功能(功能限制),和他们可以使用多长时间(时间限制)
Clock-Back Checking  始终后退检测
  This feature prevents a would-be pirate from setting his system clock back to avoid the expiration date on a security certificate.  
  这个功能防止一个可能的侵权者向以前设置他的系统时间,来避开一个安全证书的终止期。
  Debugger Checking  调试检测
   A special function checks for debuggers (including NuMega's SoftICE) and will refuse to decrypt/decompress the program if one is running, depriving program-crackers of many of their favorite tools.  
  一个特殊的函数检查调试器(包括SoftICE),如果有一个运行时,程序将拒绝解密和解压缩,使程序破解者喜欢的许多工具失效。
  Custom Builds  定制的构造
  Anyone who has purchased SoftwarePassport/Armadillo may obtain a custom build of the latest version at any time.  
  一个购买了SoftwarePassport/Armadillo 的人可能获得一个最新版本的定制的构造,在任何时候。
Other Features  其他功能
  This is only a partial list of the measures SoftwarePassport/Armadillo employs to keep your programs safe. Other features (which, for security purposes, we won't describe) act as additional traps for the unwary program-cracker to stumble over.  
  这只是SoftwarePassport/Armadillo使用的措施的部分列表,来保护你的程序安全。其他功能(为了安全的目的,我们没有描述)就像是额外的行李将那些粗心的程序破解者绊倒。
2006-12-26 12:50
0
游客
登录 | 注册 方可回帖
返回
//