当前位置: 首页 > 技术支持 > 了解加密狗 > 软件狗U1000型加密锁浏览器端插件接口详细说明(

软件狗U1000型加密锁浏览器端插件接口详细说明(


              IE创建控件:            var Obj = new ActiveXObject('Cdll9x.dog');
              NPAPI plugin Mimetype:      application/mozilla-plugin-cdll9x;
              属性:
              readout : 可用来取回某些方法调用的结果,如GetSn 、ReadLock等方法
注:用户可以直接在网页中引用我们提供的文件detectbrowser.js完成浏览器类型判读和控件对象创建。
 
API方法描述:
 
              以下三参数个是大部分函数中用到的参数:
              (1)psd:           BSTR :字符串,送入对应密码(动态密码或其他形式的密码);
              (2)Serial: ULONG :序列号,在用一个主机上存在多只加密锁时,此序号可通过此序号指定加密锁进行相关操作,当主机上只存在一只加密锁时参数可缺省为0。
              (3)mini:  ULONG :mini值(只用于带时钟的加密锁,对于非时钟加密锁或时钟锁的非动态密码时,此参数无意义,可以传0即可),该mini值参数主要用来决定时钟加密锁产生的动态密码(或校验的动态密码)的生命周期长短,与动态密码配合使用;
             
本加密锁可读写地址范围是:时钟锁0~511,非时钟锁0~ 1151,每个地址对应4字节;每个地址可存储一个ULONG型数值或4个字节的字符
 
1、ULONG InitiateLock(ULONG Serial);
功能:  初始化设备;
参数:
 Serial:ULONG :序列号,在用一个主机上存在多只加密锁时,此序号可通过此序号指定加密锁进行相关操作,当主机上只存在一只加密锁时参数可缺省为0。
返回值:
失败时返回0;      成功时非0;
 
2、ULONG Lock32_Function(LONG data, LONG Serial);
功能:   发送数据data到加密锁内,返回相应的校验数据
参数:
(1)data:   LONG :随机数,发送到下位机cpu进行运算
(2)Serial:同上;
返回值:
失败:函数返回0; 
成功:返回加密锁内的运算的结果;
 
3、LONG ShieldPc(LONG random, ULONG key1, ULONG key2, ULONG key3, ULONG key4)
功能:  校验函数,输入随机数random和加密锁硬件的4个key值,返回一个特定校验数值; 该函数一般与函数Lock32_Function配合使用来完成配对校验。
参数:
(1)random:   LONG ; 要参与运算的数值
(2)key1:  ULONG ; key1;
(2)key2:  ULONG ; key2;
(2)key3:  ULONG ; key3;
(2)key4:  ULONG ; key4;
返回值:
运算的结果
 
4、ULONG GetSn()
功能: 获取当前机器上所有存在的加密锁序号列表
参数:
返回值:
失败时为0;
成功时非0;    此时readout可获得序列号的列表,是以逗号分隔的字符串
 
5、ULONG WriteLock(ULONG addr, ULONG data, BSTR psd, ULONG Serial, ULONG mini)
功能:   把data写到加密锁内部地址addr处
参数:
(1)addr:   ULONG ;要操作的地址
(2)data:   ULONG ;要保存的数值,ULONG型
(3)psd:同上;
(4)Serial:同上
(5)mini:同上
返回值:
失败时为0;     成功时非0;
 
6、ULONG ReadLock(ULONG addr, BSTR psd, ULONG Serial, ULONG mini)
功能:   读单个地址,把对应地址中数据作为数值读出;
参数:
(1)addr:       ULONG ;要操作的地址
(2)psd:    同上;
(3)Serial :同上;
(4)mini:       同上;
返回值:
失败时为0;    
成功时非0,此时,可用readout获取从该地址读取的ULONG值;
 
7、ULONG WriteLockS(ULONG addr, BSTR bsData, BSTR psd, ULONG Serial, ULONG mini)
功能:  写单个地址,写字符串;addr对应地址;bsData对应要存储的字符串,最大只能写入4个字节;即4个英文字符或2个汉字
参数:
(1)addr:   ULONG ;要操作的地址
(2)bsData:      BSTR  ;要存储的字符串
(3)psd:同上;
(4)Serial:同上;
(5)mini:同上;
返回值:
失败时为0;      成功时非0;
 
8、ULONG ReadLockS(ULONG addr, BSTR psd, ULONG Serial, ULONG mini)
功能:    读单个地址,读出字符串;addr对应地址,每个地址对应4个字节,所以可以读4个英文字符或2个中文字符
参数:
(1)addr:   ULONG ;要操作的地址
(2)psd:同上;
(3)Serial:同上;
(4)mini:同上;
返回值:
失败时为0;
成功时非0;    此时,可用readout获取从该地址读取的字符串;
 
9、ULONG WriteLockEx(ULONG addr, BSTR bszWriteData, BSTR psd, ULONG Serial, ULONG mini)
功能:    把一串字符bszWriteData写入从addr地址开始的存储区
参数:
(1)addr:   ULONG ;开始写入地址
(2)bszWriteData: BSTR ;要写入的字符串
(3)psd:同上;
(4)Serial:同上;
(5)mini:同上;
返回值:
失败时为0;   成功时非0;
 
10、ULONG ReadLockEx(ULONG addr, ULONG iReadLen, BSTR psd, ULONG Serial, ULONG mini)
功能:     从地址addr开始,读一串字符;直接遇到空字符或读取到iReadLen个字符
参数:
(1)addr:   ULONG ;开始读取地址
(2)iReadLen:ULONG ;读取字符串的最大字节数
(3)psd:同上;
(4)Serial:同上;
(5)mini:同上;
返回值:
失败时为0;    成功时非0;
 
11、ULONG ReadTime(BSTR psd, ULONG Serial, ULONG mini);
功能:   读时间,成功时由readout获取加密狗内的时间;是一个其值表示从CUT(Coordinated Universal Time)时间1970年1月1日00:00:00(称为UNIX系统的Epoch时间)到当前时刻的秒数。
参数:
(1)psd:同上;
(2)Serial:同上;
(3)mini:同上;
返回值
失败时为0;
成功时非0,此时可用readout来获取加密狗内的时间,可通过var now = new Date(dog.readout*1000)来转换成javascript日期。
 
12、ULONG ResetTime(BSTR psd, ULONG Serial, ULONG mini);
功能: 重设时间,每天只能重设时间一次,且加密锁时间与电脑时间不超过5分钟时可以重设,只能通过动态密码来重设时间。
参数:
(1)psd:同上;
(2)Serial:同上;
(3)mini:同上;
返回值
失败时为0;   成功时非0;
 
13、ULONG Counter(BSTR psd, ULONG Serial, ULONG mini, ULONG tag);
功能:执行时钟锁的限时、限次功能,未到期加密锁正常运行,过期则加密锁执行异常处理。
参数:
(1)psd:同上;
(2)Serial:同上;
(3)mini:同上;
(4)tag:            ULONG ,到期时是否弹出窗口提示,1为弹出,0为不弹。
返回值:
失败时为0;        成功时非0,此时用readout可获得剩余期限
                                         
14、ULONG SetLock(ULONG uFunction, ULONG uParam1, ULONG uParam2, BSTR bsParam, BSTR psd, ULONG Serial, ULONG mini)
功能:    该函数用于设置、获取与时钟锁相关的各种功能、数据。
参数:
uFunction :ULONG ;功能号(见一下功能号说明)
uParam1  : ULONG,输入与功能号对应的相关参数;
uParam2  : ULONG ,输入与功能号对应的相关参数;
bsParam : BSTR,输入与功能号对应的相关参数;
psd:同上;
Serial:同上;
mini:同上;       
 
功能详细说明:
功能号:uFunction = 0 时:函数返回时钟锁剩余的使用次数/时间
*** uFunction := 0
*** uParam1  :忽略
*** uParam2  :忽略
*** bsParam :忽略
*** psd:同上;
*** Serial:同上;
*** mini:同上;
失败时为0;
成功时非0; 此时可用readout查询时钟锁剩余的使用次数/时间(分)
-------------------------------------------------------------------------------------
功能号:uFunction = 1 时:设置时钟锁期限,类型为计次
*** uFunction : = 1
*** uParam1  :要设置期限的次数
*** uParam2  :忽略
*** bsParam :期限密码
*** psd:同上;
*** Serial:同上;
*** mini:同上;
失败时为0;
成功时非0;
-------------------------------------------------------------------------------------
*** 功能号:uFunction = 2 时:设置时钟锁期限,类型为计时类型,时钟锁可以有效使用时间为特定的分钟数
*** uFunction := 2
*** uParam1  :要设置期限的分钟数
*** uParam2  :忽略
*** bsParam :期限密码
*** psd:同上;
*** Serial:同上
*** mini:同上;
返回值:
失败时为0;
成功时非0;
-------------------------------------------------------------------------------------
*** 功能号:uFunction = 3 时:设置时钟锁期限,类型为计时类型,时钟锁可以有效使用至固定的某个时间
*** uFunction := 3
*** uParam1  :要设置期限的起始时间
*** uParam2  :要设置期限的结束时间
*** bsParam :期限密码
*** psd:同上;
*** Serial:同上;
*** mini :同上;
返回值:
失败时为0;
成功时非0;
-------------------------------------------------------------------------------------
*** 功能号:uFunction = 4 时:永久解除时间限制,或重新重置时钟锁期限
*** uFunction := 4
*** uParam1  :忽略
*** uParam2  :忽略
*** bsParam :期限密码。注,当期限密码正确传入时,将永久解除时间限制。如要重置时间限制,请忽略此参数。
*** psd:同上;
*** Serial:同上;
*** mini:同上;
失败时为0;
成功时非0;
-------------------------------------------------------------------------------------
*** 功能号:uFunction = 5 时:设置限制类型
*** uFunction := 5
*** uParam1  :指向的值为LIMIT_TYPE_COUNT表示计次。LIMIT_TYPE_LENGTH表示计时。LIMIT_TYPE_QUANTUM标示特定时间段。
*** uParam2  :忽略
*** bsParam :忽略
*** psd:同上;
*** Serial:同上;
*** mini:同上;
返回值:
失败时为0;
成功时非0;    LIMIT_TYPE_COUNT = 1, LIMIT_TYPE_LENGTH = 2 , LIMIT_TYPE_QUANTUM = 3
----------------------------------------------------------------------------
*** 功能号:uFunction = 6 时:获取限制类型
*** uFunction := 6
*** uParam1  :忽略
*** uParam2  :忽略
*** bsParam :忽略
*** psd:同上;
*** Serial:同上;
*** mini :同上;
返回值:
失败时为0;
成功时非0;此时 readout 返回时钟锁当前期限类型 与设置时的该值对应,如果不在这3个当中,标示时钟锁还未设置期限。
----------------------------------------------------------------------------
*** 功能号:uFunction = 7 时:设置管理密码
*** uFunction := 7
*** uParam1  :忽略
*** uParam2  :忽略
*** bsParam :指向要设置的密码字符串的指针,密码长度最长为8个英文字母、数字、特殊符号、等字符。
*** psd:同上;
*** Serial:同上;
*** mini:同上;
失败时为0;
成功时非0;
----------------------------------------------------------------------------
*** 功能号:uFunction = 8 时:获取时钟锁的序列号
*** uFunction := 8
*** uParam1  :忽略
*** uParam2  :忽略
*** bsParam :忽略
*** psd:同上;
*** Serial:同上;
*** mini:同上;
失败时为0;
成功时非0; 此时 readout 返回时钟锁的序列号
----------------------------------------------------------------------------
 
15、ULONG TerminateLock(ULONG Serial)
功能:    此函数针对是带时钟加密锁,当不再调用的加密锁时的终止函数,关闭与时钟加密锁相关的进程操作。此函数调用后,任何其他函数亦不能正常使用,除非再次调用InitiateLock()函数来打开加密锁。
参数:
Serial:同上;
返回值
 
16、ULONG GetSerial(ULONG ulArg)
功能:   获取当前机器上,第一块网卡mac地址,C:\盘磁盘序列号和硬盘序列号
参数:
       ulArg: ULONG,可为0,1,2;
返回值:
       失败时为0;
       成功时为非0,若ulArg为0,readout返回mac地址;若ulArg为1,readout返回C盘磁盘序列号;若ulArg为2,readout返回硬盘序列号。
------分隔线----------------------------

软件加密   数据、文档加密   身份认证   安全存储   
北京素志科技发展有限公司 | 京ICP备12048725号-1
Copyright ◎2012 suciz.com Inc. All Rights Reserved. 版权所有