CN1423764A - 启用网络的应用软件系统和方法 - Google Patents
启用网络的应用软件系统和方法 Download PDFInfo
- Publication number
- CN1423764A CN1423764A CN01807268A CN01807268A CN1423764A CN 1423764 A CN1423764 A CN 1423764A CN 01807268 A CN01807268 A CN 01807268A CN 01807268 A CN01807268 A CN 01807268A CN 1423764 A CN1423764 A CN 1423764A
- Authority
- CN
- China
- Prior art keywords
- file
- user
- software application
- fingerprint
- sign
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 84
- 230000005540 biological transmission Effects 0.000 claims abstract description 7
- 238000004891 communication Methods 0.000 claims description 28
- 125000004122 cyclic group Chemical group 0.000 claims description 7
- 238000012795 verification Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000004458 analytical method Methods 0.000 description 15
- 238000001746 injection moulding Methods 0.000 description 13
- 238000003860 storage Methods 0.000 description 13
- 230000008859 change Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 230000004913 activation Effects 0.000 description 9
- 238000013461 design Methods 0.000 description 8
- 230000008878 coupling Effects 0.000 description 7
- 238000010168 coupling process Methods 0.000 description 7
- 238000005859 coupling reaction Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 239000000463 material Substances 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000004088 simulation Methods 0.000 description 6
- 238000009434 installation Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 239000004033 plastic Substances 0.000 description 5
- 229920003023 plastic Polymers 0.000 description 5
- 101001001429 Homo sapiens Inositol monophosphatase 1 Proteins 0.000 description 4
- 102100035679 Inositol monophosphatase 1 Human genes 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000011999 immunoperoxidase monolayer assay Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- GHZKGHQGPXBWSN-UHFFFAOYSA-N methyl(propan-2-yloxy)phosphinic acid Chemical compound CC(C)OP(C)(O)=O GHZKGHQGPXBWSN-UHFFFAOYSA-N 0.000 description 4
- 238000005094 computer simulation Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 239000000126 substance Substances 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 2
- 238000012938 design process Methods 0.000 description 2
- 230000004069 differentiation Effects 0.000 description 2
- 238000004141 dimensional analysis Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000004154 testing of material Methods 0.000 description 2
- 108700012364 REG1 Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 239000012190 activator Substances 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 235000009508 confectionery Nutrition 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000002844 melting Methods 0.000 description 1
- 230000008018 melting Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 230000003449 preventive effect Effects 0.000 description 1
- 238000004801 process automation Methods 0.000 description 1
- 230000007420 reactivation Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000003892 spreading Methods 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/107—License processing; Key processing
- G06F21/1077—Recurrent authorisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2137—Time limited access, e.g. to a computer or data
Abstract
一种用来允许最终用户在按使用次付费的基础上访问软件的系统和方法。本发明可优选地运用于各种情况,特别是在根据需要、以安全方式要为最终用户以低成本提供一种访问和执行大型计算密集型应用软件程序的方法,而没有超长传输时间的负担或大型中央服务提供计算机设施(largecentralized vendor computer facilities)的情况下。本发明适合于任何按使用次付费的分发软件的方法,且当有大量数据文件、敏感数据和/或计算密集型应用时则特别符合需要符合需要。
Description
发明领域
本发明总的来说涉及计算机网络和用来提供软件程序的受限制使用的方法,具体地说,涉及基于因特网的系统,其用来向最终用户提供可执行的应用程序,以供在受限制或有限的基础上使用。
本申请要求提交于2000年4月28日的序列号为60/200,634的临时美国专利申请优先权及其权益,并从其整体上作为参考而合并于此。本申请还把以下专利申请从其整体上作为参考而合并于此:PCT国际专利申请号PCT/AU98/00130(公开于1998年10月1日,国际公开号WO98/43179),和提交于1999年9月24日的美国专利申请号09/404,932。
背景技术
一种向最终用户提供可执行的应用程序的传统方法需要让最终用户进入许可协议,并通过诸如只读光盘之类的介质把程序提供给最终用户以供安装在最终用户的计算机或计算机网络上。一种替代的安装方法需要经过诸如因特网之类的大规模计算机网络下载软件程序。无限的用户许可的成本可能高不可攀,特别是在最终用户仅希望偶尔使用一下程序的情况下。在应用程序很大和/或复杂时也是这种情形,诸如典型的工程师和科学家所使用的计算密集型分析程序,其用来设计元件和仿真复杂的物理过程。大型商务应用程序可能有相同属性。而且,大型应用程序要求重大的计算机硬件资源和支持方可优化运行,这也很昂贵。
一种替代方式是借助许多最终用户能够访问的中央计算机、在时分或“按需”的基础上来提供对应用程序的访问。根据这种方法,将最终用户数据、电子模型等等上传至由服务提供商所操作中央计算机,在此运行应用。完成以后,结果以报告、图表模型的形式下载至最终用户。于是,最终用户免去了必须获得在最终用户的系统上使用应用程序的许可的必要性和相应成本,且只在有需要时才为访问和使用软件付费。
这种替代安排的一个假想实例涉及使用复杂工程软件,诸如,用来仿真聚合物注入成形的过程。使用传统的时分模型,最终用户从位于自己设施处的计算机系统经网络向位于报务提供商设施处的计算机系统发送有限元模型,代表要被制作的元件的几何形状。在那里,由服务提供商使用服务提供商的软件来执行计算机仿真,并把分析结果经网络送回最终用户的计算机。使用费的收取,通常是与生成结果所使用的计算机资源成正比的。
不过,这种方法却存在着一些缺陷。例如,最终用户可能会顾及安全而不愿经公共网络传输自己的数据,因为公共网络存在着未授权访问、数据损坏等等的可能。特别是在数据在实质上是私人、保密或专用时更是这种情形。此外,最终用户可能不情愿经公共网络把保密数据发送至自己所控制不了的计算机上。
而且,在大量数据要被上传时,网络的容量限制会导致传输超时。于是,经网络发送几何或其他数据的时间和成本会提高。有限元模型的数据文件大小通常是20到50兆字节数据的量级,且对于更复杂的几何形状还会更大。
对于服务提供商来说,为使系统得到广泛使用和接受,必须提供具有足够的计算速度和访问容量的计算机硬件。特别是在一定的高峰期间,存在着大量想要访问系统的最终用户,就更是这种情形。若未能提供额外容量以容纳高峰使用需求,则可能导致最终用户的不满乃至不再使用。而且,当大量数据要被下载时,网络的容量限制会导致传输超时。于是,把诸如仿真结果的数据发回最终用户的时间和成本甚至比发送有限元模型所需的还多。
最终用户也无法控制处理仿真所占用的时间,因为这取决于服务提供商处的服务器负荷和队列里排在最终用户的工作之前的工作数,而它是可变的。这就要求最终用户改变其设计处理时间线,要求更长的交付周期。再者,在一些复杂分析里常常有相当多的试探和误差,诸如为注入成形设计过程的建模,这就形成了没有实用价值的多次反复运行该应用。而最终用户却仍要为每次使用付费。
于是,这就需要根据需要,以安全方式并以低成本为最终用户提供一种访问和执行大型计算密集型应用软件程序的方法,而没有多余传输时间或大型中央服务提供计算机设施的负担。
发明内容
根据本发明的方法的一个实施例,启用网络的(network enabled)应用软件分发方法包括通过多种方法向最终用户提供受限制使用的应用软件程序,所述方法诸如经大规模集成网络,如因特网下载,或经过诸如光盘的介质来物理地散发软件程序。最终用户再把程序装载在最终用户的计算机、系统或网络上。为了启用应用软件程序,在最终用户的计算机和另一台计算机(通常是由应用软件程序的提供商控制的计算机)之间建立起通讯。把身份辨别文件或指纹文件从最终用户的计算机上传至另一台计算机,在此确定最终用户的身份。一旦核实,则把密钥文件从另一台计算机下载至最终用户的计算机。该密钥文件准许最终用户在最终用户的计算机上运行应用软件程序。
根据本发明的系统的一个实施例,启用网络的应用软件分发方法包括至少两台计算机,其间具有通讯链路。最终用户具有一个装载在最终用户的计算机、系统或网络上的受限制使用的应用软件程序。为了启用应用软件程序,在最终用户的计算机和另一台计算机(通常是由应用软件程序的提供商控制的计算机)之间建立起通讯。两台计算机之间的通讯包括身份辨别文件或指纹文件,其从最终用户的计算机上传至另一台计算机,在此确定最终用户的身份。一旦核实,则把密钥文件从另一台计算机下载至最终用户的计算机。该密钥文件准许最终用户在最终用户的计算机上运行应用软件程序。
本发明适合于任何按使用次付费的分发软件的方法,且当有大量数据文件、敏感数据和/或计算密集型应用时则特别符合需要。
总之,应用服务提供商(“ASP”)可供应各种软件应用的按使用次付费版本,作为通向新市场的附加渠道。这种市场的特征在于含有大量潜在的最终用户,他们因购买许可的成本需求或偶尔才使用特定的软件功能之故,原本是不打算使用ASP的应用的。
通过实例而非通过限制,根据一个实施例,诸如对用来仿真聚合物注入成形过程的应用的使用,ASP允许应用在按使用次付费的基础上运行于最终用户的计算机系统上,而非ASP的计算机系统上。因为仿真运行于最终用户的计算机上,所以大量数据或专用数据不经公共网络发送。总之,向最终用户的计算机发送一个小型安全工具,其在固定一组的适应设计过程的规则内启用仿真。该规则可以以任何组合包括:(i)固定数量的不同运行;(ii)仅在具体几何形状或带有特定几何特征的模型上运行;以及(iii)在指定的时期无限使用,其带有禁用该应用的自动中断。作为选择,若丢失了结果,则可具有将来再次运行仿真的能力。因为应用是在最终用户的计算机上运行的,所以最终用户有能力对何时运行工作设置优先级。
一种在注入成形仿真的情况下施行这种系统的方法包括下列步骤,其次序不必固定。最终用户第一次想使用软件时,他们连接到ASP的电子商务网址,选择自己想要运行的仿真,并把应用下载到自己的本地计算机系统里。接着他们完成安装程序。这一步在以后使用该应用时毋需重复。当最终用户想运行仿真时,最终用户把要被制造的元件的几何说明读入本地应用,键入安装信息,并选择执行。这就触发了一个应用,其显现出该工作的特征指纹并连接到ASP的电子商务网址。
一旦最终用户通过了安全和付费屏蔽检查(screening test),则基于指纹向最终用户的计算机发回一个安全密钥文件,这就启动了仿真。只要应用相同的唯一特征,以后再试图运行应用时一般就毋需下载新的安全文件了。根据一个实施例,该特征是数字,其由几何文件计算得出,与该几何文件唯一对应。在该实施例里,最终用户可改变过程条件、注入位置等等,按需要在相同几何形状上进行多次仿真,直到最终用户对结果满意为止。
毋雍赘言,这一根本方法不限于注入成形过程,而且有益于广泛的应用,包括但不限于工程、科学和商务计算机应用。例如,根据本发明的系统使用多媒体播放器模拟可允许最终用户访问多媒体播放器,从而仅与特定的多媒体文件互动。一旦“激活”了特定的文件(例如,在最终用户付费之后),多媒体播放器即将操作该文件。例如,若文件改变了,多媒体播放器将不得操作文件,通常是通过再次付费直到“重激活”文件。
在有些实施例里,本发明可在执行计算的设备里施行,从而对照安全密钥生成并确认指纹。作为高度安全的选项,该设备按需要对指纹和安全密钥二者提供加密和解密。
在其他实施例里,提供访问应用的方法可在软件里施行。该软件可在线所用并通过下载工具获得。它还可用制成品来实施,其包括程序存储介质,诸如计算机磁盘或软盘、光盘、数字视盘或计算机存储器装置。
通过以下的具体说明,并结合仅以实例来说明本发明的原理的附图,可使本发明的其他方面、实施例和优点清楚。
附图说明
通过以下对各种实施例的说明、并结合附图,可以更为透彻地理解本发明的上述和其他目的、特征和优点、以及发明本身。在附图里:
图1是示意性的计算机模型,示出了一个简单三维元件,其包括带有加强侧翼的底板;
图2示意性描绘了如图1所示的三维元件几何形状上的表面网格,其准许用注入成形仿真程序来分析;
图3示意性描绘了仿真程序的图形结果;
图4示意性代表了根据本发明的系统;
图5是客户机/服务器方法的工作流程图,用来根据本发明实施例提供对至少一部份软件应用的预定的访问;以及
图6是根据本发明实施例而构建的硬件和软件系统的示意图。
具体上述方式
以下的详细说明将主要突出应用于注入成形软件的本发明的一个实施例;不过本领域的技术人员应该很明白,基本软件(underlying software)最终用户方法适用于各种工程、科学和商务应用。所有这些实施例、变形和等效都被认为处于本发明的范围以内。
图1是计算机模型的示意性透视图,示出了简单三维元件100,其底板102带有通常垂直放置的加强侧翼104。圆锥106指示着塑料融剂被注入模具以制成元件的点。
图2示意性描绘了如图1所示的三维元件几何形状上的表面网格200,其准许用注入成形仿真程序来分析。此处使用的这种仿真分析叫做“双域(dual domain)”,其并非完全的三维分析,而是可根据本发明而使用的一种用于比较简单的几何形状的分析。双域分析的实例公开于PCT国际专利申请PCT/AU98/00130,其公开于1998年10月1日,国际公开号为WO98/43179,其公开内容从整体上作为参考而合并于此。更复杂的三维分析公开于1999年9月24日提交的美国专利申请09/404,932,其公开内容从整体上作为参考而合并于此。毋雍赘言,还可运用其他类型的仿真分析,于是本发明就此而言不应被认为是限制性的。
图3示意性描绘了对该元件仿真分析的图形结果300。等融线(contourline)直观地代表了当注入的融剂逐步充满空腔模具时,不同时阶(timestep)的塑料融锋(melt front)。
图4示意性代表了根据本发明的系统400,该系统包括最终用户的计算机402,ASP计算机404和其间的通讯链路406。
图5是客户机/服务器方法500的工作流程图,从而根据本发明实施例提供对至少一部份软件应用的预定的访问。软件应用在用户文件504上操作。预定的访问通常是准许运行的访问,表示允许最终用户访问与用户文件504互动的应用。
用户文件504通常包括用于应用的输入数据。例如,应用可以是文字处理软件。在该例里,用户文件504对应由文字处理软件所产生的、或要操作的文件。在本实施例里,用户文件504通常代表要由注入成形所构建的元件的计算机模型。用户文件504通常包括一个或多个文件特征508。在注入成形模型的实境里,文件特征508通常包括元素计数、节点计数、名字和匹配率之中的一个或多个。元素和节点计数特征分别描述模型里的元素或节点数量。名字通常由最终用户提供,用来辨别模型。匹配率描述了可被配对的三角形元素(表面网格状、薄板几何形的对边之间)的数量相对元素总数的关系。例如,元素202(为清楚起见,在图2里用交叉阴影标出)的匹配元素位于三维元件表面的底面的相同位置(按现有的位置,匹配元素在图2里看不见)。文件特征508的目的是帮助辨别用户文件504有无改变。若用户文件504改变了,则一个或多个文件特征508也极可能改变。其他可用来指示用户文件504的改变的文件特征508包括重心的计算和惯性动量的计算。
客户机检验用户文件504并计算标识(步骤502),其至少部份基于用户文件504的内容。如下所述,在本实施例里,该标识包括一个校验和(checksum),其可根据循环冗余校验(即下文的“CRC”)算法来计算。客户机接着生成访问密钥(步骤506),其至少部份基于标识。该访问密钥可包括一个或多个上述文件特征508。该访问密钥也可包括软件应用符510,比如应用的“建版数字(build number)”。该建版数字通常提供应用的创建日期或版本的信息,或二者兼有。此外,访问密钥还可包括客户机设备具体的一个或多个系统特征512。一个这样的例子是客户机处理器或平台的序列号。在生成访问密钥(步骤506)后,可选择对其加密(步骤514)。完成加密可使用从专用方案到业界标准技术的任何方法。
在可选择的加密之后,对照用户数据密钥518来确认访问密钥(步骤516)。用户数据密钥518通常代表先前的计算结果,其至少部份基于用户数据文件504。更具体地说,用户数据密钥518代表用户数据文件504的初始状态。确认包括把访问密钥与用户数据密钥518对比(步骤520)。若访问密钥与用户数据密钥518匹配,则确认成功。当用户数据文件504由于例如被最终用户修改而相对其初始状态有所改变时(这种修改反映在文件特征508里,其通过标识包括在访问密钥里),则一般不匹配。在匹配的情形里,根据本发明的系统给予最终用户(和相应的用户数据文件504)对应用的访问(步骤524)。若未完成匹配,则执行激活例程,如下所述。
访问密钥的有效寿命可能有限。在这种情形里,访问密钥在一定时长里保持有效。该时长至少部份取决于(例如)从生成访问密钥(步骤506)后的耗时。从生成访问密钥(步骤506)又经过预定量的时间后,访问密钥无效,从而阻止执行应用了。作为替代,也可在若干次的访问密钥确认后让访问密钥无效。这就限制了应用的使用次数。还有一种替代方式是,若访问密钥确认的频度超过了预定值则让访问密钥无效,从而限制了使用应用的频度。可以把一种或多种确定有效期的方法组合起来以定义新的操作限制。例如,可以基于耗时和使用频度二者来共同限制对应用的使用。
用户数据密钥518通常作为上述激活例程的一部份而生成。当访问密钥与用户数据密钥518对比后未能匹配时,则执行该例程。在这种情形里,最终用户有机会激活用户文件504(步骤522)。(该激活最终将允许访问应用。)若最终用户谢绝激活用户文件504,则执行客户机终止例程(步骤526),其杜绝了再次访问应用的至少一部份。反之,若最终用户选择激活用户文件504,则服务器接收标识(提供给激活例程)并将其包括在指纹528里。同样提供给激活例程的一个或多个文件特征508,以及软件应用符510和系统特征512也可按任何组合包括在指纹528里。接着可使用专用或业界标准技术对指纹加密(步骤530)。
指纹528作为用户数据密钥518与应用关联,从而允许对应用的预定的访问。在这发生以前,本发明的一个实施例确定是否收到与用户数据密钥518关联的付费(步骤532)。使用购物券交易可以付费。例如,使用信用卡、订购单或通过邮寄订单可以购买购物券。第三方经销商可使用自己的记帐程序向自己的顾客经销购物券。购物券类似于信用卡。与各购物券关联(通常是通过对各购物券编码)的是预定数量的使用,以及有关购物券购买点的信息。
最终用户以键入购物券号码(例如一个“FcGx7Nj1YjU8KfEqlagIVt4SNVojpa88”之类的32位字串)而代替了键入信用卡号码。服务器接着对照已售出或已分发的购物券的数据库来确认购物券。这就核实了购物券的有效性,且其使用次数不多于预定的次数。这与典型的信用卡确认程序类似。
一旦收到了付费,则指纹528作为用户数据密钥518与应用关联,通常是通过向客户机传输指纹528(步骤534)。在一个实施例里,指纹528被包括在一个动态链接库文件(即下文的“*.DLL”)里,如下所述。结果,用户数据密钥518即居于客户机上了。另一方面,若未收到付费,则执行服务器终止例程(步骤536)且指纹528不作为用户数据密钥与应用关联。这就杜绝了与应用一起使用至少一部份用户数据文件504。
本发明实施例的塑料注入成形仿真方法是用于计算机辅助工程(“CAE”)市场的启用因特网的计算机辅助工程(“iCAE”)软件产品散发方法。该方法可包括独特的按模型付费的定价概念,其允许最终用户对具体设计模型的无限仿真访问。各模型皆用唯一的指纹来定义,其由从ASP的电子商务网址得到的相应“模型密钥”所激活。iCAE的目标之一是把ASP的产品延伸至不能承担全额购买方案的最终用户,并提供低风险的起步方法,其可导致日后的全额购买。可以提供任何数量的软件应用,诸如MPA分析或MPITM的FUSIONTM部份。这些程序可从位于麻萨诸塞州来克星顿的MoldFlow公司获得许可。
最终用户开始iCAE时,可首先得到(通过下载或通过标准邮政)启用iCAE的Moldflow塑料导师(“iMPA”)应用,其可以免费或按规定收费提供。除了下述的个别例外,这基本上是标准的MPA软件应用,其仅在启用因特网的模型上操作。在软件产品上添加了功能以限制对给定用户模型的激活。激活涵盖创建模型指纹、连接到ASP的电子商务因特网址以上传指纹、为模型付费、接着下载模型密钥。ASP的电子商务网址通常负责创建单个最终用户的档案、文件上传和下载、使用追踪和最终用户记帐活动。使用信用卡或其他交易技术可完成记帐。以下详细说明了iMPA、ASP的电子商务网址的典型产品和最终用户在两个系统间互动的要求。
首先看使用情况,根据本发明的一个实施例,进行分析通常涵盖以下步骤:
(i)浏览ASP的电子商务网址;
(ii)把优点教给最终用户;
(iii)提供实例性的使用情况;
(iv)提供如何起步的指令;
(v)若最终用户是首次使用,则注册以创建用户档案(user profile),其可由发回最终用户、含有口令的电子邮件激活,且其可能不准某些最终用户注册(例如,有欠费前科的最终用户);
(vi)登录安全区域;
(vii)下载iMPA或请求邮寄光盘;
(viii)通过运行安装程序把iMPA安装在本地最终用户计算机上;
(ix)运行iMPA;
(x)对于首次使用,自动运行教程(并有选择“单击此处以后不再运行”);
(xi)读入CAD模型(例如:STL、IGES、STEP、PARASOLID等等);
(xii)选择“开始分析”图标或从菜单选择。iMPA首先确认CAD模型是否适于用该仿真软件进行分析。进行校验以确保最终用户的模型合格且最终用户的计算机合格,这在iMPA建立指纹以前在iMPA内部完成,其涵盖通过运行“状况1,2”子例程以观察所需时长、所需存储器装置、网格匹配率等等。在失败的情形下,例如当模型的某些地区里网格“块头太大”以致不能产生可靠结果,则从严重性渐增的警告表里选择一条警告显示出来。当模型完全不适合分析时,或在计算机太慢、存储器装置不足等等的情形里,最终用户可以进行但存在风险,则显示其他警告。最终用户可以选择是否打开自己的浏览器;
(xiii)若选择“可以继续”,则创建iMPA指纹文件。启动网页浏览器连接到ASP的电子商务网址上的安全区域的前门;
(xiv)以最终用户的身份和口令登录;
(xv)通过选择“浏览”以在最终用户的计算机硬盘上定位iMPA文件,从而人工或自动地上传指纹文件。选择激活按钮,其启动信用卡或其他交易处理;
(xvi)向最终用户呈现记帐总计,接着最终用户用信用卡或其他合格的交易方法(例如,上述购物券过程)付费,以激活模型;
(xvii)在接受付帐后,向最终用户呈现下载页以下载用户数据密钥文件518(modelname_specialcode.dll,略写为“*.DLL”),其被下载并放在iMPA工作目录里;以及
(xviii)运行iMPA(多次)以分析/优化模型并观察结果,以基本上和MPA分析一模一样的方式进行(例如,指定诸如门、材料、处理条件等等的输入参数;进行诸如处理窗、填充、运行平衡等等分析;对结果进行后处理;并创建因特网就绪报告)。
取决于使用情况,可加入某些限制。例如,通过加入限制,即模型几何形状的任何改变皆使模型无效并终止运行,iMPA程序可被禁止。
可有各种定价选择。例如,ASP可选择按模型大小(小、中、大)、模型类型(单腔、多腔、族模具)、分析类型(门位置、处理窗、填充、运行平衡)、分析次数运行限制、时间限制等等分段。
由于本发明的因特网电子商务性质,安全颇受关切。于是,重要的是要采取适宜的预防措施以确保系统安全不被轻易破坏。例如,系统应该在事实上不可能让一个密钥文件用于一个以上模型、或以其他方式损害系统。下面将说明用以达到这一点的一些方法。
例如,用16位CRC(“CRC-16”)算法可使系统安全。CRC算法是数据通信里的一种很强大并容易施行的用以得到数据可靠性的技术。CRC算法用来保护叫做帧的数据块,并且是数据通信里流行的检错技术。发送端在传输前自动把16位多项式作用于一块数据,并把所得的循环冗余码附加至数据。接收端把相同的多项式作用于数据以确保所得的循环冗余码与发送端的匹配。CRC唯一地辨别该数据块,其在本应用里即是文件内容。若文件内的数据有任何字节的改变,则CRC值也会改变。在数据通信里这将导致数据包失败。在本应用里,这将导致安全失败。据报道,16位码可检测所有单位和双位错误,并可检测99.998%的所有错误。
模型的CRC值与模型名和模型统计数字(例如,节点数、元素数、网格匹配率、CAD数据源等等)一起被加密并发至网站服务器。网站服务器对数据解密并将其编辑成新的安全动态链接库文件(即*.DLL)。该库文件接着被直接发回最终用户。最终用户在收到后把库文件放在正确的位置(例如,“\iMPA\bin”目录)并装载之,以准备运行模型。
当运行iMPA时,它装载*.DLL并发给它一个口令以核实它是已知和可信的*.DLL,其包括与iMPA应用无关的硬编码口令。当最终用户打开模型文件时,其名字被送至*.DLL,在此与注册列表对比。若找到,则校验CRC值,而若相关,则模型被送去分析。最终用户看不见*.DLL里的CRC值,也不能用诸如“字串”之类的实用工具找到它,因此,它是相当安全的。作为附加安全级,*.DLL含有自我CRC校验,故若有人试图修改(例如“骇客(hack)”)*.DLL,则注定失败。
于是,除模型指纹文件例外,最终用户数据全部留在本地最终用户的系统上。指纹文件仅含有足以唯一辨别它的数据。最终用户专用信息在任何时候都不会被传输至ASP。为确保最终用户的隐私,在ASP的电子商务网址处的用户档案里所含有的数据仅由ASP供内部辨别和追踪之用,而不可发送或出售给任何第三方。
可使用任何各种记帐方法。可使用信用卡作为上述购物券的替代。一种现在的信用卡方法是由CyberSourceTM所运用的。另一种信用卡方法是由CyberCashTM所运用用的。总之,顾客通过点击付费按钮在商家的网址上订货。商家把订货信息经过简单商务消息协议(“SCMP”)经因特网安全地转交给信用卡交易服务提供商(“TSP”transaction service provider)。TSP通过自己的付费网关把交易授权请求传送给处理者或收款银行(即商家的银行)。接着把交易发送给信用卡联盟。信用卡联盟把交易发送给签发银行(即顾客的银行)以请求交易授权,这对于诸如AmExTM和DiscoverTM这些信用卡签发者则没有必要。签发银行把授权返回信用卡联盟;不过,若交易未获授权,则TSP向商家返回一则消息并取消交易的剩余部份。
当TSP收到交易授权时,并且若要求实际实现,则TSP向商家或分发中心发送一则消息以授权实现订单。商家或分发中心把实现通知发送至TSP以准许结算,且TSP向签发银行发送结算请求。若授权的是销售以数字形式散发的产品或服务,则与授权一并做出结算请求。签发银行接着同意把钱转交给收款银行。
启用因特网的应用(诸如iMPA)与其传统供应的对应应用(诸如MPA)有某些区别。例如,iMPA可被配置成仅与操作系统的子集一起工作,且仅分析启用因特网的模型。作为选择,可以设法把iMPA转换成完全的MPA应用产品,例如通过使用许可密钥或其类似。iMPA足够小,以致可在因特网上高效地下载。于是,可能会需要创建大型帮助和示例模型的子集以达到想要的大小。iMPA最初仅以英语提供,其可延伸以包括其他语言,它们可作为语言补丁从网址下载。不过,iMPA包括通过连接到因特网确认并接着激活模型的新功能。而且,iMPA可包括显示最终用户的全部目前激活模型列表的新功能。
ASP的电子商务网址含有大量各种内容以支持顾客的多种需要。在一个实施例里,该内容可围绕三个主题为中心。首先是一组启用因特网的软件方案和数据结构,其使得注入成形从设计到制造的过程自动化、优化,并监控和协助之。其次是电子商务环境,用以迅速和高效地向市场供应ASP和其他业界相关实体的货物和服务。第三是用于塑料零件和模具设计、合作、招标和制造的在线环境。
值得注意的是,这组广泛的目标毋需从头完整地施行,而是可以在建自一组底线服务的递增基础上施行。例如,在iMPA、即上文所述的按模型付费的仿真方法之上,初始底线服务可包括个人最终用户档案的施行,从而单个最终用户可在网址的各节利用单个普通最终用户档案,而不仅在iMPA节。底线网址可包括材料在线节,以促使最终用户能够完全浏览含有材料信息、规格等等的材料数据库、并可在线订购材料测试。可提供咨询服务节,以促使最终用户能够直接经因特网订购咨询服务。此外可提供培训班和销售课程注册服务。注意尽管这些底线服务可能仅含有ASP内容,却也可包括第三方产品和内容。于是,ASP的电子商务网址可被定位为由ASP资助的业界资源,但也包括第三方的信息。
IMPA节可有许多页面选择。从ASP的电子商务网址主页所到达的主要网页可包括以下五项最终用户选择:REGI STER FOR ACCOUNT;LOGIN;DEMO/TUTORIAL;GETTING STARTED和NEWS/INFO。
REGISTER FOR ACCOUNT选项呈示出一个表格,以捕获所需的最终用户档案字段并用电子邮件给最终用户寄去介绍信,其通知最终用户他们的最终用户身份(例如,最终用户的电子邮件地址)和他们的初始口令。所有字段、包括口令,皆可由最终用户在USER PROFILE区域里改变,如下文更完整地讨论。
LOGIN选项呈示出最终用户的身份和口令字段、以及登录按钮。该选项最好是直接位于iMPA主页,以允许最终用户直接登录到网址的安全区域。
DEMO/TUTORIAL选项把最终用户带入一个关于使用iMPA的特点和优点的幻灯片教程里,而GETTING STARTED以第1,2,3步的格式提供指令。
最后,NEWS/INFO节把最终用户带入最新消息,其含有近期业界新闻、新闻发布会、成功案例、满意顾客的引语、常见问题节等等。
USER PROFILE可含有最终用户可见的字段和仅供ASP使用的系统字段。以下是典型字段,尽管还可依特定应用来定义和裁剪其他字段。
最终用户可见的字段包括以下的:FIRST_NAME;LAST_NAME;POSITION;COMPANY_NAME;ADDRESS_1;ADDRESS_2(即可选用的定义字段);CITY;STATE;CONTRY;POSTAL_CODE;TELEPHONE_NUMBER;以及FACSIMILE_NUMBER。
附加可见字段可包括:JOB_FUNCTION选自固定的选择列表,包括:零件设计者、模具设计者、销售工程师、材料供应者、工程顾问、其他;LINE_OF_BUSINESS选自固定的选择列表,包括:宇航、汽车、建筑、计算机、顾问、消费口、分销商、教育、电子、设备供应者、家具、材料供应者、医药、模具设计/制作、玩具、其他;COMPANY_SIZE选自固定的选择列表,包括1~10、11~25、26~100、100~1000、多于1000人;EMAIL_ADDRESS也作为登录最终用户的身份,而PASSWORD第一次由网址生成,以后可由用户改变。
总之,除ADDRESS_2外的所有字段都是必填的。最终用户的登录身份是最终用户的电子邮件地址。PASSWORD字段由网址生成并用电子邮件寄给最终用户,其后最终用户可自行改变。这是为了确保ASP具有有效的电子邮件地址。
如上所述,用户档案可包括很多最终用户看不见的系统字段,诸如:iMPA_DOWNLOADS辨别了下载或邮寄iMPA的次数;
iMPA_LAST_DOWNLOAD_DATE列出了上次下载或邮寄iMPA的日期;以及
iMPA_DOWNLOAD_VERSION辨别了上次下载或邮寄的iMPA的版本。
IMPA_MODEL_ACTIVATION_TABLE是一个底端不封闭的表格,其含有关于各激活模型的数据,可包括用于各模型的:ACTIVATION_DATE;ACTIVATION_TYPE是依赖于顺序密钥更新的整数标志;ACTIVATION_COMMENT是注释字串,可用来说明被激活的模型,该字串在网页上键入,且通常仅用来向ASP提供实际上在分析什麽的情况;AMOUNT_PAID的单位是美元;DELETED_BY_USER是一个真/假标志,以指示最终用户是否把该记录从自己的管理列表里移除了;MODEL_NAME;MODEL_NODES;MODEL_ELEMENTS;MODEL_MESH_MATCH_RATIO;以及MODEL_SOURCE是一个整数,其指明了模型代码的商业来源(例如,1=“STL”,2=“STEP”,3=“IGES”,4=“PARASOLID”,等等)。应注意所有这些MODEL_xxxxx数据皆可从上载自最终用户的计算机系统的指纹里获得。
按需要有能力定义附加字段,这取决于最终用户基群增大和网址增大的经历。例如,可有材料浏览或材料测试服务、咨询服务等等的具体字段。
如上所述,iMPA也有安全区域,它有一些选择。作为底线,安全区域里可有六个主要的选择:OVERVIEW;GET iMPA;ACTIVATE MODEL;MY PROFILE;CONTACT US;以及LOGOUT。这些选择可被组织成表格对话框的形式。
在首次进入安全区域时显示OVERVIEW节,并可含有安全区域的综述。通常可链接到遍览iMPA过程,包括(例如)链接到DISCLAIMER和POLICY的页面。最终用户在首次进入时被要求阅读这两页。若有任何退款政策信息,则也要求显示出来。
GET iMPA节提供有关得到iMPA的方法的信息,以及计算机需求、安装指令和一般使用信息的说明。在一个实施例里,可能有两个选项,下载iMPA或邮寄订购光盘。不管哪种情形,只要当最终用户订购或下载iMPA时即记载最终用户的档案。
ACTIVATE MODEL节可用来激活新模型或管理以前激活的模型的列表。当进入该页时,使用浏览器甜饼来装载和显示指纹信息(即,仅限模型名、节点数网格匹配率)。为了安全起见,不显示CRC。若由于任何原因而不能显示指纹信息,则最终用户干脆使用文本输入字段并连接文件“浏览”按钮来选择文件。
一旦选择了ACTIVATE MODEL,则把总费用呈示给最终用户并提示同意付费。在确认后,最终用户连接到付费服务,在此进行所有信用卡条目和确认功能,如上文所述。
通常最好是在此显示和管理所有以前激活的模型,特别是在每次安装iMPA时仅有一个*.DLL的情形。它含有全部激活模型的列表,且最终用户需要能够在重复的基础上激活一个或多个模型。总之,最终用户应能够列出激活模型,从显示的列表(但通常不是从ASP的内部数据库)里删除模型并选择应将何模型输入*.DLL。
最终当完成付费后,已确认的最终用户被导入一个页面,在此他们可下载用户数据密钥文件518(*.DLL)。该页面通常包括一个提示,作为缺省条件,其把最终用户的全部模型皆包括在用户数据密钥文件518里,或选择要包括哪一个。若最终用户选取SELECT MODELS则他们被导入一个页面,其含有他们全部模型的表格,且他们可对选取还是删除各模型条目作出选择。
下面,如表1所示,是呈示典型信息的实例(该页也可从ACTIVATE MODEL主页访问,旨在允许最终用户管理已有模型)。
模型名 | 模型说明 | 激活日期 | 激活类型 | 在密钥文件内 | 删除模型 |
face_plate.mpa | 填充设计概念1 | 2000年2月15日 | 1 | [√] | [ ] |
face_plate2.mpa | 填充设计概念2 | 2000年2月26日 | 1 | [√] | [ ] |
cover.mpa | 最终设计 | 2000年2月27日 | 1 | [√] | [ ] |
housing.mpa | 运行平衡 | 2000年2月27日 | 2 | [√] | [√] |
(激活) (删除)
激活类型:
1=Part Adviser模型;
2=Mold Adviser模型
表1
MY PROFILE节列出了可编辑的最终用户档案字段,以及提交按钮,允许最终用户更新任何档案信息或改正任何信息。该节通常不列出iMPA模型信息且不能从ACTIVATE MODEL页访问。
CONTACT US节呈示了电话联系信息,以及用电子邮件提交留言的表格。该节还可含有如何获取网页和电话支持的细节,如以下在技术支持里所进一步讨论的。最后,选择LOGOUT节提示用户接着退出安全区域。
最好是运用高质量的演示和教程来增强根据本发明的系统的商业成功的可能性。例如,可有一个基于网页的演示,其直观地呈示了按使用次付费方法的价值论述。可提供入门教程以概括进行比较简单的注入成形填充分析所需的步骤。该教程可包括到其他教程去的路标(roadmap)。
技术支持可由ASP的内部技术支持人员来提供。实现支持需求的方法之一是通过电子商务网址。由最终用户填写表格并通过网址提交。该信息接着移交给技术支持人员,在此为追踪起见而记录下信息。支持请求再被分配给合适的工程师、软件专家或其他解决问题的技术员。技术员可酌情使用电子邮件、电话或传真来联系最终用户。
支持电话可以收费或免费。例如,对于一般性的询问或所需的支持人时低于一定量的询问可不收费。不过,对于要求具体工程输入(诸如要求模型操纵、材料选择或分析结果的解释)的电话则可以收费。费用可按每次询问统一收取或在时间基础上收取。
图6示出了本发明600有代表性的客户机-服务器施行,其包括服务器602和客户机628,它们经诸如因特网624的媒介通讯。服务器602通常施行本发明的功能,其被更详细地示出。服务器602的元件经主干双向服务器系统总线604互通。实现本发明的主序指令居于服务器大容量存储装置606(在例如硬盘或光存储单元里),在操作时也在主系统存储器装置608里。由中央处理单元(“CPU”)610来完成这些指令的执行和本发明功能的实现。在服务器602里,服务器网络界面620连接至主干双向系统总线604。服务器602经通讯链路622由网络界面620连接至因特网624。
控制CPU610的操作并由此而实现本发明的功能的可执行指令被概念性地描绘成居于存储器装置608里的一系列互动的模块。(未示出操作系统,其指挥低级、基本的系统功能,诸如存储器装置分配、文件管理和客户机大容量存储装置606的操作。)
客户机628也通常施行本发明的功能,并被更详细地示出。客户机628通常包括用户界面630和客户大容量存储装置632,其皆由客户CPU634管理。这些元件互相通讯,也经双向客户机系统总线638与客户机存储器装置640和客户机网络界面636通讯。用户界面630通常包括监视器和一个或多个输入设备,诸如键盘或鼠标器或二者兼有。与上面讨论的服务器配置类似,实现本发明的指令居于客户机的大容量存储装置632(在例如硬盘或光存储单元里),也在客户机存储器装置640里。由客户机的CPU634来完成这些指令的执行和本发明功能的实现。在客户机628里,客户机网络界面636连接至主干双向客户机系统总线638。客户机628也经通讯链路626由客户机网络界面636连接至因特网624。控制客户机CPU634的操作并由此而实现本发明的功能的可执行指令被概念性地描绘成居于客户机存储器装置640里的一系列互动的模块。(未示出操作系统,其指挥低级、基本的系统功能,诸如存储器装置分配、文件管理和客户机大容量存储装置632的操作。)
标识计算器642与用户文件通讯。该文件通常存储在客户机大容量存储装置632上,包括呈示给软件应用的数据,用于进一步的处理和分析。在一个实施例里,软件应用仿真聚合物注入成形过程,且用户文件包括将要用这些过程制造的元件模型。标识计算器642检验用户文件的内容并计算标识,通常是基于CRC的校验和。标识计算器642与访问密钥生成器644通讯,其收到标识并选择性地使用辅助信息来生成访问密钥。该辅助信息可包括文件和系统特征,以及软件应用符,如上所述。确认器646与访问密钥生成器644通讯,以比较访问密钥和用户数密钥518。确认器646也提供比较所需的任何加密和解密。若访问密钥与用户数据密钥518匹配,则准许访问应用。
若访问密钥与用户数据密钥518不匹配,则给予最终用户“激活”用户文件的机会。若最终用户选择激活用户文件,则把标识经通讯链路622,626传输至服务器602,通常是使用诸如因特网624的网络。通讯链路622,626可采取多种多样的形式。典型的实例包括高速专用线、无线链路、以及简单的拨号连接。还应注意,服务器602和客户机628之间的通讯可以借助因特网624以外的媒介。任何网络,诸如内部网或其他专用通讯媒介皆可取代因特网624,且仍处于本发明的范围以内。
标识接收器612收到标识并与指纹编辑器614通讯。使用上述标识和可选的辅助信息,指纹编辑器614生成数据,其最终变成用户数据密钥。在一个实施例里,数据包括于动态链接库文件里并反映出用户数据文件、软件应用和客户机628的组成和结构。作为选择,指纹编辑器614可与加密引擎616通讯以对数据加密,由此使得动态链接库文件能抵御篡改。发送器618接着把数据作为用户数据密钥518发送至客户机628。
注意,因为图4,5和6皆是框图,所以举出的项目被示成分立的元素。在本发明的实际施行里,它们可以是其他电子设备(诸如数字计算机)的不可分割的元件。因而可由软件来施行上述行动,其采取包括程序存储媒介的制成品的实施方式。
本领域的技术人员应意识到:本发明可采取其他的具体实施方式,而不背离其精神和本质特征。上述实施方式因此在各方面皆应被认为时说明性的,而非对此处说明的本发明的限制。本发明的范围是由所附的权利要求书而非由上述说明书来指定的,且旨在因此涵盖处于权利要求书的等效意义和范围以内的所有改变。
Claims (45)
1.一种方法,用来允许对软件应用的至少一个子集进行预定的访问,该方法包括以下步骤:
计算至少部份基于用户文件的标识;
生成至少部份基于标识的访问密钥;以及
对照用户数据密钥来确认访问密钥,而当确认成功时,给予对软件应用的至少一个子集的预定的访问。
2.如权利要求1的方法,进一步包括以下步骤:当确认不成功时,执行激活例程。
3.如权利要求1的方法,其中,预定的访问包括准许运行的访问。
4.如权利要求1的方法,其中,用户文件包括用于软件应用的输入数据。
5.如权利要求1的方法,其中,标识包括至少部份基于循环冗余校验的校验和。
6.如权利要求1的方法,其中,用户文件包括至少一个文件特征。
7.如权利要求6的方法,其中,至少一个文件特征包括元素计数、节点计数、模型名和匹配率之中的至少一个。
8.如权利要求6的方法,其中,访问密钥进一步包括至少一个文件特征。
9.如权利要求1的方法,其中,访问密钥进一步包括软件应用符。
10.如权利要求1的方法,其中,访问密钥进一步包括至少一个系统特征。
11.如权利要求1的方法,其中,访问密钥被加密。
12.如权利要求1的方法,其中,访问密钥的有效寿命有限。
13.如权利要求12的方法,其中,有限的有效寿命至少部份取决于从生成访问密钥后的耗时、访问密钥确认的次数和访问密钥确认的频度之中的至少一个。
14.如权利要求1的方法,其中,用户数据密钥包括至少部份基于用户文件的以前计算结果。
15.一种创建用于软件应用的用户数据密钥的方法,该方法包括以下步骤:
接收至少部份基于用户文件的标识;
把标识包括在指纹里;
对指纹加密;以及
把指纹作为用户数据密钥与软件应用关联。
16.如权利要求15的方法,其中,用户文件包括用于软件应用的输入数据。
17.如权利要求15的方法,其中,标识包括至少部份基于循环冗余校验的校验和。
18.如权利要求15的方法,其中,用户文件包括至少一个文件特征。
19.如权利要求18的方法,其中,至少一个文件特征包括元素计数、节点计数、模型名和匹配率之中的至少一个。
20.如权利要求18的方法,其中,指纹包括至少一个文件特征。
21.如权利要求15的方法,其中,指纹包括软件应用符。
22.如权利要求15的方法,其中,指纹包括至少一个系统特征。
23.如权利要求15的方法,进一步包括以下步骤:接收与用户数据密钥关联的付费。
24.如权利要求23的方法,其中,接收付费的步骤包括信用卡交易。
25.如权利要求23的方法,其中,接收付费的步骤包括购物券交易。
26.如权利要求15的方法,其中,把指纹与软件应用关联的步骤进一步包括向软件应用传输指纹。
27.如权利要求26的方法,其中,用户数据密钥包括于动态链接库文件里。
28.一种启用网络的应用软件分发方法,包括以下步骤:
提供受限制使用的应用软件程序;
把程序装载在用户的计算机上;
在用户的计算机和另一台计算机之间建立起通讯;
把指纹文件从用户的计算机上传至另一台计算机;
把密钥文件从另一台计算机下载至用户的计算机;以及
在用户的计算机上运行应用软件程序。
29.一种方法,用来允许对软件应用的至少一个子集进行准许运行的访问,该方法包括以下步骤:
计算至少部份基于用户文件的标识,该用户文件包括用于软件应用的输入数据并有至少一个文件特征,且该标识包括至少部份基于循环冗余校验的校验和;
生成至少部份基于标识、至少一个文件特征、软件应用符和至少一个系统特征之中的至少一个的访问密钥;
对访问密钥加密;以及
与包括至少部份基于用户文件的以前计算结果的用户数据密钥对照来确认访问密钥,而当确认成功时,给予对软件应用的至少一个子集的预定的访问,而当确认不成功时,执行激活例程。
30.如权利要求29的方法,其中,至少一个文件特征包括元素计数、节点计数、模型名和匹配率之中的至少一个。
31.如权利要求29的方法,其中,访问密钥的有效寿命有限。
32.如权利要求31的方法,其中,有限的有效寿命至少部份取决于从生成访问密钥后的耗时、访问密钥确认的次数和访问密钥确认的频度之中的至少一个。
33.一种创建用于软件应用的用户数据密钥的方法,该方法包括以下步骤:
接收至少部份基于用户文件的标识,该用户文件具有用于软件应用的输入数据并有至少一个文件特征,且该标识包括至少部份基于循环冗余校验的校验和;
把标识包括在指纹里,该指纹包括至少一个文件特征、软件应用符和至少一个系统特征之中的至少一个;
对指纹加密;以及
通过向软件应用传输指纹、和通过使用动态链接库文件、和响应接收付费,把指纹作为用户数据密钥与软件应用关联。
34.如权利要求33的方法,其中,至少一个文件特征包括元素计数、节点计数、模型名和匹配率之中的至少一个。
35.如权利要求33的方法,其中,接收付费的步骤包括信用卡交易。
36.如权利要求33的方法,其中,接收付费的步骤包括购物券交易。
37.一种软件访问控制设备,包括:
标识计算器,其与用户文件通讯;
访问密钥生成器,其与标识计算器通讯;以及
确认器,其与访问密钥生成器和用户数据密钥通讯。
38.一种用户数据密钥生成器,包括:
标识接收器;
指纹编辑器,其与标识接收器通讯;
加密引擎,其与指纹编辑器通讯;以及
发送器,其与加密引擎和软件应用通讯。
39.一种计算机系统,用来允许对软件应用的至少一个子集进行预定的访问,其包括:
用来计算至少部份基于用户文件的标识的装置;
用来生成至少部份基于标识的访问密钥的装置;
用来对访问密钥加密的装置;
用来对照用户数据密钥来确认访问密钥的装置;以及
用来给予预定的访问以响应成功确认的装置。
40.如权利要求39的计算机系统,进一步包括用来执行激活例程以响应不成功确认的装置。
41.一种计算机系统,用来创建用于软件应用的用户数据密钥,包括:
用来接收至少部份基于用户文件的标识的装置;
用来把标识包括在指纹里的装置;
用来对指纹加密的装置;以及
用来把指纹作为用户数据密钥与软件应用关联的装置。
42.一种包括程序存储介质的制成品,其内具有所实施的计算机可读的程序代码,用来允许对软件应用的至少一个子集进行预定的访问,该制成品里的计算机可读程序代码包括:
计算机可读代码,用来使得计算机计算至少部份基于用户文件的标识;
计算机可读代码,用来使得计算机生成至少部份基于标识的访问密钥;以及
计算机可读代码,用来使得计算机对照用户数据密钥来确认访问密钥,而当确认成功时,给予对软件应用的至少一个子集的预定的访问。
43.一种计算机可读的程序存储介质,具体实施了由计算机执行的程序指令,以进行用来允许对软件应用的至少一个子集进行预定的访问的方法步骤,该方法步骤包括:
计算至少部份基于用户文件的标识;
生成至少部份基于标识的访问密钥;以及
对照用户数据密钥来确认访问密钥,而当确认成功时,给予对软件应用的至少一个子集的预定的访问。
44.一种包括程序存储介质的制成品,其内具有所实施的计算机可读的程序代码,用来创建用于软件应用的用户数据密钥,该制成品里的计算机可读程序代码包括:
计算机可读代码,用来使得计算机接收至少部份基于用户文件的标识;
计算机可读代码,用来使得计算机把标识包括在指纹里;
计算机可读代码,用来使得计算机对指纹加密;以及
计算机可读代码,用来使得计算机把指纹作为用户数据密钥与软件应用关联,从而创建用户数据密钥。
45.一种计算机可读的程序存储介质,具体实施了由计算机执行的程序指令,以进行用来创建用于软件应用的用户数据密钥的方法步骤,该方法步骤包括:
接收至少部份基于用户文件的标识;
把标识包括在指纹里;
对指纹加密;以及
把指纹作为用户数据密钥与软件应用关联,从而创建用户数据密钥。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US20063400P | 2000-04-28 | 2000-04-28 | |
US60/200,634 | 2000-04-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1423764A true CN1423764A (zh) | 2003-06-11 |
CN1241083C CN1241083C (zh) | 2006-02-08 |
Family
ID=22742533
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB018072682A Expired - Fee Related CN1241083C (zh) | 2000-04-28 | 2001-04-27 | 启用网络的应用软件系统和方法 |
Country Status (8)
Country | Link |
---|---|
US (1) | US7032113B2 (zh) |
EP (1) | EP1297405A2 (zh) |
JP (1) | JP2004514194A (zh) |
CN (1) | CN1241083C (zh) |
AU (1) | AU2001255698A1 (zh) |
BR (1) | BR0110400A (zh) |
HK (1) | HK1052778B (zh) |
WO (1) | WO2001084283A2 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100433655C (zh) * | 2006-03-01 | 2008-11-12 | 华为技术有限公司 | 客户端软件注册数量的控制系统和控制方法 |
CN112507397A (zh) * | 2020-11-23 | 2021-03-16 | 中国人民解放军战略支援部队信息工程大学 | 基于信息加密的微处理器固件信息保护方法 |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NZ505784A (en) * | 2000-07-17 | 2003-04-29 | Compudigm Int Ltd | A data visualisation system producing a contoured graphical representation of call centre activity |
US7137008B1 (en) * | 2000-07-25 | 2006-11-14 | Laurence Hamid | Flexible method of user authentication |
US9098685B2 (en) * | 2000-07-25 | 2015-08-04 | Activcard Ireland Limited | Flexible method of user authentication |
GB2378529A (en) * | 2001-05-09 | 2003-02-12 | Sysmedia Ltd | Pay per use software |
US20050144175A1 (en) * | 2002-02-18 | 2005-06-30 | Siemens Aktiengesellschaft | Method and system for administrating use of a service |
US7281273B2 (en) * | 2002-06-28 | 2007-10-09 | Microsoft Corporation | Protecting content on medium from unfettered distribution |
US7885896B2 (en) | 2002-07-09 | 2011-02-08 | Avaya Inc. | Method for authorizing a substitute software license server |
US8041642B2 (en) | 2002-07-10 | 2011-10-18 | Avaya Inc. | Predictive software license balancing |
US7707116B2 (en) | 2002-08-30 | 2010-04-27 | Avaya Inc. | Flexible license file feature controls |
US7966520B2 (en) * | 2002-08-30 | 2011-06-21 | Avaya Inc. | Software licensing for spare processors |
US7681245B2 (en) * | 2002-08-30 | 2010-03-16 | Avaya Inc. | Remote feature activator feature extraction |
US7698225B2 (en) * | 2002-08-30 | 2010-04-13 | Avaya Inc. | License modes in call processing |
US7228567B2 (en) * | 2002-08-30 | 2007-06-05 | Avaya Technology Corp. | License file serial number tracking |
US7890997B2 (en) * | 2002-12-26 | 2011-02-15 | Avaya Inc. | Remote feature activation authentication file system |
US8121955B2 (en) | 2003-01-16 | 2012-02-21 | Oracle America, Inc. | Signing program data payload sequence in program loading |
US7484095B2 (en) * | 2003-01-16 | 2009-01-27 | Sun Microsystems, Inc. | System for communicating program data between a first device and a second device |
US7281244B2 (en) * | 2003-01-16 | 2007-10-09 | Sun Microsystems, Inc. | Using a digital fingerprint to commit loaded data in a device |
US7260557B2 (en) * | 2003-02-27 | 2007-08-21 | Avaya Technology Corp. | Method and apparatus for license distribution |
EP1606708B1 (en) * | 2003-03-03 | 2007-05-09 | Snap-on Technologies Inc. | Method for providing a software module to an automotive vehicle control unit, and computer program for executing the method |
US7373657B2 (en) * | 2003-03-10 | 2008-05-13 | Avaya Technology Corp. | Method and apparatus for controlling data and software access |
JP4248913B2 (ja) | 2003-03-31 | 2009-04-02 | 株式会社エヌ・ティ・ティ・ドコモ | 端末装置、プログラムおよび通信システム |
US8898657B2 (en) * | 2003-10-03 | 2014-11-25 | Cyberlink Corp. | System and method for licensing software |
US7353388B1 (en) | 2004-02-09 | 2008-04-01 | Avaya Technology Corp. | Key server for securing IP telephony registration, control, and maintenance |
JP4012958B2 (ja) * | 2004-02-26 | 2007-11-28 | インテグラル・テクノロジー株式会社 | Cae解析ナビゲーションシステム及びcae解析処理プログラム並びにcae解析処理プログラムを記録した記録媒体 |
US7272500B1 (en) | 2004-03-25 | 2007-09-18 | Avaya Technology Corp. | Global positioning system hardware key for software licenses |
US7707405B1 (en) | 2004-09-21 | 2010-04-27 | Avaya Inc. | Secure installation activation |
US7270228B2 (en) * | 2004-09-22 | 2007-09-18 | Metal Fabricating Corporation | Hanger for conveyor assembly |
US8229858B1 (en) | 2004-09-30 | 2012-07-24 | Avaya Inc. | Generation of enterprise-wide licenses in a customer environment |
US7747851B1 (en) | 2004-09-30 | 2010-06-29 | Avaya Inc. | Certificate distribution via license files |
US7965701B1 (en) | 2004-09-30 | 2011-06-21 | Avaya Inc. | Method and system for secure communications with IP telephony appliance |
US7814023B1 (en) | 2005-09-08 | 2010-10-12 | Avaya Inc. | Secure download manager |
JP4818279B2 (ja) * | 2005-12-22 | 2011-11-16 | 富士通株式会社 | プログラム処理装置、プログラム処理方法及びプログラム |
US7757269B1 (en) | 2006-02-02 | 2010-07-13 | Mcafee, Inc. | Enforcing alignment of approved changes and deployed changes in the software change life-cycle |
US10853780B1 (en) * | 2006-12-29 | 2020-12-01 | Amazon Technologies, Inc. | Providing configurable pricing for use of invocable services by applications |
US7925554B1 (en) * | 2006-12-29 | 2011-04-12 | Amazon Technologies, Inc. | Using configured application pricing to determine end user fees for use of invocable services |
US9304819B2 (en) * | 2007-05-29 | 2016-04-05 | Red Hat, Inc. | Virtual deployment |
US20120209771A1 (en) * | 2011-02-14 | 2012-08-16 | Jeffrey Winner | Monitoring for offline transactions |
WO2013000144A1 (zh) * | 2011-06-30 | 2013-01-03 | 深圳市君盛惠创科技有限公司 | 提供应用服务的方法、无线应用协议网关及系统 |
US9953144B2 (en) * | 2014-03-27 | 2018-04-24 | Nxp B.V. | Constellation based device binding |
US10187447B1 (en) | 2016-01-28 | 2019-01-22 | Twitter, Inc. | Method and system for online conversion attribution |
Family Cites Families (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4685055A (en) | 1985-07-01 | 1987-08-04 | Thomas Richard B | Method and system for controlling use of protected software |
US5109413A (en) | 1986-11-05 | 1992-04-28 | International Business Machines Corporation | Manipulating rights-to-execute in connection with a software copy protection mechanism |
US5222134A (en) * | 1990-11-07 | 1993-06-22 | Tau Systems Corporation | Secure system for activating personal computer software at remote locations |
US5103476A (en) * | 1990-11-07 | 1992-04-07 | Waite David P | Secure system for activating personal computer software at remote locations |
JPH0799497B2 (ja) | 1990-12-14 | 1995-10-25 | インターナショナル・ビジネス・マシーンズ・コーポレイション | ソフトウェアの使用を管理するための装置及び方法 |
US5455902A (en) * | 1990-12-21 | 1995-10-03 | Eastman Kodak Company | Method and apparatus for performing real-time computer animation |
US5414851A (en) | 1992-06-15 | 1995-05-09 | International Business Machines Corporation | Method and means for sharing I/O resources by a plurality of operating systems |
US5313592A (en) | 1992-07-22 | 1994-05-17 | International Business Machines Corporation | Method and system for supporting multiple adapters in a personal computer data processing system |
US5293422A (en) * | 1992-09-23 | 1994-03-08 | Dynatek, Inc. | Usage control system for computer software |
US5625690A (en) | 1993-11-15 | 1997-04-29 | Lucent Technologies Inc. | Software pay per use system |
US5553139A (en) | 1994-04-04 | 1996-09-03 | Novell, Inc. | Method and apparatus for electronic license distribution |
US5598470A (en) * | 1994-04-25 | 1997-01-28 | International Business Machines Corporation | Method and apparatus for enabling trial period use of software products: Method and apparatus for utilizing a decryption block |
US5787000A (en) | 1994-05-27 | 1998-07-28 | Lilly Software Associates, Inc. | Method and apparatus for scheduling work orders in a manufacturing process |
WO1995035533A1 (en) * | 1994-06-17 | 1995-12-28 | Megalode Corporation | Method for preventing use of software on an unauthorized computer |
US5586186A (en) * | 1994-07-15 | 1996-12-17 | Microsoft Corporation | Method and system for controlling unauthorized access to information distributed to users |
US5590197A (en) * | 1995-04-04 | 1996-12-31 | V-One Corporation | Electronic payment system and method |
US5612682A (en) | 1995-05-30 | 1997-03-18 | Motorola, Inc. | Method and apparatus for controlling utilization of a process added to a portable communication device |
US5754646A (en) * | 1995-07-19 | 1998-05-19 | Cable Television Laboratories, Inc. | Method for protecting publicly distributed software |
US5671279A (en) * | 1995-11-13 | 1997-09-23 | Netscape Communications Corporation | Electronic commerce using a secure courier system |
US5855007A (en) * | 1995-11-15 | 1998-12-29 | Jovicic; Neboisa | Electronic coupon communication system |
US5708709A (en) | 1995-12-08 | 1998-01-13 | Sun Microsystems, Inc. | System and method for managing try-and-buy usage of application programs |
EP0880840A4 (en) * | 1996-01-11 | 2002-10-23 | Mrj Inc | DEVICE FOR CONTROLLING ACCESS AND DISTRIBUTION OF DIGITAL PROPERTY |
US5822432A (en) | 1996-01-17 | 1998-10-13 | The Dice Company | Method for human-assisted random key generation and application for digital watermark system |
US5815665A (en) | 1996-04-03 | 1998-09-29 | Microsoft Corporation | System and method for providing trusted brokering services over a distributed network |
US5938729A (en) | 1996-07-12 | 1999-08-17 | Microsoft Corporation | System and method for monitoring server performance at a client computer |
US5933816A (en) | 1996-10-31 | 1999-08-03 | Citicorp Development Center, Inc. | System and method for delivering financial services |
US5933830A (en) | 1997-05-09 | 1999-08-03 | Corda Technologies, Inc. | Device and method for arranging data for use by a data client, such as a graph |
EP0881558B1 (en) * | 1997-05-28 | 2003-04-16 | Siemens Aktiengesellschaft | Computer system for protecting software and a method for protecting software |
US6000032A (en) | 1997-07-15 | 1999-12-07 | Symantec Corporation | Secure access to software modules |
DE69724947T2 (de) | 1997-07-31 | 2004-05-19 | Siemens Ag | Rechnersystem und Verfahren zur Sicherung einer Datei |
US6233567B1 (en) | 1997-08-29 | 2001-05-15 | Intel Corporation | Method and apparatus for software licensing electronically distributed programs |
US5991402A (en) | 1997-09-23 | 1999-11-23 | Aegisoft Corporation | Method and system of dynamic transformation of encrypted material |
US6330549B1 (en) * | 1997-10-30 | 2001-12-11 | Xerox Corporation | Protected shareware |
WO1999026123A1 (en) * | 1997-11-18 | 1999-05-27 | Christopher Benjamin Wakely | Improvements relating to software protection systems |
EP0921487A3 (en) * | 1997-12-08 | 2000-07-26 | Nippon Telegraph and Telephone Corporation | Method and system for billing on the internet |
US5982892A (en) * | 1997-12-22 | 1999-11-09 | Hicks; Christian Bielefeldt | System and method for remote authorization for unlocking electronic data |
US6151676A (en) | 1997-12-24 | 2000-11-21 | Philips Electronics North America Corporation | Administration and utilization of secret fresh random numbers in a networked environment |
GB9806918D0 (en) * | 1998-03-31 | 1998-05-27 | British Telecomm | Software access |
US6049789A (en) | 1998-06-24 | 2000-04-11 | Mentor Graphics Corporation | Software pay per use licensing system |
US6105137A (en) * | 1998-07-02 | 2000-08-15 | Intel Corporation | Method and apparatus for integrity verification, authentication, and secure linkage of software modules |
US6694434B1 (en) * | 1998-12-23 | 2004-02-17 | Entrust Technologies Limited | Method and apparatus for controlling program execution and program distribution |
US6681212B1 (en) * | 1999-04-23 | 2004-01-20 | Nianning Zeng | Internet-based automated system and a method for software copyright protection and sales |
US6792113B1 (en) * | 1999-12-20 | 2004-09-14 | Microsoft Corporation | Adaptable security mechanism for preventing unauthorized access of digital data |
US6595856B1 (en) * | 2000-01-04 | 2003-07-22 | Sigma Game, Inc. | Electronic security technique for gaming software |
-
2001
- 2001-04-27 BR BR0110400-4A patent/BR0110400A/pt not_active Application Discontinuation
- 2001-04-27 WO PCT/US2001/013427 patent/WO2001084283A2/en not_active Application Discontinuation
- 2001-04-27 EP EP01928892A patent/EP1297405A2/en not_active Ceased
- 2001-04-27 JP JP2001580640A patent/JP2004514194A/ja not_active Withdrawn
- 2001-04-27 CN CNB018072682A patent/CN1241083C/zh not_active Expired - Fee Related
- 2001-04-27 US US09/844,466 patent/US7032113B2/en not_active Expired - Lifetime
- 2001-04-27 AU AU2001255698A patent/AU2001255698A1/en not_active Abandoned
-
2003
- 2003-07-14 HK HK03105069.2A patent/HK1052778B/zh not_active IP Right Cessation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100433655C (zh) * | 2006-03-01 | 2008-11-12 | 华为技术有限公司 | 客户端软件注册数量的控制系统和控制方法 |
CN112507397A (zh) * | 2020-11-23 | 2021-03-16 | 中国人民解放军战略支援部队信息工程大学 | 基于信息加密的微处理器固件信息保护方法 |
CN112507397B (zh) * | 2020-11-23 | 2023-03-14 | 中国人民解放军战略支援部队信息工程大学 | 基于信息加密的微处理器固件信息保护方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2001084283A3 (en) | 2003-01-23 |
BR0110400A (pt) | 2004-10-19 |
CN1241083C (zh) | 2006-02-08 |
AU2001255698A1 (en) | 2001-11-12 |
WO2001084283A2 (en) | 2001-11-08 |
US7032113B2 (en) | 2006-04-18 |
HK1052778B (zh) | 2006-05-26 |
HK1052778A1 (en) | 2003-09-26 |
JP2004514194A (ja) | 2004-05-13 |
EP1297405A2 (en) | 2003-04-02 |
US20020016774A1 (en) | 2002-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1241083C (zh) | 启用网络的应用软件系统和方法 | |
US9349141B2 (en) | Service for adding functionality to applications | |
CA2401548C (en) | Method and system for facilitating electronic circuit and chip design using remotely located resources | |
US20070234291A1 (en) | Method and system for utilizing development components | |
US20020107809A1 (en) | System and method for licensing management | |
US20030120557A1 (en) | System, method and article of manufacture for an internet based distribution architecture | |
US20100235263A1 (en) | Process for implementing a method for the on-line sale of software product use licenses through a data network, and software component which allows carrying out said process | |
US20030154387A1 (en) | System, method and article of manufacture for tracking software sale transactions of an internet-based retailer for reporting to a software publisher | |
CN101765844A (zh) | 分布式快速成型 | |
US20030083998A1 (en) | Usage based licensing server and data structure | |
CN102057354A (zh) | 获取对应用程序的更新的技术 | |
US20030126033A1 (en) | System, method and article of manufacture for software source authentication for return purposes | |
JP2011192280A (ja) | 自動化されたルールベースの権利解決 | |
US20030084341A1 (en) | Implementation of security barriers in a usage based licensing server data structure | |
US20030083892A1 (en) | Process for one-stop shopping of all available license deals available using a usage based licensing server data structure | |
WO2006074035A2 (en) | Software licensing system | |
US20030083999A1 (en) | Temporal processing of usage data in a usage based licensing | |
US20030084000A1 (en) | Server data structure for modelling distribution system | |
WO2001001319A1 (en) | A system, method and article of manufacture for a customer profile-tailored support interface in an electronic software distribution environment | |
KR20130114326A (ko) | 웹 디자인 거래 방법 및 시스템 | |
WO2001001225A1 (en) | A system, method and article of manufacture for automatically generating a tailored license agreement | |
WO2001001316A2 (en) | A system, method and article of manufacture for an electronic software distribution, post-download payment scheme with encryption capabilities | |
US20030084060A1 (en) | Process in a usage based licensing server to convert metric data in data structure to CSU data | |
KR20220106880A (ko) | 상황 연동 마케팅 웹사이트 운영 방법 | |
Okide et al. | Software Assets Management: A Cost Saving Factor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |