加密狗的工作原理:
加密狗通过在软件执行过程中和加密狗交换数据来实现加密的。加密狗内置单片机电路(也称CPU),使得加密狗具有判断、分析的处理能力,增强了主动的反解密能力。
这种加密产品称它为"智能型"加密狗.加密狗内置的单片机里包含有专用于加密的算法软件,该软件被写入单片机后,就不能再被读出。这样,就保证了加密狗硬件不能被复制。同时,加密算法是不可预知、不可逆的。
加密算法可以把一个数字或字符变换成一个整数,如DogConvert(1)=12345,下面,举个例子说明单片机算法的使用。 比如一段程序中有这样一句:A=Fx(3)。程序要根据常量3来得到变量A的值。
于是就可以把原程序这样改写:A=Fx(DogConvert(1)-12342)。那么原程序中就不会出现常量3,而取之以DogConvert(1)-12342。这样,只有软件编写者才知道实际调用的常量是3。
而如果没有加密狗,DogConvert函数就不能返回正确结果,结果算式A=Fx(DogConvert(1)-12342)结果也肯定不会正确。这种使盗版用户得不到软件使用价值的加密方式,要比一发现非法使用就警告、中止的加密方式更温和、更隐蔽、更令解密者难以琢磨。
此外,还有读写函数可以用作对加密狗内部的存储器的读写。于是可以把上算式中的12342也写到狗的存储器中去,令A的值完全取决于DogConvert()和DogRead()函数的结果,令解密难上加难。
不过,一般说来,加密狗单片机的算法难度要低于一些公开的加密算法,如DES等,因为解密者在触及加密狗的算法之前要面对许多难关。
扩展资料:
加密狗是一种用于软件加密的小型外置硬件设备,常见的有并口与USB接口两种类型,加密狗被广泛应用于各种软件之中,其中如著名的绘图软件AutoCAD,国内相当数量的工程软件与财务软件等。加密狗的成功应用,翻开了软件知识产权保护的新篇章。
国内最早的加密狗是由现北京彩虹天地信息技术有限公司总经理、董事长—陈龙森先生在1990年提出并设计完成的。
他的想法是,把一个小的硬件装置加载到微机的并行口上,其中内置几个逻辑芯片,作为核心的是一个计数器;然后通过软件,向外加的硬件装置发送脉冲信号,并等待返回信号,如果有,则表明外部存在硬件设备,否则就视作非法运行,被加密软件停止工作。
因此,陈龙森设计的软件中,专门设有一个模块,用来读取并行口上的硬件信息。软件开发的技术人员,可以把实现此项功能的软件模块,加载到任何需要对用户信息判断的地方,进行编译连接,从而就能形成可以保护自身的软件产品。
参考资料:
加密狗的原理是:加密锁内置的单片机里包含有专用于加密的算法软件,该软件被写入单片机后,就不能再被读出。这样,就保证了加密锁硬件不能被复制。同时,加密算法是不可预知、不可逆的。
加密算法可以把一个数字或字符变换成一个整数,如DogConvert(1)=17345、DogConvert(A)=43565。
比如一段程序中有这样一句:A=Fx(3)。程序要根据常量3来得到变量A的值。于是,就可以把原程序这样改写:A=Fx(DogConvert(1)-17342)。
那么原程序中就不会出现常量3,而取之以DogConvert(1)-17342。这样,只有软件编写者才知道实际调用的常量是3。
而如果没有加密锁,DogConvert函数就不能返回正确结果,结果算式A=Fx(DogConvert(1)-17342)结果也肯定不会正确。这种使盗版用户得不到软件使用价值的加密方式,要比一发现非法使用就警告、中止的加密方式更温和、更隐蔽、更令解密者难以琢磨。
扩展资料
加密锁软件设计包括计算机端的软件设计和加密锁端的软件设计。计算机端的软件主要是给应用软件提供调用的函数模块。包括认证驱动模块、会话密钥产生模块、加密解密模块、数据交换模块。
其中,认证驱动模块产生认证请求,如根据时间或事件产生认证请求,当认证事件发生后,应用程序调用其它模块,通过与加密锁通信来确定当前应用软件的合法性。
加密解密模块对给定的明文和密钥计算出对应的密文,或者对给定的密文和密钥计算出相应的明文。
数据交换模块将计算机中指定的数据发送到加密锁,并接收加密锁返回的数据或确认信号,并在其中设置超时时间,当超时次数大于指定次数时,认为加密锁未接在并行端口上,或加密锁非法。程序采用标准C语言编写,易于跨平台使用。
加密狗通过在软件执行过程中和加密狗交换数据来实现加密的.加密狗内置单片机电路(也称CPU),使得加密狗具有判断、分析的处理能力,增强了主动的反解密能力。这种加密产品称它为"智能型"加密狗.加密狗内置的单片机里包含有专用于加密的算法软件,该软件被写入单片机后,就不能再被读出。这样,就保证了加密狗硬件不能被复制。同时,加密算法是不可预知、不可逆的。加密算法可以把一个数字或字符变换成一个整数,如DogConvert(1)=12345、DogConvert(A)=43565。
加密狗是为软件开发商提供的一种智能型的软件保护工具,它包含一个安装在计算机并行口或 USB 口上的硬件,及一套适用于各种语言的接口软件和工具软件。加密狗基于硬件保护技术,其目的是通过对软件与数据的保护防止知识产权被非法使用。
工作原理
加密狗的工作原理:
加密狗通过在软件执行过程中和加密狗交换数据来实现加密的.加密狗内置单片机电路(也称CPU),使得加密狗具有判断、分析的处理能力,增强了主动的反解密能力。这种加密产品称它为"智能型"加密狗.加密狗内置的单片机里包含有专用于加密的算法软件,该软件被写入单片机后,就不能再被读出。这样,就保证了加密狗硬件不能被复制。同时,加密算法是不可预知、不可逆的。加密算法可以把一个数字或字符变换成一个整数,如DogConvert(1)=12345、DogConvert(A)=43565。下面,我们举个例子说明单片机算法的使用。 比如一段程序中有这样一句:A=Fx(3)。程序要根据常量3来得到变量A的值。于是,我们就可以把原程序这样改写:A=Fx(DogConvert(1)-12342)。那么原程序中就不会出现常量3,而取之以DogConvert(1)-12342。这样,只有软件编写者才知道实际调用的常量是3。而如果没有加密狗,DogConvert函数就不能返回正确结果,结果算式A=Fx(DogConvert(1)-12342)结果也肯定不会正确。这种使盗版用户得不到软件使用价值的加密方式,要比一发现非法使用就警告、中止的加密方式更温和、更隐蔽、更令解密者难以琢磨。此外,加密狗还有读写函数可以用作对加密狗内部的存储器的读写。于是我们可以把上算式中的12342也写到狗的存储器中去,令A的值完全取决于DogConvert()和DogRead()函数的结果,令解密难上加难。不过,一般说来,加密狗单片机的算法难度要低于一些公开的加密算法,如DES等,因为解密者在触及加密狗的算法之前要面对许多难关.
就比如wibu有一套axprotector的东西可以直接加密exe和dll,安全强度很高。
2018-09-14