IPC进程通讯:客户端验证与高级API

录入时间:2017/2/11 20:22:20      最后更新:2017/2/12 20:26:44

IPC进程通讯:客户端验证与高级API
只能在进程通讯客户端里使用,并且需要在客户端连接上服务端后
目的:验证、二次验证、高级API取自定义接口数据

返回的数据=ipc_cmd("ipc_check",单元集)
返回的数据:
	可能是明文单元集,也可能是密文单元集,具体返回的有哪些单元,请参见IPC.DLL接口
	如果返回的数据单元集中的单元state的值不为100,表示验证失败,可以通过GD_(明文单元集,"message")获取详细的出错信息

1、调用 ipc_cmd("ipc_check",单元集) 前必须调用ipc_cmd("ipc_connect","<guid>一个GUID号<guid>") 连接服务端


	
2、二次验证
	2.1、按自己的算法生成一个随机字符串 randstr
		randstr=生成随机串()  
		
	2.2、返回的数据=ipc_cmd("ipc_check","<randomstr>randstr</randomstr>")
		如果你传入了randomstr单元,返回的单元集数据里肯定也会有一个相同值的randomstr单元
		可以利用此特性做一些验证效验
		
	2.3、解密返回的数据,用算定义解密的包装函数FD_()使其变成明文,以便取出数据 
		2.3.1、二次验证时如果没有连接服务器,返回的数据是明文的单元集
		2.3.2、只有在连接了服务器验证的情况下,返回的数据才是密文的单元集
		2.3.3、二次验证并非都会连接服务器验证
		2.3.4、要强制连接服务器进行二次验证,请用 
			返回的数据=ipc_cmd("ipc_check","<randomstr>randstr</randomstr><connect>1</connect>")
		2.3.5、明文单元集=FD_(返回的数据)
		
	2.4、对明文单元集中的单元数据进行读取和效验
		读取指定单元  GD_(明文单元集,单元名)
		例如读取randomstr   GD_(明文单元集,"randomstr")
		
		效验方式因人而异,我这里就不写了
		
3、取服务端高级API函数接口的数据
	3.1、取服务端高级API函数据口的数据时同时会进行二次验证,是强制连接服务器的
	3.2、下边的两种调用方式都可以
		3.2.1、加密的单元集=ipc_cmd("ipc_check","<advapi>v_getb,100,200</advapi>")
		3.2.1、加密的单元集=ipc_cmd("ipc_check","<randomstr>randstr</randomstr><advapi>v_getb,100,200</advapi>")
	3.3、解密返回的数据
		3.3.1、用算定义解密的包装函数FD_()使其变成明文
			明文单元集=FD_(加密的单元集)
		3.3.2、如果你有传入randomstr,可以从返回值中取出randomstr进行效验
		3.3.3、advapi返回的值=GD_(明文单元集,"advapi")
		

 Copyright 2008-2017 武汉市洪山区火云网络工作室 可可网络验证系统
 联系电话:027-88778177    鄂ICP备12009746号