加密狗是一种插入
计算机USB端口或并口的软硬件结合的加密产品。早期的产品多为并口形式,但现在绝大多数都是USB口形式。它们通常拥有数十至数百
字节的非易失性存储空间,可用于读写操作。较新的加密狗内部还集成了
单片机。软件开发人员可以通过接口函数与加密狗进行数据交换,以检测加密狗是否已插入接口。
加密狗的工作原理是在软件执行期间与加密狗交换数据,以此实现加密。加密狗内置单片机电路(也称为CPU),使其具备判断和分析的能力,增强主动反解密能力。这种加密产品被称为"智能型"
密码狗。加密狗内置的单片机包含专门用于加密的算法软件,该软件被写入单片机后,不能再被读出,确保加密狗硬件无法被复制。
全球最先进的加密狗内置高安全强度的加密算法,在通信中同时采用128位AES对称算法(标准加密算法)和224位ECC以及1024位RSA非对称算法(椭圆曲线算法)作为通信加密手段。每次数据传输均使用128位随机
密钥AES算法进行加密,而这个随机密钥又被224位ECC算法加密,随后传输。
传统的软件保护产品主要通过应用程序与本地
计算机上的加密锁或许可证文件进行验证,这种方式的缺点是需要安装客户端硬件、驱动或本地许可证,并且在软件开发商与应用程序之间缺乏联系,后期的许可升级较为繁琐,通常是通过客户端生成请求串,然后由开发商工具生成返回串的手动方式进行。此外,无论是客户端的加密锁硬件还是许可证文件,都易于被破解者分析和破解。